mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2026-02-15 04:43:01 +01:00
179 lines
5.9 KiB
Plaintext
179 lines
5.9 KiB
Plaintext
# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
|
|
pkgname=libvirt
|
|
pkgver=1.1.1
|
|
_ver="${pkgver/_rc/-rc}"
|
|
pkgrel=0
|
|
pkgdesc="A virtualization API for several hypervisor and container systems"
|
|
url="http://libvirt.org/"
|
|
arch="all"
|
|
license="LGPL"
|
|
_daemon_deps="bridge-utils dmidecode iptables"
|
|
_client_deps="pm-utils gnutls-utils netcat-openbsd"
|
|
depends=""
|
|
makedepends="augeas-dev bridge-utils cyrus-sasl-dev device-mapper
|
|
e2fsprogs-dev gnutls-dev libcap-ng-dev libgpg-error-dev
|
|
netcf-dev libnl-dev libxml2-dev libxslt-dev libtasn1-dev
|
|
lvm2-dev lxc-dev gnutls-dev libgcrypt-dev parted-dev perl pkgconfig
|
|
udev-dev zlib-dev yajl-dev libpcap-dev curl-dev libpciaccess-dev
|
|
polkit-dev readline-dev
|
|
$_daemon_deps $_client_deps
|
|
"
|
|
install="$pkgname.post-install"
|
|
subpackages="$pkgname-dev $pkgname-doc $pkgname-client $pkgname-daemon
|
|
$pkgname-lang py-$pkgname:_py
|
|
$pkgname-lxc $pkgname-qemu $pkgname-uml $pkgname-vbox"
|
|
source="http://libvirt.org/sources/$pkgname-$pkgver.tar.gz
|
|
libvirt.confd
|
|
libvirt.initd
|
|
uclibc-physmem.patch
|
|
"
|
|
|
|
if [ "$ALPINE_LIBC" != "eglibc" ]; then
|
|
subpackages="$subpackages $pkgname-xen"
|
|
makedepends="$makedepends xen-dev"
|
|
fi
|
|
subpackages="$subpackages $pkgname-common-drivers:_common_drivers"
|
|
|
|
_builddir="$srcdir"/$pkgname-$pkgver
|
|
|
|
prepare() {
|
|
cd "$_builddir" || return 1
|
|
for patch in $source; do
|
|
case $patch in
|
|
# we concider patches with uclibc in its name
|
|
# only usefull on uclibc install
|
|
*uclibc*.patch)
|
|
if [ "$ALPINE_LIBC" != "eglibc" ]; then
|
|
msg "Applying patch $patch"
|
|
patch -p1 -i "$srcdir"/$patch || return 1
|
|
fi
|
|
;;
|
|
*.patch)
|
|
msg "Applying patch $patch"
|
|
patch -p1 -i "$srcdir"/$patch || return 1
|
|
;;
|
|
esac
|
|
done
|
|
}
|
|
|
|
build() {
|
|
cd "$_builddir"
|
|
export LDFLAGS="$LDFLAGS -lm"
|
|
./configure \
|
|
--build=$CBUILD \
|
|
--host=$CHOST \
|
|
--prefix=/usr \
|
|
--sysconfdir=/etc \
|
|
--mandir=/usr/share/man \
|
|
--infodir=/usr/share/info \
|
|
--libexec=/usr/lib/"$pkgname" \
|
|
--with-libxl \
|
|
--with-polkit \
|
|
|| return 1
|
|
make || return 1
|
|
}
|
|
|
|
package() {
|
|
cd "$_builddir"
|
|
make DESTDIR="$pkgdir" install || return 1
|
|
find "$pkgdir" -name '*.la' -delete
|
|
install -D -m755 $srcdir/$pkgname.initd $pkgdir/etc/init.d/libvirtd
|
|
install -D -m755 $srcdir/$pkgname.confd $pkgdir/etc/conf.d/libvirtd
|
|
}
|
|
|
|
dev() {
|
|
default_dev
|
|
mkdir -p "$subpkgdir"/usr/share/libvirt
|
|
mv "$pkgdir"/usr/share/libvirt/api \
|
|
"$subpkgdir"/usr/share/libvirt/
|
|
}
|
|
|
|
daemon() {
|
|
cd "$_builddir"
|
|
pkgdesc="libvirt daemon package"
|
|
depends="libvirt-client $_daemon_deps"
|
|
replaces="libvirt"
|
|
mkdir -p "$subpkgdir"/etc/$pkgname \
|
|
"$subpkgdir"/etc/logrotate.d \
|
|
"$subpkgdir"/usr/sbin
|
|
mv "$pkgdir"/etc/init.d "$subpkgdir"/etc
|
|
mv "$pkgdir"/etc/conf.d "$subpkgdir"/etc
|
|
mv "$pkgdir"/etc/$pkgname/libvirtd.conf "$subpkgdir"/etc/libvirt/
|
|
mv "$pkgdir"/usr/sbin/libvirtd "$subpkgdir"/usr/sbin/
|
|
mv "$pkgdir"/etc/logrotate.d/libvirtd "$subpkgdir"/etc/logrotate.d/
|
|
}
|
|
|
|
client() {
|
|
cd "$_builddir"
|
|
pkgdesc="libvirt client package"
|
|
depends="libvirt $_client_deps"
|
|
replaces="libvirt"
|
|
mkdir -p "$subpkgdir"/etc/$pkgname "$subpkgdir"/usr/bin \
|
|
"$subpkgdir"/usr/lib
|
|
mv "$pkgdir"/etc/$pkgname/$pkgname.conf "$subpkgdir"/etc/libvirt/
|
|
mv "$pkgdir"/usr/bin/* "$subpkgdir"/usr/bin/
|
|
mv "$pkgdir"/usr/lib/lib*.so.* "$subpkgdir"/usr/lib/ || return 1
|
|
}
|
|
|
|
_py() {
|
|
pkgdesc="Python bindings to libvirt"
|
|
replaces="libvirt"
|
|
mkdir -p "$subpkgdir"/usr/lib
|
|
mv "$pkgdir"/usr/lib/python* "$subpkgdir"/usr/lib/
|
|
}
|
|
|
|
_mv_driver() {
|
|
local _name="$1" _drivers="$2" _pkg="$3"
|
|
pkgdesc="$_name driver for libvirt"
|
|
depends="$pkgname-daemon=$pkgver-r$pkgrel
|
|
$pkgname-common-drivers=$pkgver-r$pkgrel"
|
|
replaces="libvirt"
|
|
if [ -n "$_pkg" ]; then
|
|
install_if="$pkgname-daemon=$pkgver-r$pkgrel $_pkg"
|
|
else
|
|
install_if=
|
|
fi
|
|
local _dir=/usr/lib/libvirt/connection-driver
|
|
mkdir -p "$subpkgdir"/$_dir \
|
|
"$subpkgdir"/etc/libvirt \
|
|
"$subpkgdir"/etc/logrotate.d
|
|
local _d
|
|
cd "$pkgdir"
|
|
for _d in $_drivers; do
|
|
find * -name "*$_d[.-]*" -o -name "*$_d" | while read _f; do
|
|
mkdir -p "$subpkgdir"/${_f%/*}
|
|
mv "$pkgdir"/$_f "$subpkgdir"/$_f || return 1
|
|
done
|
|
done
|
|
}
|
|
|
|
qemu() { _mv_driver "QEMU" qemu qemu; }
|
|
xen() { _mv_driver "XEN" "libxl xen" xen; }
|
|
lxc() { _mv_driver "LXC" lxc lxc; }
|
|
uml() { _mv_driver "UML" uml; }
|
|
vbox() { _mv_driver "VirtualBox" vbox; }
|
|
|
|
_common_drivers() {
|
|
pkgdesc="Common libvirt daemon drivers"
|
|
replaces="libvirt"
|
|
mkdir -p "$subpkgdir"/usr/lib/libvirt \
|
|
"$subpkgdir"/etc/libvirt/nwfilter
|
|
mv "$pkgdir"/usr/lib/libvirt/connection-driver \
|
|
"$subpkgdir"/usr/lib/libvirt/
|
|
mv "$pkgdir"/etc/libvirt/nwfilter \
|
|
"$subpkgdir"/etc/libvirt/
|
|
}
|
|
|
|
md5sums="632f30a2f22fbb404b8e10702d7f55ca libvirt-1.1.1.tar.gz
|
|
1c84a7baeafe0a7f4e9d7ae5180311b7 libvirt.confd
|
|
d897df38c7e7fa1a297aa551108633c9 libvirt.initd
|
|
df9cbfaf8a6e520a4822914a300add4d uclibc-physmem.patch"
|
|
sha256sums="dc6f1e1e15b9b190eaa706e76edabcfc94b239c012f5afc22b22357a4b3b22c2 libvirt-1.1.1.tar.gz
|
|
851ab3f9678f0fa9c3ee03f7fc7bd00c4ee86d5f0777eecf9eb1ffe3243adfd1 libvirt.confd
|
|
e9fad203434ffaa6afe524e42a9fb6594edad61cb02b1ca60a68d1a7fe0c31ab libvirt.initd
|
|
807005a8669b7396c9af43ddb2534bb0f073f1e97a5c8b1d9eefc1949f3c2df8 uclibc-physmem.patch"
|
|
sha512sums="9f121827913cd99ba14ebf5755e679da5010e8784a16bc9ef9f49cfd8bf4d4335e6c200401b0592fe77a431d3de9a1b360695a515e5eb789cf675f087194cc4a libvirt-1.1.1.tar.gz
|
|
9aba6ab73219a635c64a340ee8887356e644445c9128734cbce73f5d54778378da2f10a190365ad88a7db8bc95b1fb17f0c6ca41fc41bb786c09e1afe84d65dc libvirt.confd
|
|
f48c97f93ef4509a86eda6200b3aae5b2c0c6263403bde933b770fd62240dca27bc439bd29b440ea6a47c8337f8b4511230ed915cb5ff54d9a1cf311863f6fa1 libvirt.initd
|
|
4c885e72dcb11f8523a267917315d4874812eee289fb00075334c1728d0da9bd0e5db6c52d6e3c39bd3fe66d5ccadf9e26ec9dcaa855397e211b9bd1173ac72d uclibc-physmem.patch"
|