# Template file for 'gperftools'
pkgname=gperftools
version=2.8
revision=2
build_style=gnu-configure
hostmakedepends="automake libtool"
makedepends="libunwind-devel"
checkdepends="perl"
short_desc="Multi-threaded malloc() and performance analysis tools"
maintainer="Enno Boland <gottox@voidlinux.org>"
license="BSD-3-Clause"
homepage="https://github.com/gperftools/gperftools"
distfiles="${homepage}/releases/download/${pkgname}-${version}/${pkgname}-${version}.tar.gz"
checksum=240deacdd628b6459671b83eb0c4db8e97baadf659f25b92e9a078d536bd513e

if [ "$XBPS_TARGET_LIBC" = "musl" ]; then
	# needed by some newly enabled code
	CXXFLAGS+=" -D__WORDSIZE=$XBPS_TARGET_WORDSIZE"
	# needed on musl other than x86_64
	if [ "$XBPS_TARGET_MACHINE" != "x86_64-musl" ]; then
		makedepends+=" libucontext-devel"
		LDFLAGS+=" -lucontext"
	fi
fi

case "$XBPS_TARGET_MACHINE" in
	arm*-musl|aarch64-musl|i686-musl)
		# having libunwind in makedepends still causes failures...
		makedepends="libucontext-devel"
		configure_args+=" --disable-libunwind"
		;;
esac

post_extract() {
	sed -i -e 's/__off64_t/off64_t/' \
		src/base/linux_syscall_support.h src/malloc_hook_mmap_linux.h
}

pre_configure() {
	autoreconf -fi
}

post_install() {
	vlicense COPYING
	rm -rf ${DESTDIR}/usr/share/doc
}

gperftools-devel_package() {
	depends="gperftools-${version}_${revision}"
	short_desc+=" - development files"
	pkg_install() {
		vmove usr/include
		vmove usr/lib/pkgconfig
		vmove "usr/lib/*.so"
		vmove "usr/lib/*.a"
	}
}
