blob: 096addf7b93feb3d9ded603505bda884a9914b62 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
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
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
|
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=libvirt
pkgver=4.6.0
_ver="${pkgver/_rc/-rc}"
pkgrel=1
pkgdesc="A virtualization API for several hypervisor and container systems"
url="http://libvirt.org/"
arch="all"
license="LGPL"
_daemon_deps="bridge-utils dmidecode dnsmasq ebtables ip6tables iptables"
_client_deps="pm-utils gnutls-utils netcat-openbsd"
depends="lvm2"
depends_dev="libtirpc-dev"
makedepends="augeas-dev bridge-utils cyrus-sasl-dev device-mapper
e2fsprogs-dev gnutls-dev libcap-ng-dev libgpg-error-dev
netcf-dev libnl3-dev libxml2-dev libxslt-dev libtasn1-dev
lvm2-dev lxc-dev gnutls-dev libgcrypt-dev parted-dev perl pkgconfig
eudev-dev zlib-dev yajl-dev libpcap-dev curl-dev libpciaccess-dev
polkit-dev readline-dev dnsmasq linux-headers libssh2-dev jansson-dev
$depends_dev
fuse-dev util-linux libxml2-utils bash-completion $_daemon_deps $_client_deps
"
install="$pkgname.post-install"
subpackages="$pkgname-static $pkgname-dev $pkgname-doc $pkgname-client $pkgname-daemon
$pkgname-lang $pkgname-lxc $pkgname-qemu $pkgname-uml $pkgname-vbox
$pkgname-bash-completion:bashcomp:noarch"
source="https://libvirt.org/sources/$pkgname-$pkgver.tar.xz
libvirt.confd
libvirt.initd
virtlogd.initd
virtlockd.initd
musl-fix-includes.patch
fix-fortify-virnetlink.patch
"
if [ "$CARCH" = "x86_64" ]; then
subpackages="$subpackages $pkgname-xen"
makedepends="$makedepends xen-dev"
fi
subpackages="$subpackages $pkgname-common-drivers:_common_drivers"
builddir="$srcdir"/$pkgname-$pkgver
build() {
cd "$builddir"
# qemu sets libexec dir to /usr/lib/qemu
export ac_cv_path_QEMU_BRIDGE_HELPER="/usr/lib/qemu/qemu-bridge-helper"
[ "$CARCH" = x86_64 ] && local _xen_opt="--with-libxl"
./configure \
--build=$CBUILD \
--host=$CHOST \
--prefix=/usr \
--sysconfdir=/etc \
--mandir=/usr/share/man \
--infodir=/usr/share/info \
--libexec=/usr/lib/"$pkgname" \
$_xen_opt \
--with-polkit \
--with-storage-fs \
--with-storage-lvm \
--enable-static \
--with-qemu \
make
}
package() {
cd "$builddir"
make DESTDIR="$pkgdir" install
install -D -m755 $srcdir/$pkgname.initd $pkgdir/etc/init.d/libvirtd
install -D -m755 $srcdir/$pkgname.confd $pkgdir/etc/conf.d/libvirtd
install -D -m755 $srcdir/virtlogd.initd $pkgdir/etc/init.d/virtlogd
install -D -m755 $srcdir/virtlockd.initd $pkgdir/etc/init.d/virtlockd
install -d "$pkgdir"/etc/modules-load.d
echo "tun" > "$pkgdir"/etc/modules-load.d/libvirt.conf
rm -rf "$pkgdir"/usr/lib/charset.alias
rmdir -p "$pkgdir"/usr/lib 2>/dev/null || true
}
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/modules-load.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/
}
static() {
pkgdesc="$pkgname static libraries"
mkdir -p "$subpkgdir"/usr/lib
cd "$pkgdir"
for _lib in $(find . -name '*.a'); do
mkdir -p "$subpkgdir"/${_lib%/*}
mv "$_lib" "$subpkgdir"/${_lib%/*}/
done
}
bashcomp() {
depends=""
pkgdesc="Bash completions for $pkgname"
install_if="$pkgname=$pkgver-r$pkgrel bash-completion"
mkdir -p "$subpkgdir"/usr/share/
mv "$pkgdir"/usr/share/bash-completion \
"$subpkgdir"/usr/share/
}
_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
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/
}
sha512sums="beae0f1cafa73b9495d877979547bbc9b7ca2a7c3b213c5da92e6302b570d42df9d639f50380dbc0cebd6af983924dc27b1c81139c81dee0897f39a6a5158968 libvirt-4.6.0.tar.xz
9aba6ab73219a635c64a340ee8887356e644445c9128734cbce73f5d54778378da2f10a190365ad88a7db8bc95b1fb17f0c6ca41fc41bb786c09e1afe84d65dc libvirt.confd
734afb83b7a4703dd238f1d89dbc853a8c73bcf1994af648c41ab01ae4088e5c7a423f0cb91e5e31f2ae5e60c66d08a6e1583a1e3b88bb5554e0f9fd15ecc15c libvirt.initd
36b85f473d292be8df415256d01a562131d8ae61450ba3893658090a12d589ca32215382f56f286a830b4e59ffd98fbe1d92004f2ce14ca0834451b943cd8f2f virtlogd.initd
a4c4d26e4111931acbe7594451bf963a36c8db33c64b1bc447ab4758bb92803510bebee0511d6bc16ba80c289ab6f87e74377d47bf560412f9adb9c161a206d9 virtlockd.initd
6efb52d179fd83db4a46a43e51b67c5f58a4d8199f4cf9070a63899d03c21d983f60629af9190de57731c85202f45d82585c4586d8db1dd56392140de7d5c2d0 musl-fix-includes.patch
0ef74be8c8f0e6c6ae6e3dcf6e83dc76c1371e1eaab123589f634c22f221cc26a8f0b0de6a9f5d36510b270d4a06fae42b51b749311f3e57953e65fbfc241911 fix-fortify-virnetlink.patch"
|