Gentoo Archives: gentoo-commits

From: "Diego Petteno (flameeyes)" <flameeyes@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in app-emulation/libvirt: ChangeLog libvirt-0.8.7.ebuild
Date: Thu, 06 Jan 2011 14:34:48
Message-Id: 20110106143436.E3AC020051@flycatcher.gentoo.org
1 flameeyes 11/01/06 14:34:36
2
3 Modified: ChangeLog
4 Added: libvirt-0.8.7.ebuild
5 Log:
6 Version bump; add a workaround for tests failing with sandbox enabled.
7
8 (Portage version: 2.2.0_alpha13/cvs/Linux x86_64)
9
10 Revision Changes Path
11 1.83 app-emulation/libvirt/ChangeLog
12
13 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-emulation/libvirt/ChangeLog?rev=1.83&view=markup
14 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-emulation/libvirt/ChangeLog?rev=1.83&content-type=text/plain
15 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-emulation/libvirt/ChangeLog?r1=1.82&r2=1.83
16
17 Index: ChangeLog
18 ===================================================================
19 RCS file: /var/cvsroot/gentoo-x86/app-emulation/libvirt/ChangeLog,v
20 retrieving revision 1.82
21 retrieving revision 1.83
22 diff -u -r1.82 -r1.83
23 --- ChangeLog 13 Dec 2010 12:04:45 -0000 1.82
24 +++ ChangeLog 6 Jan 2011 14:34:36 -0000 1.83
25 @@ -1,6 +1,11 @@
26 # ChangeLog for app-emulation/libvirt
27 -# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
28 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/libvirt/ChangeLog,v 1.82 2010/12/13 12:04:45 flameeyes Exp $
29 +# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
30 +# $Header: /var/cvsroot/gentoo-x86/app-emulation/libvirt/ChangeLog,v 1.83 2011/01/06 14:34:36 flameeyes Exp $
31 +
32 +*libvirt-0.8.7 (06 Jan 2011)
33 +
34 + 06 Jan 2011; Diego E. Pettenò <flameeyes@g.o> +libvirt-0.8.7.ebuild:
35 + Version bump; add a workaround for tests failing with sandbox enabled.
36
37 *libvirt-0.8.6-r1 (13 Dec 2010)
38
39
40
41
42 1.1 app-emulation/libvirt/libvirt-0.8.7.ebuild
43
44 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-emulation/libvirt/libvirt-0.8.7.ebuild?rev=1.1&view=markup
45 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-emulation/libvirt/libvirt-0.8.7.ebuild?rev=1.1&content-type=text/plain
46
47 Index: libvirt-0.8.7.ebuild
48 ===================================================================
49 # Copyright 1999-2011 Gentoo Foundation
50 # Distributed under the terms of the GNU General Public License v2
51 # $Header: /var/cvsroot/gentoo-x86/app-emulation/libvirt/libvirt-0.8.7.ebuild,v 1.1 2011/01/06 14:34:36 flameeyes Exp $
52
53 #BACKPORTS=1
54 #AUTOTOOLIZE=yes
55
56 EAPI="2"
57
58 PYTHON_DEPEND="python? 2:2.4"
59 #RESTRICT_PYTHON_ABIS="3.*"
60 #SUPPORT_PYTHON_ABIS="1"
61
62 inherit eutils python ${AUTOTOOLIZE+autotools}
63
64 DESCRIPTION="C toolkit to manipulate virtual machines"
65 HOMEPAGE="http://www.libvirt.org/"
66 SRC_URI="http://libvirt.org/sources/${P}.tar.gz
67 ${BACKPORTS:+
68 http://dev.gentoo.org/~flameeyes/${PN}/${P}-backports-${BACKPORTS}.tar.bz2
69 http://dev.gentoo.org/~cardoe/${PN}/${P}-backports-${BACKPORTS}.tar.bz2}"
70 LICENSE="LGPL-2.1"
71 SLOT="0"
72 KEYWORDS="~amd64 ~x86"
73 IUSE="avahi caps debug iscsi +libvirtd lvm +lxc macvtap +network nfs nls \
74 numa openvz parted pcap phyp policykit python qemu sasl selinux
75 uml virtualbox xen udev +json"
76 # IUSE=one : bug #293416 & bug #299011
77
78 RDEPEND="sys-libs/readline
79 sys-libs/ncurses
80 >=net-misc/curl-7.18.0
81 >=dev-libs/libxml2-2.7.6
82 >=dev-libs/libnl-1.1
83 >=net-libs/gnutls-1.0.25
84 sys-fs/sysfsutils
85 sys-apps/util-linux
86 >=net-analyzer/netcat6-1.0-r2
87 avahi? ( >=net-dns/avahi-0.6[dbus] )
88 caps? ( sys-libs/libcap-ng )
89 iscsi? ( sys-block/open-iscsi )
90 libvirtd? ( net-misc/bridge-utils )
91 lvm? ( >=sys-fs/lvm2-2.02.48-r2 )
92 macvtap? ( >=dev-libs/libnl-1.1 )
93 nfs? ( net-fs/nfs-utils )
94 numa? ( sys-process/numactl )
95 openvz? ( sys-kernel/openvz-sources )
96 parted? ( >=sys-block/parted-1.8[device-mapper] )
97 pcap? ( >=net-libs/libpcap-1.0.0 )
98 phyp? ( net-libs/libssh2 )
99 policykit? ( >=sys-auth/polkit-0.9 )
100 qemu? ( || ( app-emulation/qemu-kvm >=app-emulation/qemu-0.10.0 app-emulation/qemu-kvm-spice ) )
101 sasl? ( dev-libs/cyrus-sasl )
102 selinux? ( >=sys-libs/libselinux-2.0.85 )
103 virtualbox? ( || ( >=app-emulation/virtualbox-ose-2.2.0 >=app-emulation/virtualbox-bin-2.2.0 ) )
104 xen? ( app-emulation/xen-tools app-emulation/xen )
105 udev? ( >=sys-fs/udev-145 >=x11-libs/libpciaccess-0.10.9 )
106 json? ( dev-libs/yajl )"
107 # one? ( dev-libs/xmlrpc-c )
108 DEPEND="${RDEPEND}
109 dev-util/pkgconfig
110 nls? ( sys-devel/gettext )"
111
112 pkg_setup() {
113 python_set_active_version 2
114 }
115
116 src_prepare() {
117 [[ -n ${BACKPORTS} ]] && \
118 EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \
119 epatch
120
121 # This is required to be able to run the tests when using the sandbox
122 if [[ ${LD_PRELOAD} == libsandbox.so ]]; then
123 sed -i -e '/LOGNAME/iENV:LD_PRELOAD=libsandbox.so' \
124 "${S}"/tests/commanddata/*.log || die
125 sed -i -e '/DISPLAY/aENV:LD_PRELOAD=libsandbox.so' \
126 "${S}"/tests/commanddata/test6.log || die
127 sed -i -e '/LANG/aENV:LD_PRELOAD=libsandbox.so' \
128 "${S}"/tests/commanddata/test8.log || die
129 fi
130
131 [[ -n ${AUTOTOOLIZE} ]] && eautoreconf
132 }
133
134 src_configure() {
135 local myconf=""
136
137 myconf="${myconf} $(use_enable debug)"
138
139 ## enable/disable daemon, otherwise client only utils
140 myconf="${myconf} $(use_with libvirtd)"
141
142 ## enable/disable the daemon using avahi to find VMs
143 myconf="${myconf} $(use_with avahi)"
144
145 ## hypervisors on the local host
146 myconf="${myconf} $(use_with xen) $(use_with xen xen-inotify)"
147 myconf="${myconf} $(use_with openvz)"
148 myconf="${myconf} $(use_with lxc)"
149 if use virtualbox && has_version app-emulation/virtualbox-ose; then
150 myconf="${myconf} --with-vbox=/usr/lib/virtualbox-ose/"
151 else
152 myconf="${myconf} $(use_with virtualbox vbox)"
153 fi
154 myconf="${myconf} $(use_with uml)"
155 myconf="${myconf} $(use_with qemu)"
156 # doesn't belong with hypervisors but links to libvirtd for some reason
157 #myconf="${myconf} $(use_with one)"
158
159 ## hypervisor protocols
160 myconf="${myconf} $(use_with phyp)"
161 myconf="${myconf} --with-esx"
162
163 ## additional host drivers
164 myconf="${myconf} $(use_with network)"
165 myconf="${myconf} --with-storage-fs"
166 myconf="${myconf} $(use_with lvm storage-lvm)"
167 myconf="${myconf} $(use_with iscsi storage-iscsi)"
168 myconf="${myconf} $(use_with parted storage-disk)"
169 myconf="${myconf} $(use_with lvm storage-mpath)"
170 myconf="${myconf} $(use_with numa numactl)"
171 myconf="${myconf} $(use_with selinux)"
172
173 # udev for device support details
174 myconf="${myconf} $(use_with udev)"
175
176 # linux capability support so we don't need privileged accounts
177 myconf="${myconf} $(use_with caps capng)"
178
179 ## auth stuff
180 myconf="${myconf} $(use_with policykit polkit)"
181 myconf="${myconf} $(use_with sasl)"
182
183 # network biits
184 myconf="${myconf} $(use_with macvtap)"
185 myconf="${myconf} $(use_with pcap libpcap)"
186
187 ## other
188 myconf="${myconf} $(use_enable nls)"
189 myconf="${myconf} $(use_with python)"
190 myconf="${myconf} $(use_with json yajl)"
191
192 ## stuff we don't yet support
193 myconf="${myconf} --without-netcf --without-audit"
194
195 # we use udev over hal
196 myconf="${myconf} --without-hal"
197
198 # this is a nasty trick to work around the problem in bug
199 # #275073. The reason why we don't solve this properly is that
200 # it'll require us to rebuild autotools (and we don't really want
201 # to do that right now). The proper solution has been sent
202 # upstream and should hopefully land in 0.7.7, in the mean time,
203 # mime the same functionality with this.
204 case ${CHOST} in
205 *cygwin* | *mingw* )
206 ;;
207 *)
208 ac_cv_prog_WINDRES=no
209 ;;
210 esac
211
212 econf \
213 ${myconf} \
214 --disable-static \
215 --docdir=/usr/share/doc/${PF} \
216 --with-remote \
217 --localstatedir=/var \
218 --with-remote-pid-file=/var/run/libvirtd.pid
219 }
220
221 src_test() {
222 # Explicitly allow parallel build of tests
223 emake check || die "tests failed"
224 }
225
226 src_install() {
227 emake install \
228 DESTDIR="${D}" \
229 HTML_DIR=/usr/share/doc/${PF}/html \
230 DOCS_DIR=/usr/share/doc/${PF}/python \
231 EXAMPLE_DIR=/usr/share/doc/${PF}/python/examples \
232 || die "emake install failed"
233
234 find "${D}" -name '*.la' -delete || die
235
236 use libvirtd || return 0
237 # From here, only libvirtd-related instructions, be warned!
238
239 newinitd "${FILESDIR}/libvirtd.init-r1" libvirtd || die
240 newconfd "${FILESDIR}/libvirtd.confd-r1" libvirtd || die
241
242 keepdir /var/lib/libvirt/images
243 }
244
245 pkg_preinst() {
246 # we only ever want to generate this once
247 if [[ -e "${ROOT}"/etc/libvirt/qemu/networks/default.xml ]]; then
248 rm -rf "${D}"/etc/libvirt/qemu/networks/default.xml
249 fi
250
251 # We really don't want to use or support old PolicyKit cause it
252 # screws with the new polkit integration
253 if has_version sys-auth/policykit; then
254 rm -rf "${D}"/usr/share/PolicyKit/policy/org.libvirt.unix.policy
255 fi
256 }
257
258 pkg_postinst() {
259 use python && python_mod_optimize $(python_get_sitedir)/libvirt.py
260
261 elog
262 if use policykit && has_version sys-auth/policykit; then
263 elog "You must have run the following at least once:"
264 elog
265 elog "$ polkit-auth --grant org.libvirt.unix.manage --user \"USERNAME\""
266 elog
267 elog "to grant USERNAME access to libvirt when using USE=policykit"
268 else
269 elog "To allow normal users to connect to libvirtd you must change the"
270 elog " unix sock group and/or perms in /etc/libvirt/libvirtd.conf"
271 fi
272
273 use libvirtd || return 0
274 # From here, only libvirtd-related instructions, be warned!
275
276 elog
277 elog "For the basic networking support (bridged and routed networks)"
278 elog "you don't need any extra software. For more complex network modes"
279 elog "including but not limited to NATed network, you'll need the"
280 elog "following packages":
281 elog
282 elog " net-dns/dnsmasq"
283 elog " >=net-firewall/iptables-1.4.9"
284 elog " net-firewall/ebtables"
285 elog
286 if has_version net-dns/dnsmasq; then
287 ewarn "If you have a DNS server setup on your machine, you will have"
288 ewarn "to configure /etc/dnsmasq.conf to enable the following settings: "
289 ewarn " bind-interfaces"
290 ewarn " interface or except-interface"
291 ewarn
292 ewarn "Otherwise you might have issues with your existing DNS server."
293 fi
294 }
295
296 pkg_postrm() {
297 use python && python_mod_cleanup $(python_get_sitedir)/libvirt.py
298 }