blob: cec13a5d2b0fd76c9a7a78add558dd3b85a4399d (
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
|
# Contributor: Fathi Boudra <fathi.boudra@linaro.org>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=libguestfs
# NOTE: Upgrade only to even-numbered versions (e.g. 1.50.x, 1.52.x)!
# Odd-numbered versions are development versions.
pkgver=1.52.0
pkgrel=1
pkgdesc="Access and modify virtual machine disk images"
url="https://libguestfs.org/"
# riscv64, loongarch64: blocked by ocaml
arch="all !riscv64 !loongarch64"
license="GPL-2.0-or-later"
depends="
cmd:mkisofs
curl
qemu-img
"
makedepends="
acl-dev
augeas-dev
bash
bison
cmd:xzcat
cmd:zstdcat
coreutils
file-dev
flex
fuse-dev
gawk
gperf
hivex-dev
jansson-dev
libcap-dev
libconfig-dev
libtirpc-dev
libxml2-dev
lua5.1-dev
musl-libintl
ocaml
ocaml-findlib
pcre2-dev
perl
python3-dev
readline-dev
ruby-dev
ruby-rake
zstd-dev
"
subpackages="
$pkgname-static
$pkgname-dev
$pkgname-doc
guestfs-tools
lua5.1-$pkgname:_lua51
py3-$pkgname:_py
ruby-$pkgname:_ruby
"
source="https://download.libguestfs.org/${pkgver%.*}-stable/libguestfs-$pkgver.tar.gz
fix-missing-int64_t.patch
fix-missing-error-h.patch
"
options="!check" # XXX: Test suite does not support Alpine Linux at this moment
case "$CARCH" in
arm*) _qemu="qemu-system-arm";;
ppc64le) _qemu="qemu-system-ppc64";;
x86_64 | x86) _qemu="qemu-system-x86_64";;
*) _qemu="qemu-system-$CARCH";;
esac
depends="$depends $_qemu"
prepare() {
default_prepare
# busybox gzip does not support --best
sed -i 's/gzip --best/gzip -9/g' test-data/files/*
}
build() {
# TODO: build and package appliance
# NOTE: libvirt is a huge dependency linked into libguestfs.so,
# so it cannot be easily split.
PYTHON=/usr/bin/python3 ./configure \
--prefix=/usr \
--mandir=/usr/share/man \
--sysconfdir=/etc \
--disable-nls \
--enable-fuse \
--disable-probes \
--disable-daemon \
--disable-appliance \
--disable-ocaml \
--disable-perl \
--enable-ruby \
--disable-haskell \
--disable-php \
--disable-erlang \
--enable-lua \
--disable-golang \
--disable-gobject \
--disable-rust \
--enable-vala=no \
--with-readline \
--without-java \
--without-libvirt \
--with-qemu="$_qemu"
make V=1
}
package() {
# INSTALLDIRS ensures that Perl and Ruby libs are installed in the
# vendor dir not the site dir.
make V=1 DESTDIR="$pkgdir" INSTALLDIRS="vendor" install
}
tools() {
pkgdesc="$pkgdesc (CLI tools)"
depends=""
amove etc
amove usr/bin
}
_lua51() {
pkgdesc="Lua 5.1 bindings for $pkgname"
depends=""
amove usr/lib/lua
}
_py() {
pkgdesc="Python 3 bindings for $pkgname"
depends=""
amove usr/lib/python3*
}
_ruby() {
pkgdesc="Ruby bindings for $pkgname"
depends=""
amove usr/lib/ruby
}
sha512sums="
48dfaabb6b371ab3476b42310d363addf2fd1dfe43876be3bc984953f6919a30c7de13ef235d83fdd39117d71aa6bbfb5fbb645c1b17bc3031798a2a2b3df9d7 libguestfs-1.52.0.tar.gz
9ca7a2ac8572553394d42eda0e02f8b694651288ce58f1f4c7569eaab81cd3295b0992dcd6452a42b4b284cec54a666fd277eafcee05d54d05b1e84560ac7b06 fix-missing-int64_t.patch
e4d0cac4ba856d871ca524ebeb4dedf25b3a956fe6a1ab4c93481eba03954fb684621c63085526fc1846b3bffd4cbe30dadfba2b92844d24b8ec277c0e84bf5c fix-missing-error-h.patch
"
|