public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: dev-debug/valgrind/, dev-debug/valgrind/files/
@ 2024-01-22 13:12 Sam James
  0 siblings, 0 replies; 2+ messages in thread
From: Sam James @ 2024-01-22 13:12 UTC (permalink / raw
  To: gentoo-commits

commit:     6c34ec2caafeb7e0f53f76dc06b01b02f73ccbaa
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Jan 22 13:11:13 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Jan 22 13:11:20 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6c34ec2c

dev-debug/valgrind: fix compat w/ upcoming binutils-2.42

Signed-off-by: Sam James <sam <AT> gentoo.org>

 ...nitor.py-regular-expressions-should-use-r.patch |   2 +-
 ...valgrind-3.22.0-fails-on-assertion-when-l.patch |   2 +-
 .../0003-Add-fchmodat2-syscall-on-linux.patch      |   2 +-
 ...Valgrind-incompatibility-with-binutils-2..patch | 151 ++++++++++++++++++++
 dev-debug/valgrind/valgrind-3.22.0-r2.ebuild       | 158 +++++++++++++++++++++
 5 files changed, 312 insertions(+), 3 deletions(-)

diff --git a/dev-debug/valgrind/files/0001-valgrind-monitor.py-regular-expressions-should-use-r.patch b/dev-debug/valgrind/files/0001-valgrind-monitor.py-regular-expressions-should-use-r.patch
index cc51bc219456..70bd723855ad 100644
--- a/dev-debug/valgrind/files/0001-valgrind-monitor.py-regular-expressions-should-use-r.patch
+++ b/dev-debug/valgrind/files/0001-valgrind-monitor.py-regular-expressions-should-use-r.patch
@@ -1,7 +1,7 @@
 From 027b649fdb831868e71be01cafdacc49a5f419ab Mon Sep 17 00:00:00 2001
 From: Mark Wielaard <mark@klomp.org>
 Date: Fri, 17 Nov 2023 14:01:21 +0100
-Subject: [PATCH 1/3] valgrind-monitor.py regular expressions should use raw
+Subject: [PATCH 1/4] valgrind-monitor.py regular expressions should use raw
  strings
 
 With python 3.12 gdb will produce the following SyntaxWarning when

diff --git a/dev-debug/valgrind/files/0002-Bug-476548-valgrind-3.22.0-fails-on-assertion-when-l.patch b/dev-debug/valgrind/files/0002-Bug-476548-valgrind-3.22.0-fails-on-assertion-when-l.patch
index 40885a04d850..df6250ea81db 100644
--- a/dev-debug/valgrind/files/0002-Bug-476548-valgrind-3.22.0-fails-on-assertion-when-l.patch
+++ b/dev-debug/valgrind/files/0002-Bug-476548-valgrind-3.22.0-fails-on-assertion-when-l.patch
@@ -1,7 +1,7 @@
 From 1d00e5ce0fb069911c4b525ec38289fb5d9021b0 Mon Sep 17 00:00:00 2001
 From: Paul Floyd <pjfloyd@wanadoo.fr>
 Date: Sat, 18 Nov 2023 08:49:34 +0100
-Subject: [PATCH 2/3] Bug 476548 - valgrind 3.22.0 fails on assertion when
+Subject: [PATCH 2/4] Bug 476548 - valgrind 3.22.0 fails on assertion when
  loading debuginfo file produced by mold
 
 (cherry picked from commit 9ea4ae66707a4dcc6f4328e11911652e4418c585)

diff --git a/dev-debug/valgrind/files/0003-Add-fchmodat2-syscall-on-linux.patch b/dev-debug/valgrind/files/0003-Add-fchmodat2-syscall-on-linux.patch
index a65178a585f4..568cc5302b63 100644
--- a/dev-debug/valgrind/files/0003-Add-fchmodat2-syscall-on-linux.patch
+++ b/dev-debug/valgrind/files/0003-Add-fchmodat2-syscall-on-linux.patch
@@ -1,7 +1,7 @@
 From a43e62dddcf51ec6578a90c5988a41e856b44b05 Mon Sep 17 00:00:00 2001
 From: Mark Wielaard <mark@klomp.org>
 Date: Sat, 18 Nov 2023 21:17:02 +0100
-Subject: [PATCH 3/3] Add fchmodat2 syscall on linux
+Subject: [PATCH 3/4] Add fchmodat2 syscall on linux
 
 fchmodat2 is a new syscall on linux 6.6. It is a variant of fchmodat
 that takes an extra flags argument.

diff --git a/dev-debug/valgrind/files/0004-Bug-478624-Valgrind-incompatibility-with-binutils-2..patch b/dev-debug/valgrind/files/0004-Bug-478624-Valgrind-incompatibility-with-binutils-2..patch
new file mode 100644
index 000000000000..a1413916ea73
--- /dev/null
+++ b/dev-debug/valgrind/files/0004-Bug-478624-Valgrind-incompatibility-with-binutils-2..patch
@@ -0,0 +1,151 @@
+From 41ff9aa49f6c54c66d0e6b37f265fd9cb0176057 Mon Sep 17 00:00:00 2001
+From: Paul Floyd <pjfloyd@wanadoo.fr>
+Date: Sun, 17 Dec 2023 14:18:51 +0100
+Subject: [PATCH 4/4] Bug 478624 - Valgrind incompatibility with binutils-2.42
+ on x86 with new nop patterns (unhandled instruction bytes: 0x2E 0x8D 0xB4
+ 0x26)
+
+It was a bit of a struggle to get the testcase to build
+with both clang and gcc (oddly enough gcc was more difficult) so
+I just resorted to using .byte arrays.
+
+(cherry picked from commit d35005cef8ad8207542738812705ceabf137d7e0)
+---
+ NEWS                                       |  2 ++
+ VEX/priv/guest_x86_toIR.c                  | 22 +++++++++++++-
+ none/tests/x86/Makefile.am                 |  2 ++
+ none/tests/x86/gnu_binutils_nop.c          | 34 ++++++++++++++++++++++
+ none/tests/x86/gnu_binutils_nop.stderr.exp |  0
+ none/tests/x86/gnu_binutils_nop.vgtest     |  2 ++
+ 7 files changed, 62 insertions(+), 1 deletion(-)
+ create mode 100644 none/tests/x86/gnu_binutils_nop.c
+ create mode 100644 none/tests/x86/gnu_binutils_nop.stderr.exp
+ create mode 100644 none/tests/x86/gnu_binutils_nop.vgtest
+
+diff --git a/NEWS b/NEWS
+index da0f8c1aa..86b0fe6b5 100644
+--- a/NEWS
++++ b/NEWS
+@@ -9,6 +9,8 @@ The following bugs have been fixed or resolved on this branch.
+         file produced by mold
+ 476708  valgrind-monitor.py regular expressions should use raw strings
+ 477198  Add fchmodat2 syscall on linux
++478624  Valgrind incompatibility with binutils-2.42 on x86 with new nop patterns
++        (unhandled instruction bytes: 0x2E 0x8D 0xB4 0x26)
+ 
+ To see details of a given bug, visit
+   https://bugs.kde.org/show_bug.cgi?id=XXXXXX
+diff --git a/VEX/priv/guest_x86_toIR.c b/VEX/priv/guest_x86_toIR.c
+index 5d6e6dc64..3b6efb387 100644
+--- a/VEX/priv/guest_x86_toIR.c
++++ b/VEX/priv/guest_x86_toIR.c
+@@ -8198,7 +8198,7 @@ DisResult disInstr_X86_WRK (
+          delta += 5;
+          goto decode_success;
+       }
+-      /* Don't barf on recent binutils padding,
++      /* Don't barf on recent (2010) binutils padding,
+          all variants of which are: nopw %cs:0x0(%eax,%eax,1)
+          66 2e 0f 1f 84 00 00 00 00 00
+          66 66 2e 0f 1f 84 00 00 00 00 00
+@@ -8223,6 +8223,26 @@ DisResult disInstr_X86_WRK (
+          }
+       }
+ 
++      /* bug478624 GNU binutils uses a leal of esi into itself with
++         a zero offset and CS prefix as an 8 byte no-op (Dec 2023).
++         Since the CS prefix is hardly ever used we don't do much
++         to decode it, just a few cases for conditional branches.
++         So add handling here with other pseudo-no-ops.
++       */
++      if (code[0] == 0x2E && code[1] == 0x8D) {
++         if (code[2] == 0x74 && code[3] == 0x26 && code[4] == 0x00) {
++            DIP("leal %%cs:0(%%esi,%%eiz,1),%%esi\n");
++            delta += 5;
++            goto decode_success;
++         }
++         if (code[2] == 0xB4 && code[3] == 0x26 && code[4] == 0x00
++             && code[5] == 0x00 && code[6] == 0x00 && code[7] == 0x00) {
++            DIP("leal %%cs:0(%%esi,%%eiz,1),%%esi\n");
++            delta += 8;
++            goto decode_success;
++         }
++      }
++
+       // Intel CET requires the following opcodes to be treated as NOPs
+       // with any prefix and ModRM, SIB and disp combination:
+       // "0F 19", "0F 1C", "0F 1D", "0F 1E", "0F 1F"
+diff --git a/none/tests/x86/Makefile.am b/none/tests/x86/Makefile.am
+index 3ecd1ad3c..dbae86571 100644
+--- a/none/tests/x86/Makefile.am
++++ b/none/tests/x86/Makefile.am
+@@ -52,6 +52,7 @@ EXTRA_DIST = \
+ 	fxtract.stdout.exp fxtract.stderr.exp fxtract.vgtest \
+ 	fxtract.stdout.exp-older-glibc \
+ 	getseg.stdout.exp getseg.stderr.exp getseg.vgtest \
++	gnu_binutils_nop.stderr.exp gnu_binutils_nop.vgtest \
+ 	incdec_alt.stdout.exp incdec_alt.stderr.exp incdec_alt.vgtest \
+ 	int.stderr.exp int.stdout.exp int.disabled \
+ 	$(addsuffix .stderr.exp,$(INSN_TESTS)) \
+@@ -100,6 +101,7 @@ check_PROGRAMS = \
+ 	fpu_lazy_eflags \
+ 	fxtract \
+ 	getseg \
++	gnu_binutils_nop \
+ 	incdec_alt \
+ 	$(INSN_TESTS) \
+ 	int \
+diff --git a/none/tests/x86/gnu_binutils_nop.c b/none/tests/x86/gnu_binutils_nop.c
+new file mode 100644
+index 000000000..412a4c2cb
+--- /dev/null
++++ b/none/tests/x86/gnu_binutils_nop.c
+@@ -0,0 +1,34 @@
++int main(void)
++{
++    // GNU binutils uses various opcodes as alternatives for nop
++    // the idea is that it is faster to execute one large opcode
++    // with no side-effects than multiple repetitions of the
++    // single byte 'nop'. This gives more choice when code
++    // needs to be padded.
++   
++   // the following is based on
++   // https://sourceware.org/cgit/binutils-gdb/tree/gas/config/tc-i386.c#n1256
++
++    // one byte
++    __asm__ __volatile__("nop");
++    // two bytes
++    __asm__ __volatile__("xchg %ax,%ax");
++    // three bytes
++    //__asm__ __volatile__("leal 0(%esi),%esi");
++    __asm__ __volatile__(".byte 0x8d,0x76,0x00");
++    // four bytes
++    //__asm__ __volatile__("leal 0(%esi,%eiz),%esi");
++    __asm__ __volatile__(".byte 0x8d,0x74,0x26,0x00");
++    // five bytes
++    //__asm__ __volatile__("leal %cs:0(%esi,%eiz),%esi");
++    __asm__ __volatile__(".byte 0x2e,0x8d,0x74,0x26,0x00");
++    // six bytes
++    //__asm__ __volatile__("leal 0L(%esi),%esi");
++    __asm__ __volatile__(".byte 0x8d,0xb6,0x00,0x00,0x00,0x00");
++    // seven bytes
++    //__asm__ __volatile__("leal 0L(%esi,%eiz),%esi");
++    __asm__ __volatile__(".byte 0x8d,0xb4,0x26,0x00,0x00,0x00,0x00");
++    // eight bytes
++    //__asm__ __volatile__("leal %cs:0L(%esi,%eiz),%esi");
++    __asm__ __volatile__(".byte 0x2e,0x8d,0xb4,0x26,0x00,0x00,0x00,0x00");
++}
+diff --git a/none/tests/x86/gnu_binutils_nop.stderr.exp b/none/tests/x86/gnu_binutils_nop.stderr.exp
+new file mode 100644
+index 000000000..e69de29bb
+diff --git a/none/tests/x86/gnu_binutils_nop.vgtest b/none/tests/x86/gnu_binutils_nop.vgtest
+new file mode 100644
+index 000000000..7f378dd53
+--- /dev/null
++++ b/none/tests/x86/gnu_binutils_nop.vgtest
+@@ -0,0 +1,2 @@
++prog: gnu_binutils_nop
++vgopts: -q
+-- 
+2.43.0
+

diff --git a/dev-debug/valgrind/valgrind-3.22.0-r2.ebuild b/dev-debug/valgrind/valgrind-3.22.0-r2.ebuild
new file mode 100644
index 000000000000..fd4c4cea5a1d
--- /dev/null
+++ b/dev-debug/valgrind/valgrind-3.22.0-r2.ebuild
@@ -0,0 +1,158 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# The Valgrind upstream maintainer also maintains it in Fedora and will
+# backport fixes there which haven't yet made it into a release. Keep an eye
+# on it for fixes we should cherry-pick too:
+# https://src.fedoraproject.org/rpms/valgrind/tree/rawhide
+#
+# Also check the ${PV}_STABLE branch upstream for backports.
+
+inherit autotools flag-o-matic toolchain-funcs multilib pax-utils
+
+DESCRIPTION="An open-source memory debugger for GNU/Linux"
+HOMEPAGE="https://valgrind.org"
+if [[ ${PV} == 9999 ]]; then
+	EGIT_REPO_URI="https://sourceware.org/git/${PN}.git"
+	inherit git-r3
+else
+	VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/valgrind.gpg
+	inherit verify-sig
+
+	MY_P="${P/_rc/.RC}"
+	SRC_URI="https://sourceware.org/pub/valgrind/${MY_P}.tar.bz2"
+	SRC_URI+=" verify-sig? ( https://sourceware.org/pub/valgrind/${MY_P}.tar.bz2.asc )"
+	S="${WORKDIR}"/${MY_P}
+
+	if [[ ${PV} != *_rc* ]] ; then
+		KEYWORDS="-* ~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
+	fi
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="mpi"
+
+DEPEND="mpi? ( virtual/mpi )"
+RDEPEND="${DEPEND}"
+if [[ ${PV} != 9999 ]] ; then
+	BDEPEND="verify-sig? ( sec-keys/openpgp-keys-valgrind )"
+fi
+
+PATCHES=(
+	# Respect CFLAGS, LDFLAGS
+	"${FILESDIR}"/${PN}-3.7.0-respect-flags.patch
+	"${FILESDIR}"/${PN}-3.15.0-Build-ldst_multiple-test-with-fno-pie.patch
+	"${FILESDIR}"/${PN}-3.21.0-glibc-2.34-suppressions.patch
+	# From stable branch
+	"${FILESDIR}"/0001-valgrind-monitor.py-regular-expressions-should-use-r.patch
+	"${FILESDIR}"/0002-Bug-476548-valgrind-3.22.0-fails-on-assertion-when-l.patch
+	"${FILESDIR}"/0003-Add-fchmodat2-syscall-on-linux.patch
+	"${FILESDIR}"/0004-Bug-478624-Valgrind-incompatibility-with-binutils-2..patch
+)
+
+src_prepare() {
+	# Correct hard coded doc location
+	sed -i -e "s:doc/valgrind:doc/${PF}:" docs/Makefile.am || die
+
+	# Don't force multiarch stuff on OSX, bug #306467
+	sed -i -e 's:-arch \(i386\|x86_64\)::g' Makefile.all.am || die
+
+	if [[ ${CHOST} == *-solaris* ]] ; then
+		# upstream doesn't support this, but we don't build with
+		# Sun/Oracle ld, we have a GNU toolchain, so get some things
+		# working the Linux/GNU way
+		find "${S}" -name "Makefile.am" -o -name "Makefile.tool.am" | xargs \
+			sed -i -e 's:-M,/usr/lib/ld/map.noexstk:-z,noexecstack:' || die
+		cp "${S}"/coregrind/link_tool_exe_{linux,solaris}.in
+	fi
+
+	default
+
+	eautoreconf
+}
+
+src_configure() {
+	local myconf=(
+		--with-gdbscripts-dir="${EPREFIX}"/usr/share/gdb/auto-load
+	)
+
+	# Respect ar, bug #468114
+	tc-export AR
+
+	# -fomit-frame-pointer	"Assembler messages: Error: junk `8' after expression"
+	#                       while compiling insn_sse.c in none/tests/x86
+	# -fstack-protector     more undefined references to __guard and __stack_smash_handler
+	#                       because valgrind doesn't link to glibc (bug #114347)
+	# -fstack-protector-all    Fails same way as -fstack-protector/-fstack-protector-strong.
+	#                          Note: -fstack-protector-explicit is a no-op for Valgrind, no need to strip it
+	# -fstack-protector-strong See -fstack-protector (bug #620402)
+	# -m64 -mx32			for multilib-portage, bug #398825
+	# -fharden-control-flow-redundancy: breaks runtime ('jump to the invalid address stated on the next line')
+	# -flto*                fails to build, bug #858509
+	filter-flags -fomit-frame-pointer
+	filter-flags -fstack-protector
+	filter-flags -fstack-protector-all
+	filter-flags -fstack-protector-strong
+	filter-flags -m64 -mx32
+	filter-flags -fsanitize -fsanitize=*
+	filter-flags -fharden-control-flow-redundancy
+	append-cflags $(test-flags-CC -fno-harden-control-flow-redundancy)
+	filter-lto
+
+	if use amd64 || use ppc64; then
+		! has_multilib_profile && myconf+=("--enable-only64bit")
+	fi
+
+	# Force bitness on darwin, bug #306467
+	use x64-macos && myconf+=("--enable-only64bit")
+
+	# Don't use mpicc unless the user asked for it (bug #258832)
+	if ! use mpi; then
+		myconf+=("--without-mpicc")
+	fi
+
+	econf "${myconf[@]}"
+}
+
+src_test() {
+	# fxsave.o, tronical.o have textrels
+	emake LDFLAGS="${LDFLAGS} -Wl,-z,notext" check
+}
+
+src_install() {
+	default
+
+	if [[ ${PV} == "9999" ]]; then
+		# Otherwise FAQ.txt won't exist:
+		emake -C docs FAQ.txt
+		mv docs/FAQ.txt . || die "Couldn't move FAQ.txt"
+	fi
+
+	dodoc FAQ.txt
+
+	pax-mark m "${ED}"/usr/$(get_libdir)/valgrind/*-*-linux
+
+	# See README_PACKAGERS
+	dostrip -x /usr/libexec/valgrind/vgpreload* /usr/$(get_libdir)/valgrind/*
+
+	if [[ ${CHOST} == *-darwin* ]] ; then
+		# fix install_names on shared libraries, can't turn them into bundles,
+		# as dyld won't load them any more then, bug #306467
+		local l
+		for l in "${ED}"/usr/lib/valgrind/*.so ; do
+			install_name_tool -id "${EPREFIX}"/usr/lib/valgrind/${l##*/} "${l}"
+		done
+	fi
+}
+
+pkg_postinst() {
+	elog "Valgrind will not work if libc (e.g. glibc) does not have debug symbols."
+	elog "To fix this you can add splitdebug to FEATURES in make.conf"
+	elog "and remerge glibc. See:"
+	elog "https://bugs.gentoo.org/214065"
+	elog "https://bugs.gentoo.org/274771"
+	elog "https://bugs.gentoo.org/388703"
+}


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-debug/valgrind/, dev-debug/valgrind/files/
@ 2024-03-04 10:14 Sam James
  0 siblings, 0 replies; 2+ messages in thread
