Gentoo Archives: gentoo-commits

From: Ian Delaney <della5@×××××××××.au>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/virtualization:master commit in: app-emulation/xen-tools/files/, app-emulation/xen-tools/
Date: Wed, 21 Nov 2012 12:48:53
Message-Id: 1353559668.93cd3557c7b3cbdfcabe1bdaefb7419e21cc97d7.idella4@gentoo
1 commit: 93cd3557c7b3cbdfcabe1bdaefb7419e21cc97d7
2 Author: Ian Delaney <della5 <AT> iinet <DOT> com <DOT> au>
3 AuthorDate: Thu Nov 22 04:47:48 2012 +0000
4 Commit: Ian Delaney <della5 <AT> iinet <DOT> com <DOT> au>
5 CommitDate: Thu Nov 22 04:47:48 2012 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/virtualization.git;a=commit;h=93cd3557
7
8 revbump, patch to counter downloads during build, patch to counter double stripping, nopie patch returned to conditional state, fixes to QA issues, one remaining
9
10 Package-Manager: portage-2.1.11.30
11
12 ---
13 app-emulation/xen-tools/Manifest | 2 +
14 .../xen-tools/files/xen-4.2.0-anti-download.patch | 28 ++++++++++
15 .../xen-tools/files/xen-4.2.0-nostrip.patch | 54 ++++++++++++++++++++
16 ...ools-4.2.0.ebuild => xen-tools-4.2.0-r1.ebuild} | 53 +++++++++++---------
17 4 files changed, 113 insertions(+), 24 deletions(-)
18
19 diff --git a/app-emulation/xen-tools/Manifest b/app-emulation/xen-tools/Manifest
20 index a4cb7e4..6d7274e 100644
21 --- a/app-emulation/xen-tools/Manifest
22 +++ b/app-emulation/xen-tools/Manifest
23 @@ -1,4 +1,6 @@
24 DIST ipxe-git-9a93db3f0947484e30e753bbd61a10b17336e20e.tar.gz 2888480 SHA256 ea2a52a999afab7fefa6300e0f1b38409c170a7503a51d8b572d790e71f2d0f0 SHA512 02314727af850bdf51c1963e8da258a65868f3ef116e9833918c770b8737cd1501891d4dc90d787702a1f34e35198e57373d730b7e2e6671e5fa93ece7c2f073 WHIRLPOOL 9a232852c3dee266dcbd27fae6814497814a0f65123484c37196a99c6cc746a348cf38c77ba084e62e052c64e950b34aa2f152a154e99c0366746f97941b23d7
25 DIST ipxe-git-v1.0.0.tar.gz 1996881 SHA256 d3128bfda9a1542049c278755f85bbcbb8441da7bfd702d511ce237fcf86a723 SHA512 6921fb857ca615899a5912d5590ca36b6f46daf828b85edc75461c08a189d9fed71ee74a82e42724da7a1355e45070d28a0a61694b3a4872c3554390e4bb4147 WHIRLPOOL 160e24eea479c9d67a8a5c7c5182864904ee594167f061adc40a3e74974197b6befe2ecdb76af1c101ff1a5697b060dae71dd3f9f969c8e18054526584d57031
26 +DIST ipxe.tar.gz 2867999 SHA256 632ce8c193ccacc3012bd354bdb733a4be126f7c098e111930aa41dad537405c SHA512 c5cb1cdff40d2d71fd3e692a9d0efadf2aa17290daf5195391a1c81ddd9dfc913a8e44d5be2b12be85b2a5565ea31631c99c7053564f2fb2225c80ea0bb0e4a4 WHIRLPOOL 58b7459aaf7323968e2f4d1cdcb563a04a0ee40d7d0e8fc600495baf6914127fbbbcddfb66199cd9f462eb59565b3d1ae90a05b3c771b8f13c2d2dcb6070eebc
27 +DIST seabios-0-20121121.tar.bz2 2199282 SHA256 f7f67181c6c0b4cea3a9db48e2569fdcbbc81b732a2f672079c42fb44153ee62 SHA512 4f886088ebaa911590b8cb19db5c5dbc8f1384d2d5a7c4bf04df083e177513b3123b1839dad744171670eded8b69ce092a774288aec1804d00aa32b1b6778599 WHIRLPOOL f2e62682d7213ee5eaecbc2590637ef36d9c86f746840c0ee758c0c153139f485032ea2cd098c87bb8a2b5f17f91375b8fb65599e3b71b45b1645df85a88887f
28 DIST xen-4.1.2.tar.gz 10365786 SHA256 7d9c93057cf480d3f1efa792b19285a84fa3c06060ea5c5c453be00887389b0d SHA512 8f50f238b0b474ec5556279cbd51d704b4365033f2541a5d0376f287b26b7e8f0193172041109d97bb76d35ace3adf71e12f89f5766ff79a8ea861e7282f00d7 WHIRLPOOL 93a4bdd05125ef722464ef682798191c8b3db7228cbc0a27bcbe7932a7776491f90e727e1fcc4a9e7ec3eada7f56c567c07ad61cdda2f514109f702800fe5566
29 DIST xen-4.2.0.tar.gz 15587687 SHA256 43f4a086e4e0330145a27b7ace8365c42b5afbc95cefadafe067be91bd3e5cfb SHA512 4fb56c79d722fb307bc657f16d02079c6636427e7650c4354193632d38d2d1db8e588f844ff0ca6e757c108ed639a528565ec9fc7c00bb4d5b6fbc9d122d8a70 WHIRLPOOL 369a109375864cb61920b56cf501522051d28513e738f0fd0e7b76244c3e08a8a0a6ff6cf245872d9bbd9c0f22c7da76c9cbc0f852bad6108ca25fd42dc677c0
30
31 diff --git a/app-emulation/xen-tools/files/xen-4.2.0-anti-download.patch b/app-emulation/xen-tools/files/xen-4.2.0-anti-download.patch
32 new file mode 100644
33 index 0000000..95a1ce6
34 --- /dev/null
35 +++ b/app-emulation/xen-tools/files/xen-4.2.0-anti-download.patch
36 @@ -0,0 +1,28 @@
37 +diff -ur xen-4.2.0.orig/tools/firmware/etherboot/Makefile xen-4.2.0/tools/firmware/etherboot/Makefile
38 +--- tools/firmware/etherboot/Makefile 2012-09-17 18:21:18.000000000 +0800
39 ++++ tools/firmware/etherboot/Makefile 2012-11-21 14:12:54.389536642 +0800
40 +@@ -28,13 +28,6 @@
41 + $(MAKE) -C $D/src bin/$(*F).rom
42 +
43 + $T:
44 +- if ! wget -O _$T $(IPXE_TARBALL_URL); then \
45 +- $(GIT) clone $(IPXE_GIT_URL) $D.git; \
46 +- (cd $D.git && $(GIT) archive --format=tar --prefix=$D/ \
47 +- $(IPXE_GIT_TAG) | gzip >../_$T); \
48 +- rm -rf $D.git; \
49 +- fi
50 +- mv _$T $T
51 +
52 + $D/src/arch/i386/Makefile: $T Config
53 + rm -rf $D
54 +diff -ur xen-4.2.0.orig/tools/firmware/Makefile xen-4.2.0/tools/firmware/Makefile
55 +--- tools/firmware/Makefile 2012-09-17 18:21:18.000000000 +0800
56 ++++ tools/firmware/Makefile 2012-11-21 16:14:21.974868539 +0800
57 +@@ -18,7 +18,6 @@
58 + cp ovmf-makefile ovmf/Makefile;
59 +
60 + seabios-dir:
61 +- GIT=$(GIT) $(XEN_ROOT)/scripts/git-checkout.sh $(SEABIOS_UPSTREAM_URL) $(SEABIOS_UPSTREAM_TAG) seabios-dir
62 + cp seabios-config seabios-dir/.config;
63 +
64 + .PHONY: all
65
66 diff --git a/app-emulation/xen-tools/files/xen-4.2.0-nostrip.patch b/app-emulation/xen-tools/files/xen-4.2.0-nostrip.patch
67 new file mode 100644
68 index 0000000..1ef1555
69 --- /dev/null
70 +++ b/app-emulation/xen-tools/files/xen-4.2.0-nostrip.patch
71 @@ -0,0 +1,54 @@
72 +diff -ur xen-4.2.0.orig/tools/qemu-xen-traditional/Makefile xen-4.2.0/tools/qemu-xen-traditional/Makefile
73 +--- tools/qemu-xen-traditional/Makefile 2012-09-07 00:05:30.000000000 +0800
74 ++++ tools/qemu-xen-traditional/Makefile 2012-11-22 06:12:29.433599695 +0800
75 +@@ -243,7 +243,7 @@
76 + install: all $(if $(BUILD_DOCS),install-doc)
77 + mkdir -p "$(DESTDIR)$(bindir)"
78 + ifneq ($(TOOLS),)
79 +- $(INSTALL) -m 755 -s $(TOOLS) "$(DESTDIR)$(bindir)"
80 ++ $(INSTALL) -m 755 $(TOOLS) "$(DESTDIR)$(bindir)"
81 + endif
82 + ifneq ($(BLOBS),)
83 + mkdir -p "$(DESTDIR)$(datadir)"
84 +diff -ur xen-4.2.0.orig/tools/qemu-xen-traditional/Makefile.target xen-4.2.0/tools/qemu-xen-traditional/Makefile.target
85 +--- tools/qemu-xen-traditional/Makefile.target 2012-09-07 00:05:30.000000000 +0800
86 ++++ tools/qemu-xen-traditional/Makefile.target 2012-11-22 06:26:45.302521231 +0800
87 +@@ -755,7 +755,7 @@
88 +
89 + install: all install-hook
90 + ifneq ($(PROGS),)
91 +- $(INSTALL) -m 755 -s $(PROGS) "$(DESTDIR)$(bindir)"
92 ++ $(INSTALL) -m 755 $(PROGS) "$(DESTDIR)$(bindir)"
93 + endif
94 +
95 + # Include automatically generated dependency files
96 +diff -ur xen-4.2.0.orig/tools/qemu-xen/Makefile.target xen-4.2.0/tools/qemu-xen/Makefile.target
97 +--- tools/qemu-xen/Makefile.target 2012-09-11 02:10:52.000000000 +0800
98 ++++ tools/qemu-xen/Makefile.target 2012-11-22 07:13:38.894263291 +0800
99 +@@ -437,9 +437,6 @@
100 + install: all
101 + ifneq ($(PROGS),)
102 + $(INSTALL) -m 755 $(PROGS) "$(DESTDIR)$(bindir)"
103 +-ifneq ($(STRIP),)
104 +- $(STRIP) $(patsubst %,"$(DESTDIR)$(bindir)/%",$(PROGS))
105 +-endif
106 + endif
107 + ifdef CONFIG_TRACE_SYSTEMTAP
108 + ifdef CONFIG_TRACE_SYSTEMTAP
109 +#diff -ur xen-4.2.0.orig/Makefile xen-4.2.0/Makefile
110 +#--- Makefile 2012-09-17 18:21:17.000000000 +0800
111 +#+++ Makefile 2012-11-22 09:09:45.080624651 +0800
112 +#@@ -62,11 +62,11 @@
113 +#
114 +# .PHONY: install-xen
115 +# install-xen:
116 +#- $(MAKE) -C xen install
117 +#+ +$(MAKE) -C xen install
118 +#
119 +# .PHONY: install-tools
120 +# install-tools:
121 +#- $(MAKE) -C tools install
122 +#+ +$(MAKE) -C tools install
123 +#
124 +# ifeq ($(CONFIG_IOEMU),y)
125 +# install-tools: tools/qemu-xen-traditional-dir tools/qemu-xen-dir
126
127 diff --git a/app-emulation/xen-tools/xen-tools-4.2.0.ebuild b/app-emulation/xen-tools/xen-tools-4.2.0-r1.ebuild
128 similarity index 89%
129 rename from app-emulation/xen-tools/xen-tools-4.2.0.ebuild
130 rename to app-emulation/xen-tools/xen-tools-4.2.0-r1.ebuild
131 index 93c8afa..7ee1dc5 100644
132 --- a/app-emulation/xen-tools/xen-tools-4.2.0.ebuild
133 +++ b/app-emulation/xen-tools/xen-tools-4.2.0-r1.ebuild
134 @@ -6,6 +6,9 @@ EAPI="4"
135 PYTHON_DEPEND="2"
136 PYTHON_USE_WITH="xml threads"
137
138 +IPXE_TARBALL_URL="http://dev.gentoo.org/~idella4/tarballs/ipxe.tar.gz"
139 +XEN_SEABIOS_URL="http://dev.gentoo.org/~idella4/tarballs/seabios-0-20121121.tar.bz2"
140 +
141 if [[ $PV == *9999 ]]; then
142 KEYWORDS=""
143 REPO="xen-unstable.hg"
144 @@ -14,17 +17,16 @@ if [[ $PV == *9999 ]]; then
145 live_eclass="mercurial"
146 else
147 KEYWORDS="~amd64 ~x86"
148 - XEN_EXTFILES_URL="http://xenbits.xensource.com/xen-extfiles"
149 - SRC_URI="http://bits.xensource.com/oss-xen/release/${PV}/xen-${PV}.tar.gz"
150 -# $XEN_EXTFILES_URL/ipxe-git-v1.0.0.tar.gz"
151 + SRC_URI="http://bits.xensource.com/oss-xen/release/${PV}/xen-${PV}.tar.gz
152 + $IPXE_TARBALL_URL
153 + $XEN_SEABIOS_URL"
154 S="${WORKDIR}/xen-${PV}"
155 fi
156 -
157 inherit flag-o-matic eutils multilib python toolchain-funcs ${live_eclass}
158
159 DESCRIPTION="Xend daemon and tools"
160 HOMEPAGE="http://xen.org/"
161 -DOCS=( README docs/README.xen-bugtool docs/ChangeLog )
162 +DOCS=( README docs/README.xen-bugtool )
163
164 LICENSE="GPL-2"
165 SLOT="0"
166 @@ -32,11 +34,6 @@ IUSE="api custom-cflags debug doc flask hvm qemu pygrub screen static-libs xend"
167
168 REQUIRED_USE="hvm? ( qemu )"
169
170 -QA_PRESTRIPPED="/usr/share/xen/qemu/openbios-ppc \
171 - /usr/share/xen/qemu/openbios-sparc64 \
172 - /usr/share/xen/qemu/openbios-sparc32"
173 -QA_WX_LOAD=${QA_PRESTRIPPED}
174 -
175 CDEPEND="<dev-libs/yajl-2
176 dev-python/lxml
177 dev-python/pypam
178 @@ -86,8 +83,7 @@ RDEPEND="${CDEPEND}
179 # hvmloader is used to bootstrap a fully virtualized kernel
180 # Approved by QA team in bug #144032
181 QA_WX_LOAD="usr/lib/xen/boot/hvmloader"
182 -QA_EXECSTACK="usr/share/xen/qemu/openbios-sparc32
183 - usr/share/xen/qemu/openbios-sparc64"
184 +
185 RESTRICT="test"
186
187 pkg_setup() {
188 @@ -129,11 +125,11 @@ pkg_setup() {
189 }
190
191 src_prepare() {
192 -# cp "$DISTDIR/ipxe-git-v1.0.0.tar.gz" tools/firmware/etherboot/ipxe.tar.gz
193 sed -e 's/-Wall//' -i Config.mk || die "Couldn't sanitize CFLAGS"
194
195 # Drop .config
196 sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
197 +
198 # Xend
199 if ! use xend; then
200 sed -e 's:xm xen-bugtool xen-python-path xend:xen-bugtool xen-python-path:' \
201 @@ -182,19 +178,24 @@ src_prepare() {
202 # Fix network broadcast on bridged networks
203 epatch "${FILESDIR}/${PN}-3.4.0-network-bridge-broadcast.patch"
204
205 - # Prevent the downloading of ipxe
206 -# sed -e 's:^\tif ! wget -O _$T:#\tif ! wget -O _$T:' \
207 -# -e 's:^\tfi:#\tfi:' -i \
208 -# -e 's:^\tmv _$T $T:#\tmv _$T $T:' \
209 -# -i tools/firmware/etherboot/Makefile || die
210 + # Prevent the downloading of ipxe, seabios
211 + epatch "${FILESDIR}"/${P/-tools/}-anti-download.patch
212 + cp $DISTDIR/ipxe.tar.gz tools/firmware/etherboot/ || die
213 + mv ../seabios-dir-remote tools/firmware/ || die
214 + pushd tools/firmware/ > /dev/null
215 + ln -s seabios-dir-remote seabios-dir || die
216 + popd > /dev/null
217
218 # Fix bridge by idella4, bug #362575
219 epatch "${FILESDIR}/${PN}-4.1.1-bridge.patch"
220
221 # Don't build ipxe with pie on hardened, Bug #360805
222 -# if gcc-specs-pie; then
223 + if gcc-specs-pie; then
224 epatch "${FILESDIR}/ipxe-nopie-4.2.0.patch"
225 -# fi
226 + fi
227 +
228 + # Prevent double stripping of files at install
229 + epatch "${FILESDIR}"/${P/-tools/}-nostrip.patch
230 }
231
232 src_compile() {
233 @@ -226,7 +227,6 @@ src_install() {
234 export CONFIG_LEAF_DIR=default
235
236 emake DESTDIR="${ED}" DOCDIR="/usr/share/doc/${PF}" XEN_PYTHON_NATIVE_INSTALL=y install-tools
237 - python_convert_shebangs -r 2 "${ED}"
238
239 # Remove RedHat-specific stuff
240 rm -rf "${ED}"/etc/init.d/xen* "${ED}"/etc/default || die
241 @@ -237,16 +237,15 @@ src_install() {
242 -e 's:^#vifscript="vif-bridge":vifscript="vif-bridge":' \
243 -i tools/examples/xl.conf || die
244
245 -# dodoc README docs/README.xen-bugtool docs/ChangeLog
246 if use doc; then
247 emake DESTDIR="${ED}" DOCDIR="/usr/share/doc/${PF}" install-docs
248
249 dohtml -r docs/api/
250 docinto pdf
251 dodoc ${DOCS[@]}
252 - #docs/api/tools/python/latex/refman.pdf
253 [ -d "${ED}"/usr/share/doc/xen ] && mv "${ED}"/usr/share/doc/xen/* "${ED}"/usr/share/doc/${PF}/html
254 fi
255 +
256 rm -rf "${ED}"/usr/share/doc/xen/
257 doman docs/man?/*
258
259 @@ -271,7 +270,7 @@ src_install() {
260 rm -f ${ED}usr/$(get_libdir)/*.a ${ED}usr/$(get_libdir)/ocaml/*/*.a
261 fi
262
263 - python_convert_shebangs -r 2 "${ED}"
264 + #python_convert_shebangs -r 2 "${ED}"
265 # xend expects these to exist
266 keepdir /var/run/xenstored /var/lib/xenstored /var/xen/dump /var/lib/xen /var/log/xen
267
268 @@ -281,6 +280,12 @@ src_install() {
269 # Temp QA workaround
270 mkdir -p "${ED}"$(get_libdir)
271 mv "${ED}"etc/udev "${ED}"$(get_libdir)
272 +
273 + # Remove files failing QA AFTER emake installs them, avoiding seeking absent files
274 + rm -f $(find "${ED}" -name openbios-sparc32) \
275 + $(find "${ED}" -name openbios-sparc64) \
276 + $(find "${ED}" -name openbios-ppc) \
277 + $(find "${ED}" -name palcode-clipper) || die
278 }
279
280 pkg_postinst() {