diff options
Diffstat (limited to 'recipes-extended/libvirt/libvirt_1.2.0.bb')
-rw-r--r-- | recipes-extended/libvirt/libvirt_1.2.0.bb | 180 |
1 files changed, 180 insertions, 0 deletions
diff --git a/recipes-extended/libvirt/libvirt_1.2.0.bb b/recipes-extended/libvirt/libvirt_1.2.0.bb new file mode 100644 index 00000000..80f06a23 --- /dev/null +++ b/recipes-extended/libvirt/libvirt_1.2.0.bb | |||
@@ -0,0 +1,180 @@ | |||
1 | DESCRIPTION = "A toolkit to interact with the virtualization capabilities of recent versions of Linux." | ||
2 | HOMEPAGE = "http://libvirt.org" | ||
3 | LICENSE = "GPLv2+" | ||
4 | LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" | ||
5 | SECTION = "console/tools" | ||
6 | PR = "r1" | ||
7 | |||
8 | DEPENDS = "bridge-utils gnutls libxml2 lvm2 avahi parted curl libpcap util-linux e2fsprogs pm-utils \ | ||
9 | iptables dnsmasq readline" | ||
10 | |||
11 | # libvirt-guests.sh needs gettext.sh | ||
12 | # | ||
13 | RDEPENDS_${PN} = "gettext-runtime" | ||
14 | |||
15 | RDEPENDS_libvirt-libvirtd += "bridge-utils iptables pm-utils dnsmasq netcat-openbsd" | ||
16 | RDEPENDS_libvirt-libvirtd_append_x86-64 = " dmidecode" | ||
17 | RDEPENDS_libvirt-libvirtd_append_x86 = " dmidecode" | ||
18 | |||
19 | #connman blocks the 53 port and libvirtd can't start its DNS service | ||
20 | RCONFLICTS_${PN}_libvirtd = "connman" | ||
21 | |||
22 | SRC_URI = "http://libvirt.org/sources/libvirt-${PV}.tar.gz \ | ||
23 | file://tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch \ | ||
24 | file://libvirtd.sh \ | ||
25 | file://libvirtd.conf" | ||
26 | |||
27 | SRC_URI[md5sum] = "f74f78059def4e68d69b975ad6e6c3e2" | ||
28 | SRC_URI[sha256sum] = "a8e578ae7861db2ac5f454073293d2ef3229fd3f6c4f9029101763244db22ddd" | ||
29 | |||
30 | inherit autotools gettext update-rc.d | ||
31 | |||
32 | CACHED_CONFIGUREVARS += "\ | ||
33 | ac_cv_path_XMLLINT=/usr/bin/xmllint \ | ||
34 | ac_cv_path_XMLCATLOG=/usr/bin/xmlcatalog \ | ||
35 | ac_cv_path_AUGPARSE=/usr/bin/augparse \ | ||
36 | ac_cv_path_DNSMASQ=/usr/bin/dnsmasq \ | ||
37 | ac_cv_path_BRCTL=/usr/sbin/brctl \ | ||
38 | ac_cv_path_TC=/sbin/tc \ | ||
39 | ac_cv_path_UDEVADM=/sbin/udevadm \ | ||
40 | ac_cv_path_MODPROBE=/sbin/modprobe \ | ||
41 | ac_cv_path_IP_PATH=/bin/ip \ | ||
42 | ac_cv_path_IPTABLES_PATH=/usr/sbin/iptables \ | ||
43 | ac_cv_path_IP6TABLES_PATH=/usr/sbin/ip6tables \ | ||
44 | ac_cv_path_MOUNT=/bin/mount \ | ||
45 | ac_cv_path_UMOUNT=/bin/umount \ | ||
46 | ac_cv_path_MKFS=/usr/sbin/mkfs \ | ||
47 | ac_cv_path_SHOWMOUNT=/usr/sbin/showmount \ | ||
48 | ac_cv_path_PVCREATE=/usr/sbin/pvcreate \ | ||
49 | ac_cv_path_VGCREATE=/usr/sbin/vgcreate \ | ||
50 | ac_cv_path_LVCREATE=/usr/sbin/lvcreate \ | ||
51 | ac_cv_path_PVREMOVE=/usr/sbin/pvremove \ | ||
52 | ac_cv_path_VGREMOVE=/usr/sbin/vgremove \ | ||
53 | ac_cv_path_LVREMOVE=/usr/sbin/lvremove \ | ||
54 | ac_cv_path_LVCHANGE=/usr/sbin/lvchange \ | ||
55 | ac_cv_path_VGCHANGE=/usr/sbin/vgchange \ | ||
56 | ac_cv_path_VGSCAN=/usr/sbin/vgscan \ | ||
57 | ac_cv_path_PVS=/usr/sbin/pvs \ | ||
58 | ac_cv_path_VGS=/usr/sbin/vgs \ | ||
59 | ac_cv_path_LVS=/usr/sbin/lvs \ | ||
60 | ac_cv_path_PARTED=/usr/sbin/parted \ | ||
61 | ac_cv_path_DMSETUP=/usr/sbin/dmsetup" | ||
62 | |||
63 | # Some other possible paths we are not yet setting | ||
64 | #ac_cv_path_RPCGEN= | ||
65 | #ac_cv_path_XSLTPROC= | ||
66 | #ac_cv_path_RADVD= | ||
67 | #ac_cv_path_UDEVSETTLE= | ||
68 | #ac_cv_path_EBTABLES_PATH= | ||
69 | #ac_cv_path_PKG_CONFIG= | ||
70 | #ac_cv_path_ac_pt_PKG_CONFIG | ||
71 | #ac_cv_path_PKCHECK_PATH= | ||
72 | #ac_cv_path_POLKIT_AUTH= | ||
73 | #ac_cv_path_DTRACE= | ||
74 | #ac_cv_path_ISCSIADM= | ||
75 | #ac_cv_path_MSGFMT= | ||
76 | #ac_cv_path_GMSGFMT= | ||
77 | #ac_cv_path_XGETTEXT= | ||
78 | #ac_cv_path_MSGMERGE= | ||
79 | #ac_cv_path_SCRUB= | ||
80 | #ac_cv_path_PYTHON= | ||
81 | |||
82 | ALLOW_EMPTY_${PN} = "1" | ||
83 | |||
84 | PACKAGES =+ "${PN}-libvirtd ${PN}-virsh" | ||
85 | |||
86 | ALLOW_EMPTY_${PN}-libvirtd = "1" | ||
87 | |||
88 | FILES_${PN}-libvirtd = "${sysconfdir}/init.d \ | ||
89 | ${sysconfdir}/sysctl.d \ | ||
90 | ${sysconfdir}/logrotate.d \ | ||
91 | ${sysconfdir}/libvirt/libvirtd.conf \ | ||
92 | /usr/lib/sysctl.d/libvirtd.conf \ | ||
93 | ${sbindir}/libvirtd" | ||
94 | |||
95 | FILES_${PN}-virsh = "${bindir}/virsh" | ||
96 | FILES_${PN} += "${libdir}/libvirt/connection-driver \ | ||
97 | ${datadir}/augeas \ | ||
98 | ${datadir}/polkit-1" | ||
99 | |||
100 | FILES_${PN}-dbg += "${libdir}/libvirt/connection-driver/.debug ${libdir}/libvirt/lock-driver/.debug" | ||
101 | FILES_${PN}-staticdev += "${libdir}/*.a ${libdir}/libvirt/connection-driver/*.a ${libdir}/libvirt/lock-driver/*.a" | ||
102 | |||
103 | INITSCRIPT_PACKAGES = "${PN}-libvirtd" | ||
104 | INITSCRIPT_NAME_${PN}-libvirtd = "libvirtd" | ||
105 | INITSCRIPT_PARAMS_${PN}-libvirtd = "defaults 72" | ||
106 | |||
107 | # xen-minimal config | ||
108 | #PACKAGECONFIG ??= "xen libxl xen-inotify test remote libvirtd" | ||
109 | |||
110 | # full config | ||
111 | PACKAGECONFIG ??= "qemu yajl xen libxl xen-inotify uml openvz vmware vbox esx iproute2 \ | ||
112 | polkit lxc test remote macvtap libvirtd netcf udev python ebtables \ | ||
113 | {@base_contains('DISTRO_FEATURES', 'selinux', 'selinux', '', d)} \ | ||
114 | " | ||
115 | |||
116 | # enable,disable,depends,rdepends | ||
117 | # | ||
118 | PACKAGECONFIG[qemu] = "--with-qemu,--without-qemu,qemu," | ||
119 | PACKAGECONFIG[yajl] = "--with-yajl,--without-yajl,yajl,yajl" | ||
120 | PACKAGECONFIG[xen] = "--with-xen,--without-xen,xen," | ||
121 | PACKAGECONFIG[xenapi] = "--with-xenapi,--without-xenapi,," | ||
122 | PACKAGECONFIG[libxl] = "--with-libxl=${STAGING_DIR_TARGET}/lib,--without-libxl,libxl," | ||
123 | PACKAGECONFIG[xen-inotify] = "--with-xen-inotify,--without-xen-inotify,xen," | ||
124 | PACKAGECONFIG[uml] = "--with-uml, --without-uml,," | ||
125 | PACKAGECONFIG[openvz] = "--with-openvz,--without-openvz,," | ||
126 | PACKAGECONFIG[vmware] = "--with-vmware,--without-vmware,," | ||
127 | PACKAGECONFIG[phyp] = "--with-phyp,--without-phyp,," | ||
128 | PACKAGECONFIG[vbox] = "--with-vbox,--without-vbox,," | ||
129 | PACKAGECONFIG[esx] = "--with-esx,--without-esx,," | ||
130 | PACKAGECONFIG[hyperv] = "--with-hyperv,--without-hyperv,," | ||
131 | PACKAGECONFIG[polkit] = "--with-polkit,--without-polkit,polkit,polkit" | ||
132 | PACKAGECONFIG[lxc] = "--with-lxc,--without-lxc, lxc," | ||
133 | PACKAGECONFIG[test] = "--with-test=yes,--with-test=no,," | ||
134 | PACKAGECONFIG[remote] = "--with-remote,--without-remote,," | ||
135 | PACKAGECONFIG[macvtap] = "--with-macvtap=yes,--with-macvtap=no,libnl,libnl" | ||
136 | PACKAGECONFIG[libvirtd] = "--with-libvirtd,--without-libvirtd,," | ||
137 | PACKAGECONFIG[netcf] = "--with-netcf,--without-netcf,netcf,netcf" | ||
138 | PACKAGECONFIG[dtrace] = "--with-dtrace,--without-dtrace,," | ||
139 | PACKAGECONFIG[udev] = "--with-udev --with-pciaccess,--without-udev,udev libpciaccess," | ||
140 | PACKAGECONFIG[selinux] = "--with-selinux,--without-selinux,libselinux," | ||
141 | PACKAGECONFIG[ebtables] = "ac_cv_path_EBTABLES_PATH=/sbin/ebtables,ac_cv_path_EBTABLES_PATH=,ebtables,ebtables" | ||
142 | PACKAGECONFIG[python] = "--with-python,--without-python,python," | ||
143 | PACKAGECONFIG[sasl] = "--with-sasl,--without-sasl,cyrus-sasl,cyrus-sasl" | ||
144 | PACKAGECONFIG[iproute2] = "ac_cv_path_IP_PATH=/sbin/ip,ac_cv_path_IP_PATH=,iproute2,iproute2" | ||
145 | |||
146 | # Enable the Python tool support | ||
147 | require libvirt-python.inc | ||
148 | |||
149 | do_install_append() { | ||
150 | install -d ${D}/etc/init.d | ||
151 | install -d ${D}/etc/libvirt | ||
152 | |||
153 | install -m 0755 ${WORKDIR}/libvirtd.sh ${D}/etc/init.d/libvirtd | ||
154 | install -m 0644 ${WORKDIR}/libvirtd.conf ${D}/etc/libvirt/libvirtd.conf | ||
155 | |||
156 | # This will wind up in the libvirtd package, but will NOT be invoked by default. | ||
157 | # | ||
158 | mv ${D}/${libexecdir}/libvirt-guests.sh ${D}/${sysconfdir}/init.d | ||
159 | |||
160 | # The /var/run/libvirt directories created by the Makefile | ||
161 | # are wiped out in volatile, we need to create these at boot. | ||
162 | rm -rf ${D}${localstatedir}/run | ||
163 | install -d ${D}${sysconfdir}/default/volatiles | ||
164 | echo "d root root 0755 ${localstatedir}/run/libvirt none" \ | ||
165 | > ${D}${sysconfdir}/default/volatiles/99_libvirt | ||
166 | echo "d root root 0755 ${localstatedir}/run/libvirt/lockd none" \ | ||
167 | >> ${D}${sysconfdir}/default/volatiles/99_libvirt | ||
168 | echo "d root root 0755 ${localstatedir}/run/libvirt/lxc none" \ | ||
169 | >> ${D}${sysconfdir}/default/volatiles/99_libvirt | ||
170 | echo "d root root 0755 ${localstatedir}/run/libvirt/network none" \ | ||
171 | >> ${D}${sysconfdir}/default/volatiles/99_libvirt | ||
172 | echo "d root root 0755 ${localstatedir}/run/libvirt/qemu none" \ | ||
173 | >> ${D}${sysconfdir}/default/volatiles/99_libvirt | ||
174 | } | ||
175 | |||
176 | pkg_postinst_libvirt() { | ||
177 | if [ -z "$D" ] && [ -e /etc/init.d/populate-volatile.sh ] ; then | ||
178 | /etc/init.d/populate-volatile.sh update | ||
179 | fi | ||
180 | } | ||