From: Sam James @ 2024-03-04 10:14 UTC (permalink / raw
  To: gentoo-commits

commit:     d2ef5565cb818a3917a22949f91d48bcba3b83fe
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Mar  4 10:12:35 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Mar  4 10:13:58 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d2ef5565

dev-debug/valgrind: drop 3.20.0-r2, 3.22.0, 3.22.0-r1

Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-debug/valgrind/Manifest                        |   2 -
 .../valgrind/files/valgrind-3.13.0-malloc.patch    |  24 ----
 .../valgrind/files/valgrind-3.20.0-gcc-13.patch    |  44 ------
 .../files/valgrind-3.20.0-musl-interpose.patch     |  30 ----
 .../files/valgrind-3.20.0-tests-clang16.patch      |  23 ---
 dev-debug/valgrind/valgrind-3.20.0-r2.ebuild       | 141 ------------------
 dev-debug/valgrind/valgrind-3.22.0-r1.ebuild       | 157 ---------------------
 dev-debug/valgrind/valgrind-3.22.0.ebuild          | 152 --------------------
 8 files changed, 573 deletions(-)

diff --git a/dev-debug/valgrind/Manifest b/dev-debug/valgrind/Manifest
index f4270c750aac..53d46a910f48 100644
--- a/dev-debug/valgrind/Manifest
+++ b/dev-debug/valgrind/Manifest
@@ -1,5 +1,3 @@
-DIST valgrind-3.20.0.tar.bz2 16469274 BLAKE2B 8217dcfc185c7f6601fedd8d53bb35d260b985b8049c8c73a26151db6650b1607e8e53b614652c40962ea7382b9301c4b234a933c8d81f57e649ebf3f703e630 SHA512 d6bfb9284d0410134ee7e2a5975b13c01508dd5587b562947d8197b3c113b76fdfac88c4072948be68bbf0dbeb17b4d1acb1412ce898adaa83c30ae2c6a1c12b
-DIST valgrind-3.20.0.tar.bz2.asc 488 BLAKE2B 12642e4f85c7b17bdb892221f74d80ce919554ffde3cdfa79ca27f4c5f8b48dac699084b8296b5cea285b5af660a0bc51c42b108a725be60002b14f0fda7eac7 SHA512 70dd20f15b159ffbf016c118046ee42160dd867415f1c565a92995952b1720ec36fc48557f6b523d28e6f675d62df10a4022e900fa4a104626b9e6ed6fe9ad6d
 DIST valgrind-3.21.0.tar.bz2 17449484 BLAKE2B 1f7306d288eb5ecfb2b2f0b2dc68960ecd4a7213b96a2e4ecb9990a755e8c233b0e9d190c0f807019bde669f44a631c8dafe9eb521d739561e6f889f7bdaca5c SHA512 3e86cda2f2d6cd30807fac7933ba2c46a97a2b4a868db989e6b0cceeadf029af7ee34ba900466a346948289aacb30f4399799bb83b97cc49a4d2d810441e5cfd
 DIST valgrind-3.21.0.tar.bz2.asc 488 BLAKE2B 6297bc925c16526a51de4f589232a8d5bcb8d54bdc885c145d329deeba45b42d3a5a8a3f59d3fb240d3bd78be7fd30d95ceb33c7624afd3c99c51833d0fd16f2 SHA512 114e5cd2f7352e56099efa3b2c42d39ed24e42419bbaac1af5e2b5c4fa72a2ba38ac6b0c60b93460a0cce8819ca0c7fae6618599b2af809ac0ab4fa30fdb25ba
 DIST valgrind-3.22.0.tar.bz2 16565502 BLAKE2B 80024371b3e70521996077fba24e233097a6190477ced1b311cd41fead687dcc2511ac0ef723792488f4af08867dff3e1f474816fda09c1604b89059e31c2514 SHA512 2904c13f68245bbafcea70998c6bd20725271300a7e94b6751ca00916943595fc3fac8557da7ea8db31b54a43f092823a0a947bc142829da811d074e1fe49777

diff --git a/dev-debug/valgrind/files/valgrind-3.13.0-malloc.patch b/dev-debug/valgrind/files/valgrind-3.13.0-malloc.patch
deleted file mode 100644
index d0eb795b84be..000000000000
--- a/dev-debug/valgrind/files/valgrind-3.13.0-malloc.patch
+++ /dev/null
@@ -1,24 +0,0 @@
---- valgrind-3.13.0/coregrind/m_replacemalloc/vg_replace_malloc.c
-+++ valgrind-3.13.0/coregrind/m_replacemalloc/vg_replace_malloc.c
-@@ -765,13 +765,15 @@ static void init(void);
-       DO_INIT; \
-       MALLOC_TRACE("realloc(%p,%llu)", ptrV, (ULong)new_size ); \
-       \
--      if (ptrV == NULL) \
--         /* We need to call a malloc-like function; so let's use \
--            one which we know exists. */ \
--         return VG_REPLACE_FUNCTION_EZU(10010,VG_Z_LIBC_SONAME,malloc) \
--                   (new_size); \
-+      if (ptrV == NULL) { \
-+         TRIGGER_MEMCHECK_ERROR_IF_UNDEFINED(new_size); \
-+         v = (void*)VALGRIND_NON_SIMD_CALL1( info.tl_malloc, new_size ); \
-+         MALLOC_TRACE(" = %p\n", v ); \
-+         return v; \
-+      } \
-       if (new_size <= 0) { \
--         VG_REPLACE_FUNCTION_EZU(10050,VG_Z_LIBC_SONAME,free)(ptrV); \
-+         if (ptrV != NULL)  \
-+            VALGRIND_NON_SIMD_CALL1( info.tl_free, ptrV ); \
-          MALLOC_TRACE(" = 0\n"); \
-          return NULL; \
-       } \

diff --git a/dev-debug/valgrind/files/valgrind-3.20.0-gcc-13.patch b/dev-debug/valgrind/files/valgrind-3.20.0-gcc-13.patch
deleted file mode 100644
index 3d3644f85fc1..000000000000
--- a/dev-debug/valgrind/files/valgrind-3.20.0-gcc-13.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-https://sourceware.org/git/?p=valgrind.git;a=commit;h=dee222c6e818ca43ac45952fc8a020f445d98781
-https://sourceware.org/git/?p=valgrind.git;a=commit;h=3155bacf26237beb65edb4a572402492b2f1b050
-
-From dee222c6e818ca43ac45952fc8a020f445d98781 Mon Sep 17 00:00:00 2001
-From: Paul Floyd <pjfloyd@wanadoo.fr>
-Date: Fri, 27 Jan 2023 08:30:41 +0100
-Subject: [PATCH] Bug 464859 - Build failures with GCC-13 (drd tsan_unittest)
-
-Patch submitted by
-	Khem Raj <raj.khem@gmail.com>
---- a/drd/tests/tsan_thread_wrappers_pthread.h
-+++ b/drd/tests/tsan_thread_wrappers_pthread.h
-@@ -55,6 +55,7 @@
- #define NO_TLS
- #endif
- 
-+#include <cstdint>
- #include <string>
- using namespace std;
- 
--- 
-2.31.1
-
-From 3155bacf26237beb65edb4a572402492b2f1b050 Mon Sep 17 00:00:00 2001
-From: Mark Wielaard <mark@klomp.org>
-Date: Sat, 28 Jan 2023 21:53:44 +0100
-Subject: [PATCH] tsan_thread_wrappers_pthread.h: Only include cstdint for
- C++11
-
-Fixes build on older g++.
---- a/drd/tests/tsan_thread_wrappers_pthread.h
-+++ b/drd/tests/tsan_thread_wrappers_pthread.h
-@@ -55,7 +55,9 @@
- #define NO_TLS
- #endif
- 
-+#if __cplusplus >= 201103L
- #include <cstdint>
-+#endif
- #include <string>
- using namespace std;
- 
--- 
-2.31.1

diff --git a/dev-debug/valgrind/files/valgrind-3.20.0-musl-interpose.patch b/dev-debug/valgrind/files/valgrind-3.20.0-musl-interpose.patch
deleted file mode 100644
index 6ede22f8b5ec..000000000000
--- a/dev-debug/valgrind/files/valgrind-3.20.0-musl-interpose.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-https://bugs.kde.org/show_bug.cgi?id=435441
-
-From 460d0c9a6c27edfffed8ced623cecf64466619f2 Mon Sep 17 00:00:00 2001
-From: Michael Forney <mforney@mforney.org>
-Date: Thu, 4 Nov 2021 14:26:40 -0700
-Subject: [PATCH] Bug 435441 - Handle weak symbols as global for redirection
-
-Weak symbols are global but with lower precedence, so they should
-be handled the same way as global symbols during malloc replacement.
-
-This fixes valgrind on musl 1.2.2 when it is not patched with a
-soname (as is done on Alpine Linux).
-
-https://bugs.kde.org/show_bug.cgi?id=435441
---- a/coregrind/m_debuginfo/readelf.c
-+++ b/coregrind/m_debuginfo/readelf.c
-@@ -429,7 +429,8 @@ Bool get_elf_symbol_info (
-    }
- #  endif
- 
--   if (ELFXX_ST_BIND(sym->st_info) == STB_GLOBAL) {
-+   if (ELFXX_ST_BIND(sym->st_info) == STB_GLOBAL
-+       || ELFXX_ST_BIND(sym->st_info) == STB_WEAK) {
-       *is_global_out = True;
-    }
- 
--- 
-2.32.0
-
-

diff --git a/dev-debug/valgrind/files/valgrind-3.20.0-tests-clang16.patch b/dev-debug/valgrind/files/valgrind-3.20.0-tests-clang16.patch
deleted file mode 100644
index 01d51ba5f9ad..000000000000
--- a/dev-debug/valgrind/files/valgrind-3.20.0-tests-clang16.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-https://bugs.kde.org/show_bug.cgi?id=462007
-https://sourceware.org/git/?p=valgrind.git;a=commit;h=0811a612dd7ce0c02a5dd699b34e660c742df8fe
-
-From 0811a612dd7ce0c02a5dd699b34e660c742df8fe Mon Sep 17 00:00:00 2001
-From: Mark Wielaard <mark@klomp.org>
-Date: Fri, 18 Nov 2022 20:12:06 +0100
-Subject: [PATCH 1/1] Implicit int in none/tests/faultstatus.c
-
-There is a definition in faultstatus.c that is not accepted by
-C99 compilers (implicit ints were removed in that language revision).
-
-https://bugs.kde.org/show_bug.cgi?id=462007
---- a/none/tests/faultstatus.c
-+++ b/none/tests/faultstatus.c
-@@ -190,7 +190,7 @@ int main()
- 	return 0;
- }
- 
--static volatile s_zero;
-+static volatile int s_zero;
- 
- static int zero()
- {

diff --git a/dev-debug/valgrind/valgrind-3.20.0-r2.ebuild b/dev-debug/valgrind/valgrind-3.20.0-r2.ebuild
deleted file mode 100644
index deaf0eaa8edd..000000000000
--- a/dev-debug/valgrind/valgrind-3.20.0-r2.ebuild
+++ /dev/null
@@ -1,141 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit autotools flag-o-matic toolchain-funcs multilib pax-utils
-
-DESCRIPTION="An open-source memory debugger for GNU/Linux"
-HOMEPAGE="https://valgrind.org"
-if [[ ${PV} == 9999 ]]; then
-	EGIT_REPO_URI="https://sourceware.org/git/${PN}.git"
-	inherit git-r3
-else
-	VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/valgrind.gpg
-	inherit verify-sig
-	SRC_URI="https://sourceware.org/pub/valgrind/${P}.tar.bz2"
-	SRC_URI+=" verify-sig? ( https://sourceware.org/pub/valgrind/${P}.tar.bz2.asc )"
-	KEYWORDS="-* amd64 arm arm64 ppc ppc64 x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="mpi"
-
-DEPEND="mpi? ( virtual/mpi )"
-RDEPEND="${DEPEND}"
-if [[ ${PV} != 9999 ]] ; then
-	BDEPEND="verify-sig? ( sec-keys/openpgp-keys-valgrind )"
-fi
-
-PATCHES=(
-	# Respect CFLAGS, LDFLAGS
-	"${FILESDIR}"/${PN}-3.7.0-respect-flags.patch
-	"${FILESDIR}"/${PN}-3.15.0-Build-ldst_multiple-test-with-fno-pie.patch
-	"${FILESDIR}"/${P}-tests-clang16.patch
-	"${FILESDIR}"/${P}-gcc-13.patch
-)
-
-src_prepare() {
-	# Correct hard coded doc location
-	sed -i -e "s:doc/valgrind:doc/${PF}:" docs/Makefile.am || die
-
-	# Don't force multiarch stuff on OSX, bug #306467
-	sed -i -e 's:-arch \(i386\|x86_64\)::g' Makefile.all.am || die
-
-	if use elibc_musl ; then
-		PATCHES+=(
-			"${FILESDIR}"/${PN}-3.13.0-malloc.patch
-			"${FILESDIR}"/${PN}-3.20.0-musl-interpose.patch
-		)
-	fi
-
-	if [[ ${CHOST} == *-solaris* ]] ; then
-		# upstream doesn't support this, but we don't build with
-		# Sun/Oracle ld, we have a GNU toolchain, so get some things
-		# working the Linux/GNU way
-		find "${S}" -name "Makefile.am" -o -name "Makefile.tool.am" | xargs \
-			sed -i -e 's:-M,/usr/lib/ld/map.noexstk:-z,noexecstack:' || die
-		cp "${S}"/coregrind/link_tool_exe_{linux,solaris}.in
-	fi
-
-	default
-
-	# Regenerate autotools files
-	eautoreconf
-}
-
-src_configure() {
-	local myconf=()
-
-	# Respect ar, bug #468114
-	tc-export AR
-
-	# -fomit-frame-pointer	"Assembler messages: Error: junk `8' after expression"
-	#                       while compiling insn_sse.c in none/tests/x86
-	# -fstack-protector     more undefined references to __guard and __stack_smash_handler
-	#                       because valgrind doesn't link to glibc (bug #114347)
-	# -fstack-protector-all    Fails same way as -fstack-protector/-fstack-protector-strong.
-	#                          Note: -fstack-protector-explicit is a no-op for Valgrind, no need to strip it
-	# -fstack-protector-strong See -fstack-protector (bug #620402)
-	# -m64 -mx32			for multilib-portage, bug #398825
-	# -ggdb3                segmentation fault on startup
-	# -flto*                fails to build, bug #858509
-	filter-flags -fomit-frame-pointer
-	filter-flags -fstack-protector
-	filter-flags -fstack-protector-all
-	filter-flags -fstack-protector-strong
-	filter-flags -m64 -mx32
-	filter-flags -fsanitize -fsanitize=*
-	replace-flags -ggdb3 -ggdb2
-	filter-lto
-
-	if use amd64 || use ppc64; then
-		! has_multilib_profile && myconf+=("--enable-only64bit")
-	fi
-
-	# Force bitness on darwin, bug #306467
-	use x64-macos && myconf+=("--enable-only64bit")
-
-	# Don't use mpicc unless the user asked for it (bug #258832)
-	if ! use mpi; then
-		myconf+=("--without-mpicc")
-	fi
-
-	econf "${myconf[@]}"
-}
-
-src_install() {
-	default
-
-	if [[ ${PV} == "9999" ]]; then
-		# Otherwise FAQ.txt won't exist:
-		emake -C docs FAQ.txt
-		mv docs/FAQ.txt . || die "Couldn't move FAQ.txt"
-	fi
-
-	dodoc FAQ.txt
-
-	pax-mark m "${ED}"/usr/$(get_libdir)/valgrind/*-*-linux
-
-	# See README_PACKAGERS
-	dostrip -x /usr/libexec/valgrind/vgpreload* /usr/$(get_libdir)/valgrind/*
-
-	if [[ ${CHOST} == *-darwin* ]] ; then
-		# fix install_names on shared libraries, can't turn them into bundles,
-		# as dyld won't load them any more then, bug #306467
-		local l
-		for l in "${ED}"/usr/lib/valgrind/*.so ; do
-			install_name_tool -id "${EPREFIX}"/usr/lib/valgrind/${l##*/} "${l}"
-		done
-	fi
-}
-
-pkg_postinst() {
-	elog "Valgrind will not work if libc (e.g. glibc) does not have debug symbols."
-	elog "To fix this you can add splitdebug to FEATURES in make.conf"
-	elog "and remerge glibc. See:"
-	elog "https://bugs.gentoo.org/214065"
-	elog "https://bugs.gentoo.org/274771"
-	elog "https://bugs.gentoo.org/388703"
-}

diff --git a/dev-debug/valgrind/valgrind-3.22.0-r1.ebuild b/dev-debug/valgrind/valgrind-3.22.0-r1.ebuild
deleted file mode 100644
index 0fb45ef9955d..000000000000
--- a/dev-debug/valgrind/valgrind-3.22.0-r1.ebuild
+++ /dev/null
@@ -1,157 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# The Valgrind upstream maintainer also maintains it in Fedora and will
-# backport fixes there which haven't yet made it into a release. Keep an eye
-# on it for fixes we should cherry-pick too:
-# https://src.fedoraproject.org/rpms/valgrind/tree/rawhide
-#
-# Also check the ${PV}_STABLE branch upstream for backports.
-
-inherit autotools flag-o-matic toolchain-funcs multilib pax-utils
-
-DESCRIPTION="An open-source memory debugger for GNU/Linux"
-HOMEPAGE="https://valgrind.org"
-if [[ ${PV} == 9999 ]]; then
-	EGIT_REPO_URI="https://sourceware.org/git/${PN}.git"
-	inherit git-r3
-else
-	VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/valgrind.gpg
-	inherit verify-sig
-
-	MY_P="${P/_rc/.RC}"
-	SRC_URI="https://sourceware.org/pub/valgrind/${MY_P}.tar.bz2"
-	SRC_URI+=" verify-sig? ( https://sourceware.org/pub/valgrind/${MY_P}.tar.bz2.asc )"
-	S="${WORKDIR}"/${MY_P}
-
-	if [[ ${PV} != *_rc* ]] ; then
-		KEYWORDS="-* ~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
-	fi
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="mpi"
-
-DEPEND="mpi? ( virtual/mpi )"
-RDEPEND="${DEPEND}"
-if [[ ${PV} != 9999 ]] ; then
-	BDEPEND="verify-sig? ( sec-keys/openpgp-keys-valgrind )"
-fi
-
-PATCHES=(
-	# Respect CFLAGS, LDFLAGS
-	"${FILESDIR}"/${PN}-3.7.0-respect-flags.patch
-	"${FILESDIR}"/${PN}-3.15.0-Build-ldst_multiple-test-with-fno-pie.patch
-	"${FILESDIR}"/${PN}-3.21.0-glibc-2.34-suppressions.patch
-	# From stable branch
-	"${FILESDIR}"/0001-valgrind-monitor.py-regular-expressions-should-use-r.patch
-	"${FILESDIR}"/0002-Bug-476548-valgrind-3.22.0-fails-on-assertion-when-l.patch
-	"${FILESDIR}"/0003-Add-fchmodat2-syscall-on-linux.patch
-)
-
-src_prepare() {
-	# Correct hard coded doc location
-	sed -i -e "s:doc/valgrind:doc/${PF}:" docs/Makefile.am || die
-
-	# Don't force multiarch stuff on OSX, bug #306467
-	sed -i -e 's:-arch \(i386\|x86_64\)::g' Makefile.all.am || die
-
-	if [[ ${CHOST} == *-solaris* ]] ; then
-		# upstream doesn't support this, but we don't build with
-		# Sun/Oracle ld, we have a GNU toolchain, so get some things
-		# working the Linux/GNU way
-		find "${S}" -name "Makefile.am" -o -name "Makefile.tool.am" | xargs \
-			sed -i -e 's:-M,/usr/lib/ld/map.noexstk:-z,noexecstack:' || die
-		cp "${S}"/coregrind/link_tool_exe_{linux,solaris}.in
-	fi
-
-	default
-
-	eautoreconf
-}
-
-src_configure() {
-	local myconf=(
-		--with-gdbscripts-dir="${EPREFIX}"/usr/share/gdb/auto-load
-	)
-
-	# Respect ar, bug #468114
-	tc-export AR
-
-	# -fomit-frame-pointer	"Assembler messages: Error: junk `8' after expression"
-	#                       while compiling insn_sse.c in none/tests/x86
-	# -fstack-protector     more undefined references to __guard and __stack_smash_handler
-	#                       because valgrind doesn't link to glibc (bug #114347)
-	# -fstack-protector-all    Fails same way as -fstack-protector/-fstack-protector-strong.
-	#                          Note: -fstack-protector-explicit is a no-op for Valgrind, no need to strip it
-	# -fstack-protector-strong See -fstack-protector (bug #620402)
-	# -m64 -mx32			for multilib-portage, bug #398825
-	# -fharden-control-flow-redundancy: breaks runtime ('jump to the invalid address stated on the next line')
-	# -flto*                fails to build, bug #858509
-	filter-flags -fomit-frame-pointer
-	filter-flags -fstack-protector
-	filter-flags -fstack-protector-all
-	filter-flags -fstack-protector-strong
-	filter-flags -m64 -mx32
-	filter-flags -fsanitize -fsanitize=*
-	filter-flags -fharden-control-flow-redundancy
-	append-cflags $(test-flags-CC -fno-harden-control-flow-redundancy)
-	filter-lto
-
-	if use amd64 || use ppc64; then
-		! has_multilib_profile && myconf+=("--enable-only64bit")
-	fi
-
-	# Force bitness on darwin, bug #306467
-	use x64-macos && myconf+=("--enable-only64bit")
-
-	# Don't use mpicc unless the user asked for it (bug #258832)
-	if ! use mpi; then
-		myconf+=("--without-mpicc")
-	fi
-
-	econf "${myconf[@]}"
-}
-
-src_test() {
-	# fxsave.o, tronical.o have textrels
-	emake LDFLAGS="${LDFLAGS} -Wl,-z,notext" check
-}
-
-src_install() {
-	default
-
-	if [[ ${PV} == "9999" ]]; then
-		# Otherwise FAQ.txt won't exist:
-		emake -C docs FAQ.txt
-		mv docs/FAQ.txt . || die "Couldn't move FAQ.txt"
-	fi
-
-	dodoc FAQ.txt
-
-	pax-mark m "${ED}"/usr/$(get_libdir)/valgrind/*-*-linux
-
-	# See README_PACKAGERS
-	dostrip -x /usr/libexec/valgrind/vgpreload* /usr/$(get_libdir)/valgrind/*
-
-	if [[ ${CHOST} == *-darwin* ]] ; then
-		# fix install_names on shared libraries, can't turn them into bundles,
-		# as dyld won't load them any more then, bug #306467
-		local l
-		for l in "${ED}"/usr/lib/valgrind/*.so ; do
-			install_name_tool -id "${EPREFIX}"/usr/lib/valgrind/${l##*/} "${l}"
-		done
-	fi
-}
-
-pkg_postinst() {
-	elog "Valgrind will not work if libc (e.g. glibc) does not have debug symbols."
-	elog "To fix this you can add splitdebug to FEATURES in make.conf"
-	elog "and remerge glibc. See:"
-	elog "https://bugs.gentoo.org/214065"
-	elog "https://bugs.gentoo.org/274771"
-	elog "https://bugs.gentoo.org/388703"
-}

