APKBUILD 3.66 KB
Newer Older
Leonardo Arena's avatar
Leonardo Arena committed
1
# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
Leonardo Arena's avatar
Leonardo Arena committed
2
pkgname=libvirt
3
pkgver=0.10.2
4
pkgrel=5
Leonardo Arena's avatar
Leonardo Arena committed
5 6
pkgdesc="A virtualization API for several hypervisor and container systems"
url="http://libvirt.org/"
7
arch="all"
Leonardo Arena's avatar
Leonardo Arena committed
8
license="LGPL"
9
depends="bridge-utils dmidecode iptables netcat-openbsd pm-utils python"
10
makedepends="augeas-dev bridge-utils cyrus-sasl-dev device-mapper 
11 12
	e2fsprogs-dev gnutls-dev libcap-ng-dev libgpg-error-dev 
	libnetcf-dev libnl-dev libxml2-dev libxslt-dev libtasn1-dev 
13
	lvm2-dev lxc-dev gnutls-dev libgcrypt-dev parted-dev perl pkgconfig 
14
	udev-dev xen-dev zlib-dev yajl-dev libpcap-dev curl-dev"
Leonardo Arena's avatar
Leonardo Arena committed
15
install=
16 17
subpackages="$pkgname-client $pkgname-daemon $pkgname-dev $pkgname-doc $pkgname-lang
	$pkgname-lxc $pkgname-qemu $pkgname-xen $pkgname-uml"
Leonardo Arena's avatar
Leonardo Arena committed
18 19
source="http://libvirt.org/sources/$pkgname-$pkgver.tar.gz
	libvirt.confd
20 21 22
	libvirt.initd
	libvirt-0.10.2-legacy-xen-driver.patch
	libvirt-0.10.2-support-xen-sysctl-v9.patch
23
	uclibc-physmem.patch
24
	"
Leonardo Arena's avatar
Leonardo Arena committed
25 26 27

_builddir="$srcdir"/$pkgname-$pkgver

28 29
prepare() {
	cd "$_builddir"
30 31 32 33 34
	for patch in $(ls ../*.patch)
	do
		msg "Applying patch $patch"
		patch -p1 < ../$patch || return 1
	done	
35
}
Leonardo Arena's avatar
Leonardo Arena committed
36 37 38

build() {
	cd "$_builddir"
39
	export LDFLAGS="$LDFLAGS -lm"
Leonardo Arena's avatar
Leonardo Arena committed
40 41 42 43
	./configure --prefix=/usr \
		--sysconfdir=/etc \
		--mandir=/usr/share/man \
		--infodir=/usr/share/info \
44 45 46
		--libexec=/usr/lib/"$pkgname" \
		--without-libxl \
		|| return 1
47
	make || return 1
Leonardo Arena's avatar
Leonardo Arena committed
48 49 50 51
}

package() {
	cd "$_builddir"
Natanael Copa's avatar
Natanael Copa committed
52
	make DESTDIR="$pkgdir" install || return 1
Natanael Copa's avatar
Natanael Copa committed
53
	find "$pkgdir" -name '*.la' -delete
Leonardo Arena's avatar
Leonardo Arena committed
54 55 56 57
	install -D -m755 $srcdir/$pkgname.initd $pkgdir/etc/init.d/libvirtd
	install -D -m755 $srcdir/$pkgname.confd $pkgdir/etc/conf.d/libvirtd
}

58 59 60
daemon() {
	cd "$_builddir"
	pkgdesc="libvirt daemon package"
61
	depends="libvirt-client logrotate"
62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98
	daemon="libvirtd"
	replaces="libvirt"
	mkdir -p "$subpkgdir"/etc/$pkgname \
	 "$subpkgdir"/etc/logrotate.d \
	 "$subpkgdir"/usr/sbin
	# mkdir -p "$subpkgdir"/usr/sbin
	mv "$pkgdir"/etc/init.d "$subpkgdir"/etc
	mv "$pkgdir"/etc/conf.d "$subpkgdir"/etc
	mv "$pkgdir"/etc/$pkgname/$daemon.conf "$subpkgdir"/etc/libvirt/
	mv "$pkgdir"/usr/sbin/$daemon "$subpkgdir"/usr/sbin/
	mv "$pkgdir"/etc/logrotate.d/libvirtd "$subpkgdir"/etc/logrotate.d/
}

client() {
	cd "$_builddir"
	pkgdesc="libvirt client package"
	depends="libvirt"
	replaces="libvirt"
	mkdir -p "$subpkgdir"/etc/$pkgname "$subpkgdir"/usr/bin
	# mkdir -p "$subpkgdir"/usr/bin
	mv "$pkgdir"/etc/$pkgname/$pkgname.conf "$subpkgdir"/etc/libvirt/
	mv "$pkgdir"/usr/bin/* "$subpkgdir"/usr/bin/
}

_mv_driver() {
	mkdir -p "$subpkgdir"/usr/lib/libvirt/connection-driver \
	 "$subpkgdir"/etc/libvirt "$subpkgdir"/etc/logrotate.d
	mv "$pkgdir"/usr/lib/libvirt/connection-driver/libvirt_driver_$1.so \
	 "$subpkgdir"/usr/lib/libvirt/connection-driver/
	if [ "$1" != "xen" ]; then
		mv "$pkgdir"/etc/logrotate.d/libvirtd.$1 \
		 "$subpkgdir"/etc/logrotate.d/
	fi
}

qemu() {
	pkgdesc="QEMU driver for libvirt"
99
	depends="libvirt-daemon logrotate"
100 101 102 103 104 105 106
	replaces="libvirt"
	_mv_driver qemu
	mv "$pkgdir"/etc/libvirt/qemu.conf "$subpkgdir"/etc/libvirt/
}

xen() {
	pkgdesc="XEN driver for libvirt"
107
	depends="libvirt-daemon"
108 109 110 111 112 113
	replaces="libvirt"
	_mv_driver xen
}

lxc() {
	pkgdesc="lxc driver for libvirt"
114
	depends="libvirt-daemon logrotate"
115 116 117 118 119 120
	replaces="libvirt"
	_mv_driver lxc
}

uml() {
	pkgdesc="UML driver for libvirt"
121
	depends="libvirt-daemon logrotate"
122 123 124 125
	replaces="libvirt"
	_mv_driver uml
}

126
md5sums="a5e50860d9da238ba270b528411c4a0d  libvirt-0.10.2.tar.gz
Leonardo Arena's avatar
Leonardo Arena committed
127
1c84a7baeafe0a7f4e9d7ae5180311b7  libvirt.confd
Leonardo Arena's avatar
Leonardo Arena committed
128
d897df38c7e7fa1a297aa551108633c9  libvirt.initd
129
31c0c6ca4fe85bd1cfc00756ec47ea06  libvirt-0.10.2-legacy-xen-driver.patch
130 131
e259b3e5b7257c9301a36186b748195b  libvirt-0.10.2-support-xen-sysctl-v9.patch
df9cbfaf8a6e520a4822914a300add4d  uclibc-physmem.patch"