summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick McLean <chutzpah@gentoo.org>2017-07-29 16:24:18 -0700
committerPatrick McLean <chutzpah@gentoo.org>2017-07-29 16:24:18 -0700
commit7675f15c13f314ac47777dcda7790f0e5ac37040 (patch)
treeb84ff50c698a11e16ea59e9d6385f09bbc86f72f /dev-util/google-perftools
parentdev-libs/libpcre: Fix compile error on MIPS. Fixes #626564 (diff)
downloadgentoo-7675f15c13f314ac47777dcda7790f0e5ac37040.tar.gz
gentoo-7675f15c13f314ac47777dcda7790f0e5ac37040.tar.bz2
gentoo-7675f15c13f314ac47777dcda7790f0e5ac37040.zip
dev-util/google-perftools: Version bump to 2.6, migrate to EAPI=6
Package-Manager: Portage-2.3.6, Repoman-2.3.3
Diffstat (limited to 'dev-util/google-perftools')
-rw-r--r--dev-util/google-perftools/Manifest1
-rw-r--r--dev-util/google-perftools/google-perftools-2.6.ebuild85
-rw-r--r--dev-util/google-perftools/metadata.xml6
3 files changed, 89 insertions, 3 deletions
diff --git a/dev-util/google-perftools/Manifest b/dev-util/google-perftools/Manifest
index faf191f9f963..045a5732c0f0 100644
--- a/dev-util/google-perftools/Manifest
+++ b/dev-util/google-perftools/Manifest
@@ -1,3 +1,4 @@
DIST google-perftools-1.8.3.tar.gz 1265062 SHA256 6ad744b34abb24312631740d9912f4667993b02e5f59b91246c31a2a911a9d59 SHA512 c6938391d182982ba6a87cd3d023e5fdf3501c42aecb951504e2fc97ce9e5bb2a6e6a577504ddbe89220b45ae47e58ce3e68f84aa45ff238d949dee4fc765b51 WHIRLPOOL 70ef15f25451a0f3eddb92e948e6d7d2e46a7ee8684636ddff312d5f0dda1429a7fe3f1f6756f0a979e4957b09c47513ddad9504415795e9e82ba51188672fdc
DIST gperftools-2.0.tar.gz 1261243 SHA256 7de3dd91f018825b1e7d332af1edace15c6211f430186febede1835069861080 SHA512 61bf7a26974058912a4165cbc363351bc735599d36ab569dc7e84a75a690adbc17a4178512a57469fc7c17befaad2a271ef4ea5c29a36b664153938939269926 WHIRLPOOL 4f49a7da976040cacdecb8e18294b09fbfe276422ba35058476a14a3c1df072f8748d70f738adafa03a3a445701ed32b6232f13962d8ec8c5a968652414797a6
DIST gperftools-2.5.tar.gz 895753 SHA256 0256331e67e8be12995b57183ec6affd071231f997bfcb5d5b050f86d4ad577e SHA512 974b86eadebe0437f4b7cf51de84afa315390cdcd2a88c8ccc8448b0b3e98c2241d89b4987b5fca1937102ae00a43802d9d06d7b11272e3dfeeaa23cf58ad68d WHIRLPOOL 4fc82910585107a2a879cae1b83afdcf98a39c3c7cbce3e8ba28b7b00ea1f638bb795213b7a6330bb311dd399bd7bcf34b3705cb8f75921ac1fd9ce3c0d1e8fd
+DIST gperftools-2.6.tar.gz 906841 SHA256 ff07a20a522fc729b899c542fedd3156fb1600973786542917675f7634b4905c SHA512 9fc32066304b76ad323e90ce2e7b437e7f1a5094b8d40a0e3df4d317fd57b4c048a19dacb7d148bd40557a080b0b82fe2da8ef32ae5511735ca7118e06b1ee38 WHIRLPOOL c91ffd09e9fd3202c17813d27370b144fa4140a6bd62b3e6c662557ac674c16575edcd50313d2cd342834a6ea5e799b96dca72ff600714486f9515bcc0c538c1
diff --git a/dev-util/google-perftools/google-perftools-2.6.ebuild b/dev-util/google-perftools/google-perftools-2.6.ebuild
new file mode 100644
index 000000000000..48a3be80a5e3
--- /dev/null
+++ b/dev-util/google-perftools/google-perftools-2.6.ebuild
@@ -0,0 +1,85 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+MY_P="gperftools-${PV}"
+inherit toolchain-funcs flag-o-matic vcs-snapshot autotools multilib-minimal
+
+DESCRIPTION="Fast, multi-threaded malloc() and nifty performance analysis tools"
+HOMEPAGE="https://github.com/gperftools/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 ~arm64 ~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="docs"
+
+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= "
+}
+
+src_prepare() {
+ default
+ eautoreconf
+ multilib_copy_sources
+}
+
+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
+
+ econf \
+ --htmldir=/usr/share/doc/${PF}/html \
+ --docdir=/usr/share/doc/${PF} \
+ --enable-shared \
+ $(use_enable static-libs static) \
+ $(use_enable debug debugalloc) \
+ $(if [[ ${ABI} == x32 ]]; then printf "--enable-minimal\n" else use_enable minimal; fi)
+}
+
+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
+
+ multilib-minimal_src_test
+}
+
+src_install() {
+ if ! use minimal && has x32 ${MULTILIB_ABIS}; then
+ MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/gperftools/heap-checker.h
+ /usr/include/gperftools/heap-profiler.h
+ /usr/include/gperftools/stacktrace.h
+ /usr/include/gperftools/profiler.h
+ )
+ fi
+
+ multilib-minimal_src_install
+}
diff --git a/dev-util/google-perftools/metadata.xml b/dev-util/google-perftools/metadata.xml
index f2cf8d8c5f0f..e6791a60364b 100644
--- a/dev-util/google-perftools/metadata.xml
+++ b/dev-util/google-perftools/metadata.xml
@@ -16,9 +16,9 @@
Only build the tcmalloc_minimal library, ignoring the heap
checker and the profilers.
</flag>
- <flag name="optimisememory">
- To build libtcmalloc with smaller internal caches.
- </flag>
+ <flag name="optimisememory">
+ To build libtcmalloc with smaller internal caches.
+ </flag>
</use>
<upstream>
<remote-id type="github">gperftools/gperftools</remote-id>