termux-packages/packages/valgrind/build.sh

30 lines
1.2 KiB
Bash

TERMUX_PKG_HOMEPAGE=https://valgrind.org/
TERMUX_PKG_DESCRIPTION="Instrumentation framework for building dynamic analysis tools"
TERMUX_PKG_LICENSE="GPL-2.0"
TERMUX_PKG_MAINTAINER="@termux"
TERMUX_PKG_VERSION=3.20.0
TERMUX_PKG_SRCURL=http://sourceware.org/pub/valgrind/valgrind-${TERMUX_PKG_VERSION}.tar.bz2
TERMUX_PKG_SHA256=8536c031dbe078d342f121fa881a9ecd205cb5a78e639005ad570011bdb9f3c6
TERMUX_PKG_BREAKS="valgrind-dev"
TERMUX_PKG_REPLACES="valgrind-dev"
TERMUX_PKG_EXTRA_CONFIGURE_ARGS="--with-tmpdir=$TERMUX_PREFIX/tmp"
termux_step_pre_configure() {
CFLAGS=${CFLAGS/-fstack-protector-strong/}
if [ "$TERMUX_ARCH" == "aarch64" ]; then
cp $TERMUX_PKG_BUILDER_DIR/aarch64-setjmp.S $TERMUX_PKG_SRCDIR
patch --silent -p1 < $TERMUX_PKG_BUILDER_DIR/coregrindmake.am.diff
patch --silent -p1 < $TERMUX_PKG_BUILDER_DIR/memcheckmake.am.diff
TERMUX_PKG_EXTRA_CONFIGURE_ARGS+=" --enable-only64bit"
elif [ "$TERMUX_ARCH" == "arm" ]; then
# valgrind doesn't like arm; armv7 works, though.
TERMUX_PKG_EXTRA_CONFIGURE_ARGS+=" --host=armv7-linux-androideabi"
# http://lists.busybox.net/pipermail/buildroot/2013-November/082270.html:
# "valgrind uses inline assembly that is not Thumb compatible":
CFLAGS=${CFLAGS/-mthumb/}
fi
autoreconf -fi
}