summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYixun Lan <dlan@gentoo.org>2016-06-08 14:26:05 +0800
committerYixun Lan <dlan@gentoo.org>2016-06-08 14:27:19 +0800
commite95cd61e3d7cab55d6d3b6a2b7a7386ffcb4263c (patch)
tree3a6a1e98d64eecb933127ea2fe0ceeba1516ce92 /dev-util/google-perftools/google-perftools-2.5.ebuild
parentdev-ruby/systemu: add ruby23 (diff)
downloadgentoo-e95cd61e3d7cab55d6d3b6a2b7a7386ffcb4263c.tar.gz
gentoo-e95cd61e3d7cab55d6d3b6a2b7a7386ffcb4263c.tar.bz2
gentoo-e95cd61e3d7cab55d6d3b6a2b7a7386ffcb4263c.zip
dev-util/google-perftools: version bump 2.5
also add multilib support Gentoo-Bug: 498912, 573608 Package-Manager: portage-2.3.0_rc1
Diffstat (limited to 'dev-util/google-perftools/google-perftools-2.5.ebuild')
-rw-r--r--dev-util/google-perftools/google-perftools-2.5.ebuild79
1 files changed, 79 insertions, 0 deletions
diff --git a/dev-util/google-perftools/google-perftools-2.5.ebuild b/dev-util/google-perftools/google-perftools-2.5.ebuild
new file mode 100644
index 000000000000..bb3355a61db7
--- /dev/null
+++ b/dev-util/google-perftools/google-perftools-2.5.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+AUTOTOOLS_AUTORECONF=1
+
+MY_P="gperftools-${PV}"
+inherit toolchain-funcs eutils flag-o-matic vcs-snapshot autotools-multilib
+
+DESCRIPTION="Fast, multi-threaded malloc() and nifty performance analysis tools"
+HOMEPAGE="http://code.google.com/p/gperftools/"
+SRC_URI="https://github.com/gperftools/gperftools/tarball/${MY_P} -> ${MY_P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/4"
+# contains ASM code, with support for
+# freebsd x86/amd64
+# linux x86/amd64/ppc/ppc64/arm
+# OSX ppc/amd64
+# AIX ppc/ppc64
+KEYWORDS="-* ~amd64 ~arm ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux"
+IUSE="largepages +debug minimal optimisememory test static-libs"
+
+DEPEND="sys-libs/libunwind"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+HTML_DOCS="doc"
+
+pkg_setup() {
+ # set up the make options in here so that we can actually make use
+ # of them on both compile and install.
+
+ # Avoid building the unit testing if we're not going to execute
+ # tests; this trick here allows us to ignore the tests without
+ # touching the build system (and thus without rebuilding
+ # autotools). Keep commented as long as it's restricted.
+ use test || \
+ MAKEOPTS+=" noinst_PROGRAMS= "
+}
+
+multilib_src_configure() {
+ use largepages && append-cppflags -DTCMALLOC_LARGE_PAGES
+ use optimisememory && append-cppflags -DTCMALLOC_SMALL_BUT_SLOW
+ append-flags -fno-strict-aliasing -fno-omit-frame-pointer
+
+ local myeconfargs=(
+ --htmldir=/usr/share/doc/${PF}/html
+ $(use_enable debug debugalloc)
+ )
+
+ if [[ ${ABI} == x32 ]]; then
+ myeconfargs+=( --enable-minimal )
+ else
+ myeconfargs+=( $(use_enable minimal) )
+ fi
+ autotools-utils_src_configure
+}
+
+src_test() {
+ case "${LD_PRELOAD}" in
+ *libsandbox*)
+ ewarn "Unable to run tests when sandbox is enabled."
+ ewarn "See https://bugs.gentoo.org/290249"
+ return 0
+ ;;
+ esac
+
+ autotools-multilib_src_test
+}
+
+# abi_x86_x32 forces minimal, which installs fewer headers
+# so override the header check with a no-op
+multilib_check_headers() {
+ :
+}