void-packages/srcpkgs/elfutils/template

72 lines
2 KiB
Bash

# Template file for 'elfutils'
pkgname=elfutils
version=0.183
revision=2
build_style=gnu-configure
configure_args="--program-prefix=eu-"
hostmakedepends="automake libtool pkg-config"
_devel_depends="bzip2-devel liblzma-devel zlib-devel libzstd-devel"
makedepends="${_devel_depends} libcurl-devel libarchive-devel sqlite-devel
libmicrohttpd-devel"
checkdepends="zstd bzip2 curl rpm cpio"
short_desc="Utilities to handle ELF object files"
maintainer="Érico Nogueira <ericonr@disroot.org>"
license="GPL-3.0-or-later"
homepage="https://sourceware.org/elfutils/"
distfiles="https://sourceware.org/${pkgname}/ftp/${version}/${pkgname}-${version}.tar.bz2"
checksum=c3637c208d309d58714a51e61e63f1958808fead882e9b607506a29e5474f2c5
# subpackages require explicit ordering
subpackages="debuginfod libdebuginfod libelf elfutils-devel"
if [ "$XBPS_TARGET_LIBC" = musl ]; then
makedepends+=" argp-standalone musl-fts-devel musl-obstack-devel musl-legacy-compat"
# mainly warnings from using error.h
CFLAGS="-Wno-error"
# XXX: breaks some expected functionality
CFLAGS+=" -DFNM_EXTMATCH=0"
# warnings and avoid blowing the stack
CXXFLAGS="-Wno-error -Wl,-z,stack-size=2097152"
fi
do_check() {
# test failures also expected if building with debug disabled
make check ${makejobs} ||
msg_warn "Failure in testsuite, expected on musl systems, at least\n"
}
libdebuginfod_package() {
short_desc+=" - debuginfod library"
pkg_install() {
vmove "usr/lib/libdebuginfod*.so*"
vmove etc/profile.d
}
}
debuginfod_package() {
short_desc+=" - debuginfod programs"
pkg_install() {
vmove "usr/bin/debuginfod*"
vmove "usr/share/man/man1/debuginfod-find.1"
vmove "usr/share/man/man8/debuginfod.8"
}
}
libelf_package() {
short_desc+=" - runtime library"
pkg_install() {
vmove "usr/lib/*.so*"
}
}
elfutils-devel_package() {
depends="libelf>=${version}_${revision} libdebuginfod>=${version}_${revision}
${_devel_depends}"
short_desc+=" - development files"
pkg_install() {
vmove usr/include
vmove usr/lib/pkgconfig
vmove "usr/lib/*.a"
vmove usr/share/man/man3
}
}