diff options
Diffstat (limited to 'dev-debug')
-rw-r--r-- | dev-debug/Manifest.gz | bin | 4361 -> 4360 bytes | |||
-rw-r--r-- | dev-debug/strace/Manifest | 9 | ||||
-rw-r--r-- | dev-debug/strace/strace-6.12.ebuild | 120 | ||||
-rw-r--r-- | dev-debug/strace/strace-6.14.ebuild (renamed from dev-debug/strace/strace-6.9.ebuild) | 2 | ||||
-rw-r--r-- | dev-debug/valgrind/Manifest | 2 | ||||
-rw-r--r-- | dev-debug/valgrind/valgrind-3.24.0_p3.ebuild | 197 |
6 files changed, 203 insertions, 127 deletions
diff --git a/dev-debug/Manifest.gz b/dev-debug/Manifest.gz Binary files differindex d8caf39c4aa1..4316f758ce9a 100644 --- a/dev-debug/Manifest.gz +++ b/dev-debug/Manifest.gz diff --git a/dev-debug/strace/Manifest b/dev-debug/strace/Manifest index ee9e48ca31ad..d65c69df60f5 100644 --- a/dev-debug/strace/Manifest +++ b/dev-debug/strace/Manifest @@ -1,12 +1,9 @@ AUX strace-6.5-static.patch 5425 BLAKE2B c7b2477ba5a8b5f23ed28763e1149406f7f434ce014aa51069f80a8cf0cdfaa5dbfa58cbba12b0de1eef50e2ff7bd89c4d2b9f1e1587a889d7dbc5486045be2e SHA512 67f698522f1cd47f994baf8d7b7640ef0d36ea4bf8cf5069664e7219164dae949e53c136520d96b476b085023855db349e89937cc017ff4a77d5b8da09ab5bed -DIST strace-6.12.tar.xz 2628804 BLAKE2B 8077a9ae0b05065cf2de7a2bd630a6275735bd77765a5654cb34f17c93b3fda69d77743c5eb8e75efcc1f6ec8707698642d30bd62cc3aa4355bec0d5a00eec89 SHA512 ae28f0b6b6fdc980898f11d1903aacb5a31760a07d63bd7cbc8f9b5f337d9db6b40464d6b61a9b03ba6442b476edb78afc91348f539f7780cdd98b174c6a9a1d -DIST strace-6.12.tar.xz.asc 801 BLAKE2B 0c3d81747128039c2304c2c6509f14d868c49b1d7036128ab58a2df7690ea40ab643a54f274c0fecbae4bbc4e90ee5d05037630525db828aa4995199ab415cba SHA512 7b8d6148f3160e39033016d17a54f0b0e0a67fb20ab688486db401521d45ba5197d4a8106f6b173f08a787e59d88147a71ee88435afe0a545fc8f75f621bee79 DIST strace-6.13.tar.xz 2642452 BLAKE2B cdac801dc5b0fe9c165d9d99a41e51aacf13e8bd05baccca26fff360f2a7052a3f1b7016dee85a37d074c4e0f3b9255a29a146e13b6099a2ef8f9d493e3b1079 SHA512 e702238f32882f92a2b2834fb853b5fa3d81decb441b69f0e74ba0205f6a586bfe698e34bfbac6d4f766ebd25d0b99d4679d9eb27845e5129cfd4e34ced6a8d2 DIST strace-6.13.tar.xz.asc 801 BLAKE2B 508286a008213e2bd3e0cba6c339a61abae1460f0f71b885c7bef480431bdf5e190a2cb3e44d236019ed54d3bf3a257ebb94e2161971abe0648f685e7849e3bd SHA512 a59e4aeff491ad62603b0591653e7da5e8a4ef0fedcf2faad3f485993b37b738c0809cefa5753ab7d1b85f3b6c87b423b6416dea36def65e220548ee0b4afb46 -DIST strace-6.9.tar.xz 2466252 BLAKE2B 2da51f253ea18f27b5fabafaebdc54805aeca5b750bec6169c269dbcadb98cf76a47bf92dd619458ca86d46ec7a03710e16e0ac4973d89a86edc2d0b853714c8 SHA512 aa80b9b6ec41082f1710f2327f7a22003cdce6d95ab0e5083ada9c5b7b40b8f7cbc7dc6c017878dc0e42c52e405e98ed1488c51d17bc3538989ff4be2c2411e1 -DIST strace-6.9.tar.xz.asc 801 BLAKE2B ccb3d026a272bc02d351fd15f8b18a50a8653cda247ea9baa938820fb3c870e1803562d7e17eac3d4f1842911a4e904bc88ba267cb74aeac869185e30cd89d48 SHA512 577a3f5d0bdd51b995755a76b58e6bdf6a0a173966bb1d95ebba0a59df8a8e828eb5eca4cda55c9faf7e31053652911541134107199c073ec24fa877cec393bd -EBUILD strace-6.12.ebuild 2785 BLAKE2B bf159c0dcd040441588feb1217aa17394838af2d7d3b1505971ea6297e749bf17edea1ab9aef7183b9c4d13f5bc86fde2c3614e894e837865dcbbd6fe98e26c7 SHA512 9acd0706e694a70634e759687a56060d6401a134a73ed0850334d4b87a0c3bcd10c46f0a313e212e69248cda36a75e6170118bce2ad8abe0030a49bc58ec076d +DIST strace-6.14.tar.xz 2650972 BLAKE2B 940bb7d54c29e8f22dcf67e617e8a664a7147bb96538b3a8a680698fa33f528d6082fb9c9d7eda9540e7730fa0f7d88aafbead4cccd8844ca687e2e4a1c8a7d2 SHA512 2a18dbfddb054dc7845fa6645d194297c6fe7d67607f812198e712b8b1f75d6e99e9e19587e9ad799e9566d7a558e2d64fe216a61456d5c3f23dfa2e42e3b412 +DIST strace-6.14.tar.xz.asc 801 BLAKE2B d25bc4e4164861c258da9037579603f5cfbfc45ee75c172fa90783d3ef9bfb743690b50bb6a6350f24937aa4cb4d87ea63e05f48d081c07ac45f0796486bb733 SHA512 8c107df8bedd2a9574e390e4bb576062681a5137bb48efbdb9ed2f9229871ffc847936b5e2341e335702601feba3a0935b9cc22a316607b5e32858b5cbcb0fd8 EBUILD strace-6.13.ebuild 2780 BLAKE2B 2f4a09334b2520e1dfc33a52afd4f94974fca9ec27f5b93d8c2720fe382a3994d8a2014d4bd1199699843d7ebec2342aef20d633c861be606954c33f543792ab SHA512 1c431b42e330f031c33e34639edde125c5d90d7ca36e125e9df56f81c015ec7a155b91d143aceebdfa69fc52de9e92a68d10f70c988511b89b54e9d70939151a -EBUILD strace-6.9.ebuild 2780 BLAKE2B 2f4a09334b2520e1dfc33a52afd4f94974fca9ec27f5b93d8c2720fe382a3994d8a2014d4bd1199699843d7ebec2342aef20d633c861be606954c33f543792ab SHA512 1c431b42e330f031c33e34639edde125c5d90d7ca36e125e9df56f81c015ec7a155b91d143aceebdfa69fc52de9e92a68d10f70c988511b89b54e9d70939151a +EBUILD strace-6.14.ebuild 2788 BLAKE2B 54f11ca3ddeede412bd57d4cfd9437e52fff79c37f9a7bfff79838d61641d7cc7e979f1cbc5e1008f0d45500deda2f8dd12fd7e4ff4cbfc923e15f2ec6ec37b0 SHA512 de73adcc9567385ed826920d73412d0f60c3f3d3a0c2889652dbcc70d1271b895c36b6630f30f32442b4e9144f56cb2942ce8f2a6494b8c078723643337dd4f8 EBUILD strace-9999.ebuild 2788 BLAKE2B 54f11ca3ddeede412bd57d4cfd9437e52fff79c37f9a7bfff79838d61641d7cc7e979f1cbc5e1008f0d45500deda2f8dd12fd7e4ff4cbfc923e15f2ec6ec37b0 SHA512 de73adcc9567385ed826920d73412d0f60c3f3d3a0c2889652dbcc70d1271b895c36b6630f30f32442b4e9144f56cb2942ce8f2a6494b8c078723643337dd4f8 MISC metadata.xml 844 BLAKE2B 5c0ea5129bf202dbd4c7505ec5585f6ea43ef21098a776f4ed632f7a34e4f8b2705f4ded75ef2dd8e9c7ed53704d140efef27eba08076e9314820633e3cd602e SHA512 8c4f6e2b4f6914b91ee21cca3d70bb6b42571f9e57441b0e53a9f21591a521cc4f0b815e654dd3ac820618fdc92411c3448cffef113ea16c73121a1e242bd505 diff --git a/dev-debug/strace/strace-6.12.ebuild b/dev-debug/strace/strace-6.12.ebuild deleted file mode 100644 index c96750b5e48e..000000000000 --- a/dev-debug/strace/strace-6.12.ebuild +++ /dev/null @@ -1,120 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit autotools edo flag-o-matic toolchain-funcs verify-sig - -DESCRIPTION="Useful diagnostic, instructional, and debugging tool" -HOMEPAGE="https://strace.io/" - -if [[ ${PV} == 9999 ]] ; then - EGIT_REPO_URI="https://github.com/strace/strace.git" - inherit git-r3 -else - SRC_URI=" - https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz - verify-sig? ( https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz.asc ) - " - KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" -fi - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/strace.asc - -LICENSE="LGPL-2.1+ test? ( GPL-2+ )" -SLOT="0" -IUSE="aio perl selinux static test unwind elfutils" -RESTRICT="!test? ( test )" -REQUIRED_USE="?? ( unwind elfutils )" - -BDEPEND=" - virtual/pkgconfig - verify-sig? ( >=sec-keys/openpgp-keys-strace-20151021 ) -" -LIB_DEPEND=" - unwind? ( sys-libs/libunwind[static-libs(+)] ) - elfutils? ( dev-libs/elfutils[static-libs(+)] ) - selinux? ( sys-libs/libselinux[static-libs(+)] ) -" -# strace only uses the header from libaio to decode structs -DEPEND=" - static? ( ${LIB_DEPEND} ) - aio? ( >=dev-libs/libaio-0.3.106 ) -" -RDEPEND=" - !static? ( ${LIB_DEPEND//\[static-libs(+)]} ) - perl? ( dev-lang/perl ) -" - -PATCHES=( - "${FILESDIR}/${PN}-6.5-static.patch" -) - -src_prepare() { - default - - if [[ ! -e configure ]] ; then - # git generation - sed /autoreconf/d -i bootstrap || die - edo ./bootstrap - [[ ! -e CREDITS ]] && cp CREDITS{.in,} - fi - - eautoreconf - - # Stub out the -k test since it's known to be flaky. bug #545812 - sed -i '1iexit 77' tests*/strace-k.test || die -} - -src_configure() { - # Set up the default build settings, and then use the names strace expects. - tc-export_build_env BUILD_{CC,CPP} - local v bv - for v in CC CPP {C,CPP,LD}FLAGS ; do - bv="BUILD_${v}" - export "${v}_FOR_BUILD=${!bv}" - done - - filter-lfs-flags # configure handles this sanely - - export ac_cv_header_libaio_h=$(usex aio) - use elibc_musl && export ac_cv_header_stdc=no - - local myeconfargs=( - --disable-gcc-Werror - - # Don't require mpers support on non-multilib systems (bug #649560) - --enable-mpers=check - - # We don't want to pin to exact linux-headers versions (bug #950309) - --enable-bundled=yes - - $(use_enable static) - $(use_with unwind libunwind) - $(use_with elfutils libdw) - $(use_with selinux libselinux) - ) - - econf "${myeconfargs[@]}" -} - -src_test() { - if has usersandbox ${FEATURES} ; then - # bug #643044 - ewarn "Test suite is known to fail with FEATURES=usersandbox -- skipping ..." - return 0 - fi - - default -} - -src_install() { - default - - if use perl ; then - exeinto /usr/bin - doexe src/strace-graph - fi - - dodoc CREDITS -} diff --git a/dev-debug/strace/strace-6.9.ebuild b/dev-debug/strace/strace-6.14.ebuild index 571c162459fb..196f558d280a 100644 --- a/dev-debug/strace/strace-6.9.ebuild +++ b/dev-debug/strace/strace-6.14.ebuild @@ -16,7 +16,7 @@ else https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz verify-sig? ( https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz.asc ) " - KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" fi VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/strace.asc diff --git a/dev-debug/valgrind/Manifest b/dev-debug/valgrind/Manifest index b3aa5097c070..da383b6bf878 100644 --- a/dev-debug/valgrind/Manifest +++ b/dev-debug/valgrind/Manifest @@ -6,11 +6,13 @@ DIST valgrind-3.23.0.tar.bz2 16550038 BLAKE2B 9312761b0531006725f13270984b26c48f DIST valgrind-3.23.0.tar.bz2.asc 488 BLAKE2B b06781577e3e84e506e56bd4acc7341aecacb6b5898d8f0daab627d24bc70c9c60edad11dc7e3723ac77aa9c7978f1e13af7734e7a37763c720e77ea4ff103a4 SHA512 e10b38c72ed1fb8d79a3fa84ab70c475ec7a15927a578ee6715aa74f9600453f0fb72551053b6c31583321c37dab100bafbf6e689c02a3bc06021f6092b4bc80 DIST valgrind-3.24.0-patches-1.tar.xz 10112 BLAKE2B 83e3b5970b4b4af60dacd90d0d7153359ece8f207f99e3325c8504a0fca123db3b803f2c745ed184f9aa3a4a54d1f922067dd060ce8d18d8b8bd4b936f676602 SHA512 054f5c9ee2676f172e896838e6fb50b1e51a842a8ede2dacb7def01c786bbd874f8099d9bd9ddb0ae88c7d1b32686dee80631ea7f6e27b0efd78a6c1fbdaaaec DIST valgrind-3.24.0-patches-2.tar.xz 17900 BLAKE2B 50304bb6cd0d41cee9605f3ad2af48f8ae90bdda0dc043f73c510a5c75fbe540b69fb2c24f3decf68302c6738c6b8243f43b793389b1f843ad7e5771f61da739 SHA512 ba09bb7b655026825267fcbbb08fc3593d98596daf47f088c1fe9825347827ee3351af2caa48008f1c6af33a550da5cb7da9aa4db5dba7aca04b0028c7e4e331 +DIST valgrind-3.24.0-patches-3.tar.xz 19236 BLAKE2B 9d75207e5d3e772ca150e48625d737e7206dbf75e6e56c5ff648107e75872eba37b381405edfb97156ad999ea5d5d4339ae5643e70fe8655d0855783063ff33a SHA512 2d0bfd06213e0ba6ab9075ce27fb1b9cd2c8ab75bfa9e43a3e26d224b9b36fe5dbb4a0116eeec693c16389f084f3cb363e72675a2c5e0e46f8efbab117f0b57e DIST valgrind-3.24.0.tar.bz2 16632387 BLAKE2B e11ad08f0062bd39788cd71d7ce058dec7a7207fbbe25f0dbfc7fb5735667809681cec2c843659553fbd49bcc6c71bdb93d87ffda3589247e4ee87c98fe51332 SHA512 6c131ff93d1f432d8362a47285cc377cba224ebca4f18e922c6156f7736d43020ece14d8fd16913498ab00fd18c85e2042a7d5351c3901e80413c584ebb406f3 DIST valgrind-3.24.0.tar.bz2.asc 488 BLAKE2B f6307d10ee3ca26d837bf00471d179655ddbb0137920e175767a9d875aae355cea6727112deb788300a5196d94500bf9b341f8c70d46a1f83c40ae579ad45431 SHA512 37e9188756940960dcfe771d10275de7759ae652c94e710618948a8b366f66f3453f77b7751df0010b58304b203d7b3b56ac7a671d142d620916689ce5c84ae0 EBUILD valgrind-3.23.0_p3.ebuild 5951 BLAKE2B 67c33c40565679604dfd289560dcc3dea52fac727f0017e9aa70a5ba86dd2d545c2c9169f5efc522c247564db6d79bf52ee469227de27ea9189a487ba7b11301 SHA512 94cdab6c5f87943887acad1072ad59eefb5acc15f9c8129c3ca732e86a42a06f658d37dd2b3ae9159886308ed5ca61f0280fceb972019d1c153bcf7306b1ae09 EBUILD valgrind-3.24.0.ebuild 5957 BLAKE2B 4337a1a031490b09759fa09007d64d3b67b4177b9b14ad3767ad6d13fb18d9bee6a46f66daf6e4fb715bed3718498bbc4ff3cc3d977549a9db58878333b6c287 SHA512 cff446a33a7d328c76ac1b9d99de6e2f89998c2a9e143645ac54eb6b5722fcd8427cd535593c83fef5f3e65b41af0f489f09a77bb5a8dc08d1d9119d4b6e209a EBUILD valgrind-3.24.0_p1.ebuild 6064 BLAKE2B 2589a2e754944a39c947bbbe10a308216a296f772d603e0e1a35a17bf65595969d0ccac4266c4c4f3cfb1c957573245846fa28f5a24003cb29defa1fd6f16f74 SHA512 6f782659098807fb54cc4a70c7743e71416e117a17b5c89de69f119960cb8b9d30812cf92846d7be71b4b97e14979fc02f5f834bf2f4b69ca92f07d150d71b4a EBUILD valgrind-3.24.0_p2.ebuild 6070 BLAKE2B c8f481205db75e36e3db155f43a66af8e526e98079de039b2bd853916561dd64b06344a2b5c9513265e484adb8b8bfe433882cfdf2de7a3fdfc37e5c22996f72 SHA512 1b258d053e6feb1983e266f8b22e24b9b9a79231578e903d7cbe4b0b218e76cfea812213f0b929f3321d81b1e53d33375b6623ba058c17f2dbbc58ac468d1cc3 +EBUILD valgrind-3.24.0_p3.ebuild 6070 BLAKE2B c8f481205db75e36e3db155f43a66af8e526e98079de039b2bd853916561dd64b06344a2b5c9513265e484adb8b8bfe433882cfdf2de7a3fdfc37e5c22996f72 SHA512 1b258d053e6feb1983e266f8b22e24b9b9a79231578e903d7cbe4b0b218e76cfea812213f0b929f3321d81b1e53d33375b6623ba058c17f2dbbc58ac468d1cc3 EBUILD valgrind-9999.ebuild 6072 BLAKE2B 9863c41b39cf03366821a831a260c8cea98c4ed9a9103a1895b176d6c00c48448d30088ba1debe18b17d2ce50d5e1e69f7ab4f85b659685943c58e0dd5fe3e32 SHA512 ac2597043dde0d36871d97904ef16fe1e03d473bcf5c5122d621e98dc6f9325cd686f43a573bc3fc41c4903c1b562b5fa695a1fbef80c89eaba24ffca53f19e2 MISC metadata.xml 1123 BLAKE2B 17b5501b05acd9384ab57a15018bc0d1ede50d7b5b9a5c38fcce816f68e8946010bc86233a197df89ad208957f90ab643942b7e1a3ceaa6e8d456320828b84e8 SHA512 a8c32063f3afd28c4a2d5c5c0f437c08772e822aaed4feb71f79e0f5a6cf81530d056bd8ae2ef73ac70792bd78fc095c069ef0d4304ff0a1c365f289d1191fe1 diff --git a/dev-debug/valgrind/valgrind-3.24.0_p3.ebuild b/dev-debug/valgrind/valgrind-3.24.0_p3.ebuild new file mode 100644 index 000000000000..1a9c52b3ea9d --- /dev/null +++ b/dev-debug/valgrind/valgrind-3.24.0_p3.ebuild @@ -0,0 +1,197 @@ +# Copyright 1999-2025 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}" + MY_P="${MY_P%%_p*}" + VALGRIND_PATCH_TARBALL="${MY_P}-patches-${PV##*_p}" + SRC_URI=" + https://sourceware.org/pub/valgrind/${MY_P}.tar.bz2 + verify-sig? ( https://sourceware.org/pub/valgrind/${MY_P}.tar.bz2.asc ) + " + # Rollups of backports on ${PV}_STABLE branch upstream. This branch + # is usually announced on the mailing list and distros are encouraged + # to pull from it regularly. + if [[ ${PV} == *_p* ]] ; then + SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${VALGRIND_PATCH_TARBALL}.tar.xz" + fi + + 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 + # Needed for man pages + BDEPEND+=" + app-text/docbook-xsl-stylesheets + dev-libs/libxslt + " +else + 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 +) + +QA_CONFIG_IMPL_DECL_SKIP+=( + # "checking if gcc accepts nested functions" but clang cannot handle good + # errors and reports both "function definition is not allowed here" and + # -Wimplicit-function-declaration. bug #900396 + foo + # FreeBSD function, bug #932822 + aio_readv +) + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + elif use verify-sig ; then + # Needed for downloaded patch (which is unsigned, which is fine) + verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.bz2{,.asc} + fi + + default +} + +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 + + if [[ ${PV} != 9999 && -d "${WORKDIR}"/${VALGRIND_PATCH_TARBALL} ]] ; then + PATCHES+=( "${WORKDIR}"/${VALGRIND_PATCH_TARBALL} ) + fi + + default + + eautoreconf +} + +src_configure() { + local myconf=( + --with-gdbscripts-dir="${EPREFIX}"/usr/share/gdb/auto-load + ) + + tc-is-lto && myconf+=( --enable-lto ) + + # 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') + 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 + # -fno-strict-aliasing: https://bugs.kde.org/show_bug.cgi?id=486093 + emake CFLAGS="${CFLAGS} -fno-strict-aliasing" LDFLAGS="${LDFLAGS} -Wl,-z,notext" check +} + +src_install() { + if [[ ${PV} == 9999 ]]; then + # TODO: Could do HTML docs too with 'all-docs' + emake -C docs man-pages FAQ.txt + mv docs/FAQ.txt . || die "Couldn't move FAQ.txt" + fi + + default + + 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" +} |