aports/testing/libguestfs/APKBUILD

149 lines
3.1 KiB
Text

# 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
"