# Maintainer: Natanael Copa pkgname=valgrind pkgver=3.11.0 pkgrel=1 pkgdesc="A tool to help find memory-management problems in programs" url="http://valgrind.org/" arch="x86 x86_64 armhf" license="GPL2+" depends="" # it seems like busybox sed works but the configure script requires GNU sed makedepends="sed paxmark perl bash autoconf automake libtool" # from README_PACKAGERS: # Don't strip the debug info off lib/valgrind/$platform/vgpreload*.so # in the installation tree. Either Valgrind won't work at all, or it # will still work if you do, but will generate less helpful error # messages. options="!strip" subpackages="$pkgname-dev $pkgname-doc" source="http://$pkgname.org/downloads/$pkgname-$pkgver.tar.bz2 uclibc.patch musl-fixes.patch arm.patch" _builddir="$srcdir"/$pkgname-$pkgver prepare() { cd "$_builddir" for i in $source; do case $i in *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;; esac done aclocal && autoconf && automake --add-missing || return 1 echo '#include ' > include/a.out.h } build() { cd "$_builddir" # fails to build with ccache export CC="gcc" export CFLAGS="$CFLAGS -fno-stack-protector" export GCC_SPECS="hardenednopie.specs" ./configure \ --build=$CBUILD \ --host=$CHOST \ --prefix=/usr \ --sysconfdir=/etc \ --mandir=/usr/share/man \ --infodir=/usr/share/info \ --localstatedir=/var \ --without-mpicc \ || return 1 make || return 1 } package() { cd "$_builddir" make DESTDIR="$pkgdir" install || return 1 # we have options=!strip above so we strip the /usr/bin/* manually if [ -z "$DEBUG" ]; then strip "$pkgdir"/usr/bin/valgrind \ "$pkgdir"/usr/bin/no_op_client_for_valgrind \ "$pkgdir"/usr/bin/valgrind-listener \ "$pkgdir"/usr/bin/cg_merge fi # pax causes some issues # http://marc.info/?l=gentoo-hardened&m=119512627126298&w=2 # http://bugs.alpinelinux.org/issues/999 paxmark -m "$pkgdir"/usr/lib/valgrind/*-*-linux } md5sums="4ea62074da73ae82e0162d6550d3f129 valgrind-3.11.0.tar.bz2 c29b4572a070eb0d3a6a977be586c771 uclibc.patch 6a5ab2ceaa4b5b907730fec90fdd4946 musl-fixes.patch 751d4eff90f997b0131e63dede131cf2 arm.patch" sha256sums="6c396271a8c1ddd5a6fb9abe714ea1e8a86fce85b30ab26b4266aeb4c2413b42 valgrind-3.11.0.tar.bz2 fab5afea5cb7abec79ff68088d97ccc188613c733b4dfc8ede029cb818ec397f uclibc.patch 1a9e76609ebb2b9c178fe28d2b1f6e75cc0d82351b916e4dfdd7178a9554a3a1 musl-fixes.patch d23df431a8e60e074aa2838441a77799c3079af4a2a1bdc48d4848e3239628c4 arm.patch" sha512sums="a25f97fa80aef4ad1e86b303886cd7a97aac248820a4c24e3d3dc26567dd7d2d86db237866468fd43885a9fb8534cb0a8e301a3c752fffbc231a2842272999da valgrind-3.11.0.tar.bz2 d59a10db9037e120df2ee94a103402ca95a79abee9d8be63e4e1bca29c82dca775cc402a79b854ec11a2160a4d2da202c237369418e221d1925267ea2613fd5d uclibc.patch 47735294a0641208c6bcbc51203019da18ec16d51316ca6437d0f9eba14d9acc09d82f65149b8b1d56aba90825397ef0c215e8036eccd0dce1287c58ee3ccda2 musl-fixes.patch 9ee297d1b2b86891584443ad0caadc4977e1447979611ccf1cc55dbee61911b0b063bc4ad936d86c451cedae410cb3219b5a088b2ad0aa17df182d564fe36cfe arm.patch"