Gentoo Archives: gentoo-commits

From: Yixun Lan <dlan@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: app-emulation/xen-tools/, app-emulation/xen-tools/files/
Date: Thu, 05 Nov 2015 07:54:41
Message-Id: 1446708971.f92f40eabf0810dd43eb30ba95b4f7e7b21436db.dlan@gentoo
1 commit: f92f40eabf0810dd43eb30ba95b4f7e7b21436db
2 Author: Yixun Lan <dlan <AT> gentoo <DOT> org>
3 AuthorDate: Thu Nov 5 07:27:43 2015 +0000
4 Commit: Yixun Lan <dlan <AT> gentoo <DOT> org>
5 CommitDate: Thu Nov 5 07:36:11 2015 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f92f40ea
7
8 app-emulation/xen-tools: security bump, fix XSA-153
9
10 Gentoo bug: #564472
11
12 Package-Manager: portage-2.2.23
13
14 app-emulation/xen-tools/Manifest | 5 +
15 app-emulation/xen-tools/files/gentoo-patches.conf | 15 +-
16 ...ols-4.6.0.ebuild => xen-tools-4.2.5-r11.ebuild} | 239 ++++++++-------------
17 ...n-tools-4.6.0.ebuild => xen-tools-4.5.2.ebuild} | 2 +-
18 ...ools-4.6.0.ebuild => xen-tools-4.6.0-r1.ebuild} | 4 +-
19 5 files changed, 108 insertions(+), 157 deletions(-)
20
21 diff --git a/app-emulation/xen-tools/Manifest b/app-emulation/xen-tools/Manifest
22 index 2970466..71bcf10 100644
23 --- a/app-emulation/xen-tools/Manifest
24 +++ b/app-emulation/xen-tools/Manifest
25 @@ -1,12 +1,17 @@
26 DIST ovmf-20150629.tar.bz2 24265640 SHA256 9f316dc44e192fa9d5d7486cf1dae3f3094ab4f20f282f80d6251632c2cd6118 SHA512 b15a896b5222b920a500ec8a1eba5d670505441ffd02accf9b6c0deb9a12c1c5513a016f91eae5cb33f75ee9f28435dc957686e6ce8b5d0744c11a7d7262fffd WHIRLPOOL 8db4360dcb85f183dbd827f7381787c84065f94eaf746068b11ef7b30412b16cc0ba75effb04f01dea5f4f67967721f7aca11a2550035e95c59645c7964526ac
27 DIST seabios-1.6.3.2.tar.gz 422376 SHA256 888aafe37ef3d1f502a73518a5e4dd0e9373ce4cd41681c354771314f1e41dd7 SHA512 c54431d8e81d25b74427696da689e90d3ab68c7c1be1dec05c81658d28b650f53daa34dcee2da826c1cf5d5d39396b12b0b16ea20ed6fd89de8f732163c8cca5 WHIRLPOOL 826c0e034ca46291661faa363189ee6cf56098cabc39f8fc84d2c442cc2da2174c2fa027cc11e11a7c3fed619f2e524f2aee804d9836d256448cdad28631d69a
28 DIST seabios-1.7.5.tar.gz 537566 SHA256 858d9eda4ad91efa1c45a5a401d560ef9ca8dd172f03b0a106f06661c252dc51 SHA512 ecf5fb9ac44dde6e4ac00baa6c920dde51b923f23dd74e62c5a02eceaf235e57b885975c5a8bd0927e268115c72bd1143a080fdfd4eff4e168ebeaa30436280e WHIRLPOOL 5e1e99b3bd82a8607c5986fde4592c7437bec4bd78abd5873710f6c431d075436725e8d0d32e9f0dd2921c9d84b8613108b21d31c5309a73e337ead7adf35e90
29 +DIST xen-4.2.5-upstream-patches-10.tar.xz 41428 SHA256 b29ce85b049420838c3386b67184f4ba56794846d056837fa780ae89a80b40d0 SHA512 9e8046e27506d864e2d69728897cbba3eea1dd5ca748a3febb722901c5a67cca2ab49bb420071292538bd0345023fa337eb2d176b9ca05ca6bce47562f6710ec WHIRLPOOL 29e534ef6b951cf220a3a9476d1f76ac344bfc5c74998f2b472ec83cbe4781746298272e3c1fe8661a838cbc7d734d2730de6a1e9985b8a60f40c98f54449e2a
30 DIST xen-4.2.5-upstream-patches-9.tar.xz 23208 SHA256 2206e9a8aeeed207abbae995c5d2baa14d5f0da4120ae44f2de733ecf7ea5af1 SHA512 8a2edaba48002449a521edf2ae078ffe1b3db4f491a85b063886a147a0be3ec7fdb819ce84c90cdae80ed34c10ab2d637506700be10052a67be6ef128fa40fb1 WHIRLPOOL 037820e0fad60d1f7ed054efa797585c992d08f1ffd533705c515ad289f8cdddc72b97f2a3d75ebd683c6bb6988d7285452b4f3cebbe9a879f701156e387ff3b
31 DIST xen-4.2.5.tar.gz 15671925 SHA256 3cf440866315e8085050eb0586f0447b6b47a08dbed6a72226bf5ed5d89ec567 SHA512 42c0fc241952fc55fc44480fb6752b004b54ae40e946159ec047adf229b65cbfbd810271d01b064ad8fdbddb73c640dcdcb6bc19f91e8968829889c129920dac WHIRLPOOL 762a91c0111892b33e6bd3e7f7714709b04697ad7c2b0919fef6cc9570a343a77fd5a2b82833e75dac9d12d4e41acdcf0743b0d593595910ddd326f5cd721368
32 DIST xen-4.5.1-upstream-patches-0.tar.xz 18236 SHA256 95910023cb99f11b4df6d57d82000bbd67714d4ed0700e152619c5b82c1bc6e5 SHA512 531e5bbe6b9920a58361f11bb1bb6df65ebaf01e3af13f9aca018e8512727d950009257dfc9b3d0b0f847968da499cf9423716de8a04869cec6f92f5274462e2 WHIRLPOOL 3e6dda862d1bbe736b85422117148c3db91a308a58eb1476e27bbb7355ea7793269cdfc489697c9e5eea5f0ac5319df5c88f2707b10c9a96b8142927a4169819
33 DIST xen-4.5.1.tar.gz 18410400 SHA256 668c11d4fca67ac44329e369f810356eacd37b28d28fb96e66aac77f3c5e1371 SHA512 9436243e26bc64bc836a179abdc3a6b1b6fa9d3f2170453092c18be71fa62e18cd4465a9154c0f28a7ac8d69d08361ba1defef240a51197f058c012c3855ba04 WHIRLPOOL 71d8559f86683dd9fb3eb09d3f602de227f281fbd3c8cc258bfdb67c425d9e7c4d21cb0284c123e4263262c1b821fea6d28109861ce60d627f6426d352808d99
34 +DIST xen-4.5.2.tar.gz 18416220 SHA256 4c9e5dac4eea484974e9f76da2756c8e0973b4e884d28d37e955df9ebf00e7e8 SHA512 e0ce01a5356c254bfde48fae0b0e005c42c1615a7ccf4c1ba7dcf90784777b53995e9a9ae4575e3f19ef341014b34cb8c06e39d68be359f7fd69830501a144dd WHIRLPOOL b50ce28e58d8419915f7f85de7ab23128719fa07c54f28165c4ba864ffe57230230fa7cb61dd2ed7608b8bc178a072124aedc30c61a45fb8b745fc616715219b
35 +DIST xen-4.6.0-upstream-patches-0.tar.xz 19280 SHA256 8ef2d139f86cb52d2208a17c974e5a85356183ee359ab4b91882067548806e0c SHA512 9fde8d9def1d75e50c10069af7f9fea4b5b6992b7089eb554e1e2a4c78dd080f2977128d0dd541eeb735b951e7d6614a07101f7703457e7743ac6b3be962cdfe WHIRLPOOL 861c7f150811912422f6f5eb77437744d1456740a43bef3dfd88a2e6d6836c0e8460b788ccd4f14a7144652d65a825c08aa984ec4240b2b1ac6d09237695d19d
36 DIST xen-4.6.0.tar.gz 19694350 SHA256 6fa1c2431df55aa5950d248e6093b8c8c0f11c357a0adbd348a2186478e80909 SHA512 b4b02f306ffea360f539dd8c231b2f58c00c3638fdb665cb659c7291b475b40f1075bc59d49a6144767729e57b8bc40a1cfd9030d61de2b8fa4ac97d43655c2b WHIRLPOOL d3f01183440ca1875b6e850bd116db0c382383433e50c0902d3268e9e36b39d184fc65e925bdb5363ef4ca7a232fee15b4749c89baf789137b8a8248565c75a8
37 DIST xen-gentoo-patches-1.tar.xz 23044 SHA256 dcff35bbc4b6946473c9b55ad595a5fea88e8dac1bd977cbe18a644b2cced2e0 SHA512 a4c66382d44112e7be09711e3ecf0f8ebd9a30b29e04d8aca536430172bdd111ab8bab7700433e0dc35165f876eb7e9cd2e554d74ce2a166fb2dfd4de482cb7a WHIRLPOOL d0443e1501ac813ac3226df32a6b050c03302c3d74e3b3bd1293ab4ad929b5c314cc0eac13505ce8a826ee357117e8eeaf0713fd8b9c55f40296966fda082c2e
38 DIST xen-gentoo-patches-4.tar.xz 23632 SHA256 5cdb0f93ee32d0a5fc4fc7282270ace73acfdc4df694f7b29c1135180d902049 SHA512 3006ce4cd67e80a9f79d9ba3814a64704b0d762159a439a140b1ec0a2699473cd5537950f0913b55f8f7e3d0fd2e9861f3199793120d8d2502aa3f8ef7816c8f WHIRLPOOL 4a921103df2825ccd8b0481708e7cd692fa45d5aadae286c1522c144a1576920e7d3567648565bb9af85bb6bb597ea9d0ec04ea6abd2115db4caf7e739717b1a
39 +DIST xen-gentoo-patches-5.tar.xz 23664 SHA256 41e23ec6fb5a4ef5a1f8746de0e33579de2c725368afed6bd2b7506df5e8c2b5 SHA512 8370cef1aa06585e8fa8f8c6eb7f29375ac6f5a240c859ebb6982d1c1ec159c9c331c861f39838f53093cdceca24ee1b0d98c1c92874dd4113e73eb884842eac WHIRLPOOL 4b65283220b66555a69b65331d3dcb8b8353fef584eb723c2a703712bc6eac57b70f500eeeffc511e75d3ab5d3a1eac8aac83133baf4c90ab498b1843764eb9f
40 DIST xen-ovmf-patches-1.tar.xz 4724 SHA256 d14e98e62c78c9f4b8a7e7b4a04de6dabf300f393eff44154d06f93aa43d7703 SHA512 a17467762f6d92018ff9bce783ce148039f23159405e801ec2aef4c3db72c3976c6f1e41d8c2a2cb704a9654556a2050302f284cfe8e32f28f393b8e2c6d2f1c WHIRLPOOL de53ad07f20aa14fe76d974db92d5b6808f0a2dd26a627b818914990add7adad8e6135d42641819dc22947031981c5815bae5aeeed0f28785c90beda0a6ff6c8
41 DIST xen-security-patches-6.tar.xz 24780 SHA256 b41422583e5f7b4c85b82d89ab66f3e0fa8de8fdb2ae42aa3da40822e9507ef5 SHA512 c58831eb5e26a78a3072623b83bad125ddd4cd67c0075a708be81a7f50ee936cd2e5832a9b88129e11ec81ebafc9cfbc339fb8296d6f4b44c04630b349c4a621 WHIRLPOOL edecaefef0b6dd1a10c479362362640d9bd7a43623085c1f20b1171c65746220d7fdfd0e20892f60ea7d2f6052389da2a1d3c0179a88d7c4d52b3aa33cbef05e
42 +DIST xen-security-patches-7.tar.xz 22604 SHA256 e831c71f830316f452eb8645a5e7ca497264587aa8b353945fd9535f485166e3 SHA512 051769f4118f5c6d5d961759f547526d3fb0e86a4c1dee265a7f0224f10a88e2217b5b5fcf8dbfc706a1ec3c8d1632ab688d3f70dfd89d830261dc7391dd41c2 WHIRLPOOL 8e6dfb4e1700a07e3e3207b67afaddc5d6aa6fd84db9b3e76bd9ff54f682740fed01070e5860bb5378d50903d5777b55dff88eb3444d45bdd63dba657889393d
43
44 diff --git a/app-emulation/xen-tools/files/gentoo-patches.conf b/app-emulation/xen-tools/files/gentoo-patches.conf
45 index e21b516..942f157 100644
46 --- a/app-emulation/xen-tools/files/gentoo-patches.conf
47 +++ b/app-emulation/xen-tools/files/gentoo-patches.conf
48 @@ -79,6 +79,7 @@ _gx029=" xen-tools-4-anti-ovmf-download.patch"
49 _gx033=" xen-tools-4.4.2-gcc99.patch"
50 _gx034=" xen-tools-4.5.0-gcc99.patch"
51
52 +_gx035=" xen-tools-4.2-pod-docs-r1.patch"
53 # xen-tools-4.2.5 patches set
54 _gpv_xen_tools_425_0="
55 ${_gx001} ${_gx002} ${_gx003} ${_gx004} ${_gx005}
56 @@ -86,6 +87,12 @@ ${_gx006} ${_gx007} ${_gx008} ${_gx009} ${_gx010}
57 ${_gx011} ${_gx012} ${_gx013} ${_gx014} ${_gx015}
58 ${_gx016} ${_gx017} ${_gx018} ${_gx019}
59 "
60 +_gpv_xen_tools_425_1="
61 +${_gx001} ${_gx002} ${_gx003} ${_gx004} ${_gx035}
62 +${_gx006} ${_gx007} ${_gx008} ${_gx009} ${_gx010}
63 +${_gx011} ${_gx012} ${_gx013} ${_gx014} ${_gx015}
64 +${_gx016} ${_gx017} ${_gx018} ${_gx019}
65 +"
66
67 # xen-tools-4.5.1 patches set
68 _gpv_xen_tools_451_0="
69 @@ -94,7 +101,13 @@ ${_gx022} ${_gx017} ${_gx031}
70 ${_gx027} ${_gx032}
71 ${_gx028} ${_gx029} ${_gx034}
72 "
73 -
74 +# xen-tools-4.5.2 patches set
75 +_gpv_xen_tools_452_0="
76 +${_gx008} ${_gx024} ${_gx021}
77 +${_gx022} ${_gx017} ${_gx031}
78 +${_gx027} ${_gx032}
79 +${_gx028} ${_gx029} ${_gx034}
80 +"
81 # xen-tools-4.6.0 patches set
82 _gpv_xen_tools_460_0="
83 ${_gx008} ${_gx021}
84
85 diff --git a/app-emulation/xen-tools/xen-tools-4.6.0.ebuild b/app-emulation/xen-tools/xen-tools-4.2.5-r11.ebuild
86 similarity index 64%
87 copy from app-emulation/xen-tools/xen-tools-4.6.0.ebuild
88 copy to app-emulation/xen-tools/xen-tools-4.2.5-r11.ebuild
89 index f4f221e..96a0ccf 100644
90 --- a/app-emulation/xen-tools/xen-tools-4.6.0.ebuild
91 +++ b/app-emulation/xen-tools/xen-tools-4.2.5-r11.ebuild
92 @@ -4,8 +4,6 @@
93
94 EAPI=5
95
96 -MY_PV=${PV/_/-}
97 -
98 PYTHON_COMPAT=( python2_7 )
99 PYTHON_REQ_USE='xml,threads'
100
101 @@ -16,37 +14,29 @@ if [[ $PV == *9999 ]]; then
102 S="${WORKDIR}/${REPO}"
103 live_eclass="mercurial"
104 else
105 - KEYWORDS="~amd64 ~arm ~arm64 -x86"
106 - UPSTREAM_VER=
107 - SECURITY_VER=
108 + KEYWORDS="~amd64 ~x86"
109 + UPSTREAM_VER=10
110 + SECURITY_VER=7
111 # xen-tools's gentoo patches tarball
112 - GENTOO_VER=4
113 + GENTOO_VER=5
114 # xen-tools's gentoo patches version which apply to this specific ebuild
115 - GENTOO_GPV=0
116 - # xen-tools ovmf's patches
117 - OVMF_VER=1
118 -
119 - SEABIOS_VER=1.7.5
120 - OVMF_PV=20150629
121 + GENTOO_GPV=1
122 + SEABIOS_VER=1.6.3.2
123
124 [[ -n ${UPSTREAM_VER} ]] && \
125 UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P/-tools/}-upstream-patches-${UPSTREAM_VER}.tar.xz"
126 [[ -n ${SECURITY_VER} ]] && \
127 SECURITY_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-security-patches-${SECURITY_VER}.tar.xz"
128 [[ -n ${GENTOO_VER} ]] && \
129 - GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-gentoo-patches-${GENTOO_VER}.tar.xz"
130 - [[ -n ${OVMF_VER} ]] && \
131 - OVMF_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-ovmf-patches-${OVMF_VER}.tar.xz"
132 + GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools/}-gentoo-patches-${GENTOO_VER}.tar.xz"
133
134 - SRC_URI="http://bits.xensource.com/oss-xen/release/${MY_PV}/xen-${MY_PV}.tar.gz
135 + SRC_URI="http://bits.xensource.com/oss-xen/release/${PV}/xen-${PV}.tar.gz
136 http://code.coreboot.org/p/seabios/downloads/get/seabios-${SEABIOS_VER}.tar.gz
137 https://dev.gentoo.org/~dlan/distfiles/seabios-${SEABIOS_VER}.tar.gz
138 - ovmf? ( https://dev.gentoo.org/~dlan/distfiles/ovmf-${OVMF_PV}.tar.bz2
139 - ${OVMF_PATCHSET_URI} )
140 ${UPSTREAM_PATCHSET_URI}
141 ${SECURITY_PATCHSET_URI}
142 ${GENTOO_PATCHSET_URI}"
143 - S="${WORKDIR}/xen-${MY_PV}"
144 + S="${WORKDIR}/xen-${PV}"
145 fi
146
147 inherit bash-completion-r1 eutils flag-o-matic multilib python-single-r1 toolchain-funcs udev ${live_eclass}
148 @@ -57,50 +47,38 @@ DOCS=( README docs/README.xen-bugtool )
149
150 LICENSE="GPL-2"
151 SLOT="0"
152 -# Inclusion of IUSE ocaml on stabalizing requires maintainer of ocaml to (get off his hands and) make
153 -# >=dev-lang/ocaml-4 stable
154 -# Masked in profiles/eapi-5-files instead
155 -IUSE="api custom-cflags debug doc flask hvm qemu ocaml ovmf +pam python pygrub screen static-libs system-qemu system-seabios"
156 -
157 -REQUIRED_USE="hvm? ( || ( qemu system-qemu ) )
158 - ${PYTHON_REQUIRED_USE}
159 - pygrub? ( python )
160 - ovmf? ( hvm )
161 - qemu? ( !system-qemu )"
162 -
163 -COMMON_DEPEND="
164 - dev-libs/lzo:2
165 +IUSE="api custom-cflags debug doc flask hvm qemu ocaml pygrub screen static-libs system-seabios"
166 +
167 +REQUIRED_USE="hvm? ( qemu )
168 + ${PYTHON_REQUIRED_USE}"
169 +
170 +DEPEND="dev-libs/lzo:2
171 dev-libs/glib:2
172 dev-libs/yajl
173 - dev-libs/libaio
174 dev-libs/libgcrypt:0
175 - sys-libs/zlib
176 -"
177 -
178 -DEPEND="${COMMON_DEPEND}
179 dev-python/lxml[${PYTHON_USEDEP}]
180 - pam? ( dev-python/pypam[${PYTHON_USEDEP}] )
181 + dev-python/pypam[${PYTHON_USEDEP}]
182 + sys-libs/zlib
183 + sys-power/iasl
184 + system-seabios? ( sys-firmware/seabios )
185 + sys-firmware/ipxe
186 + dev-ml/findlib
187 hvm? ( media-libs/libsdl )
188 ${PYTHON_DEPS}
189 api? ( dev-libs/libxml2
190 net-misc/curl )
191 + ${PYTHON_DEPS}
192 pygrub? ( ${PYTHON_DEPS//${PYTHON_REQ_USE}/ncurses} )
193 - ovmf? ( ${PYTHON_DEPS//${PYTHON_REQ_USE}/sqlite} )
194 - !amd64? ( >=sys-apps/dtc-1.4.0 )
195 - amd64? ( sys-devel/bin86
196 - system-seabios? ( sys-firmware/seabios )
197 - sys-firmware/ipxe
198 - sys-devel/dev86
199 - sys-power/iasl )
200 + sys-devel/bin86
201 + sys-devel/dev86
202 dev-lang/perl
203 app-misc/pax-utils
204 - dev-python/markdown[${PYTHON_USEDEP}]
205 doc? (
206 app-doc/doxygen
207 dev-tex/latex2html[png,gif]
208 + media-gfx/transfig
209 media-gfx/graphviz
210 dev-tex/xcolor
211 - media-gfx/transfig
212 dev-texlive/texlive-latexextra
213 virtual/latex-base
214 dev-tex/latexmk
215 @@ -108,16 +86,11 @@ DEPEND="${COMMON_DEPEND}
216 dev-texlive/texlive-pictures
217 dev-texlive/texlive-latexrecommended
218 )
219 - hvm? ( x11-proto/xproto
220 - !net-libs/libiscsi )
221 - qemu? ( x11-libs/pixman )
222 - system-qemu? ( app-emulation/qemu[xen] )
223 - ocaml? ( dev-ml/findlib
224 - >=dev-lang/ocaml-4 )"
225 -
226 -RDEPEND="${COMMON_DEPEND}
227 - sys-apps/iproute2
228 + hvm? ( x11-proto/xproto
229 + !net-libs/libiscsi )"
230 +RDEPEND="sys-apps/iproute2
231 net-misc/bridge-utils
232 + ocaml? ( >=dev-lang/ocaml-4 )
233 screen? (
234 app-misc/screen
235 app-admin/logrotate
236 @@ -126,8 +99,7 @@ RDEPEND="${COMMON_DEPEND}
237
238 # hvmloader is used to bootstrap a fully virtualized kernel
239 # Approved by QA team in bug #144032
240 -QA_WX_LOAD="usr/lib/xen/boot/hvmloader
241 - usr/share/qemu-xen/qemu/s390-ccw.img"
242 +QA_WX_LOAD="usr/lib/xen/boot/hvmloader"
243
244 RESTRICT="test"
245
246 @@ -142,6 +114,12 @@ pkg_setup() {
247 export "CONFIG_GCRYPT=y"
248 fi
249
250 + if use qemu; then
251 + export "CONFIG_IOEMU=y"
252 + else
253 + export "CONFIG_IOEMU=n"
254 + fi
255 +
256 if [[ -z ${XEN_TARGET_ARCH} ]] ; then
257 if use x86 && use amd64; then
258 die "Confusion! Both x86 and amd64 are set in your use flags!"
259 @@ -149,14 +127,13 @@ pkg_setup() {
260 export XEN_TARGET_ARCH="x86_32"
261 elif use amd64 ; then
262 export XEN_TARGET_ARCH="x86_64"
263 - elif use arm; then
264 - export XEN_TARGET_ARCH="arm32"
265 - elif use arm64; then
266 - export XEN_TARGET_ARCH="arm64"
267 else
268 die "Unsupported architecture!"
269 fi
270 fi
271 +
272 + use api && export "LIBXENAPI_BINDINGS=y"
273 + use flask && export "FLASK_ENABLE=y"
274 }
275
276 src_prepare() {
277 @@ -199,12 +176,6 @@ src_prepare() {
278 popd > /dev/null
279 fi
280
281 - # move before Gentoo patch, one patch should apply to seabios, to fix gcc-4.5.x build err
282 - mv ../seabios-${SEABIOS_VER} tools/firmware/seabios-dir-remote || die
283 - pushd tools/firmware/ > /dev/null
284 - ln -s seabios-dir-remote seabios-dir || die
285 - popd > /dev/null
286 -
287 # Gentoo's patchset
288 if [[ -n ${GENTOO_VER} && -n ${GENTOO_GPV} ]]; then
289 einfo "Try to apply Gentoo specific patcheset"
290 @@ -217,29 +188,11 @@ src_prepare() {
291 done
292 fi
293
294 - # Ovmf's patchset
295 - if [[ -n ${OVMF_VER} ]] && use ovmf; then
296 - einfo "Try to apply Ovmf patcheset"
297 - pushd "${WORKDIR}"/ovmf-*/ > /dev/null
298 - EPATCH_SUFFIX="patch" \
299 - EPATCH_FORCE="yes" \
300 - EPATCH_OPTS="-p1" \
301 - epatch "${WORKDIR}"/patches-ovmf
302 - popd > /dev/null
303 - mv ../ovmf-${OVMF_PV} tools/firmware/ovmf-dir-remote || die
304 - fi
305 -
306 - mv tools/qemu-xen/qemu-bridge-helper.c tools/qemu-xen/xen-bridge-helper.c || die
307 -
308 - # Fix texi2html build error with new texi2html, qemu.doc.html
309 - sed -i -e "/texi2html -monolithic/s/-number//" tools/qemu-xen-traditional/Makefile || die
310 -
311 - use api || sed -e "/SUBDIRS-\$(LIBXENAPI_BINDINGS) += libxen/d" -i tools/Makefile || die
312 - sed -e 's:$(MAKE) PYTHON=$(PYTHON) subdirs-$@:LC_ALL=C "$(MAKE)" PYTHON=$(PYTHON) subdirs-$@:' \
313 - -i tools/firmware/Makefile || die
314 + use system-seabios && epatch "${WORKDIR}"/patches-gentoo/${PN}-4-unbundle-seabios.patch
315
316 - # Drop .config, fixes to gcc-4.6
317 - sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
318 + if gcc-specs-pie; then
319 + epatch "${WORKDIR}"/patches-gentoo/ipxe-nopie.patch
320 + fi
321
322 # if the user *really* wants to use their own custom-cflags, let them
323 if use custom-cflags; then
324 @@ -257,14 +210,12 @@ src_prepare() {
325 fi
326
327 if ! use pygrub; then
328 - sed -e '/^SUBDIRS-y += pygrub/d' -i tools/Makefile || die
329 - fi
330 -
331 - if ! use python; then
332 - sed -e '/^SUBDIRS-y += python$/d' -i tools/Makefile || die
333 + sed -e '/^SUBDIRS-$(PYTHON_TOOLS) += pygrub$/d' -i tools/Makefile || die
334 fi
335
336 + # Disable hvm support on systems that don't support x86_32 binaries.
337 if ! use hvm; then
338 + sed -e '/^CONFIG_IOEMU := y$/d' -i config/*.mk || die
339 sed -e '/SUBDIRS-$(CONFIG_X86) += firmware/d' -i tools/Makefile || die
340 # Bug 351648
341 elif ! use x86 && ! has x86 $(get_all_abis); then
342 @@ -275,63 +226,41 @@ src_prepare() {
343
344 # Don't bother with qemu, only needed for fully virtualised guests
345 if ! use qemu; then
346 - sed -e "s:install-tools\: tools/qemu-xen-traditional-dir:install-tools\: :g" -i Makefile || die
347 + sed -e "/^CONFIG_IOEMU := y$/d" -i config/*.mk || die
348 + sed -e "s:install-tools\: tools/ioemu-dir:install-tools\: :g" -i Makefile || die
349 fi
350
351 + mv ../seabios-${SEABIOS_VER} tools/firmware/seabios-dir-remote || die
352 + pushd tools/firmware/ > /dev/null
353 + ln -s seabios-dir-remote seabios-dir || die
354 + popd > /dev/null
355 +
356 # Reset bash completion dir; Bug 472438
357 sed -e "s:^BASH_COMPLETION_DIR ?= \$(CONFIG_DIR)/bash_completion.d:BASH_COMPLETION_DIR ?= $(get_bashcompdir):" \
358 -i Config.mk || die
359 sed -i -e "/bash-completion/s/xl\.sh/xl/g" tools/libxl/Makefile || die
360
361 - # xencommons, Bug #492332, sed lighter weight than patching
362 - sed -e 's:\$QEMU_XEN -xen-domid:test -e "\$QEMU_XEN" \&\& &:' \
363 - -i tools/hotplug/Linux/init.d/xencommons.in || die
364 + # Bug 445986
365 + sed -e 's:$(MAKE) PYTHON=$(PYTHON) subdirs-$@:LC_ALL=C "$(MAKE)" PYTHON=$(PYTHON) subdirs-$@:' -i tools/firmware/Makefile || die
366
367 - # respect multilib, usr/lib/libcacard.so.0.0.0
368 - sed -e "/^libdir=/s/\/lib/\/$(get_libdir)/" \
369 - -i tools/qemu-xen/configure || die
370 + # fix QA warning, create /var/run/, /var/lock dynamically
371 + sed -i -e "/\$(INSTALL_DIR) \$(DESTDIR)\$(XEN_RUN_DIR)/d" \
372 + tools/libxl/Makefile || die
373
374 - #bug 518136, don't build 32bit exactuable for nomultilib profile
375 - if [[ "${ARCH}" == 'amd64' ]] && ! has_multilib_profile; then
376 - sed -i -e "/x86_emulator/d" tools/tests/Makefile || die
377 - fi
378 + sed -i -e "/\/var\/run\//d" \
379 + tools/xenstore/Makefile \
380 + tools/pygrub/Makefile || die
381
382 - # use /var instead of /var/lib, consistat with previous ebuild
383 - sed -i -e "/XEN_LOCK_DIR=/s/\$localstatedir/\/var/g" \
384 - m4/paths.m4 configure tools/configure || die
385 - # use /run instead of /var/run
386 - sed -i -e "/XEN_RUN_DIR=/s/\$localstatedir//g" \
387 - m4/paths.m4 configure tools/configure || die
388 + sed -i -e "/\/var\/lock\/subsys/d" \
389 + tools/Makefile || die
390
391 - # uncomment lines in xl.conf
392 - sed -e 's:^#autoballoon=:autoballoon=:' \
393 - -e 's:^#lockfile=:lockfile=:' \
394 - -e 's:^#vif.default.script=:vif.default.script=:' \
395 - -i tools/examples/xl.conf || die
396 + # xencommons, Bug #492332, sed lighter weight than patching
397 + sed -e 's:\$QEMU_XEN -xen-domid:test -e "\$QEMU_XEN" \&\& &:' \
398 + -i tools/hotplug/Linux/init.d/xencommons || die
399
400 epatch_user
401 }
402
403 -src_configure() {
404 - local myconf="--prefix=${PREFIX}/usr \
405 - --libdir=${PREFIX}/usr/$(get_libdir) \
406 - --libexecdir=${PREFIX}/usr/libexec \
407 - --disable-werror \
408 - --disable-xen \
409 - --enable-tools \
410 - --enable-docs \
411 - $(use_with system-qemu) \
412 - $(use_enable pam) \
413 - $(use_enable api xenapi) \
414 - $(use_enable ovmf) \
415 - $(use_enable ocaml ocamltools) \
416 - "
417 - use system-seabios && myconf+=" --with-system-seabios=/usr/share/seabios/bios.bin"
418 - use qemu || myconf+=" --with-system-qemu"
419 - use amd64 && myconf+=" --enable-qemu-traditional"
420 - econf ${myconf}
421 -}
422 -
423 src_compile() {
424 export VARTEXFONTS="${T}/fonts"
425 local myopt
426 @@ -359,15 +288,20 @@ src_install() {
427 local PYTHONDONTWRITEBYTECODE
428 export PYTHONDONTWRITEBYTECODE
429
430 - emake DESTDIR="${ED}" DOCDIR="/usr/share/doc/${PF}" \
431 + emake DESTDIR="${ED}" DOCDIR="/usr/share/doc/${PF}" install-tools \
432 XEN_PYTHON_NATIVE_INSTALL=y install-tools
433 -
434 # Fix the remaining Python shebangs.
435 - python_fix_shebang "${D}"
436 + python_fix_shebang "${ED}"
437
438 # Remove RedHat-specific stuff
439 rm -rf "${D}"tmp || die
440
441 + # uncomment lines in xl.conf
442 + sed -e 's:^#autoballoon=1:autoballoon=1:' \
443 + -e 's:^#lockfile="/var/lock/xl":lockfile="/var/lock/xl":' \
444 + -e 's:^#vifscript="vif-bridge":vifscript="vif-bridge":' \
445 + -i tools/examples/xl.conf || die
446 +
447 if use doc; then
448 emake DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-docs
449
450 @@ -388,20 +322,26 @@ src_install() {
451 newinitd "${FILESDIR}"/xenconsoled.initd xenconsoled
452 newinitd "${FILESDIR}"/xencommons.initd xencommons
453 newconfd "${FILESDIR}"/xencommons.confd xencommons
454 - newinitd "${FILESDIR}"/xenqemudev.initd xenqemudev
455 - newconfd "${FILESDIR}"/xenqemudev.confd xenqemudev
456
457 if use screen; then
458 - cat "${FILESDIR}"/xendomains-screen.confd >> "${D}"/etc/conf.d/xendomains || die
459 - cp "${FILESDIR}"/xen-consoles.logrotate "${D}"/etc/xen/ || die
460 + cat "${FILESDIR}"/xendomains-screen.confd >> "${ED}"/etc/conf.d/xendomains || die
461 + cp "${FILESDIR}"/xen-consoles.logrotate "${ED}"/etc/xen/ || die
462 keepdir /var/log/xen-consoles
463 fi
464
465 + if [[ "${ARCH}" == 'amd64' ]] && use qemu; then
466 + mkdir -p "${D}"usr/$(get_libdir)/xen/bin || die
467 + mv "${D}"usr/lib/xen/bin/qemu* "${D}"usr/$(get_libdir)/xen/bin/ || die
468 + fi
469 +
470 # For -static-libs wrt Bug 384355
471 if ! use static-libs; then
472 rm -f "${D}"usr/$(get_libdir)/*.a "${D}"usr/$(get_libdir)/ocaml/*/*.a
473 fi
474
475 + # xend expects these to exist
476 + keepdir /var/lib/xenstored /var/xen/dump /var/lib/xen /var/log/xen
477 +
478 # for xendomains
479 keepdir /etc/xen/auto
480
481 @@ -417,10 +357,10 @@ src_install() {
482
483 pkg_postinst() {
484 elog "Official Xen Guide and the offical wiki page:"
485 - elog "https://wiki.gentoo.org/wiki/Xen"
486 + elog "https://www.gentoo.org/doc/en/xen-gu"${D}"usr/ide.xml"
487 elog "http://wiki.xen.org/wiki/Main_Page"
488 elog ""
489 - elog "Recommended to utilise the xencommons script to config sytem At boot"
490 + elog "Recommended to utilise the xencommons script to config sytem at boot."
491 elog "Add by use of rc-update on completion of the install"
492
493 # TODO: we need to have the current Python slot here.
494 @@ -443,13 +383,6 @@ pkg_postinst() {
495 elog "An x86 or amd64 system is required to build HVM support."
496 fi
497
498 - if use qemu; then
499 - elog "The qemu-bridge-helper is renamed to the xen-bridge-helper in the in source"
500 - elog "build of qemu. This allows for app-emulation/qemu to be emerged concurrently"
501 - elog "with the qemu capable xen. It is up to the user to distinguish between and utilise"
502 - elog "the qemu-bridge-helper and the xen-bridge-helper. File bugs of any issues that arise"
503 - fi
504 -
505 if grep -qsF XENSV= "${ROOT}/etc/conf.d/xend"; then
506 echo
507 elog "xensv is broken upstream (Gentoo bug #142011)."
508
509 diff --git a/app-emulation/xen-tools/xen-tools-4.6.0.ebuild b/app-emulation/xen-tools/xen-tools-4.5.2.ebuild
510 similarity index 99%
511 copy from app-emulation/xen-tools/xen-tools-4.6.0.ebuild
512 copy to app-emulation/xen-tools/xen-tools-4.5.2.ebuild
513 index f4f221e..d43a1c2 100644
514 --- a/app-emulation/xen-tools/xen-tools-4.6.0.ebuild
515 +++ b/app-emulation/xen-tools/xen-tools-4.5.2.ebuild
516 @@ -18,7 +18,7 @@ if [[ $PV == *9999 ]]; then
517 else
518 KEYWORDS="~amd64 ~arm ~arm64 -x86"
519 UPSTREAM_VER=
520 - SECURITY_VER=
521 + SECURITY_VER=7
522 # xen-tools's gentoo patches tarball
523 GENTOO_VER=4
524 # xen-tools's gentoo patches version which apply to this specific ebuild
525
526 diff --git a/app-emulation/xen-tools/xen-tools-4.6.0.ebuild b/app-emulation/xen-tools/xen-tools-4.6.0-r1.ebuild
527 similarity index 99%
528 rename from app-emulation/xen-tools/xen-tools-4.6.0.ebuild
529 rename to app-emulation/xen-tools/xen-tools-4.6.0-r1.ebuild
530 index f4f221e..4b02971 100644
531 --- a/app-emulation/xen-tools/xen-tools-4.6.0.ebuild
532 +++ b/app-emulation/xen-tools/xen-tools-4.6.0-r1.ebuild
533 @@ -17,8 +17,8 @@ if [[ $PV == *9999 ]]; then
534 live_eclass="mercurial"
535 else
536 KEYWORDS="~amd64 ~arm ~arm64 -x86"
537 - UPSTREAM_VER=
538 - SECURITY_VER=
539 + UPSTREAM_VER=0
540 + SECURITY_VER=7
541 # xen-tools's gentoo patches tarball
542 GENTOO_VER=4
543 # xen-tools's gentoo patches version which apply to this specific ebuild