Gentoo Archives: gentoo-commits

From: "Micheal Marineau (marineam)" <marineam@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in app-emulation/xen-tools: ChangeLog xen-tools-3.1.3.ebuild
Date: Sun, 03 Feb 2008 01:45:08
Message-Id: E1JLTur-0004VD-Ao@stork.gentoo.org
1 marineam 08/02/03 01:45:05
2
3 Modified: ChangeLog
4 Added: xen-tools-3.1.3.ebuild
5 Log:
6 Bump to xen ebuilds to 3.1.3
7 (Portage version: 2.1.3.9)
8
9 Revision Changes Path
10 1.35 app-emulation/xen-tools/ChangeLog
11
12 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-emulation/xen-tools/ChangeLog?rev=1.35&view=markup
13 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-emulation/xen-tools/ChangeLog?rev=1.35&content-type=text/plain
14 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-emulation/xen-tools/ChangeLog?r1=1.34&r2=1.35
15
16 Index: ChangeLog
17 ===================================================================
18 RCS file: /var/cvsroot/gentoo-x86/app-emulation/xen-tools/ChangeLog,v
19 retrieving revision 1.34
20 retrieving revision 1.35
21 diff -u -r1.34 -r1.35
22 --- ChangeLog 14 Dec 2007 17:26:58 -0000 1.34
23 +++ ChangeLog 3 Feb 2008 01:45:04 -0000 1.35
24 @@ -1,6 +1,13 @@
25 # ChangeLog for app-emulation/xen-tools
26 -# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
27 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/xen-tools/ChangeLog,v 1.34 2007/12/14 17:26:58 rbu Exp $
28 +# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
29 +# $Header: /var/cvsroot/gentoo-x86/app-emulation/xen-tools/ChangeLog,v 1.35 2008/02/03 01:45:04 marineam Exp $
30 +
31 +*xen-tools-3.1.3 (03 Feb 2008)
32 +
33 + 03 Feb 2008; Michael Marineau <marineam@g.o>
34 + +files/xen-tools-3.1.3-network-bridge-broadcast.patch,
35 + +xen-tools-3.1.3.ebuild:
36 + Version bump to 3.1.3
37
38 14 Dec 2007; Robert Buchholz <rbu@g.o> xen-tools-3.1.2.ebuild:
39 Added a check for USE=ncurses in python in case we use pygrub
40
41
42
43 1.1 app-emulation/xen-tools/xen-tools-3.1.3.ebuild
44
45 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-emulation/xen-tools/xen-tools-3.1.3.ebuild?rev=1.1&view=markup
46 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-emulation/xen-tools/xen-tools-3.1.3.ebuild?rev=1.1&content-type=text/plain
47
48 Index: xen-tools-3.1.3.ebuild
49 ===================================================================
50 # Copyright 1999-2008 Gentoo Foundation
51 # Distributed under the terms of the GNU General Public License v2
52 # $Header: /var/cvsroot/gentoo-x86/app-emulation/xen-tools/xen-tools-3.1.3.ebuild,v 1.1 2008/02/03 01:45:04 marineam Exp $
53
54 inherit flag-o-matic eutils multilib
55
56 DESCRIPTION="Xend daemon and tools"
57 HOMEPAGE="http://www.xensource.com/xen/xen/"
58 SRC_URI="mirror://gentoo/xen-${PV}.tar.bz2"
59 S="${WORKDIR}/xen-${PV}"
60
61 LICENSE="GPL-2"
62 SLOT="0"
63 KEYWORDS="~amd64 ~x86"
64 IUSE="doc debug screen custom-cflags pygrub hvm"
65
66 CDEPEND="dev-lang/python
67 sys-libs/zlib
68 hvm? ( media-libs/libsdl )"
69
70 DEPEND="${CDEPEND}
71 sys-devel/gcc
72 dev-lang/perl
73 app-misc/pax-utils
74 doc? (
75 dev-tex/latex2html
76 media-gfx/transfig
77 media-gfx/graphviz
78 )
79 hvm? (
80 x11-proto/xproto
81 net-libs/libvncserver
82 sys-devel/dev86
83 )"
84
85 RDEPEND="${CDEPEND}
86 sys-apps/iproute2
87 net-misc/bridge-utils
88 screen? (
89 app-misc/screen
90 app-admin/logrotate
91 )
92 || ( sys-fs/udev sys-apps/hotplug )"
93
94 PYTHON_MODNAME="xen grub"
95
96 # hvmloader is used to bootstrap a fully virtualized kernel
97 # Approved by QA team in bug #144032
98 QA_WX_LOAD="usr/lib/xen/boot/hvmloader"
99
100 pkg_setup() {
101 if ! use x86 && ! has x86 $(get_all_abis) && use hvm; then
102 eerror "HVM (VT-x and AMD-v) cannot be built on this system. An x86 or"
103 eerror "an amd64 multilib profile is required. Remove the hvm use flag"
104 eerror "to build xen-tools on your current profile."
105 die "USE=hvm is unsupported on this system."
106 fi
107
108 if [[ -z ${XEN_TARGET_ARCH} ]] ; then
109 if use x86 && use amd64; then
110 die "Confusion! Both x86 and amd64 are set in your use flags!"
111 elif use x86; then
112 export XEN_TARGET_ARCH="x86_32"
113 elif use amd64 ; then
114 export XEN_TARGET_ARCH="x86_64"
115 else
116 die "Unsupported architecture!"
117 fi
118 fi
119
120 if use doc && ! built_with_use -o dev-tex/latex2html png gif; then
121 # die early instead of later
122 eerror "USE=doc requires latex2html with image support. Please add"
123 eerror "'png' and/or 'gif' to your use flags and re-emerge latex2html"
124 die "latex2html missing both png and gif flags"
125 fi
126
127 if use pygrub && ! built_with_use dev-lang/python ncurses; then
128 eerror "USE=pygrub requires python to be built with ncurses support. Please add"
129 eerror "'ncurses' to your use flags and re-emerge python"
130 die "python is missing ncurses flags"
131 fi
132 }
133
134 src_unpack() {
135 unpack ${A}
136 cd "${S}"
137
138 # if the user *really* wants to use their own custom-cflags, let them
139 if use custom-cflags; then
140 einfo "User wants their own CFLAGS - removing defaults"
141 # try and remove all the default custom-cflags
142 find "${S}" -name Makefile -o -name Rules.mk -o -name Config.mk -exec sed \
143 -e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
144 -e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
145 -e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
146 -e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
147 -e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
148 -i {} \;
149 fi
150
151 # Disable hvm support on systems that don't support x86_32 binaries.
152 if ! use hvm; then
153 chmod 644 tools/check/check_x11_devel
154 sed -i -e '/^CONFIG_IOEMU := y$/d' "${S}"/config/*.mk
155 sed -i -e '/SUBDIRS-$(CONFIG_X86) += firmware/d' "${S}"/tools/Makefile
156 fi
157
158 if ! use pygrub; then
159 sed -i -e "/^SUBDIRS-y += pygrub$/d" "${S}"/tools/Makefile
160 fi
161
162 # Allow --as-needed LDFLAGS
163 epatch "${FILESDIR}/${PN}-3.0.4_p1--as-needed.patch"
164
165 # Fix network broadcast on bridged networks
166 epatch "${FILESDIR}/${PN}-3.1.3-network-bridge-broadcast.patch"
167
168 # Fix building small dumb utility called 'xen-detect' on hardened
169 epatch "${FILESDIR}/${PN}-3.1.0-xen-detect-nopie-fix.patch"
170 }
171
172 src_compile() {
173 local myopt myconf
174 use debug && myopt="${myopt} debug=y"
175
176 use custom-cflags || unset CFLAGS
177 if test-flag-CC -fno-strict-overflow; then
178 append-flags -fno-strict-overflow
179 fi
180
181 if use hvm; then
182 myconf="${myconf} --disable-system --disable-user"
183 (cd tools/ioemu && econf ${myconf}) || die "configure failured"
184 fi
185
186 emake -C tools ${myopt} || die "compile failed"
187
188 if use doc; then
189 sh ./docs/check_pkgs || die "package check failed"
190 emake -C docs || die "compiling docs failed"
191 fi
192
193 emake -C docs man-pages || die "make man-pages failed"
194 }
195
196 src_install() {
197 local myopt="XEN_PYTHON_NATIVE_INSTALL=1"
198
199 make DESTDIR="${D}" -C tools ${myopt} install \
200 || die "install failed"
201
202 # Remove RedHat-specific stuff
203 rm -rf "${D}"/etc/sysconfig
204
205 if use doc; then
206 make DESTDIR="${D}" -C docs install || die "install docs failed"
207 # Rename doc/xen to the Gentoo-style doc/xen-x.y
208 mv "${D}"/usr/share/doc/{${PN},${PF}}
209 fi
210
211 doman docs/man?/*
212
213 newinitd "${FILESDIR}"/xend.initd xend \
214 || die "Couldn't install xen.initd"
215 newconfd "${FILESDIR}"/xendomains.confd xendomains \
216 || die "Couldn't install xendomains.confd"
217 newinitd "${FILESDIR}"/xendomains.initd xendomains \
218 || die "Couldn't install xendomains.initd"
219
220 if use screen; then
221 cat "${FILESDIR}"/xendomains-screen.confd >> "${D}"/etc/conf.d/xendomains
222 cp "${FILESDIR}"/xen-consoles.logrotate "${D}"/etc/xen/
223 keepdir /var/log/xen-consoles
224 fi
225
226 # xend expects these to exist
227 keepdir /var/run/xenstored /var/lib/xenstored /var/xen/dump /var/lib/xen /var/log/xen
228
229 # for xendomains
230 keepdir /etc/xen/auto
231 }
232
233 pkg_postinst() {
234 elog "Official Xen Guide and the unoffical wiki page:"
235 elog " http://www.gentoo.org/doc/en/xen-guide.xml"
236 elog " http://gentoo-wiki.com/HOWTO_Xen_and_Gentoo"
237
238 if [[ "$(scanelf -s __guard -q $(type -P python))" ]] ; then
239 echo
240 ewarn "xend may not work when python is built with stack smashing protection (ssp)."
241 ewarn "If 'xm create' fails with '<ProtocolError for /RPC2: -1 >', see bug #141866"
242 ewarn "This probablem may be resolved as of Xen 3.0.4, if not post in the bug."
243 fi
244
245 if ! built_with_use dev-lang/python ncurses; then
246 echo
247 ewarn "NB: Your dev-lang/python is built without USE=ncurses."
248 ewarn "Please rebuild python with USE=ncurses to make use of xenmon.py."
249 fi
250
251 if built_with_use sys-apps/iproute2 minimal; then
252 echo
253 ewarn "Your sys-apps/iproute2 is built with USE=minimal. Networking"
254 ewarn "will not work until you rebuild iproute2 without USE=minimal."
255 fi
256
257 if ! use hvm; then
258 echo
259 elog "HVM (VT-x and AMD-V) support has been disabled. If you need hvm"
260 elog "support enable the hvm use flag."
261 elog "An x86 or amd64 multilib system is required to build HVM support."
262 echo
263 elog "The ioemu use flag has been removed and replaced with hvm."
264 fi
265
266 if grep -qsF XENSV= "${ROOT}/etc/conf.d/xend"; then
267 echo
268 elog "xensv is broken upstream (Gentoo bug #142011)."
269 elog "Please remove '${ROOT%/}/etc/conf.d/xend', as it is no longer needed."
270 fi
271 }
272
273
274
275 --
276 gentoo-commits@l.g.o mailing list