summaryrefslogtreecommitdiff
path: root/sys-devel
diff options
context:
space:
mode:
Diffstat (limited to 'sys-devel')
-rw-r--r--sys-devel/Manifest.gzbin10656 -> 10641 bytes
-rw-r--r--sys-devel/bc/Manifest5
-rw-r--r--sys-devel/bc/bc-1.07.1-r4.ebuild2
-rw-r--r--sys-devel/bc/bc-1.07.1-r5.ebuild2
-rw-r--r--sys-devel/bc/bc-1.07.1-r6.ebuild84
-rw-r--r--sys-devel/binutils-hppa64/Manifest9
-rw-r--r--sys-devel/binutils-hppa64/binutils-hppa64-2.37_p1-r2.ebuild2
-rw-r--r--sys-devel/binutils-hppa64/binutils-hppa64-2.38-r2.ebuild2
-rw-r--r--sys-devel/binutils-hppa64/binutils-hppa64-2.39-r1.ebuild479
-rw-r--r--sys-devel/binutils-hppa64/binutils-hppa64-2.39-r3.ebuild479
-rw-r--r--sys-devel/binutils-hppa64/binutils-hppa64-2.39-r4.ebuild2
-rw-r--r--sys-devel/binutils/Manifest20
-rw-r--r--sys-devel/binutils/binutils-2.32-r2.ebuild2
-rw-r--r--sys-devel/binutils/binutils-2.33.1-r1.ebuild2
-rw-r--r--sys-devel/binutils/binutils-2.34-r2.ebuild2
-rw-r--r--sys-devel/binutils/binutils-2.35.2.ebuild2
-rw-r--r--sys-devel/binutils/binutils-2.36.1-r2.ebuild2
-rw-r--r--sys-devel/binutils/binutils-2.37_p1-r2.ebuild2
-rw-r--r--sys-devel/binutils/binutils-2.38-r2.ebuild2
-rw-r--r--sys-devel/binutils/binutils-2.39-r2.ebuild492
-rw-r--r--sys-devel/binutils/binutils-2.39-r4.ebuild2
-rw-r--r--sys-devel/binutils/binutils-9999.ebuild2
-rw-r--r--sys-devel/bison/Manifest1
-rw-r--r--sys-devel/bison/bison-3.8.2-r1.ebuild93
-rw-r--r--sys-devel/elftoolchain/Manifest4
-rw-r--r--sys-devel/elftoolchain/elftoolchain-0.7.1-r2.ebuild4
-rw-r--r--sys-devel/elftoolchain/elftoolchain-0.7.1_p20210319.ebuild4
-rw-r--r--sys-devel/flex/Manifest1
-rw-r--r--sys-devel/flex/flex-2.6.4-r5.ebuild100
-rw-r--r--sys-devel/gdb/Manifest6
-rw-r--r--sys-devel/gdb/gdb-11.2.ebuild2
-rw-r--r--sys-devel/gdb/gdb-12.1-r2.ebuild2
-rw-r--r--sys-devel/gdb/gdb-9999.ebuild2
33 files changed, 320 insertions, 1495 deletions
diff --git a/sys-devel/Manifest.gz b/sys-devel/Manifest.gz
index ae54dbe92b57..a136f7d7dcb7 100644
--- a/sys-devel/Manifest.gz
+++ b/sys-devel/Manifest.gz
Binary files differ
diff --git a/sys-devel/bc/Manifest b/sys-devel/bc/Manifest
index bdadf23939f1..a70d87a59ec4 100644
--- a/sys-devel/bc/Manifest
+++ b/sys-devel/bc/Manifest
@@ -1,6 +1,7 @@
AUX bc-1.07.1-no-ed-its-sed.patch 452 BLAKE2B cb45680860706b3c240593bf8001be836a835cf749c1d1fa95d6821f069e118779d9f05e44d70acdac8d573fc2967eff0f3c6fb3e1e54a4c8d4b6cf657dcc003 SHA512 4e7481895d61edb51dfc40b88e4f37cb492d8566083a55713dac7a66f065ab2357f8f909acd44e34997b2e09c54dffcbd434b731015c1e1d331ff1829687ec07
AUX bc-1.07.1-use-system-bc.patch 556 BLAKE2B 822c525fa2fd90822498fad72b9cda91b2af5d0318fc33e74dd407e3bc2a29c8d12b9cc38e80ebd7f3a084f78e302efe38b44eb70c780b8a2a76895d4d7afddb SHA512 2074adf83ac9d7c2210fc62cc5b98bde3a4f6a4d4e4cb81eb95d32ad7a8432cffc21e11b63a7b3f7090f5b814d739dabfbd6c891ec6f5bf0a9d27ace9d0582d6
DIST bc-1.07.1.tar.gz 419850 BLAKE2B dcedc193be5521aa0fa3a19746233ed65bc1fe8ef12e15155341706de6fbeecb6dd7ee4ab11e2d4b3aca2ae7097cce89e389b3573493bbc893e00b4ed3239594 SHA512 02126d0db6b6ed06d56cfc292d6f5475ff1e574779d7e69c7809bbb1e13f946f57ea07da2a7666baa092507a951a822044b0970075f75eefe65a5c1999b75d34
-EBUILD bc-1.07.1-r4.ebuild 1423 BLAKE2B 7d0c539a9d8ba45d840726578b6d2e7912ebb864667648b251edf9065285c579df3e636c46968f1de43cce4211d4348515542b2eaf578bb82fa0a6bc6a277156 SHA512 08ab30a143a90d036fb11204f44333d9cccc017a534e513c0f10ec07c57b0066904011bed53c391a5620e242bcbe17a21694b98fb7600ca9caa7770605437587
-EBUILD bc-1.07.1-r5.ebuild 1734 BLAKE2B 15d77bd43138145c9c89e7e626ea0d04ee32e099b3c2206c7eef816c7c6c1a069078bcc806f82c02eb0413bc7ecc8444e24ad248799e75eb0f4f8ddba3f9e2b8 SHA512 7e42adbc602406895ec869f4778833a10e2593e4c5d5744defe407aedced597889826b15c62557c3bdffc5e3f7c47f9d66118d640f5e286b345d424ea1c060b7
+EBUILD bc-1.07.1-r4.ebuild 1432 BLAKE2B 89492e405008be632d5bbd1025b82057cae6aea1258093bc7f4d56fd255cfd2d12a7c352232a0b9989b982b7e4e182ee7a75f6f71cfeb91bf8b73f78501a9fdb SHA512 2f9f1e3e4cf74cf15b35c48e24440d6092c73a18c02c107baf7d3daeec3e1e5f11e36c6a40ea6ed1bc0b9ef055133176f353e10a366e285adbd2f0c104c38440
+EBUILD bc-1.07.1-r5.ebuild 1743 BLAKE2B e11a7f8d94232089f725af164c32ce65f3f7e246fbf204671e9e0b4fbcdc7a5f77d668c090e240fa1a2b1f764bb192df64d0d6cdecf65df14b0675da6706f483 SHA512 908902ce0be3d12e0afc37b0f152f7bcd9f6bf681a91a519c7e5cddf2a0ac7aed137e7a4ae9fa6de7b41402d11f3c7bccda03fd7ae8ce6e137b066fa604afbca
+EBUILD bc-1.07.1-r6.ebuild 2162 BLAKE2B fe88d10a81340889ee45c8284bb2eee000fa6453cd7d6695aaa63b9ac6bdc734b3f66c859207855af669c7be5ca11625a77f8293e9e20b7682ca73f61927a43c SHA512 0dbc786156ad3cb504bc67ee7950f04f126f3d9010cdbb36ead356c54974f65644b38bdeaddb4d53024e60515a9cb44e48251ebc77c28fe2b96ac217b0d16b27
MISC metadata.xml 258 BLAKE2B b3ebb9691cf2c860b26172c2fc7ead843959a83806b7c06f4eec2ea349a6d2f39afe2f4b08c09bc7f65d18bece520b8b6306c8c7c2075d653f04b09af43db8fd SHA512 02ab38ca1547c68e87cbcad1dd4bb121e90d1fcca941cbfd29583ea803ed50617aa6a29df11915af5e95d63fc817df2250c7b8189157d705ef86e477d6a1685e
diff --git a/sys-devel/bc/bc-1.07.1-r4.ebuild b/sys-devel/bc/bc-1.07.1-r4.ebuild
index 82f798fc4f69..2ac2c73b3ded 100644
--- a/sys-devel/bc/bc-1.07.1-r4.ebuild
+++ b/sys-devel/bc/bc-1.07.1-r4.ebuild
@@ -23,7 +23,7 @@ RDEPEND="
DEPEND="${RDEPEND}"
BDEPEND="
sys-devel/flex
- virtual/yacc"
+ app-alternatives/yacc"
PATCHES=( "${FILESDIR}"/${PN}-1.07.1-no-ed-its-sed.patch )
diff --git a/sys-devel/bc/bc-1.07.1-r5.ebuild b/sys-devel/bc/bc-1.07.1-r5.ebuild
index 24a75264425a..78eefebc167f 100644
--- a/sys-devel/bc/bc-1.07.1-r5.ebuild
+++ b/sys-devel/bc/bc-1.07.1-r5.ebuild
@@ -23,7 +23,7 @@ RDEPEND="
DEPEND="${RDEPEND}"
BDEPEND="
sys-devel/flex
- virtual/yacc"
+ app-alternatives/yacc"
PATCHES=( "${FILESDIR}"/${PN}-1.07.1-no-ed-its-sed.patch )
diff --git a/sys-devel/bc/bc-1.07.1-r6.ebuild b/sys-devel/bc/bc-1.07.1-r6.ebuild
new file mode 100644
index 000000000000..175d05638d79
--- /dev/null
+++ b/sys-devel/bc/bc-1.07.1-r6.ebuild
@@ -0,0 +1,84 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="Handy console-based calculator utility"
+HOMEPAGE="https://www.gnu.org/software/bc/bc.html"
+SRC_URI="mirror://gnu/bc/${P}.tar.gz"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="libedit readline static"
+
+RDEPEND="
+ !readline? ( libedit? ( dev-libs/libedit:= ) )
+ readline? (
+ sys-libs/readline:=
+ sys-libs/ncurses:=
+ )"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ sys-devel/flex
+ app-alternatives/yacc"
+PDEPEND="app-alternatives/bc"
+
+PATCHES=( "${FILESDIR}"/${PN}-1.07.1-no-ed-its-sed.patch )
+
+src_prepare() {
+ default
+
+ # Avoid bad build tool usage when cross-compiling. Bug #627126
+ tc-is-cross-compiler && eapply "${FILESDIR}"/${PN}-1.07.1-use-system-bc.patch
+}
+
+src_configure() {
+ local myconf=(
+ $(use_with readline)
+ --program-suffix=-reference
+ )
+
+ if use readline ; then
+ myconf+=( --without-libedit )
+ else
+ myconf+=( $(use_with libedit) )
+ fi
+
+ use static && append-ldflags -static
+
+ # The libedit code isn't compatible currently. #830101
+ use libedit && append-flags -fcommon
+
+ # AC_SYS_LARGEFILE in configure.ac would handle this, but we don't patch
+ # autotools otherwise currently. This change has been sent upstream, but
+ # who knows when they'll make another release.
+ append-lfs-flags
+
+ # configure dies with other lexes:
+ # "configure: error: readline works only with flex."
+ export LEX=flex
+
+ econf "${myconf[@]}"
+
+ # Do not regen docs -- configure produces a small fragment that includes
+ # the version info which causes all pages to regen (newer file). Bug #554774
+ touch -r doc doc/* || die
+}
+
+src_compile() {
+ emake AR="$(tc-getAR)"
+}
+
+pkg_postinst() {
+ # ensure to preserve the symlinks before app-alternatives/bc
+ # is installed
+ local x
+ for x in bc dc ; do
+ if [[ ! -h ${EROOT}/usr/bin/${x} ]] ; then
+ ln -s "${x}-reference" "${EROOT}/usr/bin/${x}" || die
+ fi
+ done
+}
diff --git a/sys-devel/binutils-hppa64/Manifest b/sys-devel/binutils-hppa64/Manifest
index b513b8e96cdb..c6383c33fffa 100644
--- a/sys-devel/binutils-hppa64/Manifest
+++ b/sys-devel/binutils-hppa64/Manifest
@@ -2,12 +2,9 @@ DIST binutils-2.37_p1-patches-2.tar.xz 31956 BLAKE2B 39c48628d0e2d7f3a8cf11be391
DIST binutils-2.37_p1.tar.xz 22992196 BLAKE2B a8aa0f386d03a5b1466166ac7c40989c228351ccf0949a9b462b4d4615d70ab7e1a45351299140a42baf39c317b8007733c253eb547ee1dfadb612addde11621 SHA512 46c297ec2a7a5b81d1c6e3f16486a6dc2860a07520fe2dd8871d1eb5160065bbe2cc6b0415d5352bf12284133e5817a4e429e6077182d615e969bd1a8f52ed28
DIST binutils-2.38-patches-4.tar.xz 193852 BLAKE2B 5a83e20008e58464ed563a6817a367e50684c59d08c47345cc546054269c42463d1651441720f865851e4e182e917df1a095c68e64226e0351b64e975d524096 SHA512 6657e547bb02898632cc45a8f1894be098aa7472b6725b65f95393e621abb127e468b4e50310720bf03f7e8d0a68bc2c47af76fc43aaa8f32b2e4a149c0c6290
DIST binutils-2.38.tar.xz 23651408 BLAKE2B 19ede396ec97b88e632aded2f69f4684cc5053109e06c3c4a1934944e3f0ceaa9e4a2604528a440189771f778cb5d75edd510163970eeea31afba87fa256feba SHA512 8bf0b0d193c9c010e0518ee2b2e5a830898af206510992483b427477ed178396cd210235e85fd7bd99a96fc6d5eedbeccbd48317a10f752b7336ada8b2bb826d
-DIST binutils-2.39-patches-4.tar.xz 62880 BLAKE2B 5cc335769d9c88417583ce059c61d0d7655f3ab9ac69647e6e2f65bd3a9dd143fe34c50bb68ab81d4226ddd0e4ef405d7102f67375a672eedc3d01b92b8ef497 SHA512 ef81350979af64cf35800b39982c84657a5c01362c01d221164a43d8f0dd80276c9f052c55d24516fad457e6671a58d467d71b5edd6c1f53fddbdb31172a21ee
DIST binutils-2.39-patches-5.tar.xz 82924 BLAKE2B 2cf75f661989f22270d6afe5f3c543814eb6a331be4493016fa2871e1f10a84a123c1c51e77a19b35e46680b9fe77390cb1532ca40d470a6041fa768fed3ccd7 SHA512 4b5811b4822b3a06f590fc7d082dc0ddf18a6058ac23887254e2ee9bd63c7f06f1636e446152115c7e0b01a6c5298a0d9df6904bd1582e66504ccde80dd1ecbd
DIST binutils-2.39.tar.xz 25167756 BLAKE2B ac6a5296c6586d53eaadcbffc5c399a6d79edf72450b9bb8b3525ce525129cef3d2eb90c85ef3bb3270b5a03b0e1ffb8f0b705f028158726f9777ebb8685066f SHA512 68e038f339a8c21faa19a57bbc447a51c817f47c2e06d740847c6e9cc3396c025d35d5369fa8c3f8b70414757c89f0e577939ddc0d70f283182504920f53b0a3
-EBUILD binutils-hppa64-2.37_p1-r2.ebuild 13250 BLAKE2B f212de7136a4ca923843729776d978b8cb3c1b4b8b860724e90082096562675b90f1a28cc7ca0795107b01e1d3b4a71fab0904d8d24b449bd2de0773acc99e45 SHA512 0f13f09a88dadc7de1e1063bb28dc487fae6fafcdf21bb4be0fd002d8fed1557981334bf5885a21d612b5908044811692e1b3106d0ff4d5d7ff937585704f6d2
-EBUILD binutils-hppa64-2.38-r2.ebuild 13277 BLAKE2B 296b60c5f558a6c425ed914d142b2e7a211066f0b43c9f6e8bd63ba00d24239fe852a12f32764ce2bf2cf94129a6fe3428ee8d608a08a92c61cc2078543d3133 SHA512 17758d608e40428df756fa3e6177eba34e63035031ccaf9b0b28cd4a45f8abbab211e807d7f833960c2338876cec749b4942498b7a8ea8c5e13ea9e3def48707
-EBUILD binutils-hppa64-2.39-r1.ebuild 13278 BLAKE2B 2cc1fb2b74e46669acf21b9d926b49857e8ff43fe98f66377e7df8d95bd3d960d224cdfc8c87cbdc258cea46198d405943f00d12bf9bc2d0a7408816b08d94e7 SHA512 ff6511563043703d74fcfd3084b5fa6d5956473d890b5793d8f3e415915be6c88181305fe963ec393f2bf3e4f255a574fa3c63b0290cdb178c2465e385ae798f
-EBUILD binutils-hppa64-2.39-r3.ebuild 13278 BLAKE2B 29c18793494b0738ecfbca2f1be1c534e2009a1828cfb28d71489aee8f7d3031e31c1ace2d2dff9139362c89d7a4068ade3a94c93a9c12fd078a6976affc8218 SHA512 ff55e744be75f7c3df24c0efec1f216046ce7f3fecc8372b5e60a5efeadac63b508b5a1dbf74a17b383b78c1668c1c7e7b94e64cf720da3336fd350736538ce3
-EBUILD binutils-hppa64-2.39-r4.ebuild 14283 BLAKE2B a942bcac5178a880244e08e35e67ec2b52d3cee8d12b094c676f05daf30cc6d5696c43703952a66b84819555870a1c9c75c0ce77e653dd3576ca3886e4a5e655 SHA512 ae26e71f50a9996b164df4b68f9a831f8845e80feaf0a2276e3efd65438e6b153178fea619f644f69ebac9a2474766417ff9d7b382a0ef25a17e2e2134208783
+EBUILD binutils-hppa64-2.37_p1-r2.ebuild 13259 BLAKE2B 841d27eee4cba161f91dc35ee821a33ff1f19520763580e04cfbcb2cb074e4d85fea903226791bfcf0b1538f0d93de481aa228b40c9d704de29aa82d7e02466f SHA512 ab6f209e66a3bb49dcc4aa8f1940db1616467e14189c6767dc2120ce4611aa8aa2ed9fa5ff2cb8866ff12bdc79ee0ba517940df02c2172554d3811d48b8eae76
+EBUILD binutils-hppa64-2.38-r2.ebuild 13286 BLAKE2B 0ea74ad439d7bc9ba9e4e79b69069f2cd14da3047c6ae4cb98932ce9dadedf5e4992e605d59762034df7aad5b6455d3df4bc994179acc29c53f9bc624a0c6826 SHA512 9bbc89df99cd78d26f5368600524dab466dbdf954b1affa5f5a04f25538b2caa89e8a08a2f514d5381299a0c5a47f200c7024b902e1d1b2c5f24081eb3410954
+EBUILD binutils-hppa64-2.39-r4.ebuild 14292 BLAKE2B 35841ec91601bbec0f9fad99c54201a6fe73d079f5fb18f7fa77d4fccccd0e5efdf7c357b12b957ceccb2e3ea042cbc892ba141749542ad0e01177c305c4e63f SHA512 de48bcf6a01941567c1f4beb6d208a68298e443d7c37d86ce61135d0774acb72104018bcbf5c04d06b1b3eca0564d4032eda2680741272a44b617f8c6d1ede5e
MISC metadata.xml 1004 BLAKE2B 069a799bb001c8c22afecebe6156098546f39e9e03c2ac194172ef6f0f49de976db90bfef03c634cdb696d9484d38bb5f2abb3fcbf7c6cda7cb14a39e5f4a87f SHA512 faa4cb332dd6eeff2ecd4dbfec67693bffcaafba588fb2ef6f64ea5e978c24646d0a555c39983497e660be1cd0518bf15dbc03f89584533f9271d58afb4a3f56
diff --git a/sys-devel/binutils-hppa64/binutils-hppa64-2.37_p1-r2.ebuild b/sys-devel/binutils-hppa64/binutils-hppa64-2.37_p1-r2.ebuild
index d3f797079c97..b8973ce5f5a5 100644
--- a/sys-devel/binutils-hppa64/binutils-hppa64-2.37_p1-r2.ebuild
+++ b/sys-devel/binutils-hppa64/binutils-hppa64-2.37_p1-r2.ebuild
@@ -64,7 +64,7 @@ BDEPEND="
)
nls? ( sys-devel/gettext )
sys-devel/flex
- virtual/yacc
+ app-alternatives/yacc
"
RESTRICT="!test? ( test )"
diff --git a/sys-devel/binutils-hppa64/binutils-hppa64-2.38-r2.ebuild b/sys-devel/binutils-hppa64/binutils-hppa64-2.38-r2.ebuild
index 733c9ae1bf5c..9bc8365ff2fb 100644
--- a/sys-devel/binutils-hppa64/binutils-hppa64-2.38-r2.ebuild
+++ b/sys-devel/binutils-hppa64/binutils-hppa64-2.38-r2.ebuild
@@ -65,7 +65,7 @@ BDEPEND="
)
nls? ( sys-devel/gettext )
sys-devel/flex
- virtual/yacc
+ app-alternatives/yacc
"
RESTRICT="!test? ( test )"
diff --git a/sys-devel/binutils-hppa64/binutils-hppa64-2.39-r1.ebuild b/sys-devel/binutils-hppa64/binutils-hppa64-2.39-r1.ebuild
deleted file mode 100644
index b6e72448d384..000000000000
--- a/sys-devel/binutils-hppa64/binutils-hppa64-2.39-r1.ebuild
+++ /dev/null
@@ -1,479 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-export CTARGET=hppa64-${CHOST#*-}
-
-inherit libtool flag-o-matic gnuconfig multilib strip-linguas toolchain-funcs
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="https://sourceware.org/binutils/"
-
-LICENSE="GPL-3+"
-IUSE="cet default-gold doc +gold multitarget +nls pgo +plugins static-libs test vanilla"
-REQUIRED_USE="default-gold? ( gold )"
-
-# Variables that can be set here (ignored for live ebuilds)
-# PATCH_VER - the patchset version
-# Default: empty, no patching
-# PATCH_BINUTILS_VER - the binutils version in the patchset name
-# - Default: PV
-# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
-# for the patchsets
-
-PATCH_VER=4
-PATCH_DEV=dilfridge
-
-if [[ ${PV} == 9999* ]]; then
- inherit git-r3
- SLOT=${PV}
-else
- PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
- PATCH_DEV=${PATCH_DEV:-dilfridge}
- SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PV}.tar.xz"
- [[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
- https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
- SLOT=$(ver_cut 1-2)
- KEYWORDS="-* ~hppa"
-fi
-
-#
-# The cross-compile logic
-#
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} ]] ; then
- if [[ ${CATEGORY} == cross-* ]] ; then
- export CTARGET=${CATEGORY#cross-}
- fi
-fi
-is_cross() { [[ ${CHOST} != ${CTARGET} ]] ; }
-
-#
-# The dependencies
-#
-RDEPEND="
- >=sys-devel/binutils-config-3
- sys-libs/zlib
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- doc? ( sys-apps/texinfo )
- test? (
- dev-util/dejagnu
- sys-devel/bc
- )
- nls? ( sys-devel/gettext )
- sys-devel/flex
- virtual/yacc
-"
-
-RESTRICT="!test? ( test )"
-
-MY_BUILDDIR="${WORKDIR}"/build
-S="${WORKDIR}"/${P/-hppa64/}
-
-src_unpack() {
- if [[ ${PV} == 9999* ]] ; then
- EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/toolchain/binutils-patches.git"
- EGIT_CHECKOUT_DIR="${WORKDIR}"/patches-git
- git-r3_src_unpack
- mv patches-git/9999 patch || die
-
- S="${WORKDIR}"/binutils
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- EGIT_CHECKOUT_DIR="${S}"
- git-r3_src_unpack
- else
- unpack ${P/-hppa64/}.tar.xz
-
- cd "${WORKDIR}" || die
- unpack binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz
-
- # _p patch versions are Gentoo specific tarballs ...
- local dir=${P%_p?}
- dir=${dir/-hppa64/}
-
- S="${WORKDIR}"/${dir}
- fi
-
- cd "${WORKDIR}" || die
- mkdir -p "${MY_BUILDDIR}" || die
-}
-
-src_prepare() {
- local patchsetname
- if [[ ${PV} == 9999* ]] ; then
- patchsetname="from git master"
- else
- patchsetname="${PATCH_BINUTILS_VER}-${PATCH_VER}"
- fi
-
- if [[ -n ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
- if ! use vanilla; then
- einfo "Applying binutils patchset ${patchsetname}"
- eapply "${WORKDIR}/patch"
- einfo "Done."
- fi
- fi
-
- # Make sure our explicit libdir paths don't get clobbered, bug #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible, bug #122216
- if [[ -e ${FILESDIR}/binutils-configure-LANG.patch ]] ; then
- einfo "Fixing misc issues in configure files"
- for f in $(find "${S}" -name configure -exec grep -l 'autoconf version 2.13' {} +) ; do
- ebegin " Updating ${f/${S}\/}"
- patch "${f}" "${FILESDIR}"/binutils-configure-LANG.patch >& "${T}"/configure-patch.log \
- || eerror "Please file a bug about this"
- eend $?
- done
- fi
-
- # Apply things from PATCHES and user dirs
- default
-
- # Run misc portage update scripts
- gnuconfig_update
- elibtoolize --portage --no-uclibc
-}
-
-toolchain-binutils_bugurl() {
- printf "https://bugs.gentoo.org/"
-}
-toolchain-binutils_pkgversion() {
- printf "Gentoo ${PV}"
- [[ -n ${PATCH_VER} ]] && printf " p${PATCH_VER}"
-}
-
-src_configure() {
- # See https://www.gnu.org/software/make/manual/html_node/Parallel-Output.html
- # Avoid really confusing logs from subconfigure spam, makes logs far
- # more legible.
- MAKEOPTS="--output-sync=line ${MAKEOPTS}"
-
- # Setup some paths
- LIBPATH=/usr/$(get_libdir)/binutils/${CTARGET}/${PV}
- INCPATH=${LIBPATH}/include
- DATAPATH=/usr/share/binutils-data/${CTARGET}/${PV}
- if is_cross ; then
- TOOLPATH=/usr/${CHOST}/${CTARGET}
- else
- TOOLPATH=/usr/${CTARGET}
- fi
- BINPATH=${TOOLPATH}/binutils-bin/${PV}
-
- # Make sure we filter $LINGUAS so that only ones that
- # actually work make it through, bug #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}" || die
- local myconf=()
-
- if use plugins ; then
- myconf+=( --enable-plugins )
- fi
- # enable gold (installed as ld.gold) and ld's plugin architecture
- if use gold ; then
- myconf+=( --enable-gold )
- if use default-gold; then
- myconf+=( --enable-gold=default )
- fi
- fi
-
- if use nls ; then
- myconf+=( --without-included-gettext )
- else
- myconf+=( --disable-nls )
- fi
-
- myconf+=( --with-system-zlib )
-
- # For bi-arch systems, enable a 64bit bfd. This matches the bi-arch
- # logic in toolchain.eclass. bug #446946
- #
- # We used to do it for everyone, but it's slow on 32bit arches. bug #438522
- case $(tc-arch) in
- ppc|sparc|x86) myconf+=( --enable-64-bit-bfd ) ;;
- esac
-
- use multitarget && myconf+=( --enable-targets=all --enable-64-bit-bfd )
-
- [[ -n ${CBUILD} ]] && myconf+=( --build=${CBUILD} )
-
- is_cross && myconf+=(
- --with-sysroot="${EPREFIX}"/usr/${CTARGET}
- --enable-poison-system-directories
- )
-
- myconf+=( --enable-secureplt )
-
- # mips can't do hash-style=gnu ...
- if [[ $(tc-arch) != mips ]] ; then
- myconf+=( --enable-default-hash-style=gnu )
- fi
-
- myconf+=(
- --prefix="${EPREFIX}"/usr
- --host=${CHOST}
- --target=${CTARGET}
- --datadir="${EPREFIX}"${DATAPATH}
- --datarootdir="${EPREFIX}"${DATAPATH}
- --infodir="${EPREFIX}"${DATAPATH}/info
- --mandir="${EPREFIX}"${DATAPATH}/man
- --bindir="${EPREFIX}"${BINPATH}
- --libdir="${EPREFIX}"${LIBPATH}
- --libexecdir="${EPREFIX}"${LIBPATH}
- --includedir="${EPREFIX}"${INCPATH}
- --enable-obsolete
- --enable-shared
- --enable-threads
- # Newer versions (>=2.27) offer a configure flag now.
- --enable-relro
- # Newer versions (>=2.24) make this an explicit option, bug #497268
- --enable-install-libiberty
- # Available from 2.35 on
- --enable-textrel-check=warning
- # Works better than vapier's patch., bug #808787
- --enable-new-dtags
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- # Disable modules that are in a combined binutils/gdb tree. bug #490566
- --disable-{gdb,libdecnumber,readline,sim}
- # Strip out broken static link flags.
- # https://gcc.gnu.org/PR56750
- --without-stage1-ldflags
- # Change SONAME to avoid conflict across
- # {native,cross}/binutils, binutils-libs. bug #666100
- --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
-
- # avoid automagic dependency on (currently prefix) systems
- # systems with debuginfod library, bug #754753
- --without-debuginfod
-
- # Allow user to opt into CET for host libraries.
- # Ideally we would like automagic-or-disabled here.
- # But the check does not quite work on i686: bug #760926.
- $(use_enable cet)
-
- )
-
- if ! is_cross ; then
- # No LTO for HPPA64 right now as we don't build kgcc64 with LTO support.
- myconf+=( $(use_enable pgo pgo-build) )
-
- if use pgo ; then
- export BUILD_CFLAGS="${CFLAGS}"
- fi
- fi
-
- ECONF_SOURCE="${S}" econf "${myconf[@]}" || die
-
- # Prevent makeinfo from running if doc is unset.
- if ! use doc ; then
- sed -i \
- -e '/^MAKEINFO/s:=.*:= true:' \
- Makefile || die
- fi
-}
-
-src_compile() {
- cd "${MY_BUILDDIR}" || die
-
- # see Note [tooldir hack for ldscripts]
- emake V=1 tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake V=1 info
- fi
-
- # we nuke the manpages when we're left with junk
- # (like when we bootstrap, no perl -> no manpages)
- find . -name '*.1' -a -size 0 -delete
-}
-
-src_test() {
- cd "${MY_BUILDDIR}" || die
-
- # bug #637066
- filter-flags -Wall -Wreturn-type
-
- emake -k V=1 check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}" || die
-
- # see Note [tooldir hack for ldscripts]
- emake V=1 DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin || die
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH}, bug #171905
- cd "${ED}"/${LIBPATH} || die
- for d in ../* ; do
- [[ ${d} == ../${PV} ]] && continue
- mv ${d}/* . || die
- rmdir ${d} || die
- done
-
- # Now we collect everything intp the proper SLOT-ed dirs
- # When something is built to cross-compile, it installs into
- # /usr/$CHOST/ by default ... we have to 'fix' that :)
- if is_cross ; then
- cd "${ED}"/${BINPATH} || die
- for x in * ; do
- mv ${x} ${x/${CTARGET}-} || die
- done
-
- if [[ -d ${ED}/usr/${CHOST}/${CTARGET} ]] ; then
- # No die for now, dies on hppa?
- mv "${ED}"/usr/${CHOST}/${CTARGET}/include "${ED}"/${INCPATH}
- mv "${ED}"/usr/${CHOST}/${CTARGET}/lib/* "${ED}"/${LIBPATH}/
- rm -r "${ED}"/usr/${CHOST}/{include,lib}
- fi
- fi
-
- insinto ${INCPATH}
- local libiberty_headers=(
- # Not all the libiberty headers. See libiberty/Makefile.in:install_to_libdir.
- demangle.h
- dyn-string.h
- fibheap.h
- hashtab.h
- libiberty.h
- objalloc.h
- splay-tree.h
- )
- doins "${libiberty_headers[@]/#/${S}/include/}"
- if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
- # TODO: add || die here, fails on hppa?
- mv "${ED}"/${LIBPATH}/lib/* "${ED}"/${LIBPATH}/
- rm -r "${ED}"/${LIBPATH}/lib
- fi
-
- # Generate an env.d entry for this binutils
- insinto /etc/env.d/binutils
- cat <<-EOF > "${T}"/env.d
- TARGET="${CTARGET}"
- VER="${PV}"
- LIBPATH="${EPREFIX}${LIBPATH}"
- EOF
- newins "${T}"/env.d ${CTARGET}-${PV}
-
- # Handle documentation
- if ! is_cross ; then
- cd "${S}" || die
- dodoc README
-
- docinto bfd
- dodoc bfd/ChangeLog* bfd/README bfd/PORTING bfd/TODO
-
- docinto binutils
- dodoc binutils/ChangeLog binutils/NEWS binutils/README
-
- docinto gas
- dodoc gas/ChangeLog* gas/CONTRIBUTORS gas/NEWS gas/README*
-
- docinto gprof
- dodoc gprof/ChangeLog* gprof/TEST gprof/TODO gprof/bbconv.pl
-
- docinto ld
- dodoc ld/ChangeLog* ld/README ld/NEWS ld/TODO
-
- docinto libiberty
- dodoc libiberty/ChangeLog* libiberty/README
-
- docinto opcodes
- dodoc opcodes/ChangeLog*
- fi
-
- # Remove shared info pages
- rm -f "${ED}"/${DATAPATH}/info/{dir,configure.info,standards.info} || die
-
- # Trim all empty dirs
- find "${ED}" -depth -type d -exec rmdir {} + 2>/dev/null
-
- # the hppa64 hack; this should go into 9999 as a PN-conditional
- # tweak the default fake list a little bit
- cd "${D}"/etc/env.d/binutils
- sed -i '/FAKE_TARGETS=/s:"$: hppa64-linux":' ${CTARGET}-${PV} || die
-}
-
-pkg_postinst() {
- # Make sure this ${CTARGET} has a binutils version selected
- [[ -e ${EROOT}/etc/env.d/binutils/config-${CTARGET} ]] && return 0
- binutils-config ${CTARGET}-${PV}
-}
-
-pkg_postrm() {
- local current_profile=$(binutils-config -c ${CTARGET})
-
- # If no other versions exist, then uninstall for this
- # target ... otherwise, switch to the newest version
- # Note: only do this if this version is unmerged. We
- # rerun binutils-config if this is a remerge, as
- # we want the mtimes on the symlinks updated (if
- # it is the same as the current selected profile)
- if [[ ! -e ${EPREFIX}${BINPATH}/ld ]] && [[ ${current_profile} == ${CTARGET}-${PV} ]] ; then
- local choice=$(binutils-config -l | grep ${CTARGET} | awk '{print $2}')
- choice=${choice//$'\n'/ }
- choice=${choice/* }
- if [[ -z ${choice} ]] ; then
- binutils-config -u ${CTARGET}
- else
- binutils-config ${choice}
- fi
- elif [[ $(CHOST=${CTARGET} binutils-config -c) == ${CTARGET}-${PV} ]] ; then
- binutils-config ${CTARGET}-${PV}
- fi
-}
-
-# Note [slotting support]
-# -----------------------
-# Gentoo's layout for binutils files is non-standard as Gentoo
-# supports slotted installation for binutils. Many tools
-# still expect binutils to reside in known locations.
-# binutils-config package restores symlinks into known locations,
-# like:
-# /usr/bin/${CTARGET}-<tool>
-# /usr/bin/${CHOST}/${CTARGET}/lib/ldscrips
-# /usr/include/
-#
-# Note [tooldir hack for ldscripts]
-# ---------------------------------
-# Build system does not allow ./configure to tweak every location
-# we need for slotting binutils hence all the shuffling in
-# src_install(). This note is about SCRIPTDIR define handling.
-#
-# SCRIPTDIR defines 'ldscripts/' directory location. SCRIPTDIR value
-# is set at build-time in ld/Makefile.am as: 'scriptdir = $(tooldir)/lib'
-# and hardcoded as -DSCRIPTDIR='"$(scriptdir)"' at compile time.
-# Thus we can't just move files around after compilation finished.
-#
-# Our goal is the following:
-# - at build-time set scriptdir to point to symlinked location:
-# ${TOOLPATH}: /usr/${CHOST} (or /usr/${CHOST}/${CTARGET} for cross-case)
-# - at install-time set scriptdir to point to slotted location:
-# ${LIBPATH}: /usr/$(get_libdir)/binutils/${CTARGET}/${PV}
diff --git a/sys-devel/binutils-hppa64/binutils-hppa64-2.39-r3.ebuild b/sys-devel/binutils-hppa64/binutils-hppa64-2.39-r3.ebuild
deleted file mode 100644
index e1508bce3ca7..000000000000
--- a/sys-devel/binutils-hppa64/binutils-hppa64-2.39-r3.ebuild
+++ /dev/null
@@ -1,479 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-export CTARGET=hppa64-${CHOST#*-}
-
-inherit libtool flag-o-matic gnuconfig multilib strip-linguas toolchain-funcs
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="https://sourceware.org/binutils/"
-
-LICENSE="GPL-3+"
-IUSE="cet default-gold doc +gold multitarget +nls pgo +plugins static-libs test vanilla"
-REQUIRED_USE="default-gold? ( gold )"
-
-# Variables that can be set here (ignored for live ebuilds)
-# PATCH_VER - the patchset version
-# Default: empty, no patching
-# PATCH_BINUTILS_VER - the binutils version in the patchset name
-# - Default: PV
-# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
-# for the patchsets
-
-PATCH_VER=5
-PATCH_DEV=dilfridge
-
-if [[ ${PV} == 9999* ]]; then
- inherit git-r3
- SLOT=${PV}
-else
- PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
- PATCH_DEV=${PATCH_DEV:-dilfridge}
- SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PV}.tar.xz"
- [[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
- https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
- SLOT=$(ver_cut 1-2)
- KEYWORDS="-* ~hppa"
-fi
-
-#
-# The cross-compile logic
-#
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} ]] ; then
- if [[ ${CATEGORY} == cross-* ]] ; then
- export CTARGET=${CATEGORY#cross-}
- fi
-fi
-is_cross() { [[ ${CHOST} != ${CTARGET} ]] ; }
-
-#
-# The dependencies
-#
-RDEPEND="
- >=sys-devel/binutils-config-3
- sys-libs/zlib
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- doc? ( sys-apps/texinfo )
- test? (
- dev-util/dejagnu
- sys-devel/bc
- )
- nls? ( sys-devel/gettext )
- sys-devel/flex
- virtual/yacc
-"
-
-RESTRICT="!test? ( test )"
-
-MY_BUILDDIR="${WORKDIR}"/build
-S="${WORKDIR}"/${P/-hppa64/}
-
-src_unpack() {
- if [[ ${PV} == 9999* ]] ; then
- EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/toolchain/binutils-patches.git"
- EGIT_CHECKOUT_DIR="${WORKDIR}"/patches-git
- git-r3_src_unpack
- mv patches-git/9999 patch || die
-
- S="${WORKDIR}"/binutils
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- EGIT_CHECKOUT_DIR="${S}"
- git-r3_src_unpack
- else
- unpack ${P/-hppa64/}.tar.xz
-
- cd "${WORKDIR}" || die
- unpack binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz
-
- # _p patch versions are Gentoo specific tarballs ...
- local dir=${P%_p?}
- dir=${dir/-hppa64/}
-
- S="${WORKDIR}"/${dir}
- fi
-
- cd "${WORKDIR}" || die
- mkdir -p "${MY_BUILDDIR}" || die
-}
-
-src_prepare() {
- local patchsetname
- if [[ ${PV} == 9999* ]] ; then
- patchsetname="from git master"
- else
- patchsetname="${PATCH_BINUTILS_VER}-${PATCH_VER}"
- fi
-
- if [[ -n ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
- if ! use vanilla; then
- einfo "Applying binutils patchset ${patchsetname}"
- eapply "${WORKDIR}/patch"
- einfo "Done."
- fi
- fi
-
- # Make sure our explicit libdir paths don't get clobbered, bug #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible, bug #122216
- if [[ -e ${FILESDIR}/binutils-configure-LANG.patch ]] ; then
- einfo "Fixing misc issues in configure files"
- for f in $(find "${S}" -name configure -exec grep -l 'autoconf version 2.13' {} +) ; do
- ebegin " Updating ${f/${S}\/}"
- patch "${f}" "${FILESDIR}"/binutils-configure-LANG.patch >& "${T}"/configure-patch.log \
- || eerror "Please file a bug about this"
- eend $?
- done
- fi
-
- # Apply things from PATCHES and user dirs
- default
-
- # Run misc portage update scripts
- gnuconfig_update
- elibtoolize --portage --no-uclibc
-}
-
-toolchain-binutils_bugurl() {
- printf "https://bugs.gentoo.org/"
-}
-toolchain-binutils_pkgversion() {
- printf "Gentoo ${PV}"
- [[ -n ${PATCH_VER} ]] && printf " p${PATCH_VER}"
-}
-
-src_configure() {
- # See https://www.gnu.org/software/make/manual/html_node/Parallel-Output.html
- # Avoid really confusing logs from subconfigure spam, makes logs far
- # more legible.
- MAKEOPTS="--output-sync=line ${MAKEOPTS}"
-
- # Setup some paths
- LIBPATH=/usr/$(get_libdir)/binutils/${CTARGET}/${PV}
- INCPATH=${LIBPATH}/include
- DATAPATH=/usr/share/binutils-data/${CTARGET}/${PV}
- if is_cross ; then
- TOOLPATH=/usr/${CHOST}/${CTARGET}
- else
- TOOLPATH=/usr/${CTARGET}
- fi
- BINPATH=${TOOLPATH}/binutils-bin/${PV}
-
- # Make sure we filter $LINGUAS so that only ones that
- # actually work make it through, bug #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}" || die
- local myconf=()
-
- if use plugins ; then
- myconf+=( --enable-plugins )
- fi
- # enable gold (installed as ld.gold) and ld's plugin architecture
- if use gold ; then
- myconf+=( --enable-gold )
- if use default-gold; then
- myconf+=( --enable-gold=default )
- fi
- fi
-
- if use nls ; then
- myconf+=( --without-included-gettext )
- else
- myconf+=( --disable-nls )
- fi
-
- myconf+=( --with-system-zlib )
-
- # For bi-arch systems, enable a 64bit bfd. This matches the bi-arch
- # logic in toolchain.eclass. bug #446946
- #
- # We used to do it for everyone, but it's slow on 32bit arches. bug #438522
- case $(tc-arch) in
- ppc|sparc|x86) myconf+=( --enable-64-bit-bfd ) ;;
- esac
-
- use multitarget && myconf+=( --enable-targets=all --enable-64-bit-bfd )
-
- [[ -n ${CBUILD} ]] && myconf+=( --build=${CBUILD} )
-
- is_cross && myconf+=(
- --with-sysroot="${EPREFIX}"/usr/${CTARGET}
- --enable-poison-system-directories
- )
-
- myconf+=( --enable-secureplt )
-
- # mips can't do hash-style=gnu ...
- if [[ $(tc-arch) != mips ]] ; then
- myconf+=( --enable-default-hash-style=gnu )
- fi
-
- myconf+=(
- --prefix="${EPREFIX}"/usr
- --host=${CHOST}
- --target=${CTARGET}
- --datadir="${EPREFIX}"${DATAPATH}
- --datarootdir="${EPREFIX}"${DATAPATH}
- --infodir="${EPREFIX}"${DATAPATH}/info
- --mandir="${EPREFIX}"${DATAPATH}/man
- --bindir="${EPREFIX}"${BINPATH}
- --libdir="${EPREFIX}"${LIBPATH}
- --libexecdir="${EPREFIX}"${LIBPATH}
- --includedir="${EPREFIX}"${INCPATH}
- --enable-obsolete
- --enable-shared
- --enable-threads
- # Newer versions (>=2.27) offer a configure flag now.
- --enable-relro
- # Newer versions (>=2.24) make this an explicit option, bug #497268
- --enable-install-libiberty
- # Available from 2.35 on
- --enable-textrel-check=warning
- # Works better than vapier's patch., bug #808787
- --enable-new-dtags
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- # Disable modules that are in a combined binutils/gdb tree. bug #490566
- --disable-{gdb,libdecnumber,readline,sim}
- # Strip out broken static link flags.
- # https://gcc.gnu.org/PR56750
- --without-stage1-ldflags
- # Change SONAME to avoid conflict across
- # {native,cross}/binutils, binutils-libs. bug #666100
- --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
-
- # avoid automagic dependency on (currently prefix) systems
- # systems with debuginfod library, bug #754753
- --without-debuginfod
-
- # Allow user to opt into CET for host libraries.
- # Ideally we would like automagic-or-disabled here.
- # But the check does not quite work on i686: bug #760926.
- $(use_enable cet)
-
- )
-
- if ! is_cross ; then
- # No LTO for HPPA64 right now as we don't build kgcc64 with LTO support.
- myconf+=( $(use_enable pgo pgo-build) )
-
- if use pgo ; then
- export BUILD_CFLAGS="${CFLAGS}"
- fi
- fi
-
- ECONF_SOURCE="${S}" econf "${myconf[@]}" || die
-
- # Prevent makeinfo from running if doc is unset.
- if ! use doc ; then
- sed -i \
- -e '/^MAKEINFO/s:=.*:= true:' \
- Makefile || die
- fi
-}
-
-src_compile() {
- cd "${MY_BUILDDIR}" || die
-
- # see Note [tooldir hack for ldscripts]
- emake V=1 tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake V=1 info
- fi
-
- # we nuke the manpages when we're left with junk
- # (like when we bootstrap, no perl -> no manpages)
- find . -name '*.1' -a -size 0 -delete
-}
-
-src_test() {
- cd "${MY_BUILDDIR}" || die
-
- # bug #637066
- filter-flags -Wall -Wreturn-type
-
- emake -k V=1 check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}" || die
-
- # see Note [tooldir hack for ldscripts]
- emake V=1 DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin || die
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH}, bug #171905
- cd "${ED}"/${LIBPATH} || die
- for d in ../* ; do
- [[ ${d} == ../${PV} ]] && continue
- mv ${d}/* . || die
- rmdir ${d} || die
- done
-
- # Now we collect everything intp the proper SLOT-ed dirs
- # When something is built to cross-compile, it installs into
- # /usr/$CHOST/ by default ... we have to 'fix' that :)
- if is_cross ; then
- cd "${ED}"/${BINPATH} || die
- for x in * ; do
- mv ${x} ${x/${CTARGET}-} || die
- done
-
- if [[ -d ${ED}/usr/${CHOST}/${CTARGET} ]] ; then
- # No die for now, dies on hppa?
- mv "${ED}"/usr/${CHOST}/${CTARGET}/include "${ED}"/${INCPATH}
- mv "${ED}"/usr/${CHOST}/${CTARGET}/lib/* "${ED}"/${LIBPATH}/
- rm -r "${ED}"/usr/${CHOST}/{include,lib}
- fi
- fi
-
- insinto ${INCPATH}
- local libiberty_headers=(
- # Not all the libiberty headers. See libiberty/Makefile.in:install_to_libdir.
- demangle.h
- dyn-string.h
- fibheap.h
- hashtab.h
- libiberty.h
- objalloc.h
- splay-tree.h
- )
- doins "${libiberty_headers[@]/#/${S}/include/}"
- if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
- # TODO: add || die here, fails on hppa?
- mv "${ED}"/${LIBPATH}/lib/* "${ED}"/${LIBPATH}/
- rm -r "${ED}"/${LIBPATH}/lib
- fi
-
- # Generate an env.d entry for this binutils
- insinto /etc/env.d/binutils
- cat <<-EOF > "${T}"/env.d
- TARGET="${CTARGET}"
- VER="${PV}"
- LIBPATH="${EPREFIX}${LIBPATH}"
- EOF
- newins "${T}"/env.d ${CTARGET}-${PV}
-
- # Handle documentation
- if ! is_cross ; then
- cd "${S}" || die
- dodoc README
-
- docinto bfd
- dodoc bfd/ChangeLog* bfd/README bfd/PORTING bfd/TODO
-
- docinto binutils
- dodoc binutils/ChangeLog binutils/NEWS binutils/README
-
- docinto gas
- dodoc gas/ChangeLog* gas/CONTRIBUTORS gas/NEWS gas/README*
-
- docinto gprof
- dodoc gprof/ChangeLog* gprof/TEST gprof/TODO gprof/bbconv.pl
-
- docinto ld
- dodoc ld/ChangeLog* ld/README ld/NEWS ld/TODO
-
- docinto libiberty
- dodoc libiberty/ChangeLog* libiberty/README
-
- docinto opcodes
- dodoc opcodes/ChangeLog*
- fi
-
- # Remove shared info pages
- rm -f "${ED}"/${DATAPATH}/info/{dir,configure.info,standards.info} || die
-
- # Trim all empty dirs
- find "${ED}" -depth -type d -exec rmdir {} + 2>/dev/null
-
- # the hppa64 hack; this should go into 9999 as a PN-conditional
- # tweak the default fake list a little bit
- cd "${D}"/etc/env.d/binutils
- sed -i '/FAKE_TARGETS=/s:"$: hppa64-linux":' ${CTARGET}-${PV} || die
-}
-
-pkg_postinst() {
- # Make sure this ${CTARGET} has a binutils version selected
- [[ -e ${EROOT}/etc/env.d/binutils/config-${CTARGET} ]] && return 0
- binutils-config ${CTARGET}-${PV}
-}
-
-pkg_postrm() {
- local current_profile=$(binutils-config -c ${CTARGET})
-
- # If no other versions exist, then uninstall for this
- # target ... otherwise, switch to the newest version
- # Note: only do this if this version is unmerged. We
- # rerun binutils-config if this is a remerge, as
- # we want the mtimes on the symlinks updated (if
- # it is the same as the current selected profile)
- if [[ ! -e ${EPREFIX}${BINPATH}/ld ]] && [[ ${current_profile} == ${CTARGET}-${PV} ]] ; then
- local choice=$(binutils-config -l | grep ${CTARGET} | awk '{print $2}')
- choice=${choice//$'\n'/ }
- choice=${choice/* }
- if [[ -z ${choice} ]] ; then
- binutils-config -u ${CTARGET}
- else
- binutils-config ${choice}
- fi
- elif [[ $(CHOST=${CTARGET} binutils-config -c) == ${CTARGET}-${PV} ]] ; then
- binutils-config ${CTARGET}-${PV}
- fi
-}
-
-# Note [slotting support]
-# -----------------------
-# Gentoo's layout for binutils files is non-standard as Gentoo
-# supports slotted installation for binutils. Many tools
-# still expect binutils to reside in known locations.
-# binutils-config package restores symlinks into known locations,
-# like:
-# /usr/bin/${CTARGET}-<tool>
-# /usr/bin/${CHOST}/${CTARGET}/lib/ldscrips
-# /usr/include/
-#
-# Note [tooldir hack for ldscripts]
-# ---------------------------------
-# Build system does not allow ./configure to tweak every location
-# we need for slotting binutils hence all the shuffling in
-# src_install(). This note is about SCRIPTDIR define handling.
-#
-# SCRIPTDIR defines 'ldscripts/' directory location. SCRIPTDIR value
-# is set at build-time in ld/Makefile.am as: 'scriptdir = $(tooldir)/lib'
-# and hardcoded as -DSCRIPTDIR='"$(scriptdir)"' at compile time.
-# Thus we can't just move files around after compilation finished.
-#
-# Our goal is the following:
-# - at build-time set scriptdir to point to symlinked location:
-# ${TOOLPATH}: /usr/${CHOST} (or /usr/${CHOST}/${CTARGET} for cross-case)
-# - at install-time set scriptdir to point to slotted location:
-# ${LIBPATH}: /usr/$(get_libdir)/binutils/${CTARGET}/${PV}
diff --git a/sys-devel/binutils-hppa64/binutils-hppa64-2.39-r4.ebuild b/sys-devel/binutils-hppa64/binutils-hppa64-2.39-r4.ebuild
index 01c6d25bfdf4..cd5af5b432c4 100644
--- a/sys-devel/binutils-hppa64/binutils-hppa64-2.39-r4.ebuild
+++ b/sys-devel/binutils-hppa64/binutils-hppa64-2.39-r4.ebuild
@@ -65,7 +65,7 @@ BDEPEND="
)
nls? ( sys-devel/gettext )
sys-devel/flex
- virtual/yacc
+ app-alternatives/yacc
"
RESTRICT="!test? ( test )"
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 5adfb55eb95a..186cab9231e3 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -18,17 +18,15 @@ DIST binutils-2.37_p1-patches-2.tar.xz 31956 BLAKE2B 39c48628d0e2d7f3a8cf11be391
DIST binutils-2.37_p1.tar.xz 22992196 BLAKE2B a8aa0f386d03a5b1466166ac7c40989c228351ccf0949a9b462b4d4615d70ab7e1a45351299140a42baf39c317b8007733c253eb547ee1dfadb612addde11621 SHA512 46c297ec2a7a5b81d1c6e3f16486a6dc2860a07520fe2dd8871d1eb5160065bbe2cc6b0415d5352bf12284133e5817a4e429e6077182d615e969bd1a8f52ed28
DIST binutils-2.38-patches-4.tar.xz 193852 BLAKE2B 5a83e20008e58464ed563a6817a367e50684c59d08c47345cc546054269c42463d1651441720f865851e4e182e917df1a095c68e64226e0351b64e975d524096 SHA512 6657e547bb02898632cc45a8f1894be098aa7472b6725b65f95393e621abb127e468b4e50310720bf03f7e8d0a68bc2c47af76fc43aaa8f32b2e4a149c0c6290
DIST binutils-2.38.tar.xz 23651408 BLAKE2B 19ede396ec97b88e632aded2f69f4684cc5053109e06c3c4a1934944e3f0ceaa9e4a2604528a440189771f778cb5d75edd510163970eeea31afba87fa256feba SHA512 8bf0b0d193c9c010e0518ee2b2e5a830898af206510992483b427477ed178396cd210235e85fd7bd99a96fc6d5eedbeccbd48317a10f752b7336ada8b2bb826d
-DIST binutils-2.39-patches-4.tar.xz 62880 BLAKE2B 5cc335769d9c88417583ce059c61d0d7655f3ab9ac69647e6e2f65bd3a9dd143fe34c50bb68ab81d4226ddd0e4ef405d7102f67375a672eedc3d01b92b8ef497 SHA512 ef81350979af64cf35800b39982c84657a5c01362c01d221164a43d8f0dd80276c9f052c55d24516fad457e6671a58d467d71b5edd6c1f53fddbdb31172a21ee
DIST binutils-2.39-patches-5.tar.xz 82924 BLAKE2B 2cf75f661989f22270d6afe5f3c543814eb6a331be4493016fa2871e1f10a84a123c1c51e77a19b35e46680b9fe77390cb1532ca40d470a6041fa768fed3ccd7 SHA512 4b5811b4822b3a06f590fc7d082dc0ddf18a6058ac23887254e2ee9bd63c7f06f1636e446152115c7e0b01a6c5298a0d9df6904bd1582e66504ccde80dd1ecbd
DIST binutils-2.39.tar.xz 25167756 BLAKE2B ac6a5296c6586d53eaadcbffc5c399a6d79edf72450b9bb8b3525ce525129cef3d2eb90c85ef3bb3270b5a03b0e1ffb8f0b705f028158726f9777ebb8685066f SHA512 68e038f339a8c21faa19a57bbc447a51c817f47c2e06d740847c6e9cc3396c025d35d5369fa8c3f8b70414757c89f0e577939ddc0d70f283182504920f53b0a3
-EBUILD binutils-2.32-r2.ebuild 11938 BLAKE2B 428c753cea3114b7989cc4f23ceff28a021087d07fda9a268a183c5ce89bb7043cefd4379e767115a67354231231668ff79f6c032e5f2c01b990f67bf04c1ccc SHA512 c42dccb27be0ce260d3f1b0e7e59dad7b8de3c95c4c6344ae7007018236255b81c8e36fc75e29888d4bd6ff99c51d9ef44f77ee15cfdebec4fd9e83a5fa5fc69
-EBUILD binutils-2.33.1-r1.ebuild 11674 BLAKE2B fb92231ebf9e3b39d7ccaece8d77053670e76885c0081fa9de93bdc79743c150570325fe157d2906d63a313d515917a4c75ee120082a16c3a6569bb1835165c9 SHA512 f773a86401ded701a46c75ad939537dc429678163a86e55fd7362bd7e95ce196214c34cde070f093f41716d29cf1e581b928c6d6c442bb52666d5e8311486997
-EBUILD binutils-2.34-r2.ebuild 11770 BLAKE2B 7cb3c8bbeb0ae93677d13f8c036a8886e2d5c18263492f6cd3e56479585a4981e097e091458042941ccf0f04cf1221cf51361bde6152d45e3a78c7b9226da570 SHA512 14019b84833a7a626c225174da50efb6537f1e1423614592cb8702015bc201132ef29959d5bf888b54dcda8056317b37ad4000c517b716be78d773ced522e03b
-EBUILD binutils-2.35.2.ebuild 12651 BLAKE2B d97d3cfab222e74e94bdc5d462bf95f9d39cd62ffc686982598a8041b6bda0358ab39fcf4cfdd6fda3b444859db97c39a50971032008dbd982301e1afff94b41 SHA512 6c6820a8206cb8cf5d4df8e1c1e5448e0a3ba77ab067bc49525787beadad464aef27fb04debbfde4720a3a44b02a4206fd4b3c4d18eb19428a7d98254753fd05
-EBUILD binutils-2.36.1-r2.ebuild 12553 BLAKE2B 8ce3d14f6d7cc81e920f7d5a28875a5bcc45b396169afe5a6e4429849eb9b420977f39fd85487d3ef93a2aef838c6122413b7ef5c9f8c6273d9d1b1bf5b4608a SHA512 53935fec45e8241e73c76be22dde5e9576360cb511642bb5fded59515ea0641cbcb7eb6bd6eef2f30d6d4e940cf1869908c96b194ec1f5e9a016664a5c6cf2eb
-EBUILD binutils-2.37_p1-r2.ebuild 13024 BLAKE2B e67ed4a55a9f07ebd064c82901bc6b5e23933f562c8b6258d32649571f38cbc81061fcb886feaa70619d46d47c52cd701745c173ccf060e47c5cfef2d202a8ca SHA512 480b1921ff344b943b1cf2c1ea9960cd5252f8055a4bffc109f096b038d4d1fc2dd670d696ce7217fd1d827eef5c07cc81c7d0886fc554d939535582d5300f26
-EBUILD binutils-2.38-r2.ebuild 13402 BLAKE2B fddf3f8d081a357e1b961dfd2b2d6938bcabc9f3c20564f356753c2618c87728a4acf793bca578a0fb9e9641d0e5e8274ebab7b4a2b40a4125921def0c9f4ef4 SHA512 1820d1745b1985268eeaf00d4e38078c745c5d81b1ac6b9037a1d3ecbc0314aebf26cdb54554cc4c879a4133f4c980e104d32664ea35ac6ad7c9e2d8d33a5cdb
-EBUILD binutils-2.39-r2.ebuild 13885 BLAKE2B dd0fa36e393a831caeb57461242953c6b42ef48473ba8a6ae9f16088a36f99f8a9ec0885fc0664c70e1f55252a4c8ebfbe80241aeddf857bd3458a61a210adcc SHA512 270947482d08b64735821f6cd2ad63c1cb6e03b7296fea1953f7a04e43e3a59e3d7af4bbd1fb42972e2bfa40bb6090b48b827d57470092445af14e1bdd2cd7b5
-EBUILD binutils-2.39-r4.ebuild 13936 BLAKE2B 1c8bb5c4b51f353b53617669c6e371ff55be8ba87c2238d198903ba66fce208ef08d41e5db114e3ccc42573728f2efed0eb0ad7ce1c375bec8436b779941cb11 SHA512 a41cb6719c9180b2d44f6573a017d63856aa6962351345995271e6232ee7d51eaa7bfb82e84cf3b3d996a4a908a2e434fb71dc4a410507c9ded4465d8ab2e0c0
-EBUILD binutils-9999.ebuild 13989 BLAKE2B 51483505f8dbfb31613514eaffc225ed249babaaa0bb28c66baffa2ca92e1ef5df28bba95c62f799e5661bd8bb838155781f76b43646ac154f2f30c085981f64 SHA512 d3e3d7d47d6b5f518c5cdf113e41bb413533ef36e788aadba5f7139dd1c29171c3334a921209906da6e2e0fadfeb5d212a491e2f651aa91b91eaa7d9cc21ebc5
+EBUILD binutils-2.32-r2.ebuild 11947 BLAKE2B 5fcf062f7f17807743e0a722d2b5d84a051cdf72325c6e1c6eca498518e57dd17e6fd7ee76f858b8cee742784e5e5b5682849d7df370595c6626bab2e27f5ac1 SHA512 743d9a8e11e08d22104d7a4e3fe829c0646560ff7e454f00566ff0dcd10d65a2853116a1aaab2ab041fa205d471bfe5fb39dd646d9e046224c7cac0b7e7d335f
+EBUILD binutils-2.33.1-r1.ebuild 11683 BLAKE2B 19ecdb0ed4bba9619e034ff44c615c5deed13e719dc89657b4a0f19acf101c04e63bd9b40d8c19319455e8886c781c8eec08197d338b75f83b5e827257afe01b SHA512 f7a69f3ee714da6dd61b399940a23aa7d2f305eaa9af430e883859757edea4d08790f907de16f607f800044647e864ce8c7662c082fc41e7be007c244d876718
+EBUILD binutils-2.34-r2.ebuild 11779 BLAKE2B a75e8d78049c5946a9b3fead9c57b0549869fd1ec6f3962ea82431bd1ebf0021b6545c7fbb9abb95d5854936deb79e1426c336c9ffbf6f934b481c912c0c5ea5 SHA512 19023e3b7d8036c732125848ebaeb6ccef827e50bcf55e83f314ce0f5028cd7b6ffc56befe92c6474c9b09b0c442763a2e901e58a56957466587637580447ca4
+EBUILD binutils-2.35.2.ebuild 12660 BLAKE2B fa9a02b7f8671ae143fd7b7c57455c14c8fbc852f94a3827d478dfff26a642976ff305a713b1f06b2574b836773b5cc4bbb79ed06504eb84aa638cf211d77b21 SHA512 2d207f5435b7c76be1e91b5c9fd2aad390817c40bd2a66f99470c4e74c5cb1216798124ee374a2c9f0e43036e527922c0a1e8bace4c91c35e7461386c8b1cc91
+EBUILD binutils-2.36.1-r2.ebuild 12562 BLAKE2B a4b167d673eba6363b4b8588b2bf0708fc6658a53442027a61f7f16f22cb7e7239279f531ba13b50fe434841ad51f4ff24f962679d513391c6dbac47d65b6c8e SHA512 001fb6d62e387bcbd19380f3e2b70bf165be9a018d3377c1f697c48bf8323a49d0d65502e98ebb3536f9436259a91f04a7b154870dea1e9f41eeef030c845261
+EBUILD binutils-2.37_p1-r2.ebuild 13033 BLAKE2B 03ea9dff3a46146cd7cbdc717301b0f522d175d196f6d7552bd432be9c6f58ea776b5434e81b4997fa3cc770899258eae750b68eaa9e2238aa5d5f3873ba853e SHA512 de72d5f4b635f78995ae8fe8cc6e99eab9c5755b79f96e462a66f6b1fe8a886ea1cc818a9dcb431e516f8e80d0c3d36b29719805f0bea7e81fc30d4c7a3b3c13
+EBUILD binutils-2.38-r2.ebuild 13411 BLAKE2B e232741b2c698961615d2ea9b0590f7a2ffd9a93981cd913c3789185989f0f96107af2448c9452f46e8b2e445d8cc5e2f8e8649ecce2187c0c78f8251dd0b653 SHA512 464409d4225d308bfba9d549ac7a4a177684f4022a6a65479fb1e028e14cc5030784bda394f7f99568efadcf1c8c372cc1d2246d42ccd020ea5a6226d0fbcfbf
+EBUILD binutils-2.39-r4.ebuild 13945 BLAKE2B 75f0acdd4541f99d79f646051cf1c8f3e2e4a978c6a1d6051a9c082268130eca306762d25e464a27e2ce24f2b0981ce90494a1b7cc95436224096bbf8cc5af3c SHA512 5bde1c17b60caffc76721e008b2a2980beed04da22b9647bdb083d836021ab84fca240adc805b3639a0b676ba4d3a740f5aadcd72024d62bac935fc93bef35bf
+EBUILD binutils-9999.ebuild 13998 BLAKE2B adf97f4a9dfc01597113cc54ff40a2f7e6d2f85644fa91c4d2d8818009be5e28feb8b67a06711e4d209d154ee5d511882a7067f2f4ff767eb3ddaedf8628d817 SHA512 2268ab4cfd953dacec94fa33122e122369cc54fbecaa977dad66c1687024b7ded729a75ee796fa4b890d16a3557352999001d150d804cb4da0e2f51fbe75e376
MISC metadata.xml 889 BLAKE2B 9a627ab3db90639c30e19df93a064f9129d684ffe1176159d526ba7ba2e68c4c2cded8437382ceb97a5e2578fe79583042f6914a2b7650bb777ec1ce6bebd425 SHA512 b691e0335c2b059596557a3943047b0b8e718cc84c4fd885d44fe9887d3d170fce1317ba9949c3921a6e242434a24041777967e67beba911edf6932fe9f3d3cd
diff --git a/sys-devel/binutils/binutils-2.32-r2.ebuild b/sys-devel/binutils/binutils-2.32-r2.ebuild
index 40db4705c2a9..d19fc5bc163c 100644
--- a/sys-devel/binutils/binutils-2.32-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r2.ebuild
@@ -77,7 +77,7 @@ DEPEND="${RDEPEND}
test? ( dev-util/dejagnu )
nls? ( sys-devel/gettext )
sys-devel/flex
- virtual/yacc
+ app-alternatives/yacc
"
RESTRICT="!test? ( test )"
diff --git a/sys-devel/binutils/binutils-2.33.1-r1.ebuild b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
index 785ea17b6542..2fd7c51dacb2 100644
--- a/sys-devel/binutils/binutils-2.33.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
@@ -69,7 +69,7 @@ DEPEND="${RDEPEND}
test? ( dev-util/dejagnu )
nls? ( sys-devel/gettext )
sys-devel/flex
- virtual/yacc
+ app-alternatives/yacc
"
RESTRICT="!test? ( test )"
diff --git a/sys-devel/binutils/binutils-2.34-r2.ebuild b/sys-devel/binutils/binutils-2.34-r2.ebuild
index c61503139101..f135644d0304 100644
--- a/sys-devel/binutils/binutils-2.34-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.34-r2.ebuild
@@ -70,7 +70,7 @@ BDEPEND="
test? ( dev-util/dejagnu )
nls? ( sys-devel/gettext )
sys-devel/flex
- virtual/yacc
+ app-alternatives/yacc
"
RESTRICT="!test? ( test )"
diff --git a/sys-devel/binutils/binutils-2.35.2.ebuild b/sys-devel/binutils/binutils-2.35.2.ebuild
index cdb4d4b87ec3..88e1395e6322 100644
--- a/sys-devel/binutils/binutils-2.35.2.ebuild
+++ b/sys-devel/binutils/binutils-2.35.2.ebuild
@@ -62,7 +62,7 @@ BDEPEND="
)
nls? ( sys-devel/gettext )
sys-devel/flex
- virtual/yacc
+ app-alternatives/yacc
"
RESTRICT="!test? ( test )"
diff --git a/sys-devel/binutils/binutils-2.36.1-r2.ebuild b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
index faa27e272c6c..2231530b7f36 100644
--- a/sys-devel/binutils/binutils-2.36.1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
@@ -62,7 +62,7 @@ BDEPEND="
)
nls? ( sys-devel/gettext )
sys-devel/flex
- virtual/yacc
+ app-alternatives/yacc
"
RESTRICT="!test? ( test )"
diff --git a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
index 6ade635ea8fa..712f1d46b7a1 100644
--- a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
@@ -62,7 +62,7 @@ BDEPEND="
)
nls? ( sys-devel/gettext )
sys-devel/flex
- virtual/yacc
+ app-alternatives/yacc
"
RESTRICT="!test? ( test )"
diff --git a/sys-devel/binutils/binutils-2.38-r2.ebuild b/sys-devel/binutils/binutils-2.38-r2.ebuild
index 658541bd3d7a..401310d2e924 100644
--- a/sys-devel/binutils/binutils-2.38-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.38-r2.ebuild
@@ -62,7 +62,7 @@ BDEPEND="
)
nls? ( sys-devel/gettext )
sys-devel/flex
- virtual/yacc
+ app-alternatives/yacc
"
RESTRICT="!test? ( test )"
diff --git a/sys-devel/binutils/binutils-2.39-r2.ebuild b/sys-devel/binutils/binutils-2.39-r2.ebuild
deleted file mode 100644
index e4e43cdd95f3..000000000000
--- a/sys-devel/binutils/binutils-2.39-r2.ebuild
+++ /dev/null
@@ -1,492 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit libtool flag-o-matic gnuconfig strip-linguas toolchain-funcs
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="https://sourceware.org/binutils/"
-
-LICENSE="GPL-3+"
-IUSE="cet default-gold doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla"
-REQUIRED_USE="default-gold? ( gold )"
-
-# Variables that can be set here (ignored for live ebuilds)
-# PATCH_VER - the patchset version
-# Default: empty, no patching
-# PATCH_BINUTILS_VER - the binutils version in the patchset name
-# - Default: PV
-# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
-# for the patchsets
-
-PATCH_VER=4
-PATCH_DEV=dilfridge
-
-if [[ ${PV} == 9999* ]]; then
- inherit git-r3
- SLOT=${PV}
-else
- PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
- PATCH_DEV=${PATCH_DEV:-dilfridge}
- SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PV}.tar.xz"
- [[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
- https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
- SLOT=$(ver_cut 1-2)
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-fi
-
-#
-# The cross-compile logic
-#
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} ]] ; then
- if [[ ${CATEGORY} == cross-* ]] ; then
- export CTARGET=${CATEGORY#cross-}
- fi
-fi
-is_cross() { [[ ${CHOST} != ${CTARGET} ]] ; }
-
-#
-# The dependencies
-#
-RDEPEND="
- >=sys-devel/binutils-config-3
- sys-libs/zlib
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- doc? ( sys-apps/texinfo )
- test? (
- dev-util/dejagnu
- sys-devel/bc
- )
- nls? ( sys-devel/gettext )
- sys-devel/flex
- virtual/yacc
-"
-
-RESTRICT="!test? ( test )"
-
-MY_BUILDDIR=${WORKDIR}/build
-
-src_unpack() {
- if [[ ${PV} == 9999* ]] ; then
- EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/toolchain/binutils-patches.git"
- EGIT_CHECKOUT_DIR=${WORKDIR}/patches-git
- git-r3_src_unpack
- mv patches-git/9999 patch || die
-
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- git-r3_src_unpack
- else
- unpack ${P/-hppa64/}.tar.xz
-
- cd "${WORKDIR}" || die
- unpack binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz
-
- # _p patch versions are Gentoo specific tarballs ...
- local dir=${P%_p?}
- dir=${dir/-hppa64/}
-
- S=${WORKDIR}/${dir}
- fi
-
- cd "${WORKDIR}" || die
- mkdir -p "${MY_BUILDDIR}" || die
-}
-
-src_prepare() {
- local patchsetname
- if [[ ${PV} == 9999* ]] ; then
- patchsetname="from git master"
- else
- patchsetname="${PATCH_BINUTILS_VER}-${PATCH_VER}"
- fi
-
- if [[ -n ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
- if ! use vanilla; then
- einfo "Applying binutils patchset ${patchsetname}"
- eapply "${WORKDIR}/patch"
- einfo "Done."
- fi
- fi
-
- # Make sure our explicit libdir paths don't get clobbered, bug #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible, bug #122216
- if [[ -e ${FILESDIR}/binutils-configure-LANG.patch ]] ; then
- einfo "Fixing misc issues in configure files"
- for f in $(find "${S}" -name configure -exec grep -l 'autoconf version 2.13' {} +) ; do
- ebegin " Updating ${f/${S}\/}"
- patch "${f}" "${FILESDIR}"/binutils-configure-LANG.patch >& "${T}"/configure-patch.log \
- || eerror "Please file a bug about this"
- eend $?
- done
- fi
-
- # Apply things from PATCHES and user dirs
- default
-
- # Run misc portage update scripts
- gnuconfig_update
- elibtoolize --portage --no-uclibc
-}
-
-toolchain-binutils_bugurl() {
- printf "https://bugs.gentoo.org/"
-}
-toolchain-binutils_pkgversion() {
- printf "Gentoo ${PV}"
- [[ -n ${PATCH_VER} ]] && printf " p${PATCH_VER}"
-}
-
-src_configure() {
- # See https://www.gnu.org/software/make/manual/html_node/Parallel-Output.html
- # Avoid really confusing logs from subconfigure spam, makes logs far
- # more legible.
- MAKEOPTS="--output-sync=line ${MAKEOPTS}"
-
- # Setup some paths
- LIBPATH=/usr/$(get_libdir)/binutils/${CTARGET}/${PV}
- INCPATH=${LIBPATH}/include
- DATAPATH=/usr/share/binutils-data/${CTARGET}/${PV}
- if is_cross ; then
- TOOLPATH=/usr/${CHOST}/${CTARGET}
- else
- TOOLPATH=/usr/${CTARGET}
- fi
- BINPATH=${TOOLPATH}/binutils-bin/${PV}
-
- # Make sure we filter $LINGUAS so that only ones that
- # actually work make it through, bug #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}" || die
- local myconf=()
-
- if use plugins ; then
- myconf+=( --enable-plugins )
- fi
- # enable gold (installed as ld.gold) and ld's plugin architecture
- if use gold ; then
- myconf+=( --enable-gold )
- if use default-gold; then
- myconf+=( --enable-gold=default )
- fi
- fi
-
- if use nls ; then
- myconf+=( --without-included-gettext )
- else
- myconf+=( --disable-nls )
- fi
-
- myconf+=( --with-system-zlib )
-
- # For bi-arch systems, enable a 64bit bfd. This matches the bi-arch
- # logic in toolchain.eclass. bug #446946
- #
- # We used to do it for everyone, but it's slow on 32bit arches. bug #438522
- case $(tc-arch) in
- ppc|sparc|x86) myconf+=( --enable-64-bit-bfd ) ;;
- esac
-
- use multitarget && myconf+=( --enable-targets=all --enable-64-bit-bfd )
-
- [[ -n ${CBUILD} ]] && myconf+=( --build=${CBUILD} )
-
- is_cross && myconf+=(
- --with-sysroot="${EPREFIX}"/usr/${CTARGET}
- --enable-poison-system-directories
- )
-
- myconf+=( --enable-secureplt )
-
- # mips can't do hash-style=gnu ...
- if [[ $(tc-arch) != mips ]] ; then
- myconf+=( --enable-default-hash-style=gnu )
- fi
-
- myconf+=(
- --prefix="${EPREFIX}"/usr
- --host=${CHOST}
- --target=${CTARGET}
- --datadir="${EPREFIX}"${DATAPATH}
- --datarootdir="${EPREFIX}"${DATAPATH}
- --infodir="${EPREFIX}"${DATAPATH}/info
- --mandir="${EPREFIX}"${DATAPATH}/man
- --bindir="${EPREFIX}"${BINPATH}
- --libdir="${EPREFIX}"${LIBPATH}
- --libexecdir="${EPREFIX}"${LIBPATH}
- --includedir="${EPREFIX}"${INCPATH}
- --enable-obsolete
- --enable-shared
- --enable-threads
- # Newer versions (>=2.27) offer a configure flag now.
- --enable-relro
- # Newer versions (>=2.24) make this an explicit option, bug #497268
- --enable-install-libiberty
- # Available from 2.35 on
- --enable-textrel-check=warning
-
- # Available from 2.39 on
- --enable-warn-execstack
- --enable-warn-rwx-segments
- # TODO: Available from 2.39+ on but let's try the warning on for a bit
- # first... (--enable-warn-execstack)
- # Could put it under USE=hardened?
- #--disable-default-execstack (or is it --enable-default-execstack=no? docs are confusing)
-
- # Things to think about
- #--enable-deterministic-archives
-
- # Works better than vapier's patch, bug #808787
- --enable-new-dtags
-
- --disable-jansson
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- # Disable modules that are in a combined binutils/gdb tree, bug #490566
- --disable-{gdb,libdecnumber,readline,sim}
- # Strip out broken static link flags.
- # https://gcc.gnu.org/PR56750
- --without-stage1-ldflags
- # Change SONAME to avoid conflict across
- # {native,cross}/binutils, binutils-libs. bug #666100
- --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
-
- # Avoid automagic dependency on (currently prefix) systems
- # systems with debuginfod library, bug #754753
- --without-debuginfod
-
- # Avoid automagic dev-libs/msgpack dep, bug #865875
- --without-msgpack
-
- # Allow user to opt into CET for host libraries.
- # Ideally we would like automagic-or-disabled here.
- # But the check does not quite work on i686: bug #760926.
- $(use_enable cet)
-
- # We can enable this by default in future, but it's brand new
- # in 2.39 with several bugs:
- # - Doesn't build on musl (https://sourceware.org/bugzilla/show_bug.cgi?id=29477)
- # - No man pages (https://sourceware.org/bugzilla/show_bug.cgi?id=29521)
- # - Broken at runtime without Java (https://sourceware.org/bugzilla/show_bug.cgi?id=29479)
- # - binutils-config (and this ebuild?) needs adaptation first (https://bugs.gentoo.org/865113)
- $(use_enable gprofng)
- )
-
- if ! is_cross ; then
- myconf+=( $(use_enable pgo pgo-build lto) )
-
- if use pgo ; then
- export BUILD_CFLAGS="${CFLAGS}"
- fi
- fi
-
- ECONF_SOURCE="${S}" econf "${myconf[@]}" || die
-
- # Prevent makeinfo from running if doc is unset.
- if ! use doc ; then
- sed -i \
- -e '/^MAKEINFO/s:=.*:= true:' \
- Makefile || die
- fi
-}
-
-src_compile() {
- cd "${MY_BUILDDIR}" || die
-
- # see Note [tooldir hack for ldscripts]
- emake V=1 tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake V=1 info
- fi
-
- # we nuke the manpages when we're left with junk
- # (like when we bootstrap, no perl -> no manpages)
- find . -name '*.1' -a -size 0 -delete
-}
-
-src_test() {
- cd "${MY_BUILDDIR}" || die
-
- # bug #637066
- filter-flags -Wall -Wreturn-type
-
- emake -k V=1 check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}" || die
-
- # see Note [tooldir hack for ldscripts]
- emake V=1 DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin || die
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH}, bug #171905
- cd "${ED}"/${LIBPATH} || die
- for d in ../* ; do
- [[ ${d} == ../${PV} ]] && continue
- mv ${d}/* . || die
- rmdir ${d} || die
- done
-
- # Now we collect everything intp the proper SLOT-ed dirs
- # When something is built to cross-compile, it installs into
- # /usr/$CHOST/ by default ... we have to 'fix' that :)
- if is_cross ; then
- cd "${ED}"/${BINPATH} || die
- for x in * ; do
- mv ${x} ${x/${CTARGET}-} || die
- done
-
- if [[ -d ${ED}/usr/${CHOST}/${CTARGET} ]] ; then
- mv "${ED}"/usr/${CHOST}/${CTARGET}/include "${ED}"/${INCPATH}
- mv "${ED}"/usr/${CHOST}/${CTARGET}/lib/* "${ED}"/${LIBPATH}/
- rm -r "${ED}"/usr/${CHOST}/{include,lib}
- fi
- fi
-
- insinto ${INCPATH}
- local libiberty_headers=(
- # Not all the libiberty headers. See libiberty/Makefile.in:install_to_libdir.
- demangle.h
- dyn-string.h
- fibheap.h
- hashtab.h
- libiberty.h
- objalloc.h
- splay-tree.h
- )
- doins "${libiberty_headers[@]/#/${S}/include/}"
- if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
- mv "${ED}"/${LIBPATH}/lib/* "${ED}"/${LIBPATH}/ || die
- rm -r "${ED}"/${LIBPATH}/lib || die
- fi
-
- # Generate an env.d entry for this binutils
- insinto /etc/env.d/binutils
- cat <<-EOF > "${T}"/env.d
- TARGET="${CTARGET}"
- VER="${PV}"
- LIBPATH="${EPREFIX}${LIBPATH}"
- EOF
- newins "${T}"/env.d ${CTARGET}-${PV}
-
- # Handle documentation
- if ! is_cross ; then
- cd "${S}" || die
- dodoc README
-
- docinto bfd
- dodoc bfd/ChangeLog* bfd/README bfd/PORTING bfd/TODO
-
- docinto binutils
- dodoc binutils/ChangeLog binutils/NEWS binutils/README
-
- docinto gas
- dodoc gas/ChangeLog* gas/CONTRIBUTORS gas/NEWS gas/README*
-
- docinto gprof
- dodoc gprof/ChangeLog* gprof/TEST gprof/TODO gprof/bbconv.pl
-
- docinto ld
- dodoc ld/ChangeLog* ld/README ld/NEWS ld/TODO
-
- docinto libiberty
- dodoc libiberty/ChangeLog* libiberty/README
-
- docinto opcodes
- dodoc opcodes/ChangeLog*
- fi
-
- # Remove shared info pages
- rm -f "${ED}"/${DATAPATH}/info/{dir,configure.info,standards.info}
-
- # Trim all empty dirs
- find "${ED}" -depth -type d -exec rmdir {} + 2>/dev/null
-}
-
-pkg_postinst() {
- # Make sure this ${CTARGET} has a binutils version selected
- [[ -e ${EROOT}/etc/env.d/binutils/config-${CTARGET} ]] && return 0
- binutils-config ${CTARGET}-${PV}
-}
-
-pkg_postrm() {
- local current_profile=$(binutils-config -c ${CTARGET})
-
- # If no other versions exist, then uninstall for this
- # target ... otherwise, switch to the newest version
- # Note: only do this if this version is unmerged. We
- # rerun binutils-config if this is a remerge, as
- # we want the mtimes on the symlinks updated (if
- # it is the same as the current selected profile)
- if [[ ! -e ${EPREFIX}${BINPATH}/ld ]] && [[ ${current_profile} == ${CTARGET}-${PV} ]] ; then
- local choice=$(binutils-config -l | grep ${CTARGET} | awk '{print $2}')
- choice=${choice//$'\n'/ }
- choice=${choice/* }
- if [[ -z ${choice} ]] ; then
- binutils-config -u ${CTARGET}
- else
- binutils-config ${choice}
- fi
- elif [[ $(CHOST=${CTARGET} binutils-config -c) == ${CTARGET}-${PV} ]] ; then
- binutils-config ${CTARGET}-${PV}
- fi
-}
-
-# Note [slotting support]
-# -----------------------
-# Gentoo's layout for binutils files is non-standard as Gentoo
-# supports slotted installation for binutils. Many tools
-# still expect binutils to reside in known locations.
-# binutils-config package restores symlinks into known locations,
-# like:
-# /usr/bin/${CTARGET}-<tool>
-# /usr/bin/${CHOST}/${CTARGET}/lib/ldscrips
-# /usr/include/
-#
-# Note [tooldir hack for ldscripts]
-# ---------------------------------
-# Build system does not allow ./configure to tweak every location
-# we need for slotting binutils hence all the shuffling in
-# src_install(). This note is about SCRIPTDIR define handling.
-#
-# SCRIPTDIR defines 'ldscripts/' directory location. SCRIPTDIR value
-# is set at build-time in ld/Makefile.am as: 'scriptdir = $(tooldir)/lib'
-# and hardcoded as -DSCRIPTDIR='"$(scriptdir)"' at compile time.
-# Thus we can't just move files around after compilation finished.
-#
-# Our goal is the following:
-# - at build-time set scriptdir to point to symlinked location:
-# ${TOOLPATH}: /usr/${CHOST} (or /usr/${CHOST}/${CTARGET} for cross-case)
-# - at install-time set scriptdir to point to slotted location:
-# ${LIBPATH}: /usr/$(get_libdir)/binutils/${CTARGET}/${PV}
diff --git a/sys-devel/binutils/binutils-2.39-r4.ebuild b/sys-devel/binutils/binutils-2.39-r4.ebuild
index 3ac03a449cb4..8a51b198d221 100644
--- a/sys-devel/binutils/binutils-2.39-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.39-r4.ebuild
@@ -63,7 +63,7 @@ BDEPEND="
)
nls? ( sys-devel/gettext )
sys-devel/flex
- virtual/yacc
+ app-alternatives/yacc
"
RESTRICT="!test? ( test )"
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 29f4e844ce60..7897167274ed 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -64,7 +64,7 @@ BDEPEND="
)
nls? ( sys-devel/gettext )
sys-devel/flex
- virtual/yacc
+ app-alternatives/yacc
"
RESTRICT="!test? ( test )"
diff --git a/sys-devel/bison/Manifest b/sys-devel/bison/Manifest
index ab3762053b22..c16fb6160b44 100644
--- a/sys-devel/bison/Manifest
+++ b/sys-devel/bison/Manifest
@@ -3,5 +3,6 @@ DIST bison-3.7.6.tar.xz 2627180 BLAKE2B 2f1015b517e46ff0870378b4d0dd489c8c737f31
DIST bison-3.8.2.tar.xz 2817324 BLAKE2B e211b61494c911f55b72a8b70b5a48cdf4000ce9e675a1f1f52735bb8f57d93a3f8075341451263af9c9c531004907ae2b62b1873e7e4664c2cd26fa3b12271c SHA512 d4d23af6671406e97257892f90651b67f2ab95219831372be032190b7156c10a3435d457857e677445df8b2327aacccc15344acbbc3808a6f332a93cce23b444
DIST bison-3.8.2.tar.xz.sig 195 BLAKE2B b9bd21adb5115d3d3174c94223fbc9cd33afa0e9c1805008e49f77ff154fc2b656d8a9e9503dc5290658ae2948a2ca7c0dbc812f62aec268d8f8bfafb6349096 SHA512 8bb7743ca326e81a6c091b1413e3c09bd43c7eabbb80bac0638ccd52bdf7e3395cce300a86acd95f4637a9ec8a1b0e9a4d3d25d95ab0a8f03e57fd82eb87a7ac
EBUILD bison-3.7.6.ebuild 2434 BLAKE2B 151aa4bdf6746f02d0c5ad4a6132bf1d50b86ff2c9850b5395d99c829efa7f2b67c630bb7c12c7670172c346a7751353a0178a0589349eef5164e018dbac3551 SHA512 eceabaf5749358483b0b34379f2f4738fa4c5e1adaa3c272990b10a97ace8a2f7213ad0ff0357b73eeccc2f950d46b8ce1580db2ccbd225bcd33d95bf7dbdd93
+EBUILD bison-3.8.2-r1.ebuild 2646 BLAKE2B 6bd72f90daf2894a1bcbe1fd8a7329f2d01ef3934f1be07da492064c3c46b5a9a12d3956939e625263d68ba82c1bf47f22ed9553e53ce8d0459a0e863c630f7b SHA512 8d0fbdc6a6a880d8f98db761b053e4be732db4f367417460d03e185da86a83642e6ac36ad4db24011a4a1c5a762bb3db5fcfba686c7494ce300b68407c84f08d
EBUILD bison-3.8.2.ebuild 2683 BLAKE2B 1d8c260254727f4c8d219128f52b40d3652f96c23b1e7467b6437c86b6b170f4e585f51b160f5232002a14fa3420818432a48dacd6d0a7935f7df2b015894901 SHA512 3ae1bfdbb736c5c0ba540efb3a012dc91064423aeaa9d8ca7dd113178d97de5192302d328cb5c783c6a67f0ff78980c8ca4fa4822acc1cd5aaa905edbcb3b7e6
MISC metadata.xml 387 BLAKE2B 68154e64265d54f0d48f427088369e7e4757adbecdb4a33a426940cac3d8680ec902460577d2fca55ad4febdf43b5713a0743051b89e7c7a1f918f5e93974152 SHA512 099f1a7dd7e95828cdd44a082d933637db8ba2a787b11791733615e20852ff43228f0744c65e8e552d15a0bcc874690d2ed53a4a1b564f6e923c12475f1b0708
diff --git a/sys-devel/bison/bison-3.8.2-r1.ebuild b/sys-devel/bison/bison-3.8.2-r1.ebuild
new file mode 100644
index 000000000000..8a3490b4631a
--- /dev/null
+++ b/sys-devel/bison/bison-3.8.2-r1.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/bison.asc
+inherit flag-o-matic verify-sig
+
+DESCRIPTION="A general-purpose (yacc-compatible) parser generator"
+HOMEPAGE="https://www.gnu.org/software/bison/"
+SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
+SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig )"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="examples nls static test"
+RESTRICT="!test? ( test )"
+
+# gettext _IS_ required in RDEPEND because >=bison-3.7 links against
+# libtextstyle.so!!! (see bug #740754)
+DEPEND="
+ >=sys-devel/m4-1.4.16
+ >=sys-devel/gettext-0.21
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ sys-devel/flex
+ test? ( dev-lang/perl )
+ verify-sig? ( sec-keys/openpgp-keys-bison )
+"
+PDEPEND="app-alternatives/yacc"
+
+DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO ) # ChangeLog-2012 ChangeLog-1998 PACKAGING README-alpha README-release
+
+src_prepare() {
+ # Old logic when we needed to patch configure.ac
+ # Keeping in case it's useful for future
+
+ # Record date to avoid 'config.status --recheck' & regen of 'tests/package.m4'
+ #touch -r configure.ac old.configure.ac || die
+ #touch -r configure old.configure || die
+
+ #eapply "${WORKDIR}"/patches
+ #default
+
+ # Restore date after patching
+ #touch -r old.configure.ac configure.ac || die
+ #touch -r old.configure configure || die
+
+ # The makefiles make the man page depend on the configure script
+ # which we patched above. Touch it to prevent regeneration.
+ #touch doc/bison.1 || die #548778 #538300#9
+
+ default
+
+ # Avoid regenerating the info page when the timezone is diff. #574492
+ sed -i '2iexport TZ=UTC' build-aux/mdate-sh || die
+}
+
+src_configure() {
+ use static && append-ldflags -static
+
+ local myeconfargs=(
+ $(use_enable nls)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ # These are owned by app-alternatives/yacc
+ mv "${ED}"/usr/bin/yacc{,.bison} || die
+ mv "${ED}"/usr/share/man/man1/yacc{,.bison}.1 || die
+
+ # We do not need liby.a
+ rm -r "${ED}"/usr/lib* || die
+
+ # Examples are about 200K, so let's make them optional still for now.
+ if ! use examples ; then
+ rm -r "${ED}"/usr/share/doc/${PF}/examples/ || die
+ fi
+}
+
+pkg_postinst() {
+ # ensure to preserve the symlinks before app-alternatives/yacc
+ # is installed
+ if [[ ! -h ${EROOT}/usr/bin/yacc ]]; then
+ ln -s yacc "${EROOT}/usr/bin/yacc.bison" || die
+ fi
+}
diff --git a/sys-devel/elftoolchain/Manifest b/sys-devel/elftoolchain/Manifest
index 70a39ceac776..ceab7c8dd58e 100644
--- a/sys-devel/elftoolchain/Manifest
+++ b/sys-devel/elftoolchain/Manifest
@@ -1,6 +1,6 @@
AUX elftoolchain-0.7.1-fno-common.patch 631 BLAKE2B 8808d37d9a0a92f224501d2e29ac05a19c836d65d0a5628da4c63f8324db126e86ba84d916869f21a01e8997512c4fa7578b68ce8e99f4eb9f4453b8e78ddf54 SHA512 3ae70a0c117dbb4531ff1e7449216dde63d7bc35412d308b295099c85634404ed577ffbb8392f39764a5a139fbb6ca790fd5bb27368c297d5e0b04e259b0b367
DIST elftoolchain-0.7.1.tar.bz2 5361427 BLAKE2B f86204b3c89433948eaf2cd2edc57abf9b77bfab777dc2a840b7aa5fbddfd31665bd27f31d7af2dea09fab0118e201b12802b4da85f8210af29094661f6f1fe5 SHA512 8226c468b393f0d567167a9dd6b16d2a226227e4d05dab8f44550038da44dcbfb92749f8e1a4b130b893675337a6771e24a81f350f3f864b1b8b17402ed23b26
DIST elftoolchain-0.7.1_p20210319.tar.gz 6767324 BLAKE2B c7e068577744fd42a44784e6a2b03ffdaa9dd15e41f4ff2a6d5fd80df24a61a950ff11fa63ebbbaf2c90bc1b19e58f7184a2b883a6f866adcbf0940ad9fca81c SHA512 968d3247e160dd6f90a88e69bf3cb8e6bf2b8216500a0a91699bc2b8d3de22db8f013212813139701e75c3a9eb852bb4c1360e8058f85959e0973e05e4851c8c
-EBUILD elftoolchain-0.7.1-r2.ebuild 1275 BLAKE2B 8a37ec62e7d09051d8a6b794c113dac64bc1986de6e897c4051c864dbf6d8b6ce6bb095dd82e7982afea08c634a26d3c5d912ad685b5dad180946c2ca8a0156f SHA512 40ed6cea81157836c11326fcb414019809feda1cd4b276332f358c1bfe996cdfdd7b4f7ad4b8749e440868a6f22b399bc5292ffad2e62e95dd08f78bcf827a0d
-EBUILD elftoolchain-0.7.1_p20210319.ebuild 1400 BLAKE2B dd0334ee7a4896766e3c53dc134daf6189856b02188ac76a61a74c1f9d4d6a88a52c780d8713c3aa0114df2bebc64402503141857a6aac22c896ff898232f179 SHA512 4f3e065afc8cc228ee05e959cd97d0d6c8add49263643118efbafd09508229628899cfd0b15c33ce8b1e60b55f6c1f4387442658ef4c64c8c2b33b0459243a87
+EBUILD elftoolchain-0.7.1-r2.ebuild 1284 BLAKE2B e20fcbfd53a48d009cf3765e90bb8a3f4cdfba6b6a3b67f377100d0c3a088893b396e848ae2b2b357d979c6ea0234ec8e70a2aa9626699daf18ca22ee7484d75 SHA512 eac78dfecf0a9e62eccfb654a40d2901b981ed8469feedf32b3f9e64a272f04420d0aef78632df347eef2533f61490bc0ad1bdda4e31212afa4ca982a772bb1f
+EBUILD elftoolchain-0.7.1_p20210319.ebuild 1409 BLAKE2B 6efeedadf9fc5fd5f245393d748c36f10908e4a90fe9b2d0b9277519e6fedd0021ff4b0b030a7342cc3d889e7d6728f52ee9854856309fca3f4e1307a59f672a SHA512 b7da735d9aefb64ee22a7ea32e1bd88276efab9b2085720a5deb6200cbd28c52184153fab52aab9d1b615fba5d117fe232bc4ce0d793ddc7c767f24a2ef3ce91
MISC metadata.xml 330 BLAKE2B 4c32c69cf1b4c74599f43613d498b6504acc54bb672015e663d82300652a2ecc16d0fe4f47e561d148de0f6dab1f08812c55bcb3bb3bc2945ab046dab98ba777 SHA512 209d3c4c2901a72c76a2f2f43f69ee488ffe3c99fd45fd8c9342451248405ba7e618b31e5937ac326c509dd3680519e6a4ff582213136a40bc5b8170ea7c155d
diff --git a/sys-devel/elftoolchain/elftoolchain-0.7.1-r2.ebuild b/sys-devel/elftoolchain/elftoolchain-0.7.1-r2.ebuild
index 4eea87b1c581..849d80e9c0e8 100644
--- a/sys-devel/elftoolchain/elftoolchain-0.7.1-r2.ebuild
+++ b/sys-devel/elftoolchain/elftoolchain-0.7.1-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -22,7 +22,7 @@ BDEPEND="
dev-vcs/subversion
sys-apps/lsb-release
>=sys-devel/bmake-20210314-r1
- virtual/yacc"
+ app-alternatives/yacc"
PATCHES=( "${FILESDIR}"/${P}-fno-common.patch )
diff --git a/sys-devel/elftoolchain/elftoolchain-0.7.1_p20210319.ebuild b/sys-devel/elftoolchain/elftoolchain-0.7.1_p20210319.ebuild
index 5c427a1e2119..8d13d4a22fac 100644
--- a/sys-devel/elftoolchain/elftoolchain-0.7.1_p20210319.ebuild
+++ b/sys-devel/elftoolchain/elftoolchain-0.7.1_p20210319.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -26,7 +26,7 @@ BDEPEND="
dev-vcs/subversion
sys-apps/lsb-release
>=sys-devel/bmake-20210314-r1
- virtual/yacc"
+ app-alternatives/yacc"
src_prepare() {
default
diff --git a/sys-devel/flex/Manifest b/sys-devel/flex/Manifest
index 5cfcb49ebe44..e8b4b1e17800 100644
--- a/sys-devel/flex/Manifest
+++ b/sys-devel/flex/Manifest
@@ -5,4 +5,5 @@ DIST flex-2.6.4-autotools-regenerate.patch.xz 282588 BLAKE2B 3995b8b5e354a43b1a4
DIST flex-2.6.4.tar.gz 1419096 BLAKE2B c003d4f764f7f4d41e33af7ee28c2af272a9f0aee6ba7c2494ba96722d8d0b18f7a3f745217e9a2cecb43b6863328267a810280670c04464156b3eb3d7ee9d62 SHA512 e9785f3d620a204b7d20222888917dc065c2036cae28667065bf7862dfa1b25235095a12fd04efdbd09bfd17d3452e6b9ef953a8c1137862ff671c97132a082e
EBUILD flex-2.6.4-r2.ebuild 2326 BLAKE2B 39ec3e1f7392d4705f36a513c6161ddbe147a311d8eecd08e66f1f7ba7cea20dc16b98acc3a280560f66e74766945fc2d47e3ef8d44c1eaac73e0e0c889968b1 SHA512 ed939eea185f0cbc27c2128c3b248494ef66b19f2b6106dce04ab9019a8d9b9d01b40233b44399ba231663938718c76f4ba7eab8b4c8cbedec91180453684126
EBUILD flex-2.6.4-r4.ebuild 2325 BLAKE2B 0c5f118f59417a4d3a53ca54207b16eeca458908ed364981fd848f75b547493200aa83322fd20be3223006fc765c2b8fe9c20ed0c6a5f147e57550d4bdf1146f SHA512 2c151810e4b2f7a935546a609d1ef0fc2b34f83cf68538e647d1d135720bbde99bd88f1cb122a10f62b23648103cb00bdcaf203164dd627febb9e8570089d3c8
+EBUILD flex-2.6.4-r5.ebuild 2525 BLAKE2B f568378f26e3da5037542f8d1fe7214e8a74584e7bc2c739e543848a4ab5db182b0ad9f1e7a866ae0a25c723288980206a1fa87b8b9da54bdd44b2b243bd356c SHA512 e7ecea20c5e014edc81322bc98e3d21d271795656a524b851e70fc3e19f1b0a7ede1a8a79204def93f5f7dfffcee8ab3b88de73a2b29962e121928d8306b03d7
MISC metadata.xml 444 BLAKE2B 28bd0cd35c6ab4386dffdf221e6b43927e47971bea62a0f0395e3cd6725567114675055dc1267ce5ffbd42fe4731a806b4e5666ea6b83ad4bcf4d35b5529ce85 SHA512 53f91d714d7f4401f7d986d743c08a817d794147f9b277d829a4e8065ce91ce00123cd5b42957af60ef9051568a214b7ce791aa8a4baf82a5179859971357d56
diff --git a/sys-devel/flex/flex-2.6.4-r5.ebuild b/sys-devel/flex/flex-2.6.4-r5.ebuild
new file mode 100644
index 000000000000..e064eb4e45ac
--- /dev/null
+++ b/sys-devel/flex/flex-2.6.4-r5.ebuild
@@ -0,0 +1,100 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic libtool multilib-minimal toolchain-funcs
+
+DESCRIPTION="The Fast Lexical Analyzer"
+HOMEPAGE="https://github.com/westes/flex"
+SRC_URI="https://github.com/westes/${PN}/releases/download/v${PV}/${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-autotools-regenerate.patch.xz"
+
+LICENSE="FLEX"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="nls static test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="sys-devel/m4"
+# We want bison explicitly and not yacc in general, bug #381273
+BDEPEND="
+ ${RDEPEND}
+ nls? ( sys-devel/gettext )
+ test? ( sys-devel/bison )
+"
+PDEPEND="app-alternatives/lex"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-libobjdir.patch
+ "${FILESDIR}"/${P}-fix-build-with-glibc2.26.patch
+
+ "${WORKDIR}"/${P}-autotools-regenerate.patch
+)
+
+src_prepare() {
+ default
+
+ # Drop on next release when we can remove ${P}-autotools-regenerate.patch
+ touch configure.ac aclocal.m4 Makefile.in configure src/config.h.in || die
+
+ # Disable running in the tests/ subdir as it has a bunch of built sources
+ # that cannot be made conditional (automake limitation). bug #568842
+ if ! use test ; then
+ sed -i \
+ -e '/^SUBDIRS =/,/^$/{/tests/d}' \
+ Makefile.in || die
+ fi
+
+ # Prefix always needs this
+ elibtoolize
+}
+
+src_configure() {
+ use static && append-ldflags -static
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ # Do not install shared libs, #503522
+ ECONF_SOURCE="${S}" econf \
+ CC_FOR_BUILD="$(tc-getBUILD_CC)" \
+ --disable-shared \
+ $(use_enable nls)
+}
+
+multilib_src_compile() {
+ if multilib_is_native_abi; then
+ default
+ else
+ emake -C src -f Makefile -f - lib <<< 'lib: $(lib_LTLIBRARIES)'
+ fi
+}
+
+multilib_src_test() {
+ multilib_is_native_abi && emake check
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi; then
+ default
+ else
+ emake -C src DESTDIR="${D}" install-libLTLIBRARIES install-includeHEADERS
+ fi
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ dodoc ONEWS
+ find "${ED}" -name '*.la' -type f -delete || die
+ rm "${ED}"/usr/share/doc/${PF}/COPYING || die
+}
+
+pkg_postinst() {
+ # ensure to preserve the symlink before app-alternatives/lex
+ # is installed
+ if [[ ! -h ${EROOT}/usr/bin/lex ]]; then
+ ln -s flex "${EROOT}/usr/bin/lex" || die
+ fi
+}
diff --git a/sys-devel/gdb/Manifest b/sys-devel/gdb/Manifest
index 6fd9eb4c938e..f1d679247bd9 100644
--- a/sys-devel/gdb/Manifest
+++ b/sys-devel/gdb/Manifest
@@ -4,7 +4,7 @@ AUX gdb-12.1-readline-8.2-build.patch 926 BLAKE2B f483dd1054b019d44dd4731ba22113
AUX gdb-8.3.1-verbose-build.patch 395 BLAKE2B e2e82307ceae64d16aa9b57a5e639eb5d217c4d977aed0847fdf125bb13ebc004906d9afb8e3f629c41efccca88df0040015e7799c1fd24de5fb50f62f5bbd90 SHA512 c2bb013e4fcabefddcd8042bd3cbb53471f83182cc8769fe0d19eed80ccc4a83bd84d120006fa25b3b7d0310dc2f2ec6b44a6ff74909cd312b7e491f371777a3
DIST gdb-11.2.tar.xz 22039420 BLAKE2B 66ce7e12c99c33c8b4e6ababa673204aab525e72c90ba54cc34a5fd69948a09dc2a9ef2050764b2464544231b1d1a6431279c2877388551ca6fbf384a3f9b464 SHA512 07e9026423438049b11f4f784d57401ece4e940570f613bd6958b3714fe7fbc2c048470bcce3e7d7d9f93331cdf3881d30dcc964cb113a071143a02b28e5b127
DIST gdb-12.1.tar.xz 22470332 BLAKE2B 7f6f853d1640908cf2c79932cdc1ba02549a07721c005d9c7ce2946a715761719cc164a4e68235a18664ec8a029afe3a2a0cfb57e1635f280076d6bed91317fd SHA512 425568d2e84672177d0fb87b1ad7daafdde097648d605e30cf0656970f66adc6a82ca2d83375ea4be583e9683a340e5bfdf5819668ddf66728200141ae50ff2d
-EBUILD gdb-11.2.ebuild 7773 BLAKE2B 12bec31a73f4b9204183cae661a769130d5b8c925a4bec768106ef42fd485b2faab7cb55adbfda30f19f5d9d76386c2d21e64cde15baf45046caadc2ec0e15d2 SHA512 53b644e2cb5652e9393aa3064a6b895ee01f6231346bee1079cbb168595f624882f8f2df89ac9c549a3d80269f645fc77c8908d335a82f9350066cfd12d9f6a4
-EBUILD gdb-12.1-r2.ebuild 8217 BLAKE2B af0db74da293d8083bd81089072dab4e679b61beead77e40d070900d218c7a0d6603d0413764912025d7a46db1dc7a851da4d7b852cf9b374723bb30fd22aa7c SHA512 cc14d749dbb1c8f77a3410203afd2939ef2de762cb98260b07c817d651ebf7af2c0227c6c9c3d55904d88a99ed4968154e9f66fe70b8ff1257efc481aa9b07a9
-EBUILD gdb-9999.ebuild 8182 BLAKE2B f086657508ce95f6689c6d92877bb1e6cba94d0dd19da5dfe752967db555b6faff3e659936e51138c3fa8ef504b242463f8b8551ae86d36af1843a1634d0f59c SHA512 fcdeab52ea6c6e17ac4be64a57c57a2b1c607dfebf066704e3556f467b369bb2ef59d32c0f1213aa8a54d3dd7b1498583eefe01efbd399fd1b24407d9cf93b91
+EBUILD gdb-11.2.ebuild 7782 BLAKE2B d573ed0a86c2187af8f84caaeec8101221269d3c7f95e2ef8ed5a00464b2548344691383c361997782c83e0a6940e7f1e7b069a521c33a0474ef2f4c2f2a5171 SHA512 0d8241b2f7263f6a5a75804ca4eb637f6037a9959b69237a8b522d970caad4112439d1314d1ca9bf0e562eb9f1ce4e9b6e380343e2e96dee833d11f60dd5b2c5
+EBUILD gdb-12.1-r2.ebuild 8226 BLAKE2B b2fe4c11d7bfbf0e40405da13fd993b31cb4b6c6c7e1e2b9aebd650bae2d031e13c48086410a084c4374327622d1f3f58a4d605abcaa897fabffbc820b2ff07c SHA512 064a3811457709a61a4c53a0fbbd3d656c3a518232840f75d42df9bdc3e437260deb90423d6eebed0a0a92efb5c407911ec80d0d86606732702b6288ddbf3f22
+EBUILD gdb-9999.ebuild 8191 BLAKE2B 78e1b2e4471e81fc88bdde26534a0ec208b97f1b91f7d0772ac1f0799d3332176309f11228ee516fccb5e452c589aa8a2c60e0a2150942ce08442cd1810aae93 SHA512 e8391ff7d966f4fde8fa274a0a89af69d0fb9079ba782413631adaae0753092491affe3bc2c8020bffb50dcb58068ff28962cc200dfe43c2761702ec325557b7
MISC metadata.xml 1103 BLAKE2B e63ea2e52649ac2f4ac21381cadb7cc76525792e99a4a6581535475480b6c45e654c8222b0b58585435d4c858cf3eef00dcaecf7edecae2b2fd336f1b56e6e56 SHA512 f7f1b4da71b18cb68a2f32aa6faae6251528047069071c9bee1be504267d0baf2cbac4fb928e0cbe9df100e3a681e2c3b6c7be14514a45a2f52d30364a8626f4
diff --git a/sys-devel/gdb/gdb-11.2.ebuild b/sys-devel/gdb/gdb-11.2.ebuild
index bbd5cfa1a8b3..4cf33173d0ba 100644
--- a/sys-devel/gdb/gdb-11.2.ebuild
+++ b/sys-devel/gdb/gdb-11.2.ebuild
@@ -87,7 +87,7 @@ DEPEND="${RDEPEND}"
BDEPEND="
app-arch/xz-utils
sys-apps/texinfo
- virtual/yacc
+ app-alternatives/yacc
nls? ( sys-devel/gettext )
source-highlight? ( virtual/pkgconfig )
test? ( dev-util/dejagnu )
diff --git a/sys-devel/gdb/gdb-12.1-r2.ebuild b/sys-devel/gdb/gdb-12.1-r2.ebuild
index 8992645e4700..b4bf3d0ae2c9 100644
--- a/sys-devel/gdb/gdb-12.1-r2.ebuild
+++ b/sys-devel/gdb/gdb-12.1-r2.ebuild
@@ -88,7 +88,7 @@ DEPEND="${RDEPEND}"
BDEPEND="
app-arch/xz-utils
sys-apps/texinfo
- virtual/yacc
+ app-alternatives/yacc
nls? ( sys-devel/gettext )
source-highlight? ( virtual/pkgconfig )
test? ( dev-util/dejagnu )
diff --git a/sys-devel/gdb/gdb-9999.ebuild b/sys-devel/gdb/gdb-9999.ebuild
index 6bf40e5071f6..940f57beb14b 100644
--- a/sys-devel/gdb/gdb-9999.ebuild
+++ b/sys-devel/gdb/gdb-9999.ebuild
@@ -85,7 +85,7 @@ DEPEND="${RDEPEND}"
BDEPEND="
app-arch/xz-utils
sys-apps/texinfo
- virtual/yacc
+ app-alternatives/yacc
nls? ( sys-devel/gettext )
source-highlight? ( virtual/pkgconfig )
test? ( dev-util/dejagnu )