summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2013-01-20 23:48:35 +0000
committerRobin H. Johnson <robbat2@gentoo.org>2013-01-20 23:48:35 +0000
commit1bee1b51aa37936dcc419be46e0f0d750f58e172 (patch)
tree53f38653cd769e419da34774f7c51a79d9071900 /dev-util
parentEnable EAPI=5. (diff)
downloadhistorical-1bee1b51aa37936dcc419be46e0f0d750f58e172.tar.gz
historical-1bee1b51aa37936dcc419be46e0f0d750f58e172.tar.bz2
historical-1bee1b51aa37936dcc419be46e0f0d750f58e172.zip
Compilefix for bug #446770, done w/ revbump due to change of internal lock for SuggestedDelayNS function.
Package-Manager: portage-2.2.0_alpha144/cvs/Linux x86_64
Diffstat (limited to 'dev-util')
-rw-r--r--dev-util/google-perftools/ChangeLog9
-rw-r--r--dev-util/google-perftools/Manifest4
-rw-r--r--dev-util/google-perftools/files/gperftools-2.0-32bit-barrier.patch17
-rw-r--r--dev-util/google-perftools/google-perftools-2.0-r1.ebuild90
4 files changed, 118 insertions, 2 deletions
diff --git a/dev-util/google-perftools/ChangeLog b/dev-util/google-perftools/ChangeLog
index b4dd173aa60f..de776297da44 100644
--- a/dev-util/google-perftools/ChangeLog
+++ b/dev-util/google-perftools/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for dev-util/google-perftools
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-util/google-perftools/ChangeLog,v 1.22 2013/01/20 23:32:36 robbat2 Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-util/google-perftools/ChangeLog,v 1.23 2013/01/20 23:48:29 robbat2 Exp $
+
+*google-perftools-2.0-r1 (20 Jan 2013)
+
+ 20 Jan 2013; Robin H. Johnson <robbat2@gentoo.org>
+ +files/gperftools-2.0-32bit-barrier.patch, +google-perftools-2.0-r1.ebuild:
+ Compilefix for bug #446770, done w/ revbump due to change of internal lock for
+ SuggestedDelayNS function.
20 Jan 2013; Robin H. Johnson <robbat2@gentoo.org>
google-perftools-2.0.ebuild:
diff --git a/dev-util/google-perftools/Manifest b/dev-util/google-perftools/Manifest
index 4a95fd9c4773..dcb16c3fb4c9 100644
--- a/dev-util/google-perftools/Manifest
+++ b/dev-util/google-perftools/Manifest
@@ -1,7 +1,9 @@
AUX gperftools-2.0+glibc-2.16.patch 604 SHA256 abb19fd87ce092fc0cb0a4a5964834ec97b12d2462bc2b8bd8668c4ca71fcea5 SHA512 aa9b94c4712227b6414fc34a47154f416b120004c81704ab181c7985b6dce60bf1d98e4175678fb445cd59bb6c85d4d7bb0a093e186ecc9f115bc841d27cb964 WHIRLPOOL 75866b1e0e17ccc206459b31e284f7892d7e03c4cd862f8f6d66b374887aab938e9d79115228b7a7258f6bddd2439348fb48f67581744b9fdad1b4f6ae8079ef
+AUX gperftools-2.0-32bit-barrier.patch 792 SHA256 224776d529f1a1d11a036f16f04d4f01e3fd805d6fdd361c7d4b714f5bfbb87c SHA512 a39fd183d76a76e5c4cb3915f966e008250b4c72098bd2a9d13f10e01efd8dd1e36a51e0d4ef5f712d20398fa8605aa40e2529af085e80f918a1e227d7c92def WHIRLPOOL dafa07810d202816462603457395491a7d5901c0faf3134383635ef9a267aeba9f6635e687659dd1634ef7219970334a485350d6f8cad33f6792d87b779c21a3
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
EBUILD google-perftools-1.8.3.ebuild 2261 SHA256 c31d089d7bf50f957502b40e73abf54001aef377f1706367ac923fe82433947f SHA512 b2efc9e75456153f28021edd69bb83e573695497f9c3aff0b2040b9a5b5a704fd8cb91fb3a1ec2ac8f7f22c5e0dd87f63969452ec9ab20ec9d1fde334bba427d WHIRLPOOL 578af200896795e9a87fffda11e0ca998eee20770dc61566662331d9f4aa746faaebb3c0137cb8a25ccfdfa01db1bfa6d2eada9e9cc9506b72635364a2a6ad7f
+EBUILD google-perftools-2.0-r1.ebuild 2290 SHA256 dd53c1a2e83e3b99105a8ab69edf7554a6a199d3e9bb7ee3d5aaffdb39aecbfa SHA512 87149d3fddcd280700e745feb1e24c1fb29dc998810db063517c75d52230b41fba6e195787a70f75d84f420515f057a969dac07f32c69f30b6d26f6c6d66f0cc WHIRLPOOL 7eb4c32d5e14ae682a2b7827d46be09adbad61cc775772c3e282372abc93b1bff14428a3324ed525b0e6b285881bd2a6ca2205e0ff32c5d2131d51f615d9e95d
EBUILD google-perftools-2.0.ebuild 2237 SHA256 e57853ade9573ce30bb28aa5d9d17bbb7ce0f2356f30a26c6b655847cdad09b8 SHA512 4a9aacc342b4900cb5c93352e508f0f4c911ccd7ba595278fcdb3d1b240a68c69bc37e6f97a72f5de6957e22a7a1fba5b99bc630de08c8530c0af01ff17be5fd WHIRLPOOL 76deb14070db1d1cf4fc5997b5a02a7dd12565cae7381ee2f6b2c87e400a2692d59ee79a57d0345418c0b1aa2aa8fbf745319d2d013503dbeba61450fecf7239
-MISC ChangeLog 4451 SHA256 74e5051fc057f68d21ce8c6d945964edff4ab8ee41df4f5d026ac226c883490a SHA512 3a4220d491411726cbcb69da880a21db2383d3f6f34489b7eee37ae410a7a4921a00746dd2b4f477a6c4b219f0a478f1d538c277d3ef8120c27860b8a9d8cf12 WHIRLPOOL 3e4499ebccacb40635ceb00f873c5eb4f9810d83721ebc4ff184a2b4089c6595e2e6fddff68805a5fff6ce1fa0a3e5b188d47a44fba4311233ec2c0803adcea5
+MISC ChangeLog 4733 SHA256 57c29ee8cd73ea7e8ca7c829b8ae71cc7b1477692cb9ff2daeebcc0214653140 SHA512 f3aad4ea30c7c89b3518d9db198df3575713a50ff6b26717e90471be30749a67a379d80c678fa57ab2b9b241d6ecbfbe8fbb8b890067b9c66b1d47026d2603bd WHIRLPOOL dee261f34a36e4222122fdcdf595e638b1dbb00d83f6cf3d9b7936662922c5f648abf5eac9cc3975e91dc15f8a92c717e52cc52653c27a6015d9ce8152944bbf
MISC metadata.xml 774 SHA256 bbe347d13e3f9956f9746f532aeb9bdee168509114053d2d0e8212aba51ca649 SHA512 c3b7dd68c57518617c41b435bc660cc6874dd043eff716e54672397ee1c3120126e6814a84a56e64b1ce03dbbf628fca370a491221e2008fb70b301c7a562510 WHIRLPOOL 9d94a18600a269b3589437e9d769ce2a37ed36d4e0e722aebaed4283694266cc0ff53430a9a831e8e3652d82348938d94c8ea6b0a91de8581cbe7ae629ff08c2
diff --git a/dev-util/google-perftools/files/gperftools-2.0-32bit-barrier.patch b/dev-util/google-perftools/files/gperftools-2.0-32bit-barrier.patch
new file mode 100644
index 000000000000..df89a92ed010
--- /dev/null
+++ b/dev-util/google-perftools/files/gperftools-2.0-32bit-barrier.patch
@@ -0,0 +1,17 @@
+Atomic64 not available on all architectures.
+Use AtomicWord instead.
+
+Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
+
+diff -Nuar gperftools-2.0.orig/src/base/spinlock_internal.cc gperftools-2.0/src/base/spinlock_internal.cc
+--- gperftools-2.0.orig/src/base/spinlock_internal.cc 2012-02-02 21:36:23.000000000 +0000
++++ gperftools-2.0/src/base/spinlock_internal.cc 2013-01-20 23:44:01.629077919 +0000
+@@ -80,7 +80,7 @@
+ static int SuggestedDelayNS(int loop) {
+ // Weak pseudo-random number generator to get some spread between threads
+ // when many are spinning.
+- static base::subtle::Atomic64 rand;
++ static AtomicWord rand;
+ uint64 r = base::subtle::NoBarrier_Load(&rand);
+ r = 0x5deece66dLL * r + 0xb; // numbers from nrand48()
+ base::subtle::NoBarrier_Store(&rand, r);
diff --git a/dev-util/google-perftools/google-perftools-2.0-r1.ebuild b/dev-util/google-perftools/google-perftools-2.0-r1.ebuild
new file mode 100644
index 000000000000..d7b3dbb88b31
--- /dev/null
+++ b/dev-util/google-perftools/google-perftools-2.0-r1.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-util/google-perftools/google-perftools-2.0-r1.ebuild,v 1.1 2013/01/20 23:48:29 robbat2 Exp $
+
+EAPI=4
+
+MY_P="gperftools-${PV}"
+
+inherit toolchain-funcs eutils flag-o-matic
+
+DESCRIPTION="Fast, multi-threaded malloc() and nifty performance analysis tools"
+HOMEPAGE="http://code.google.com/p/gperftools/"
+SRC_URI="http://gperftools.googlecode.com/files/${MY_P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+# contains ASM code, with support for
+# freebsd x86/amd64
+# linux x86/amd64/ppc/ppc64/arm
+# OSX ppc/amd64
+# AIX ppc/ppc64
+KEYWORDS="-* ~arm ~amd64 ~ppc64 ~x86 ~x86-fbsd"
+IUSE="largepages +debug minimal test"
+
+DEPEND="sys-libs/libunwind"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+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="${makeopts} noinst_PROGRAMS= "
+
+ # don't install _anything_ from the documentation, since it would
+ # install it in non-standard locations, and would just waste time.
+ makeopts="${makeopts} dist_doc_DATA= "
+}
+
+src_prepare() {
+ epatch "${FILESDIR}/${MY_P}+glibc-2.16.patch"
+ epatch "${FILESDIR}/${MY_P}-32bit-barrier.patch"
+}
+
+src_configure() {
+ use largepages && append-cppflags -DTCMALLOC_LARGE_PAGES
+
+ append-flags -fno-strict-aliasing -fno-omit-frame-pointer
+
+ econf \
+ --disable-static \
+ --disable-dependency-tracking \
+ --enable-fast-install \
+ $(use_enable debug debugalloc) \
+ $(use_enable minimal)
+}
+
+src_compile() {
+ emake ${makeopts}
+}
+
+src_test() {
+ case "${LD_PRELOAD}" in
+ *libsandbox*)
+ ewarn "Unable to run tests when sanbox is enabled."
+ ewarn "See http://bugs.gentoo.org/290249"
+ return 0
+ ;;
+ esac
+
+ emake check
+}
+
+src_install() {
+ emake DESTDIR="${D}" install ${makeopts}
+
+ # Remove libtool files since we dropped the static libraries
+ find "${D}" -name '*.la' -delete
+
+ dodoc README AUTHORS ChangeLog TODO NEWS
+ pushd doc
+ dohtml -r *
+ popd
+}