Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Bump dev-util/google-perftools with a new patch from Portage
- Loading branch information
Showing
4 changed files
with
132 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,5 @@ | ||
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 gperftools-2.0.tar.gz 1261243 SHA256 7de3dd91f018825b1e7d332af1edace15c6211f430186febede1835069861080 SHA512 61bf7a26974058912a4165cbc363351bc735599d36ab569dc7e84a75a690adbc17a4178512a57469fc7c17befaad2a271ef4ea5c29a36b664153938939269926 WHIRLPOOL 4f49a7da976040cacdecb8e18294b09fbfe276422ba35058476a14a3c1df072f8748d70f738adafa03a3a445701ed32b6232f13962d8ec8c5a968652414797a6 | ||
EBUILD google-perftools-2.0-r1.ebuild 2377 SHA256 7e995843f00fdb2facec45dace8c6ba1bedc69389e009aa41d7fc81c3056e788 SHA512 b3399df69dcd408ca0cd6c5eac5d5ffc2b482db005678684c2fa7f329f6ba47250eddd4d67304ae894d8b7654a3f00167db8bbf9a3f487568d33ccc20d8d9a22 WHIRLPOOL 75a0610c4c85ca8cc9c9e9cfa57862b6b4748315f8e78c55238af371d49872bdfea9ff26fdabbc8c57a0952cd6cf7145b2689ca91bda6efcbdfa1597e65bda23 | ||
EBUILD google-perftools-2.0.ebuild 2189 SHA256 030bd30f26588481e68c5c26ed5fd1bed21403dc6219f4548984e47b267b2e7e SHA512 270e6ab40967549b59df7cf7bf8ba30573686b3424ec1fed8d7f1da7bce73d3ca5c971e4cbafbc95a0c769fb12c890d0affe2ec24b1985f9644874dba188d80c WHIRLPOOL 23f57db2261419789f4e10cc57b74b1d7681aa6570773cc1f6240661bd8929711fe5c027fd0e6db9bcb0a8574d8b02f43a26438302d28f2f3661b1a3d7b7ed4b |
17 changes: 17 additions & 0 deletions
17
dev-util/google-perftools/files/gperftools-2.0-32bit-barrier.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,91 @@ | ||
# 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 64bitworkaround" | ||
|
||
DEPEND="!64bitworkaround? ( 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 64bitworkaround frame-pointers) \ | ||
$(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 | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
!64bitworkaround? ( sys-libs/libunwind ) | ||
!64bitworkaround? ( sys-libs/libunwind ) | ||
0 | ||
http://gperftools.googlecode.com/files/gperftools-2.0.tar.gz | ||
|
||
http://code.google.com/p/gperftools/ | ||
MIT | ||
Fast, multi-threaded malloc() and nifty performance analysis tools | ||
-* ~arm ~amd64 ~ppc64 ~x86 ~x86-fbsd | ||
eutils flag-o-matic multilib toolchain-funcs user | ||
largepages +debug minimal test 64bitworkaround | ||
|
||
|
||
|
||
4 | ||
|
||
compile configure install prepare setup test | ||
|
||
|
||
|
||
|
||
|