void-packages/srcpkgs/strace/template

49 lines
1.6 KiB
Bash

# Template file for 'strace'
pkgname=strace
version=6.12
revision=1
build_style=gnu-configure
configure_args="--enable-silent-rules $(vopt_with libunwind)"
makedepends="$(vopt_if libunwind libunwind-devel)"
short_desc="System Call Tracer"
maintainer="icp <pangolin@vivaldi.net>"
license="LGPL-2.1-or-later"
homepage="https://strace.io/"
changelog="https://raw.githubusercontent.com/strace/strace/master/NEWS"
distfiles="https://github.com/strace/strace/releases/download/v${version}/strace-${version}.tar.xz"
checksum=c47da93be45b6055f4dc741d7f20efaf50ca10160a5b100c109b294fd9c0bdfe
build_options="static libunwind"
build_options_default="libunwind"
vopt_conflict static libunwind # configure fails
desc_option_static="Build static strace binary"
desc_option_libunwind="Support printing backtraces for every syscall"
if [ "$build_option_static" ]; then
LDFLAGS=-static
fi
case "$XBPS_TARGET_MACHINE" in
aarch64*|ppc64*) configure_args+=" --enable-mpers=no" ;;
# work around https://github.com/strace/strace/issues/133
i686-musl) configure_args+=" --enable-mpers=no"; makedepends+=" libucontext-devel" ;;
x86_64-musl) configure_args+=" --enable-mpers=no" ;;
esac
pre_configure() {
if [ "$XBPS_TARGET_MACHINE" = "i686-musl" ]; then
vsed -i configure -e "s;libunwind_LIBS=$;&-lucontext;"
fi
}
do_check() {
if [ "$XBPS_CHECK_PKGS" = full ]; then
# XXX: Some tests may fail inside of containers or if they are missing
# sufficient capabilities
make check
else
make check \
TESTS="bpf.gen epoll_pwait.gen getcpu.gen open.gen read-write.gen readlink.gen seccomp-filter.gen mmap ioctl caps readv"
fi
}