# Maintainer: David Runge # Contributor: Laurent Carlier # Contributor: Stéphane Gaudreault # Contributor: Andrej Gelenberg pkgbase=elfutils pkgname=('debuginfod' 'elfutils' 'libelf') pkgver=0.186 pkgrel=1 pkgdesc='Handle ELF object files and DWARF debugging information' arch=('x86_64') url="https://sourceware.org/elfutils/" license=('LGPL3' 'GPL3') makedepends=('bzip2' 'curl' 'gcc-libs' 'libarchive' 'libmicrohttpd' 'sqlite' 'xz' 'zlib' 'zstd') options=('staticlibs') source=("https://sourceware.org/${pkgbase}/ftp/${pkgver}/${pkgbase}-${pkgver}.tar.bz2"{,.sig}) sha512sums=('c9180b27ec62935f18b9431268d176f6023d1bb938731d2af6e7626ae460af6608a70ba68483aa1ec7e6cb0fa0528b661ca8b68bc4f58ea8e18af527c5950c78' 'SKIP') b2sums=('49573d0a1f3519eab81d1ba3e94354cbc0935a36a94a3fdb22fe223a47b78cca8fd6e322870b0e335a809529fa6f54180b13c67936dec0242123c54ba20c9fc9' 'SKIP') validpgpkeys=( '47CC0331081B8BC6D0FD4DA08370665B57816A6A' # Mark J. Wielaard 'EC3CFE88F6CA0788774F5C1D1AA44BE649DE760A' # Mark Wielaard ) prepare() { ( cd "$pkgbase-$pkgver" autoreconf -fiv ) cp -av "$pkgbase-$pkgver" "$pkgbase-test-$pkgver" } build() { ( cd "$pkgbase-$pkgver" ./configure --prefix=/usr \ --sysconfdir=/etc \ --program-prefix="eu-" \ --enable-deterministic-archives make ) ( cd "$pkgbase-test-$pkgver" CFLAGS+=" -g" # required for test-suite success ./configure --prefix=/usr \ --sysconfdir=/etc \ --program-prefix="eu-" \ --enable-deterministic-archives make ) } check() { cd "$pkgbase-test-$pkgver" make check } package_libelf() { pkgdesc+=" (libraries)" depends=('gcc-libs' 'libbz2.so' 'libcurl.so' 'xz' 'zlib' 'zstd') # NOTE: the shared objects can not be added to provides as they are not versioned cd "$pkgbase-$pkgver" make DESTDIR="$pkgdir" install # remove files provided by elfutils or debuginfod rm -rvf "${pkgdir}"{/etc,/usr/{bin,share}} install -vDm 644 {AUTHORS,ChangeLog,NEWS,NOTES,README} \ -t "${pkgdir}/usr/share/doc/${pkgname}" } package_elfutils() { pkgdesc+=" (utilities)" depends=('gcc-libs' 'glibc' "libelf=${pkgver}-${pkgrel}") cd "$pkgbase-$pkgver" make DESTDIR="$pkgdir" install install -vDm 644 {AUTHORS,ChangeLog,NEWS,NOTES,README} \ -t "${pkgdir}/usr/share/doc/${pkgname}" # remove files provided by libelf rm -rvf "${pkgdir}/usr/"{include,lib} # remove files provided by debuginfod rm -rvf "${pkgdir}/usr/bin/debuginfod"* \ "${pkgdir}/usr/share/man/man1/debuginfod"* \ "${pkgdir}/usr/share/man/man3/debuginfod"* \ "${pkgdir}/usr/share/man/man7/" \ "${pkgdir}/usr/share/man/man8/" \ "${pkgdir}/etc" } package_debuginfod() { pkgdesc+=" (debuginfod)" depends=('gcc-libs' 'glibc' 'libarchive.so' "libelf=${pkgver}-${pkgrel}" 'libmicrohttpd.so' 'sqlite') optdepends=("elfutils=${pkgver}-${pkgrel}: for translations" ) cd "$pkgbase-$pkgver" make DESTDIR="$pkgdir" install install -vDm 644 {AUTHORS,ChangeLog,NEWS,NOTES,README} \ -t "${pkgdir}/usr/share/doc/${pkgname}" # remove files provided by libelf rm -rvf "${pkgdir}/usr/"{include,lib} # remove files provided by elfutils rm -rvf "${pkgdir}/usr/bin/eu-"* \ "${pkgdir}/usr/share/man/man1/eu-"* \ "${pkgdir}/usr/share/man/man3/elf_"* \ "${pkgdir}/usr/share/locale" }