Gentoo Archives: gentoo-commits

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