diff --git a/dev-debug/valgrind/valgrind-3.22.0.ebuild b/dev-debug/valgrind/valgrind-3.22.0.ebuild
deleted file mode 100644
index 3d0c31f598dc..000000000000
--- a/dev-debug/valgrind/valgrind-3.22.0.ebuild
+++ /dev/null
@@ -1,152 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# The Valgrind upstream maintainer also maintains it in Fedora and will
-# backport fixes there which haven't yet made it into a release. Keep an eye
-# on it for fixes we should cherry-pick too:
-# https://src.fedoraproject.org/rpms/valgrind/tree/rawhide
-
-inherit autotools flag-o-matic toolchain-funcs multilib pax-utils
-
-DESCRIPTION="An open-source memory debugger for GNU/Linux"
-HOMEPAGE="https://valgrind.org"
-if [[ ${PV} == 9999 ]]; then
-	EGIT_REPO_URI="https://sourceware.org/git/${PN}.git"
-	inherit git-r3
-else
-	VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/valgrind.gpg
-	inherit verify-sig
-
-	MY_P="${P/_rc/.RC}"
-	SRC_URI="https://sourceware.org/pub/valgrind/${MY_P}.tar.bz2"
-	SRC_URI+=" verify-sig? ( https://sourceware.org/pub/valgrind/${MY_P}.tar.bz2.asc )"
-	S="${WORKDIR}"/${MY_P}
-
-	if [[ ${PV} != *_rc* ]] ; then
-		KEYWORDS="-* ~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
-	fi
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="mpi"
-
-DEPEND="mpi? ( virtual/mpi )"
-RDEPEND="${DEPEND}"
-if [[ ${PV} != 9999 ]] ; then
-	BDEPEND="verify-sig? ( sec-keys/openpgp-keys-valgrind )"
-fi
-
-PATCHES=(
-	# Respect CFLAGS, LDFLAGS
-	"${FILESDIR}"/${PN}-3.7.0-respect-flags.patch
-	"${FILESDIR}"/${PN}-3.15.0-Build-ldst_multiple-test-with-fno-pie.patch
-	"${FILESDIR}"/${PN}-3.21.0-glibc-2.34-suppressions.patch
-)
-
-src_prepare() {
-	# Correct hard coded doc location
-	sed -i -e "s:doc/valgrind:doc/${PF}:" docs/Makefile.am || die
-
-	# Don't force multiarch stuff on OSX, bug #306467
-	sed -i -e 's:-arch \(i386\|x86_64\)::g' Makefile.all.am || die
-
-	if [[ ${CHOST} == *-solaris* ]] ; then
-		# upstream doesn't support this, but we don't build with
-		# Sun/Oracle ld, we have a GNU toolchain, so get some things
-		# working the Linux/GNU way
-		find "${S}" -name "Makefile.am" -o -name "Makefile.tool.am" | xargs \
-			sed -i -e 's:-M,/usr/lib/ld/map.noexstk:-z,noexecstack:' || die
-		cp "${S}"/coregrind/link_tool_exe_{linux,solaris}.in
-	fi
-
-	default
-
-	# Regenerate autotools files
-	eautoreconf
-}
-
-src_configure() {
-	local myconf=(
-		--with-gdbscripts-dir="${EPREFIX}"/usr/share/gdb/auto-load
-	)
-
-	# Respect ar, bug #468114
-	tc-export AR
-
-	# -fomit-frame-pointer	"Assembler messages: Error: junk `8' after expression"
-	#                       while compiling insn_sse.c in none/tests/x86
-	# -fstack-protector     more undefined references to __guard and __stack_smash_handler
-	#                       because valgrind doesn't link to glibc (bug #114347)
-	# -fstack-protector-all    Fails same way as -fstack-protector/-fstack-protector-strong.
-	#                          Note: -fstack-protector-explicit is a no-op for Valgrind, no need to strip it
-	# -fstack-protector-strong See -fstack-protector (bug #620402)
-	# -m64 -mx32			for multilib-portage, bug #398825
-	# -fharden-control-flow-redundancy: breaks runtime ('jump to the invalid address stated on the next line')
-	# -flto*                fails to build, bug #858509
-	filter-flags -fomit-frame-pointer
-	filter-flags -fstack-protector
-	filter-flags -fstack-protector-all
-	filter-flags -fstack-protector-strong
-	filter-flags -m64 -mx32
-	filter-flags -fsanitize -fsanitize=*
-	filter-flags -fharden-control-flow-redundancy
-	append-cflags $(test-flags-CC -fno-harden-control-flow-redundancy)
-	filter-lto
-
-	if use amd64 || use ppc64; then
-		! has_multilib_profile && myconf+=("--enable-only64bit")
-	fi
-
-	# Force bitness on darwin, bug #306467
-	use x64-macos && myconf+=("--enable-only64bit")
-
-	# Don't use mpicc unless the user asked for it (bug #258832)
-	if ! use mpi; then
-		myconf+=("--without-mpicc")
-	fi
-
-	econf "${myconf[@]}"
-}
-
-src_test() {
-	# fxsave.o, tronical.o have textrels
-	emake LDFLAGS="${LDFLAGS} -Wl,-z,notext" check
-}
-
-src_install() {
-	default
-
-	if [[ ${PV} == "9999" ]]; then
-		# Otherwise FAQ.txt won't exist:
-		emake -C docs FAQ.txt
-		mv docs/FAQ.txt . || die "Couldn't move FAQ.txt"
-	fi
-
-	dodoc FAQ.txt
-
-	pax-mark m "${ED}"/usr/$(get_libdir)/valgrind/*-*-linux
-
-	# See README_PACKAGERS
-	dostrip -x /usr/libexec/valgrind/vgpreload* /usr/$(get_libdir)/valgrind/*
-
-	if [[ ${CHOST} == *-darwin* ]] ; then
-		# fix install_names on shared libraries, can't turn them into bundles,
-		# as dyld won't load them any more then, bug #306467
-		local l
-		for l in "${ED}"/usr/lib/valgrind/*.so ; do
-			install_name_tool -id "${EPREFIX}"/usr/lib/valgrind/${l##*/} "${l}"
-		done
-	fi
-}
-
-pkg_postinst() {
-	elog "Valgrind will not work if libc (e.g. glibc) does not have debug symbols."
-	elog "To fix this you can add splitdebug to FEATURES in make.conf"
-	elog "and remerge glibc. See:"
-	elog "https://bugs.gentoo.org/214065"
-	elog "https://bugs.gentoo.org/274771"
-	elog "https://bugs.gentoo.org/388703"
-}


^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2024-03-04 10:15 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-01-22 13:12 [gentoo-commits] repo/gentoo:master commit in: dev-debug/valgrind/, dev-debug/valgrind/files/ Sam James
  -- strict thread matches above, loose matches on Subject: below --
2024-03-04 10:14 Sam James

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox