void-packages/srcpkgs/elfutils/template
2021-11-12 23:16:26 -03:00

72 lines
2 KiB
Bash

# Template file for 'elfutils'
pkgname=elfutils
version=0.186
revision=1
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=7f6fb9149b1673d38d9178a0d3e0fb8a1ec4f53a9f4c2ff89469609879641177
# 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"
# 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
}
}