summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnthony G. Basile <blueness@gentoo.org>2012-02-17 02:19:37 +0000
committerAnthony G. Basile <blueness@gentoo.org>2012-02-17 02:19:37 +0000
commit90cdb5a4540fe40d51e9f92693e4a68d6e0cc212 (patch)
tree775dd34e9f43690616fc0abb06d84bb51a088935 /dev-util/valgrind
parentVersion bump. (diff)
downloadhistorical-90cdb5a4540fe40d51e9f92693e4a68d6e0cc212.tar.gz
historical-90cdb5a4540fe40d51e9f92693e4a68d6e0cc212.tar.bz2
historical-90cdb5a4540fe40d51e9f92693e4a68d6e0cc212.zip
Backport upstream commits r11856 and r11904 to address bug #403179
Package-Manager: portage-2.1.10.44/cvs/Linux x86_64
Diffstat (limited to 'dev-util/valgrind')
-rw-r--r--dev-util/valgrind/ChangeLog8
-rw-r--r--dev-util/valgrind/Manifest10
-rw-r--r--dev-util/valgrind/files/valgrind-3.6.1-fix-unhandled-opcode.patch82
-rw-r--r--dev-util/valgrind/valgrind-3.6.1-r3.ebuild108
4 files changed, 203 insertions, 5 deletions
diff --git a/dev-util/valgrind/ChangeLog b/dev-util/valgrind/ChangeLog
index c1587520534e..5a15f8b52fa3 100644
--- a/dev-util/valgrind/ChangeLog
+++ b/dev-util/valgrind/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for dev-util/valgrind
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-util/valgrind/ChangeLog,v 1.137 2012/02/17 01:46:44 blueness Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-util/valgrind/ChangeLog,v 1.138 2012/02/17 02:19:37 blueness Exp $
+
+*valgrind-3.6.1-r3 (17 Feb 2012)
+
+ 17 Feb 2012; Anthony G. Basile <blueness@gentoo.org>
+ +valgrind-3.6.1-r3.ebuild, +files/valgrind-3.6.1-fix-unhandled-opcode.patch:
+ Backport upstream commits r11856 and r11904 to address bug #403179
17 Feb 2012; Anthony G. Basile <blueness@gentoo.org>
valgrind-3.7.0-r3.ebuild:
diff --git a/dev-util/valgrind/Manifest b/dev-util/valgrind/Manifest
index 901d01a617db..ac84a4ba4d06 100644
--- a/dev-util/valgrind/Manifest
+++ b/dev-util/valgrind/Manifest
@@ -20,6 +20,7 @@ AUX valgrind-3.6.0-local-labels.patch 1388 RMD160 e9c0064d1e857f1e616c5d9ca7a03e
AUX valgrind-3.6.0-non-exec-stack.patch 5613 RMD160 641cd94fd5254ea902bd66eb0437e9af0e21fdb4 SHA1 eeb788f208303ef8768d4713c2c01bfd3f2edec4 SHA256 9a5a92506a10af32eba7a28401f061d4a84eac26a4dbb94fc6a19471c4bdb257
AUX valgrind-3.6.0-strcasecmp.patch 3786 RMD160 7887dd9e2dc9e5934a25106c6413458bbe5203e3 SHA1 4eec14e0c7beb671050d4c91986cc878cdb5494f SHA256 e281b93d1f2e0166fbba6ebd061a8fd7a01edd31b56cf23f1f84617385add0f6
AUX valgrind-3.6.1-automake-1.11.3.patch 957 RMD160 2cc22c5bdba5bbc8e02759a759c884412ad3c051 SHA1 cea0842b11b8b656e225e9af532411fad4aa4e87 SHA256 73eb19684637b53efdf01e02304e02a7a38ef7aa8d92acd02b7df5aa581d77d1
+AUX valgrind-3.6.1-fix-unhandled-opcode.patch 3539 RMD160 7edd0a8b082d82632e25ebf7839873ca6af0fe20 SHA1 09d5eefc704030e08bd5abe5866e2dd6b262d33c SHA256 9ecd3672272a7f7fc15e4eb4e74ea362ca929ccbb52a4f9ac57b944a71af9125
AUX valgrind-3.6.1-glibc-2.14.patch 1078 RMD160 d0a853f9d65e821e3586fd3058db37bb2139e251 SHA1 98b0ea183b90ddf5aee4f68f31f6bf5e818ba4ac SHA256 c76f3f965ebd98d469e6431780267dfb7ad1a58da0ab397ebfc21a08e98828a5
AUX valgrind-3.6.1-linux-3.patch 392 RMD160 1b654f96b339c15e1e89d41d8dfa01fc5be3cd60 SHA1 c191a54cf24952e103ee1a882fce4c50c119c81d SHA256 056b6fc872ed0be91a2000e599a9431e1bc78efa7ee2ac986f74f2e450f28582
AUX valgrind-3.6.1-user-enable-qt4.patch 3100 RMD160 d5130569c986714dbd39af5354a1f5c9a039d019 SHA1 6252b9220f8ec6b3e336802101eb296b53209c97 SHA256 ffe139eabb1340a6f004e4a9858d36cf19616bb1c4156395ea2b3b6600a23217
@@ -46,16 +47,17 @@ EBUILD valgrind-3.5.0.ebuild 3648 RMD160 d3569e0802939fd698787e234db83f17847e2b0
EBUILD valgrind-3.6.0.ebuild 3040 RMD160 ed2e6ba1c77077c4c171c5b0fb651779c97ca8b2 SHA1 8a8560a12cd63456a2070d86a5375612b19a2ab7 SHA256 bf92aa0977ea7d3978dae720e85fa7643b89d4ebd7c39ade3a36c4d20ba47fea
EBUILD valgrind-3.6.1-r1.ebuild 3176 RMD160 f415387b3262de66da0a856f3ae941c7549429dd SHA1 42a8edd2c6d02c67ebb810f627ad452857655704 SHA256 84425249bcbe89d2df2b5ee1d43556a74441bb3e5b1d9bdc5ed9a529cee846a1
EBUILD valgrind-3.6.1-r2.ebuild 3394 RMD160 ca9e32ef8ac68551265bb392d42345050fbaa185 SHA1 3d9d8e20b69809690260d843e7577a36fc0c362a SHA256 1e58ec3f03d19661036307d2e4404380bf0e96baa5c3bd2dbd99ab743d958a82
+EBUILD valgrind-3.6.1-r3.ebuild 3537 RMD160 f61cd4fd14e3ec0397b1e0d75a1e7d5014f93e9f SHA1 6aa98eec35440d4c5395d8cac854fc1a44af142e SHA256 84643a3901e4dd59213f5e775a48f20fc5bf52204e5e3e1e04b2fa371df0678a
EBUILD valgrind-3.6.1.ebuild 3068 RMD160 5ae01b6484705ad9c7e7bf7e888a355054e6e4c2 SHA1 bcf3c5107a61fbfabbee441d3a304a9ffad8f672 SHA256 93eea5c2c81b7b92ba250706bec21d21575a88c5d426b37096409772119f4e0f
EBUILD valgrind-3.7.0-r1.ebuild 2720 RMD160 4d4a707fac4c62a68d3de02ac44e23b8f641a4e1 SHA1 6283fed760b8fcd3391639e0cc8d92d398b110f6 SHA256 93b9f2dc0f5b24f17b4ae070740641b03de1d02b38f9a1bc808e660d31deea94
EBUILD valgrind-3.7.0-r2.ebuild 2914 RMD160 2fa503bf96bde0acb40127f7e2dba33a8def975c SHA1 7ce04c6b5eb8005a0f07ec5724b38cbfb0796a9c SHA256 a5b9a5af3dabe5c16f63a29861a518a1d76bea403072ec5dae3d539f2ecd338d
EBUILD valgrind-3.7.0-r3.ebuild 2989 RMD160 5f1bc5de2e8a4dbae9e72b1dc20dd6f8fb940c17 SHA1 2d381a44a90928f76b13bd205dcaae239fb099a2 SHA256 4c2182e3be2ed51c459c657489eb2c7d7ca55c1ab514b6b183b2d66e67de18e7
-MISC ChangeLog 22958 RMD160 a25b03eae28f9cd4c04f5eceb17f7f2a2507557c SHA1 b0ab9f780d69490665dfed97383e4188ef32ae30 SHA256 d42f0eddb29133da27eefe600ec7d31f558b85e0b6aa6cc8fe83d8b837b9ce05
+MISC ChangeLog 23196 RMD160 ae5fb7a8dea9d37b1b7621e891fcc83918ef38c8 SHA1 736b7ecd2692d2658962a729e77d1417d4fb2ebf SHA256 c8bf800f36d10d6f7f0c1da5e69e9f6bcea313217032940d3b0d94d4f91f5ff5
MISC metadata.xml 980 RMD160 7441340fd2659400fb15d857446dac8f7b3f1176 SHA1 07af40cb309fcd80ca639dea5110b1109ce72427 SHA256 513a0d653dfae858a7f426745bd0abe5dcbc8748d468310fdce156e0e21e2cd0
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.17 (GNU/Linux)
-iEYEAREIAAYFAk89sY0ACgkQl5yvQNBFVTUx3QCeO67xsZLfN4CTc4LvdL0bjp42
-9B8AnjaYAwu9Besw11QcMwgxpkIIFE96
-=PFhD
+iEYEAREIAAYFAk89uUcACgkQl5yvQNBFVTVz5wCfe5s+uOQ7idzSrQ3Y20JcsJ+b
+RdQAoI4KuVbCT76kBiyPhSLBydsi49Cp
+=XTV/
-----END PGP SIGNATURE-----
diff --git a/dev-util/valgrind/files/valgrind-3.6.1-fix-unhandled-opcode.patch b/dev-util/valgrind/files/valgrind-3.6.1-fix-unhandled-opcode.patch
new file mode 100644
index 000000000000..bb8ef9467d63
--- /dev/null
+++ b/dev-util/valgrind/files/valgrind-3.6.1-fix-unhandled-opcode.patch
@@ -0,0 +1,82 @@
+diff -Naur valgrind-3.6.1.orig/coregrind/m_debuginfo/debuginfo.c valgrind-3.6.1/coregrind/m_debuginfo/debuginfo.c
+--- valgrind-3.6.1.orig/coregrind/m_debuginfo/debuginfo.c 2010-10-20 16:19:43.000000000 -0400
++++ valgrind-3.6.1/coregrind/m_debuginfo/debuginfo.c 2012-02-16 21:10:53.000000000 -0500
+@@ -1958,6 +1958,14 @@
+ case Cop_Sub: return wL - wR;
+ case Cop_And: return wL & wR;
+ case Cop_Mul: return wL * wR;
++ case Cop_Shl: return wL << wR;
++ case Cop_Shr: return wL >> wR;
++ case Cop_Eq: return wL == wR ? 1 : 0;
++ case Cop_Ge: return (Word) wL >= (Word) wR ? 1 : 0;
++ case Cop_Gt: return (Word) wL > (Word) wR ? 1 : 0;
++ case Cop_Le: return (Word) wL <= (Word) wR ? 1 : 0;
++ case Cop_Lt: return (Word) wL < (Word) wR ? 1 : 0;
++ case Cop_Ne: return wL != wR ? 1 : 0;
+ default: goto unhandled;
+ }
+ /*NOTREACHED*/
+diff -Naur valgrind-3.6.1.orig/coregrind/m_debuginfo/priv_storage.h valgrind-3.6.1/coregrind/m_debuginfo/priv_storage.h
+--- valgrind-3.6.1.orig/coregrind/m_debuginfo/priv_storage.h 2010-10-20 16:19:43.000000000 -0400
++++ valgrind-3.6.1/coregrind/m_debuginfo/priv_storage.h 2012-02-16 21:10:49.000000000 -0500
+@@ -218,7 +218,15 @@
+ Cop_Add=0x321,
+ Cop_Sub,
+ Cop_And,
+- Cop_Mul
++ Cop_Mul,
++ Cop_Shl,
++ Cop_Shr,
++ Cop_Eq,
++ Cop_Ge,
++ Cop_Gt,
++ Cop_Le,
++ Cop_Lt,
++ Cop_Ne
+ }
+ CfiOp;
+
+diff -Naur valgrind-3.6.1.orig/coregrind/m_debuginfo/readdwarf.c valgrind-3.6.1/coregrind/m_debuginfo/readdwarf.c
+--- valgrind-3.6.1.orig/coregrind/m_debuginfo/readdwarf.c 2010-10-20 16:19:43.000000000 -0400
++++ valgrind-3.6.1/coregrind/m_debuginfo/readdwarf.c 2012-02-16 21:10:49.000000000 -0500
+@@ -2831,6 +2831,22 @@
+ op = Cop_And; opname = "and"; goto binop;
+ case DW_OP_mul:
+ op = Cop_Mul; opname = "mul"; goto binop;
++ case DW_OP_shl:
++ op = Cop_Shl; opname = "shl"; goto binop;
++ case DW_OP_shr:
++ op = Cop_Shr; opname = "shr"; goto binop;
++ case DW_OP_eq:
++ op = Cop_Eq; opname = "eq"; goto binop;
++ case DW_OP_ge:
++ op = Cop_Ge; opname = "ge"; goto binop;
++ case DW_OP_gt:
++ op = Cop_Gt; opname = "gt"; goto binop;
++ case DW_OP_le:
++ op = Cop_Le; opname = "le"; goto binop;
++ case DW_OP_lt:
++ op = Cop_Lt; opname = "lt"; goto binop;
++ case DW_OP_ne:
++ op = Cop_Ne; opname = "ne"; goto binop;
+ binop:
+ POP( ix );
+ POP( ix2 );
+diff -Naur valgrind-3.6.1.orig/coregrind/m_debuginfo/storage.c valgrind-3.6.1/coregrind/m_debuginfo/storage.c
+--- valgrind-3.6.1.orig/coregrind/m_debuginfo/storage.c 2010-10-20 16:19:43.000000000 -0400
++++ valgrind-3.6.1/coregrind/m_debuginfo/storage.c 2012-02-16 21:10:49.000000000 -0500
+@@ -595,6 +595,14 @@
+ case Cop_Sub: VG_(printf)("-"); break;
+ case Cop_And: VG_(printf)("&"); break;
+ case Cop_Mul: VG_(printf)("*"); break;
++ case Cop_Shl: VG_(printf)("<<"); break;
++ case Cop_Shr: VG_(printf)(">>"); break;
++ case Cop_Eq: VG_(printf)("=="); break;
++ case Cop_Ge: VG_(printf)(">="); break;
++ case Cop_Gt: VG_(printf)(">"); break;
++ case Cop_Le: VG_(printf)("<="); break;
++ case Cop_Lt: VG_(printf)("<"); break;
++ case Cop_Ne: VG_(printf)("!="); break;
+ default: vg_assert(0);
+ }
+ }
diff --git a/dev-util/valgrind/valgrind-3.6.1-r3.ebuild b/dev-util/valgrind/valgrind-3.6.1-r3.ebuild
new file mode 100644
index 000000000000..2e4b6e1b6fd0
--- /dev/null
+++ b/dev-util/valgrind/valgrind-3.6.1-r3.ebuild
@@ -0,0 +1,108 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-util/valgrind/valgrind-3.6.1-r3.ebuild,v 1.1 2012/02/17 02:19:37 blueness Exp $
+
+EAPI=2
+inherit autotools eutils flag-o-matic toolchain-funcs multilib pax-utils
+
+DESCRIPTION="An open-source memory debugger for GNU/Linux"
+HOMEPAGE="http://www.valgrind.org"
+SRC_URI="http://www.valgrind.org/downloads/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="mpi qt4"
+
+DEPEND="mpi? ( virtual/mpi )"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ # Respect CFLAGS, LDFLAGS
+ sed -i -e '/^CPPFLAGS =/d' -e '/^CFLAGS =/d' -e '/^LDFLAGS =/d' \
+ mpi/Makefile.am || die
+
+ # Changing Makefile.all.am to disable SSP
+ sed -i -e 's:^AM_CFLAGS_BASE = :AM_CFLAGS_BASE = -fno-stack-protector :' \
+ Makefile.all.am || die
+
+ # Correct hard coded doc location
+ sed -i -e "s:doc/valgrind:doc/${PF}:" \
+ docs/Makefile.am || die
+
+ # Yet more local labels, this time for ppc32 & ppc64
+ epatch "${FILESDIR}"/${PN}-3.6.0-local-labels.patch
+
+ # Don't build in empty assembly files for other platforms or we'll get a QA
+ # warning about executable stacks.
+ epatch "${FILESDIR}"/${PN}-3.6.0-non-exec-stack.patch
+
+ # Fix up some suppressions that were not general enough for glibc versions
+ # with more than just a major and minor number.
+ epatch "${FILESDIR}"/${PN}-3.4.1-glibc-2.10.1.patch
+
+ # Remove automagic dependency on qt4
+ epatch "${FILESDIR}"/${PN}-3.6.1-user-enable-qt4.patch
+
+ # Allow valgrind to build against linux-3, bug #370857
+ epatch "${FILESDIR}"/${PN}-3.6.1-linux-3.patch
+
+ # Allow valgrind to build against glibc-2.14, bug #378157
+ epatch "${FILESDIR}"/${PN}-3.6.1-glibc-2.14.patch
+
+ # Back port of fix for bug #403179, https://bugs.kde.org/show_bug.cgi?id=277045
+ epatch "${FILESDIR}"/${PN}-3.6.1-fix-unhandled-opcode.patch
+
+ # Fix stricter use of dir variables, bugs #397429 and #403779
+ epatch "${FILESDIR}"/${PN}-3.6.1-automake-1.11.3.patch
+
+ # Regenerate autotools files
+ eautoreconf
+}
+
+src_configure() {
+ local myconf
+
+ # -fomit-frame-pointer "Assembler messages: Error: junk `8' after expression"
+ # while compiling insn_sse.c in none/tests/x86
+ # -fpie valgrind seemingly hangs when built with pie on
+ # amd64 (bug #102157)
+ # -fstack-protector more undefined references to __guard and __stack_smash_handler
+ # because valgrind doesn't link to glibc (bug #114347)
+ # -ggdb3 segmentation fault on startup
+ filter-flags -fomit-frame-pointer
+ filter-flags -fpie
+ filter-flags -fstack-protector
+ replace-flags -ggdb3 -ggdb2
+
+ if use amd64 || use ppc64; then
+ ! has_multilib_profile && myconf="${myconf} --enable-only64bit"
+ fi
+
+ # Don't use mpicc unless the user asked for it (bug #258832)
+ if ! use mpi; then
+ myconf="${myconf} --without-mpicc"
+ fi
+
+ if ! use qt4; then
+ myconf="${myconf} --disable-qtcore"
+ fi
+
+ econf ${myconf}
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die
+ dodoc AUTHORS FAQ.txt NEWS README*
+
+ pax-mark m "${D}"/usr/$(get_libdir)/valgrind/*-*-linux
+}
+
+pkg_postinst() {
+ ewarn "Valgrind will not work if glibc does not have debug symbols."
+ ewarn "To fix this you can add splitdebug to FEATURES in make.conf"
+ ewarn "and remerge glibc. See:"
+ ewarn "https://bugs.gentoo.org/show_bug.cgi?id=214065"
+ ewarn "https://bugs.gentoo.org/show_bug.cgi?id=274771"
+ ewarn "https://bugs.gentoo.org/show_bug.cgi?id=388703"
+}