* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2015-08-27 17:37 Mike Frysinger
0 siblings, 0 replies; 477+ messages in thread
From: Mike Frysinger @ 2015-08-27 17:37 UTC (permalink / raw
To: gentoo-commits
commit: 382d7466757de7f746e19d72844bfaa86de0a197
Author: Mike Frysinger <vapier <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 27 17:37:16 2015 +0000
Commit: Mike Frysinger <vapier <AT> gentoo <DOT> org>
CommitDate: Thu Aug 27 17:37:54 2015 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=382d7466
sys-devel/binutils: add upstream fixes for ld reloc processing #558382
Package-Manager: portage-2.2.20.1
sys-devel/binutils/Manifest | 2 +-
.../binutils/{binutils-2.25.1.ebuild => binutils-2.25.1-r1.ebuild} | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 5ff4d77..0baea82 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -8,6 +8,6 @@ DIST binutils-2.24-patches-1.4.tar.xz 17488 SHA256 f018f140a52cddb1e4619b5caf4b4
DIST binutils-2.24.tar.bz2 22716802 SHA256 e5e8c5be9664e7f7f96e0d09919110ab5ad597794f5b1809871177a0f0f14137 SHA512 5ec95ad47d49b12c4558a8db0ca2109d3ee1955e3776057f3330c4506f8f4d1cf5e505fbf8a16b98403a0fcdeaaf986fe0a22be6456247dbdace63ce1f776b12 WHIRLPOOL 619634dfdc73b8f6e9933b4642f5f9faf147c388a6d39283cd7639d83f3d7a601981cf49a787c43c17a942c563f24dc8dcc682138b5d3102a5650e1b9d15bd50
DIST binutils-2.25-patches-1.1.tar.xz 11440 SHA256 fb357d6a6fcb348584f30236c5c541d946496472c6bbd45e72d2a60e1182fbce SHA512 a236973ebfd72a069fbb578206baef0d35e12fe7fd19dd5a8fe002088db86d15b149b3de3dfc88a7e58c39df1c354a1caf3e20efc757c080301fa29d083020d3 WHIRLPOOL 03f6f7217c38c856f475cbb561e538d6a8a4368f420295b914fa77d1fc8e05bb96e6678fcd5100290be5d3ab3859182e901387d8ff58014acee0e2a957e27e34
DIST binutils-2.25-patches-1.2.tar.xz 16480 SHA256 c5a65aefaf561e592961d22cf88e57dd304a73d3643581414b5a7c14667eef30 SHA512 5a8072c57ce393a50de8770885d6740b8835d656e357a12caf67c4ffbfce228f9a53ea0861199a1a08e2ca724702d0e013f3a9787b15de21178e99263fc43292 WHIRLPOOL 691cf14bfb2c1bb144db29917dea791c18eeb192f61325ef3265fed6c4ad870e23485c3505f74a688158bf862d6539aa5f036400dcf14b9c05a09327ab871133
-DIST binutils-2.25.1-patches-1.0.tar.xz 16472 SHA256 51ae9e098d7cfd0ae6db4971939062d4051077b1d743263f2d4c621591303e14 SHA512 1743969d531d18e5d458a165f1b05b3c3253b062a8908b722e11ed82144598eef0983d8e1bb4f132ad80b534a0d6b37cc2ffa0575e1ec303219d1e43d5f30f26 WHIRLPOOL 1afcde32383213cce48116dc5161da535372d9104acfb9b3b893859f58800d0833dc3d041492250e4ec9d981a98c2af4fa9f07aba3ca1f1770d334199bf34855
+DIST binutils-2.25.1-patches-1.1.tar.xz 18724 SHA256 3d4c0ab2d45d3a952f60246fa5a4353f057c03110130b50e3b2103bd49c345fa SHA512 209c55bf26b51d8c513b40abd2d95f687159c4e964a6c732924f277d04c97323c427fe452c63d5ec6962dcd8892d6d5d807ba88826739425bce6812a31f573dd WHIRLPOOL 2b650af352183d2b58abaee955b223606d63bd5f22a73360e79af1d3b575c5ea385f90be92348ec850534d96f7b6632b1e494f314ec1655eedc26108e849aab7
DIST binutils-2.25.1.tar.bz2 24163561 SHA256 b5b14added7d78a8d1ca70b5cb75fef57ce2197264f4f5835326b0df22ac9f22 SHA512 0b36dda0e6d32cd25613c0e64b56b28312515c54d6a159efd3db9a86717f114ab0a0a1f69d08975084d55713ebaeab64e4085c9b3d1c3fa86712869f80eb954d WHIRLPOOL daa804331ee880296c2fe29fd9b8a52cc695629d4bbe0b9889d96ffc54d330f00fac3f3cb12b3aaf6b7505521ef499c53760912cd7c9bb54f2d5e288224bd1eb
DIST binutils-2.25.tar.bz2 24049133 SHA256 22defc65cfa3ef2a3395faaea75d6331c6e62ea5dfacfed3e2ec17b08c882923 SHA512 49438970642f379978aba988e3d2e7b63dab6fd0b46d91f4100f083e87a84d242089daca58572245fe620457a77bbbe2d78588ff3fb79314e500d1a39bf96f30 WHIRLPOOL 92f963d6ffe7d2378726cb080e893f8c58c8b6de030e78da488d8c3fd157e064a90b62d9bd2f305707758aa016a9e48f0953425828a2a0432ddee8ffae89585f
diff --git a/sys-devel/binutils/binutils-2.25.1.ebuild b/sys-devel/binutils/binutils-2.25.1-r1.ebuild
similarity index 95%
rename from sys-devel/binutils/binutils-2.25.1.ebuild
rename to sys-devel/binutils/binutils-2.25.1-r1.ebuild
index 57c5fa6..7834524 100644
--- a/sys-devel/binutils/binutils-2.25.1.ebuild
+++ b/sys-devel/binutils/binutils-2.25.1-r1.ebuild
@@ -4,7 +4,7 @@
EAPI="4"
-PATCHVER="1.0"
+PATCHVER="1.1"
ELF2FLT_VER=""
inherit toolchain-binutils
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2015-09-19 12:32 Agostino Sarubbo
0 siblings, 0 replies; 477+ messages in thread
From: Agostino Sarubbo @ 2015-09-19 12:32 UTC (permalink / raw
To: gentoo-commits
commit: bc499367d8450c704d53ed2d511b45ab2bd84fc0
Author: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
AuthorDate: Sat Sep 19 12:32:21 2015 +0000
Commit: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
CommitDate: Sat Sep 19 12:32:21 2015 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bc499367
sys-devel/binutils: amd64 stable wrt bug #560792
Package-Manager: portage-2.2.20.1
RepoMan-Options: --include-arches="amd64"
sys-devel/binutils/binutils-2.25.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.25.1-r1.ebuild b/sys-devel/binutils/binutils-2.25.1-r1.ebuild
index 7834524..f4ea12e 100644
--- a/sys-devel/binutils/binutils-2.25.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.25.1-r1.ebuild
@@ -8,4 +8,4 @@ PATCHVER="1.1"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2015-09-19 16:40 Tobias Klausmann
0 siblings, 0 replies; 477+ messages in thread
From: Tobias Klausmann @ 2015-09-19 16:40 UTC (permalink / raw
To: gentoo-commits
commit: 2e2dc6c1484aabceb01e44c0f8249eed7e4bffb4
Author: Tobias Klausmann <klausman <AT> gentoo <DOT> org>
AuthorDate: Sat Sep 19 16:40:31 2015 +0000
Commit: Tobias Klausmann <klausman <AT> gentoo <DOT> org>
CommitDate: Sat Sep 19 16:40:31 2015 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2e2dc6c1
sys-devel/binutils: add alpha keyword
Gentoo-Bug: 560792
Package-Manager: portage-2.2.20.1
sys-devel/binutils/binutils-2.25.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.25.1-r1.ebuild b/sys-devel/binutils/binutils-2.25.1-r1.ebuild
index f4ea12e..2305c3f 100644
--- a/sys-devel/binutils/binutils-2.25.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.25.1-r1.ebuild
@@ -8,4 +8,4 @@ PATCHVER="1.1"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2015-09-20 17:57 Mike Frysinger
0 siblings, 0 replies; 477+ messages in thread
From: Mike Frysinger @ 2015-09-20 17:57 UTC (permalink / raw
To: gentoo-commits
commit: 69efe5b61f74d4d67fba714379a521d7445496b7
Author: Mike Frysinger <vapier <AT> gentoo <DOT> org>
AuthorDate: Sun Sep 20 17:54:52 2015 +0000
Commit: Mike Frysinger <vapier <AT> gentoo <DOT> org>
CommitDate: Sun Sep 20 17:57:44 2015 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=69efe5b6
sys-devel/binutils: mark 2.25.1-r1 stable for arm64/ia64/m68k/s390/sh #560792
sys-devel/binutils/binutils-2.25.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.25.1-r1.ebuild b/sys-devel/binutils/binutils-2.25.1-r1.ebuild
index 0d610a4..6bef090 100644
--- a/sys-devel/binutils/binutils-2.25.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.25.1-r1.ebuild
@@ -8,4 +8,4 @@ PATCHVER="1.1"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 ~arm arm64 ~hppa ia64 m68k ~mips ~ppc ~ppc64 s390 sh ~sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2015-09-30 3:41 Jeroen Roovers
0 siblings, 0 replies; 477+ messages in thread
From: Jeroen Roovers @ 2015-09-30 3:41 UTC (permalink / raw
To: gentoo-commits
commit: f29665c174ecf8000da8315e4a1dac0b00b6d8f7
Author: Jeroen Roovers <jer <AT> gentoo <DOT> org>
AuthorDate: Wed Sep 30 03:41:52 2015 +0000
Commit: Jeroen Roovers <jer <AT> gentoo <DOT> org>
CommitDate: Wed Sep 30 03:41:52 2015 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f29665c1
sys-devel/binutils: Stable for HPPA (bug #560792).
Package-Manager: portage-2.2.20.1
RepoMan-Options: --ignore-arches
sys-devel/binutils/binutils-2.25.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.25.1-r1.ebuild b/sys-devel/binutils/binutils-2.25.1-r1.ebuild
index 6e65a77..f761283 100644
--- a/sys-devel/binutils/binutils-2.25.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.25.1-r1.ebuild
@@ -8,4 +8,4 @@ PATCHVER="1.1"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="alpha amd64 ~arm arm64 ~hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 ~arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2015-10-03 0:43 Mike Frysinger
0 siblings, 0 replies; 477+ messages in thread
From: Mike Frysinger @ 2015-10-03 0:43 UTC (permalink / raw
To: gentoo-commits
commit: f1db98b9e7ea7a8fcef96f863f1377823100e893
Author: Mike Frysinger <vapier <AT> gentoo <DOT> org>
AuthorDate: Sat Oct 3 00:42:35 2015 +0000
Commit: Mike Frysinger <vapier <AT> gentoo <DOT> org>
CommitDate: Sat Oct 3 00:42:35 2015 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f1db98b9
sys-devel/binutils: mark 2.25.1-r1 stable #560792
sys-devel/binutils/binutils-2.25.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.25.1-r1.ebuild b/sys-devel/binutils/binutils-2.25.1-r1.ebuild
index f761283..772def6 100644
--- a/sys-devel/binutils/binutils-2.25.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.25.1-r1.ebuild
@@ -8,4 +8,4 @@ PATCHVER="1.1"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="alpha amd64 ~arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2016-07-13 8:26 Patrice Clement
0 siblings, 0 replies; 477+ messages in thread
From: Patrice Clement @ 2016-07-13 8:26 UTC (permalink / raw
To: gentoo-commits
commit: 1b7b88f1964567167ddfd753fb9333ec40f347bf
Author: Bjørn Kagelmacher <DL7RAY <AT> t-online <DOT> de>
AuthorDate: Mon Jul 11 20:27:54 2016 +0000
Commit: Patrice Clement <monsieurp <AT> gentoo <DOT> org>
CommitDate: Wed Jul 13 08:25:54 2016 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1b7b88f1
sys-devel/binutils: version bump to 2.26.1.
Closes: https://github.com/gentoo/gentoo/pull/1874
Signed-off-by: Patrice Clement <monsieurp <AT> gentoo.org>
sys-devel/binutils/binutils-2.26.1.ebuild | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/sys-devel/binutils/binutils-2.26.1.ebuild b/sys-devel/binutils/binutils-2.26.1.ebuild
new file mode 100644
index 0000000..dc9fc17
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.26.1.ebuild
@@ -0,0 +1,11 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+PATCHVER="1.0"
+ELF2FLT_VER=""
+inherit toolchain-binutils
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2016-07-13 8:26 Patrice Clement
0 siblings, 0 replies; 477+ messages in thread
From: Patrice Clement @ 2016-07-13 8:26 UTC (permalink / raw
To: gentoo-commits
commit: 4b68eb48e257bad514ffd25f2e7ae5b8084a69c8
Author: Bjørn Kagelmacher <DL7RAY <AT> t-online <DOT> de>
AuthorDate: Mon Jul 11 20:31:52 2016 +0000
Commit: Patrice Clement <monsieurp <AT> gentoo <DOT> org>
CommitDate: Wed Jul 13 08:25:54 2016 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4b68eb48
sys-devel/binutils: update Manifest file.
Closes: https://github.com/gentoo/gentoo/pull/1874
Signed-off-by: Patrice Clement <monsieurp <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 ++
1 file changed, 2 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 0baea82..e4682dd 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -11,3 +11,5 @@ DIST binutils-2.25-patches-1.2.tar.xz 16480 SHA256 c5a65aefaf561e592961d22cf88e5
DIST binutils-2.25.1-patches-1.1.tar.xz 18724 SHA256 3d4c0ab2d45d3a952f60246fa5a4353f057c03110130b50e3b2103bd49c345fa SHA512 209c55bf26b51d8c513b40abd2d95f687159c4e964a6c732924f277d04c97323c427fe452c63d5ec6962dcd8892d6d5d807ba88826739425bce6812a31f573dd WHIRLPOOL 2b650af352183d2b58abaee955b223606d63bd5f22a73360e79af1d3b575c5ea385f90be92348ec850534d96f7b6632b1e494f314ec1655eedc26108e849aab7
DIST binutils-2.25.1.tar.bz2 24163561 SHA256 b5b14added7d78a8d1ca70b5cb75fef57ce2197264f4f5835326b0df22ac9f22 SHA512 0b36dda0e6d32cd25613c0e64b56b28312515c54d6a159efd3db9a86717f114ab0a0a1f69d08975084d55713ebaeab64e4085c9b3d1c3fa86712869f80eb954d WHIRLPOOL daa804331ee880296c2fe29fd9b8a52cc695629d4bbe0b9889d96ffc54d330f00fac3f3cb12b3aaf6b7505521ef499c53760912cd7c9bb54f2d5e288224bd1eb
DIST binutils-2.25.tar.bz2 24049133 SHA256 22defc65cfa3ef2a3395faaea75d6331c6e62ea5dfacfed3e2ec17b08c882923 SHA512 49438970642f379978aba988e3d2e7b63dab6fd0b46d91f4100f083e87a84d242089daca58572245fe620457a77bbbe2d78588ff3fb79314e500d1a39bf96f30 WHIRLPOOL 92f963d6ffe7d2378726cb080e893f8c58c8b6de030e78da488d8c3fd157e064a90b62d9bd2f305707758aa016a9e48f0953425828a2a0432ddee8ffae89585f
+DIST binutils-2.26.1-patches-1.0.tar.xz 11212 SHA256 e56e2a6b64b8abe2f4aed1a9b1517fc8cbb5fd661f40118d0163d93943870e77 SHA512 c520967659c66f05f7ad795bb0bc2522e139977ab3ae8cfd9ec0d093a412a7291d1cabaa6b429c618fcf7253458a6fbe5a7dc3f62e0ac9762667308067db075c WHIRLPOOL 027b6a864134e2690d309922009740338bbd927581c6657c640d3061447f308c2e27a8c06a9202ae3f4aac4bcbf9e28303b52f81745d4062bf5b8c638cd1a9b7
+DIST binutils-2.26.1.tar.bz2 25595243 SHA256 39c346c87aa4fb14b2f786560aec1d29411b6ec34dce3fe7309fe3dd56949fd8 SHA512 9d9165609fd3b0f20d616f9891fc8e2b466eb13e2bfce40125e12427f8f201d20e2b8322bb6cb2b45e8df812f0e8ac059149f8a1f69ba3ed9d86a35c6a540b67 WHIRLPOOL c33eecdf855dd17314c3b7bbb0060399148d4dba867eb038bfb7555010fd003ba8b5b86480e4df389e19bba7b1fd0b9264291e6af20be4ffd4ff504d2255d003
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2016-12-08 19:28 Mike Frysinger
0 siblings, 0 replies; 477+ messages in thread
From: Mike Frysinger @ 2016-12-08 19:28 UTC (permalink / raw
To: gentoo-commits
commit: 854de825e7b7a5bf73f421fcc265790ba33729f7
Author: Mike Frysinger <vapier <AT> gentoo <DOT> org>
AuthorDate: Thu Dec 8 19:09:21 2016 +0000
Commit: Mike Frysinger <vapier <AT> gentoo <DOT> org>
CommitDate: Thu Dec 8 19:28:40 2016 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=854de825
sys-devel/binutils: move older versions to the toolchain overlay
sys-devel/binutils/Manifest | 11 -----------
sys-devel/binutils/binutils-2.21.1-r1.ebuild | 11 -----------
sys-devel/binutils/binutils-2.22-r1.ebuild | 11 -----------
sys-devel/binutils/binutils-2.23.2.ebuild | 12 ------------
sys-devel/binutils/binutils-2.24-r3.ebuild | 9 ---------
sys-devel/binutils/binutils-2.25-r1.ebuild | 11 -----------
sys-devel/binutils/binutils-2.25.ebuild | 11 -----------
7 files changed, 76 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 129ed85..da82096 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -1,16 +1,5 @@
-DIST binutils-2.21.1-patches-1.4.tar.bz2 20033 SHA256 51e50584a7364549649cc6c59f4a678b07595979811e8e2150264318c3b4493d SHA512 66b71031a782f9708dc5f8ac9171b2be0bbca102b44705155b292329e0664cc71b649f4d8fa50ad0d9123436c03b994da5a0fddc32e43bf2d50e74c68609e508 WHIRLPOOL 2bdc11027b3dcd27c766b4ca5f578a32838d15b3370b4093f1c30887200b82bfaa732df9af23f545d58bbbf373c9967a31fcbb19b3f9b855f0923143e77fa9f5
-DIST binutils-2.21.1.tar.bz2 18997755 SHA256 cdecfa69f02aa7b05fbcdf678e33137151f361313b2f3e48aba925f64eabf654 SHA512 3f550f6833a41e9b17d1f515eea0de8dc14aefb7dd69c65b821aa1336aea4c3f55b4457a1781ab7b32bda049798fef3cf989148e4acb0fca8baca5af74766f31 WHIRLPOOL 1025ac3714f2406ee5afcda3f7a23f788a35e354b928f4b11c7448150a5613f793c2aa471f4612c5015e89d5abbb61522a7a0265286fcf2788fbf1194fb60201
-DIST binutils-2.22-patches-1.5.tar.bz2 37350 SHA256 51cad7b3c2d18db0f7d2e4a3e46e37f00eb720cfa663ea396e16dcfbba12a07c SHA512 407490be54fec09faf26e8062cf28d2ea2d58df669642e7582fe51776726f00af8c18194a17438e18068c91b7634fca2d0f33c7231e847ba5141f901d9743ad7 WHIRLPOOL d62be803705d4e526324719fae69c06c303cc2500aeac04cb711eff383a2732ec3f47f9d91deef954c60877e08fed2c2659636dad07086ceaf12c8b899b075f1
-DIST binutils-2.22.tar.bz2 19973532 SHA256 6c7af8ed1c8cf9b4b9d6e6fe09a3e1d3d479fe63984ba8b9b26bf356b6313ca9 SHA512 ffe8ef263ef99183e8cc823fe8487ff7d0f7bf9a8efd2853b5f4636aca0023850d13de4eac7d77a5f69413d8a50e6f95bb14569be53df86c0bce38034525ab74 WHIRLPOOL 8bea2f2082600587649a5f9fffada9c6cf14f42ebddd1e6a4b4d7be25446d7ad76e1335cf8cefe30c812ced408c9dacb55d0033e4b0eaff83efbbfb5ea5f60dc
-DIST binutils-2.23.2-patches-1.0.tar.xz 10884 SHA256 47df1338ee285548630dabb6e414cd7ffffaf068a56ea22a185608fcbd091703 SHA512 25d52694e653dd2642eb643ef3bd48a099876515d66b0b1ed8dfa5f60cadaa1bb92a589e370528ec52add7571c0ea1a98859bfde0821c73ec0ded492fff0915c WHIRLPOOL 2aba579641a1b8e701b25c9d0094c9991e151ddd0b02fae7273ca8c9e31fd344cbf3782c5a5f9960a9bee16b41bc898c8ad0ec76ba8ee396d28e878dac47ffc7
-DIST binutils-2.23.2.tar.bz2 21440347 SHA256 fe914e56fed7a9ec2eb45274b1f2e14b0d8b4f41906a5194eac6883cfe5c1097 SHA512 dec753bbba008f1526b89cf1bd85feba78f362f5333ffdf93953fd131eb755976dec82a0a4ba38c43d2434da007137780cfe674de5414be5cf7ce7fbc6af6d16 WHIRLPOOL 1be65f03569d599899c5b57ac7aedbf90b311f9a47c1883dc62c0717b0757ebfb33e17ab3def8d0b805daabba67cf554463f88675c9f552a6fd8dbe7ca77b442
-DIST binutils-2.24-patches-1.4.tar.xz 17488 SHA256 f018f140a52cddb1e4619b5caf4b4a37a27dfb29e8bf29ea5161ab13b33eed13 SHA512 dfd7c38cd978b7d6627579c338bf67641c799ce39936e3475dca3ecf5bade417e3f090253a2326582c64d5743a24f9078794f44e8fd41b6af728f1f375c91d3b WHIRLPOOL d6b414d5e5607fd8b2d0f52b508763110448cfbdcc08be6d7c1412043797bde8ed5fbd9a5ea4c141b7394b2cae0ac2ef24827f67813231129a507f49cbc40245
-DIST binutils-2.24.tar.bz2 22716802 SHA256 e5e8c5be9664e7f7f96e0d09919110ab5ad597794f5b1809871177a0f0f14137 SHA512 5ec95ad47d49b12c4558a8db0ca2109d3ee1955e3776057f3330c4506f8f4d1cf5e505fbf8a16b98403a0fcdeaaf986fe0a22be6456247dbdace63ce1f776b12 WHIRLPOOL 619634dfdc73b8f6e9933b4642f5f9faf147c388a6d39283cd7639d83f3d7a601981cf49a787c43c17a942c563f24dc8dcc682138b5d3102a5650e1b9d15bd50
-DIST binutils-2.25-patches-1.1.tar.xz 11440 SHA256 fb357d6a6fcb348584f30236c5c541d946496472c6bbd45e72d2a60e1182fbce SHA512 a236973ebfd72a069fbb578206baef0d35e12fe7fd19dd5a8fe002088db86d15b149b3de3dfc88a7e58c39df1c354a1caf3e20efc757c080301fa29d083020d3 WHIRLPOOL 03f6f7217c38c856f475cbb561e538d6a8a4368f420295b914fa77d1fc8e05bb96e6678fcd5100290be5d3ab3859182e901387d8ff58014acee0e2a957e27e34
-DIST binutils-2.25-patches-1.2.tar.xz 16480 SHA256 c5a65aefaf561e592961d22cf88e57dd304a73d3643581414b5a7c14667eef30 SHA512 5a8072c57ce393a50de8770885d6740b8835d656e357a12caf67c4ffbfce228f9a53ea0861199a1a08e2ca724702d0e013f3a9787b15de21178e99263fc43292 WHIRLPOOL 691cf14bfb2c1bb144db29917dea791c18eeb192f61325ef3265fed6c4ad870e23485c3505f74a688158bf862d6539aa5f036400dcf14b9c05a09327ab871133
DIST binutils-2.25.1-patches-1.1.tar.xz 18724 SHA256 3d4c0ab2d45d3a952f60246fa5a4353f057c03110130b50e3b2103bd49c345fa SHA512 209c55bf26b51d8c513b40abd2d95f687159c4e964a6c732924f277d04c97323c427fe452c63d5ec6962dcd8892d6d5d807ba88826739425bce6812a31f573dd WHIRLPOOL 2b650af352183d2b58abaee955b223606d63bd5f22a73360e79af1d3b575c5ea385f90be92348ec850534d96f7b6632b1e494f314ec1655eedc26108e849aab7
DIST binutils-2.25.1.tar.bz2 24163561 SHA256 b5b14added7d78a8d1ca70b5cb75fef57ce2197264f4f5835326b0df22ac9f22 SHA512 0b36dda0e6d32cd25613c0e64b56b28312515c54d6a159efd3db9a86717f114ab0a0a1f69d08975084d55713ebaeab64e4085c9b3d1c3fa86712869f80eb954d WHIRLPOOL daa804331ee880296c2fe29fd9b8a52cc695629d4bbe0b9889d96ffc54d330f00fac3f3cb12b3aaf6b7505521ef499c53760912cd7c9bb54f2d5e288224bd1eb
-DIST binutils-2.25.tar.bz2 24049133 SHA256 22defc65cfa3ef2a3395faaea75d6331c6e62ea5dfacfed3e2ec17b08c882923 SHA512 49438970642f379978aba988e3d2e7b63dab6fd0b46d91f4100f083e87a84d242089daca58572245fe620457a77bbbe2d78588ff3fb79314e500d1a39bf96f30 WHIRLPOOL 92f963d6ffe7d2378726cb080e893f8c58c8b6de030e78da488d8c3fd157e064a90b62d9bd2f305707758aa016a9e48f0953425828a2a0432ddee8ffae89585f
DIST binutils-2.26.1-patches-1.0.tar.xz 11212 SHA256 e56e2a6b64b8abe2f4aed1a9b1517fc8cbb5fd661f40118d0163d93943870e77 SHA512 c520967659c66f05f7ad795bb0bc2522e139977ab3ae8cfd9ec0d093a412a7291d1cabaa6b429c618fcf7253458a6fbe5a7dc3f62e0ac9762667308067db075c WHIRLPOOL 027b6a864134e2690d309922009740338bbd927581c6657c640d3061447f308c2e27a8c06a9202ae3f4aac4bcbf9e28303b52f81745d4062bf5b8c638cd1a9b7
DIST binutils-2.26.1.tar.bz2 25595243 SHA256 39c346c87aa4fb14b2f786560aec1d29411b6ec34dce3fe7309fe3dd56949fd8 SHA512 9d9165609fd3b0f20d616f9891fc8e2b466eb13e2bfce40125e12427f8f201d20e2b8322bb6cb2b45e8df812f0e8ac059149f8a1f69ba3ed9d86a35c6a540b67 WHIRLPOOL c33eecdf855dd17314c3b7bbb0060399148d4dba867eb038bfb7555010fd003ba8b5b86480e4df389e19bba7b1fd0b9264291e6af20be4ffd4ff504d2255d003
DIST binutils-2.27-patches-1.0.tar.xz 8852 SHA256 07be45786e1e56498aad2c52a43d4104ccd0ded3c6a84a930486bc418d7fa36d SHA512 489b5fff87886682d8e98eafa2f082e6dcf811d2a693b6c41d76bd1ac50815a6e7d26fb7c9e3811c2d8e0e1dc307557e6ffe46d1d0f7caeb581060cf14bda899 WHIRLPOOL cf73342292a6dd8450a420f62a6a28e1ae38eed2c0b62643619ac002f3e9233ba5a0df19deb862167e88bd2c4a7ef4e002fe4d76f971eba876014d145dc30171
diff --git a/sys-devel/binutils/binutils-2.21.1-r1.ebuild b/sys-devel/binutils/binutils-2.21.1-r1.ebuild
deleted file mode 100644
index 03c387a..00000000
--- a/sys-devel/binutils/binutils-2.21.1-r1.ebuild
+++ /dev/null
@@ -1,11 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="4"
-
-PATCHVER="1.4"
-ELF2FLT_VER=""
-inherit toolchain-binutils
-
-KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 -sparc-fbsd -x86-fbsd"
diff --git a/sys-devel/binutils/binutils-2.22-r1.ebuild b/sys-devel/binutils/binutils-2.22-r1.ebuild
deleted file mode 100644
index bbff81c..00000000
--- a/sys-devel/binutils/binutils-2.22-r1.ebuild
+++ /dev/null
@@ -1,11 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="4"
-
-PATCHVER="1.5"
-ELF2FLT_VER=""
-inherit toolchain-binutils
-
-KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
diff --git a/sys-devel/binutils/binutils-2.23.2.ebuild b/sys-devel/binutils/binutils-2.23.2.ebuild
deleted file mode 100644
index 26b91e7..00000000
--- a/sys-devel/binutils/binutils-2.23.2.ebuild
+++ /dev/null
@@ -1,12 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="4"
-
-PATCHVER="1.0"
-ELF2FLT_VER=""
-inherit toolchain-binutils
-
-# See #464152
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 -amd64-fbsd -sparc-fbsd -x86-fbsd"
diff --git a/sys-devel/binutils/binutils-2.24-r3.ebuild b/sys-devel/binutils/binutils-2.24-r3.ebuild
deleted file mode 100644
index cb11f0f..00000000
--- a/sys-devel/binutils/binutils-2.24-r3.ebuild
+++ /dev/null
@@ -1,9 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-PATCHVER="1.4"
-ELF2FLT_VER=""
-inherit toolchain-binutils
-
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 -amd64-fbsd -sparc-fbsd ~x86-fbsd"
diff --git a/sys-devel/binutils/binutils-2.25-r1.ebuild b/sys-devel/binutils/binutils-2.25-r1.ebuild
deleted file mode 100644
index 9bc7025..00000000
--- a/sys-devel/binutils/binutils-2.25-r1.ebuild
+++ /dev/null
@@ -1,11 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="4"
-
-PATCHVER="1.2"
-ELF2FLT_VER=""
-inherit toolchain-binutils
-
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
diff --git a/sys-devel/binutils/binutils-2.25.ebuild b/sys-devel/binutils/binutils-2.25.ebuild
deleted file mode 100644
index 7834524..00000000
--- a/sys-devel/binutils/binutils-2.25.ebuild
+++ /dev/null
@@ -1,11 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="4"
-
-PATCHVER="1.1"
-ELF2FLT_VER=""
-inherit toolchain-binutils
-
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-03-03 18:30 Mike Frysinger
0 siblings, 0 replies; 477+ messages in thread
From: Mike Frysinger @ 2017-03-03 18:30 UTC (permalink / raw
To: gentoo-commits
commit: ada3072b5d01a6b56d83ebdb772ff1870e0074a9
Author: Mike Frysinger <vapier <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 3 18:30:01 2017 +0000
Commit: Mike Frysinger <vapier <AT> gentoo <DOT> org>
CommitDate: Fri Mar 3 18:30:37 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ada3072b
sys-devel/binutils: version bump to 2.28
sys-devel/binutils/Manifest | 2 ++
sys-devel/binutils/binutils-2.28.ebuild | 10 ++++++++++
sys-devel/binutils/binutils-9999.ebuild | 2 +-
3 files changed, 13 insertions(+), 1 deletion(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index da82096b7c8..4b8e5ac29bc 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -4,3 +4,5 @@ DIST binutils-2.26.1-patches-1.0.tar.xz 11212 SHA256 e56e2a6b64b8abe2f4aed1a9b15
DIST binutils-2.26.1.tar.bz2 25595243 SHA256 39c346c87aa4fb14b2f786560aec1d29411b6ec34dce3fe7309fe3dd56949fd8 SHA512 9d9165609fd3b0f20d616f9891fc8e2b466eb13e2bfce40125e12427f8f201d20e2b8322bb6cb2b45e8df812f0e8ac059149f8a1f69ba3ed9d86a35c6a540b67 WHIRLPOOL c33eecdf855dd17314c3b7bbb0060399148d4dba867eb038bfb7555010fd003ba8b5b86480e4df389e19bba7b1fd0b9264291e6af20be4ffd4ff504d2255d003
DIST binutils-2.27-patches-1.0.tar.xz 8852 SHA256 07be45786e1e56498aad2c52a43d4104ccd0ded3c6a84a930486bc418d7fa36d SHA512 489b5fff87886682d8e98eafa2f082e6dcf811d2a693b6c41d76bd1ac50815a6e7d26fb7c9e3811c2d8e0e1dc307557e6ffe46d1d0f7caeb581060cf14bda899 WHIRLPOOL cf73342292a6dd8450a420f62a6a28e1ae38eed2c0b62643619ac002f3e9233ba5a0df19deb862167e88bd2c4a7ef4e002fe4d76f971eba876014d145dc30171
DIST binutils-2.27.tar.bz2 26099568 SHA256 369737ce51587f92466041a97ab7d2358c6d9e1b6490b3940eb09fb0a9a6ac88 SHA512 cf276f84935312361a2ca077e04d0b469d23a3aed979d8ba5d92ea590904ffb2c2e7ed12cc842822bfc402836be86f479660cef3791aa62f3753d8a1a6f564cb WHIRLPOOL d3204b4900529f697285fb1fe622ecc949c43f064e6b83a1cecb1ea8810a214842c729266c9a44537dc0a86d6d2b3ac100f54c721cc284e54f9d6feb90930d15
+DIST binutils-2.28-patches-1.0.tar.xz 8860 SHA256 4349c2fb3a351b57cf9403b2a97e5f89a43d94af6d9666ede27dc5fdfcbaa12a SHA512 4dea18c47b393cb764981a5c5e41131f03ff1d48ad97d806a6d9e20353b34edd6818903dc7e9d386778e0d2df0a664f78272e60b83c10b818319e3978ff5391d WHIRLPOOL f742438e00bd5862f6501e5aac7ea93c64f5a7f493b880d0cfd0b79e6f357781b6e317cd87e3100038426708c24a8e2c077ed2ae46e54fcf0172509da5950c09
+DIST binutils-2.28.tar.bz2 26556365 SHA256 6297433ee120b11b4b0a1c8f3512d7d73501753142ab9e2daa13c5a3edd32a72 SHA512 ede2e4e59a800260eea8c14eafbaee94e30abadafd5c419a3370f9f62213cf027d6400a1d4970b6958bd4d220e675dcd483a708107016e7abd5c99d7392ba8fd WHIRLPOOL 7fb876668c4fd8b10641fb8d831e7d23723ccb9b1051650c76a3a99696d37d120ef969e3c1cc144b0ffd765ef8e8698fe553c39cc65d0b9499a87d4886d6419d
diff --git a/sys-devel/binutils/binutils-2.28.ebuild b/sys-devel/binutils/binutils-2.28.ebuild
new file mode 100644
index 00000000000..8263bd9bfd7
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.28.ebuild
@@ -0,0 +1,10 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+PATCHVER="1.0"
+ELF2FLT_VER=""
+inherit toolchain-binutils
+
+#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index abe9ecf46bc..cf90a61b1d4 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-03-07 20:55 Mike Frysinger
0 siblings, 0 replies; 477+ messages in thread
From: Mike Frysinger @ 2017-03-07 20:55 UTC (permalink / raw
To: gentoo-commits
commit: 967eed65a6b71216ffefe54d670736133559a04e
Author: Mike Frysinger <vapier <AT> gentoo <DOT> org>
AuthorDate: Tue Mar 7 20:55:12 2017 +0000
Commit: Mike Frysinger <vapier <AT> gentoo <DOT> org>
CommitDate: Tue Mar 7 20:55:19 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=967eed65
sys-devel/binutils: mark 2.26.1 arm64/m68k/s390/sh stable
sys-devel/binutils/binutils-2.26.1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.26.1.ebuild b/sys-devel/binutils/binutils-2.26.1.ebuild
index fc398701ccc..22ce4abd710 100644
--- a/sys-devel/binutils/binutils-2.26.1.ebuild
+++ b/sys-devel/binutils/binutils-2.26.1.ebuild
@@ -7,4 +7,4 @@ PATCHVER="1.0"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="~alpha ~amd64 ~arm arm64 ~hppa ~ia64 m68k ~mips ~ppc ~ppc64 s390 sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-03-08 21:58 Michael Weber
0 siblings, 0 replies; 477+ messages in thread
From: Michael Weber @ 2017-03-08 21:58 UTC (permalink / raw
To: gentoo-commits
commit: b1b58004d61910b194350a3aeda58ec56b9c6190
Author: Michael Weber <xmw <AT> gentoo <DOT> org>
AuthorDate: Wed Mar 8 21:57:37 2017 +0000
Commit: Michael Weber <xmw <AT> gentoo <DOT> org>
CommitDate: Wed Mar 8 21:57:37 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b1b58004
sys-devel/binutils: arm ppc ppc64 stable (bug 595288).
Package-Manager: Portage-2.3.4, Repoman-2.3.2
sys-devel/binutils/binutils-2.26.1.ebuild | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.26.1.ebuild b/sys-devel/binutils/binutils-2.26.1.ebuild
index 22ce4abd710..fe59738e853 100644
--- a/sys-devel/binutils/binutils-2.26.1.ebuild
+++ b/sys-devel/binutils/binutils-2.26.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
@@ -7,4 +7,4 @@ PATCHVER="1.0"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="~alpha ~amd64 ~arm arm64 ~hppa ~ia64 m68k ~mips ~ppc ~ppc64 s390 sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~ia64 m68k ~mips ppc ppc64 s390 sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-03-10 5:21 Matt Turner
0 siblings, 0 replies; 477+ messages in thread
From: Matt Turner @ 2017-03-10 5:21 UTC (permalink / raw
To: gentoo-commits
commit: d369d41b0af0197087c8e8e434cc2676431ae1a5
Author: Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 10 05:20:45 2017 +0000
Commit: Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Fri Mar 10 05:20:58 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d369d41b
sys-devel/binutils: sparc stable, bugs 595288 and 611966
sys-devel/binutils/binutils-2.26.1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.26.1.ebuild b/sys-devel/binutils/binutils-2.26.1.ebuild
index fe59738e853..c296e96149a 100644
--- a/sys-devel/binutils/binutils-2.26.1.ebuild
+++ b/sys-devel/binutils/binutils-2.26.1.ebuild
@@ -7,4 +7,4 @@ PATCHVER="1.0"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~ia64 m68k ~mips ppc ppc64 s390 sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~ia64 m68k ~mips ppc ppc64 s390 sh sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-03-10 9:09 Agostino Sarubbo
0 siblings, 0 replies; 477+ messages in thread
From: Agostino Sarubbo @ 2017-03-10 9:09 UTC (permalink / raw
To: gentoo-commits
commit: a2acd5a1c2a0ff95a4142b4b187d419ffb4c4c66
Author: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 10 09:08:51 2017 +0000
Commit: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
CommitDate: Fri Mar 10 09:08:51 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a2acd5a1
sys-devel/binutils: amd64 stable wrt bug #595288
Package-Manager: Portage-2.3.3, Repoman-2.3.1
RepoMan-Options: --include-arches="amd64"
Signed-off-by: Agostino Sarubbo <ago <AT> gentoo.org>
sys-devel/binutils/binutils-2.26.1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.26.1.ebuild b/sys-devel/binutils/binutils-2.26.1.ebuild
index c296e96149a..cca4abd660e 100644
--- a/sys-devel/binutils/binutils-2.26.1.ebuild
+++ b/sys-devel/binutils/binutils-2.26.1.ebuild
@@ -7,4 +7,4 @@ PATCHVER="1.0"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~ia64 m68k ~mips ppc ppc64 s390 sh sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 m68k ~mips ppc ppc64 s390 sh sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-03-10 10:59 Agostino Sarubbo
0 siblings, 0 replies; 477+ messages in thread
From: Agostino Sarubbo @ 2017-03-10 10:59 UTC (permalink / raw
To: gentoo-commits
commit: 121ba7c636985242ce499ad22d4e71b75fa5ac7f
Author: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 10 10:58:34 2017 +0000
Commit: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
CommitDate: Fri Mar 10 10:59:40 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=121ba7c6
sys-devel/binutils: x86 stable wrt bug #595288
Package-Manager: Portage-2.3.3, Repoman-2.3.1
RepoMan-Options: --include-arches="x86"
Signed-off-by: Agostino Sarubbo <ago <AT> gentoo.org>
sys-devel/binutils/binutils-2.26.1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.26.1.ebuild b/sys-devel/binutils/binutils-2.26.1.ebuild
index cca4abd660e..dff6a8e2dfe 100644
--- a/sys-devel/binutils/binutils-2.26.1.ebuild
+++ b/sys-devel/binutils/binutils-2.26.1.ebuild
@@ -7,4 +7,4 @@ PATCHVER="1.0"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 m68k ~mips ppc ppc64 s390 sh sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-03-15 5:47 Jeroen Roovers
0 siblings, 0 replies; 477+ messages in thread
From: Jeroen Roovers @ 2017-03-15 5:47 UTC (permalink / raw
To: gentoo-commits
commit: 5f7e26e8a00acb5f630d9f6d0e12ec02b60218f5
Author: Jeroen Roovers <jer <AT> gentoo <DOT> org>
AuthorDate: Wed Mar 15 05:47:10 2017 +0000
Commit: Jeroen Roovers <jer <AT> gentoo <DOT> org>
CommitDate: Wed Mar 15 05:47:10 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5f7e26e8
sys-devel/binutils: Stable for HPPA (bug #595288).
Package-Manager: Portage-2.3.4, Repoman-2.3.2
RepoMan-Options: --ignore-arches
sys-devel/binutils/binutils-2.26.1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.26.1.ebuild b/sys-devel/binutils/binutils-2.26.1.ebuild
index 5d327c0ffff..be0c15f3fc8 100644
--- a/sys-devel/binutils/binutils-2.26.1.ebuild
+++ b/sys-devel/binutils/binutils-2.26.1.ebuild
@@ -7,4 +7,4 @@ PATCHVER="1.0"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="~alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-03-20 1:05 Matt Turner
0 siblings, 0 replies; 477+ messages in thread
From: Matt Turner @ 2017-03-20 1:05 UTC (permalink / raw
To: gentoo-commits
commit: daa3bde5543e7a832f480cb8b8fd296b028daa6a
Author: Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 20 01:04:05 2017 +0000
Commit: Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Mon Mar 20 01:05:04 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=daa3bde5
sys-devel/binutils: alpha stable, bug 595288
sys-devel/binutils/binutils-2.26.1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.26.1.ebuild b/sys-devel/binutils/binutils-2.26.1.ebuild
index be0c15f3fc8..63894d4eb47 100644
--- a/sys-devel/binutils/binutils-2.26.1.ebuild
+++ b/sys-devel/binutils/binutils-2.26.1.ebuild
@@ -7,4 +7,4 @@ PATCHVER="1.0"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="~alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-06-06 22:23 Matthias Maier
0 siblings, 0 replies; 477+ messages in thread
From: Matthias Maier @ 2017-06-06 22:23 UTC (permalink / raw
To: gentoo-commits
commit: 2f7eb9e2fe785abde175d4f7a041fa64d330fdf7
Author: Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Tue Jun 6 22:04:54 2017 +0000
Commit: Matthias Maier <tamiko <AT> gentoo <DOT> org>
CommitDate: Tue Jun 6 22:23:12 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2f7eb9e2
sys-devel/binutils: 2.28 - multiple security fixes, bug #618514, bug #618516, bug #618520, bug #618826
CVE-2017-9041
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=patch;h=75ec1fdbb797a389e4fe4aaf2e15358a070dcc19
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=patch;h=c4ab9505b53cdc899506ed421fddb7e1f8faf7a3
CVE-2017-9040, CVE-2017-9042
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=7296a62a2a237f6b1ad8db8c38b090e9f592c8cf
CVE-2017-9039
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=82156ab704b08b124d319c0decdbd48b3ca2dac5
CVE-2017-9038
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=f32ba72991d2406b21ab17edc234a2f3fa7fb23d
CVE-2017-8421
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=39ff1b79f687b65f4144ddb379f22587003443fb
CVE-2017-8396, CVE-2017-8397
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=04b31182bf3f8a1a76e995bdfaaaab4c009b9cb2
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=a941291cab71b9ac356e1c03968c177c03e602ab
CVE-2017-8395
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=e63d123268f23a4cbc45ee55fb6dbc7d84729da3
CVE-2017-8394
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=7eacd66b086cabb1daab20890d5481894d4f56b2
CVE-2017-8393
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=bce964aa6c777d236fbd641f2bc7bb931cfe4bf3
CVE-2017-8398
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=d949ff5607b9f595e0eed2ff15fbe5eb84eb3a34
CVE-2017-7614
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=ad32986fdf9da1c8748e47b8b45100398223dba8
[1] https://bugs.gentoo.org/show_bug.cgi?id=618514
[2] https://bugs.gentoo.org/show_bug.cgi?id=618516
[3] https://bugs.gentoo.org/show_bug.cgi?id=618820
[4] https://bugs.gentoo.org/show_bug.cgi?id=618826
[5] https://bugs.gentoo.org/show_bug.cgi?id=618006
Package-Manager: Portage-2.3.6, Repoman-2.3.2
sys-devel/binutils/Manifest | 2 +-
sys-devel/binutils/{binutils-2.28.ebuild => binutils-2.28-r1.ebuild} | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index c13904986a1..b7109f69041 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -4,5 +4,5 @@ DIST binutils-2.26.1-patches-1.0.tar.xz 11212 SHA256 e56e2a6b64b8abe2f4aed1a9b15
DIST binutils-2.26.1.tar.bz2 25595243 SHA256 39c346c87aa4fb14b2f786560aec1d29411b6ec34dce3fe7309fe3dd56949fd8 SHA512 9d9165609fd3b0f20d616f9891fc8e2b466eb13e2bfce40125e12427f8f201d20e2b8322bb6cb2b45e8df812f0e8ac059149f8a1f69ba3ed9d86a35c6a540b67 WHIRLPOOL c33eecdf855dd17314c3b7bbb0060399148d4dba867eb038bfb7555010fd003ba8b5b86480e4df389e19bba7b1fd0b9264291e6af20be4ffd4ff504d2255d003
DIST binutils-2.27-patches-1.1.tar.xz 9828 SHA256 fbabb2c1cb69ad0c83d97ec6342ea663dea12b61cd3858088071f5575d842f6f SHA512 5059a784344e0554965473808b9d72af34f793e5538e82010adbbf586d583ddfd9f5ca637e6ba658e566c406244ae79b2ab5135995bcfedc8a96b9293366199d WHIRLPOOL 23c10c3c71a6d7d5f1fca97dcb77cf3bdb0a4114321a3cb51d88a4549404da63d74c30e6732c1b7fdefc3380d28b2064752155dfd22fa345e62df8df25a9690d
DIST binutils-2.27.tar.bz2 26099568 SHA256 369737ce51587f92466041a97ab7d2358c6d9e1b6490b3940eb09fb0a9a6ac88 SHA512 cf276f84935312361a2ca077e04d0b469d23a3aed979d8ba5d92ea590904ffb2c2e7ed12cc842822bfc402836be86f479660cef3791aa62f3753d8a1a6f564cb WHIRLPOOL d3204b4900529f697285fb1fe622ecc949c43f064e6b83a1cecb1ea8810a214842c729266c9a44537dc0a86d6d2b3ac100f54c721cc284e54f9d6feb90930d15
-DIST binutils-2.28-patches-1.0.tar.xz 8860 SHA256 4349c2fb3a351b57cf9403b2a97e5f89a43d94af6d9666ede27dc5fdfcbaa12a SHA512 4dea18c47b393cb764981a5c5e41131f03ff1d48ad97d806a6d9e20353b34edd6818903dc7e9d386778e0d2df0a664f78272e60b83c10b818319e3978ff5391d WHIRLPOOL f742438e00bd5862f6501e5aac7ea93c64f5a7f493b880d0cfd0b79e6f357781b6e317cd87e3100038426708c24a8e2c077ed2ae46e54fcf0172509da5950c09
+DIST binutils-2.28-patches-1.1.tar.xz 14944 SHA256 a37c0cbbccdf7c7b85521f9ca429e6dd99da6a2103234fa1eaa27c34f3f1e489 SHA512 dc9e639b98ba8cc4a5a535cde116c721ef90182b339cbe802f84bed1c034e0a0bfd74b160f486bd1ef387561d967e539dbfc22e883a4cc1c44ae92b7219b9bdd WHIRLPOOL af81ec47375cd4eb2643c133755c4041a5f042d9a2fb131b58f2c35de436121d45a73f6a0061ff19241e71bf4ec167f26aa22bfead58ac34840bd787515505a0
DIST binutils-2.28.tar.bz2 26556365 SHA256 6297433ee120b11b4b0a1c8f3512d7d73501753142ab9e2daa13c5a3edd32a72 SHA512 ede2e4e59a800260eea8c14eafbaee94e30abadafd5c419a3370f9f62213cf027d6400a1d4970b6958bd4d220e675dcd483a708107016e7abd5c99d7392ba8fd WHIRLPOOL 7fb876668c4fd8b10641fb8d831e7d23723ccb9b1051650c76a3a99696d37d120ef969e3c1cc144b0ffd765ef8e8698fe553c39cc65d0b9499a87d4886d6419d
diff --git a/sys-devel/binutils/binutils-2.28.ebuild b/sys-devel/binutils/binutils-2.28-r1.ebuild
similarity index 95%
rename from sys-devel/binutils/binutils-2.28.ebuild
rename to sys-devel/binutils/binutils-2.28-r1.ebuild
index 8263bd9bfd7..853c0c13d1c 100644
--- a/sys-devel/binutils/binutils-2.28.ebuild
+++ b/sys-devel/binutils/binutils-2.28-r1.ebuild
@@ -3,7 +3,7 @@
EAPI="5"
-PATCHVER="1.0"
+PATCHVER="1.1"
ELF2FLT_VER=""
inherit toolchain-binutils
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-06-06 23:17 Matthias Maier
0 siblings, 0 replies; 477+ messages in thread
From: Matthias Maier @ 2017-06-06 23:17 UTC (permalink / raw
To: gentoo-commits
commit: 0bc11f5337d7ce65201ea2e25359d02b90bab345
Author: Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Tue Jun 6 23:15:36 2017 +0000
Commit: Matthias Maier <tamiko <AT> gentoo <DOT> org>
CommitDate: Tue Jun 6 23:16:58 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0bc11f53
sys-devel/binutils: Keyword 2.28, bug #617822
Package-Manager: Portage-2.3.6, Repoman-2.3.2
sys-devel/binutils/binutils-2.28-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.28-r1.ebuild b/sys-devel/binutils/binutils-2.28-r1.ebuild
index 853c0c13d1c..441d4d8408e 100644
--- a/sys-devel/binutils/binutils-2.28-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.28-r1.ebuild
@@ -7,4 +7,4 @@ PATCHVER="1.1"
ELF2FLT_VER=""
inherit toolchain-binutils
-#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-06-07 14:47 Matthias Maier
0 siblings, 0 replies; 477+ messages in thread
From: Matthias Maier @ 2017-06-07 14:47 UTC (permalink / raw
To: gentoo-commits
commit: 3e46392cbe2fa4b78c9d47f611c526e62dc88dac
Author: Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Wed Jun 7 14:46:44 2017 +0000
Commit: Matthias Maier <tamiko <AT> gentoo <DOT> org>
CommitDate: Wed Jun 7 14:47:23 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3e46392c
sys-devel/binutils: 2.28 - multiple security fixes, bug #621130
CVE-2017-6969
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=b814a36d3440de95f2ac6eaa4fc7935c322ea456
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=43a444f9c5bfd44b4304eafd78338e21d54bea14
CVE-2017-6966
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=f84ce13b6708801ca1d6289b7c4003e2f5a6d7f9
CVE-2017-6965
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=03f7786e2f440b9892b1c34a58fb26222ce1b493
[1] https://bugs.gentoo.org/show_bug.cgi?id=621130
Package-Manager: Portage-2.3.6, Repoman-2.3.2
sys-devel/binutils/Manifest | 2 +-
sys-devel/binutils/{binutils-2.28-r1.ebuild => binutils-2.28-r2.ebuild} | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index b7109f69041..bc8e3b14bfd 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -4,5 +4,5 @@ DIST binutils-2.26.1-patches-1.0.tar.xz 11212 SHA256 e56e2a6b64b8abe2f4aed1a9b15
DIST binutils-2.26.1.tar.bz2 25595243 SHA256 39c346c87aa4fb14b2f786560aec1d29411b6ec34dce3fe7309fe3dd56949fd8 SHA512 9d9165609fd3b0f20d616f9891fc8e2b466eb13e2bfce40125e12427f8f201d20e2b8322bb6cb2b45e8df812f0e8ac059149f8a1f69ba3ed9d86a35c6a540b67 WHIRLPOOL c33eecdf855dd17314c3b7bbb0060399148d4dba867eb038bfb7555010fd003ba8b5b86480e4df389e19bba7b1fd0b9264291e6af20be4ffd4ff504d2255d003
DIST binutils-2.27-patches-1.1.tar.xz 9828 SHA256 fbabb2c1cb69ad0c83d97ec6342ea663dea12b61cd3858088071f5575d842f6f SHA512 5059a784344e0554965473808b9d72af34f793e5538e82010adbbf586d583ddfd9f5ca637e6ba658e566c406244ae79b2ab5135995bcfedc8a96b9293366199d WHIRLPOOL 23c10c3c71a6d7d5f1fca97dcb77cf3bdb0a4114321a3cb51d88a4549404da63d74c30e6732c1b7fdefc3380d28b2064752155dfd22fa345e62df8df25a9690d
DIST binutils-2.27.tar.bz2 26099568 SHA256 369737ce51587f92466041a97ab7d2358c6d9e1b6490b3940eb09fb0a9a6ac88 SHA512 cf276f84935312361a2ca077e04d0b469d23a3aed979d8ba5d92ea590904ffb2c2e7ed12cc842822bfc402836be86f479660cef3791aa62f3753d8a1a6f564cb WHIRLPOOL d3204b4900529f697285fb1fe622ecc949c43f064e6b83a1cecb1ea8810a214842c729266c9a44537dc0a86d6d2b3ac100f54c721cc284e54f9d6feb90930d15
-DIST binutils-2.28-patches-1.1.tar.xz 14944 SHA256 a37c0cbbccdf7c7b85521f9ca429e6dd99da6a2103234fa1eaa27c34f3f1e489 SHA512 dc9e639b98ba8cc4a5a535cde116c721ef90182b339cbe802f84bed1c034e0a0bfd74b160f486bd1ef387561d967e539dbfc22e883a4cc1c44ae92b7219b9bdd WHIRLPOOL af81ec47375cd4eb2643c133755c4041a5f042d9a2fb131b58f2c35de436121d45a73f6a0061ff19241e71bf4ec167f26aa22bfead58ac34840bd787515505a0
+DIST binutils-2.28-patches-1.2.tar.xz 17572 SHA256 d3fd98b218b0469f216a65676fdc899b9d777ea2d2f4b83af3d7fa6bbd36ca41 SHA512 00453fc1e3290868c23e2ca32214b5229fca23d4a551e4e136a62946b584992e9ef3f3e07819e35fb4eb83f083145330078db2631d5a089da7b5129d234aa856 WHIRLPOOL e52ca6eb5cc03fb0c3ebe27366019d38628a88d949dff873dc646ea1354ec432080818ddb212a6e94148bee3b230288eb245a5472c9c6e6ae9a5bdd162578cc4
DIST binutils-2.28.tar.bz2 26556365 SHA256 6297433ee120b11b4b0a1c8f3512d7d73501753142ab9e2daa13c5a3edd32a72 SHA512 ede2e4e59a800260eea8c14eafbaee94e30abadafd5c419a3370f9f62213cf027d6400a1d4970b6958bd4d220e675dcd483a708107016e7abd5c99d7392ba8fd WHIRLPOOL 7fb876668c4fd8b10641fb8d831e7d23723ccb9b1051650c76a3a99696d37d120ef969e3c1cc144b0ffd765ef8e8698fe553c39cc65d0b9499a87d4886d6419d
diff --git a/sys-devel/binutils/binutils-2.28-r1.ebuild b/sys-devel/binutils/binutils-2.28-r2.ebuild
similarity index 95%
rename from sys-devel/binutils/binutils-2.28-r1.ebuild
rename to sys-devel/binutils/binutils-2.28-r2.ebuild
index 441d4d8408e..b993a3eecc4 100644
--- a/sys-devel/binutils/binutils-2.28-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.28-r2.ebuild
@@ -3,7 +3,7 @@
EAPI="5"
-PATCHVER="1.1"
+PATCHVER="1.2"
ELF2FLT_VER=""
inherit toolchain-binutils
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-06-12 12:41 Agostino Sarubbo
0 siblings, 0 replies; 477+ messages in thread
From: Agostino Sarubbo @ 2017-06-12 12:41 UTC (permalink / raw
To: gentoo-commits
commit: ed49ae933d6c649da9c2f2a61b42d4c04f02a356
Author: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
AuthorDate: Mon Jun 12 12:41:44 2017 +0000
Commit: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
CommitDate: Mon Jun 12 12:41:44 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ed49ae93
sys-devel/binutils: amd64 stable wrt bug #621130
Package-Manager: Portage-2.3.5, Repoman-2.3.1
RepoMan-Options: --include-arches="amd64"
Signed-off-by: Agostino Sarubbo <ago <AT> gentoo.org>
sys-devel/binutils/binutils-2.28-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.28-r2.ebuild b/sys-devel/binutils/binutils-2.28-r2.ebuild
index b993a3eecc4..d5692a5f820 100644
--- a/sys-devel/binutils/binutils-2.28-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.28-r2.ebuild
@@ -7,4 +7,4 @@ PATCHVER="1.2"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-06-13 18:23 Markus Meier
0 siblings, 0 replies; 477+ messages in thread
From: Markus Meier @ 2017-06-13 18:23 UTC (permalink / raw
To: gentoo-commits
commit: a2f55b8c04da89f7c7f3f1221b83bbb19deb3163
Author: Markus Meier <maekke <AT> gentoo <DOT> org>
AuthorDate: Tue Jun 13 18:23:00 2017 +0000
Commit: Markus Meier <maekke <AT> gentoo <DOT> org>
CommitDate: Tue Jun 13 18:23:00 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a2f55b8c
sys-devel/binutils: arm stable, bug #621130
Package-Manager: Portage-2.3.5, Repoman-2.3.1
RepoMan-Options: --include-arches="arm"
sys-devel/binutils/binutils-2.28-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.28-r2.ebuild b/sys-devel/binutils/binutils-2.28-r2.ebuild
index 02de9ddd131..38f68e5a2b5 100644
--- a/sys-devel/binutils/binutils-2.28-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.28-r2.ebuild
@@ -7,4 +7,4 @@ PATCHVER="1.2"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-06-21 21:55 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2017-06-21 21:55 UTC (permalink / raw
To: gentoo-commits
commit: c45c1cd293d4f0cca77682213bb6aefc2a0f78c4
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Wed Jun 21 21:55:00 2017 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Wed Jun 21 21:55:38 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c45c1cd2
sys-devel/binutils: ia64 stable, bug #621130
Package-Manager: Portage-2.3.6, Repoman-2.3.2
sys-devel/binutils/binutils-2.28-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.28-r2.ebuild b/sys-devel/binutils/binutils-2.28-r2.ebuild
index 2923d33a859..f98ef9e98cb 100644
--- a/sys-devel/binutils/binutils-2.28-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.28-r2.ebuild
@@ -7,4 +7,4 @@ PATCHVER="1.2"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-06-23 7:48 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2017-06-23 7:48 UTC (permalink / raw
To: gentoo-commits
commit: 9b6f7ed7ea731cb39c5138259892db694a88b3ad
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Fri Jun 23 07:47:31 2017 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Fri Jun 23 07:47:50 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9b6f7ed7
sys-devel/binutils: revert back to ~ia64, bug #622500
Package-Manager: Portage-2.3.6, Repoman-2.3.2
sys-devel/binutils/binutils-2.28-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.28-r2.ebuild b/sys-devel/binutils/binutils-2.28-r2.ebuild
index f98ef9e98cb..2923d33a859 100644
--- a/sys-devel/binutils/binutils-2.28-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.28-r2.ebuild
@@ -7,4 +7,4 @@ PATCHVER="1.2"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="alpha amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-08-02 0:11 Matthias Maier
0 siblings, 0 replies; 477+ messages in thread
From: Matthias Maier @ 2017-08-02 0:11 UTC (permalink / raw
To: gentoo-commits
commit: cf5003fe2fc3b45f366d0a3c6fdf834ed9d54321
Author: Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 2 00:05:14 2017 +0000
Commit: Matthias Maier <tamiko <AT> gentoo <DOT> org>
CommitDate: Wed Aug 2 00:05:14 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cf5003fe
sys-devel/binutils: version bump to 2.28.1, patchset 1.0
Includes fixes for bugs #622036 #622500 #622886 #624524 #624702
Package-Manager: Portage-2.3.6, Repoman-2.3.3
sys-devel/binutils/Manifest | 2 ++
sys-devel/binutils/binutils-2.28.1.ebuild | 11 +++++++++++
2 files changed, 13 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index bc8e3b14bfd..adb01b3fe50 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -5,4 +5,6 @@ DIST binutils-2.26.1.tar.bz2 25595243 SHA256 39c346c87aa4fb14b2f786560aec1d29411
DIST binutils-2.27-patches-1.1.tar.xz 9828 SHA256 fbabb2c1cb69ad0c83d97ec6342ea663dea12b61cd3858088071f5575d842f6f SHA512 5059a784344e0554965473808b9d72af34f793e5538e82010adbbf586d583ddfd9f5ca637e6ba658e566c406244ae79b2ab5135995bcfedc8a96b9293366199d WHIRLPOOL 23c10c3c71a6d7d5f1fca97dcb77cf3bdb0a4114321a3cb51d88a4549404da63d74c30e6732c1b7fdefc3380d28b2064752155dfd22fa345e62df8df25a9690d
DIST binutils-2.27.tar.bz2 26099568 SHA256 369737ce51587f92466041a97ab7d2358c6d9e1b6490b3940eb09fb0a9a6ac88 SHA512 cf276f84935312361a2ca077e04d0b469d23a3aed979d8ba5d92ea590904ffb2c2e7ed12cc842822bfc402836be86f479660cef3791aa62f3753d8a1a6f564cb WHIRLPOOL d3204b4900529f697285fb1fe622ecc949c43f064e6b83a1cecb1ea8810a214842c729266c9a44537dc0a86d6d2b3ac100f54c721cc284e54f9d6feb90930d15
DIST binutils-2.28-patches-1.2.tar.xz 17572 SHA256 d3fd98b218b0469f216a65676fdc899b9d777ea2d2f4b83af3d7fa6bbd36ca41 SHA512 00453fc1e3290868c23e2ca32214b5229fca23d4a551e4e136a62946b584992e9ef3f3e07819e35fb4eb83f083145330078db2631d5a089da7b5129d234aa856 WHIRLPOOL e52ca6eb5cc03fb0c3ebe27366019d38628a88d949dff873dc646ea1354ec432080818ddb212a6e94148bee3b230288eb245a5472c9c6e6ae9a5bdd162578cc4
+DIST binutils-2.28.1-patches-1.0.tar.xz 19772 SHA256 50cfce6ef7f546dcdb983a8b632507b5cdd51095e4acf1f15bfcd68027d438a4 SHA512 c2c7d22e1013e79040c4dcb4d70649e78a070976ba3a4bc2ceb4805827b9d93eea1805c85db4fcb6b31be5218c3d7b42a4990437a7c01dc01fd7e9dedb606828 WHIRLPOOL 2369fce643cc9b83724b486521621d744de0eaf3d95fdd34c7f1c785bc400f3ed31ae6105001870f33539664d84dd9caae854725e20007f136929d2ece755247
+DIST binutils-2.28.1.tar.bz2 28120394 SHA256 6924999be62d4464458eb53c11f27277cfb63755df8c1cd47b8d15d02c1942ea SHA512 5ec5212497b0fa8324f6a0884c284cb71c01942bbd39356d1ae745a5c9d97274c10f9d9c723f4bef6f0217662dfcd0c36e4e955a7599b11217658dc7b97553eb WHIRLPOOL 5c616f719827e5da7db23e89c761323cd4828b4779e79c3983d3ea429bce57ed40219982c478237b4dd728b77bae0a6447d912d96490ed1f5fc279ba5fd73bc6
DIST binutils-2.28.tar.bz2 26556365 SHA256 6297433ee120b11b4b0a1c8f3512d7d73501753142ab9e2daa13c5a3edd32a72 SHA512 ede2e4e59a800260eea8c14eafbaee94e30abadafd5c419a3370f9f62213cf027d6400a1d4970b6958bd4d220e675dcd483a708107016e7abd5c99d7392ba8fd WHIRLPOOL 7fb876668c4fd8b10641fb8d831e7d23723ccb9b1051650c76a3a99696d37d120ef969e3c1cc144b0ffd765ef8e8698fe553c39cc65d0b9499a87d4886d6419d
diff --git a/sys-devel/binutils/binutils-2.28.1.ebuild b/sys-devel/binutils/binutils-2.28.1.ebuild
new file mode 100644
index 00000000000..de07784cd4c
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.28.1.ebuild
@@ -0,0 +1,11 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+PATCHVER="1.0"
+ELF2FLT_VER=""
+inherit toolchain-binutils
+
+# KEYWORDS="alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS=""
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-08-02 16:57 Matthias Maier
0 siblings, 0 replies; 477+ messages in thread
From: Matthias Maier @ 2017-08-02 16:57 UTC (permalink / raw
To: gentoo-commits
commit: 8f78fa8a75951467c21d9578f90af5f655f43f3f
Author: Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 2 16:47:21 2017 +0000
Commit: Matthias Maier <tamiko <AT> gentoo <DOT> org>
CommitDate: Wed Aug 2 16:47:59 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8f78fa8a
sys-devel/binutils: version bump to 2.29, patchset 1.0
Package-Manager: Portage-2.3.6, Repoman-2.3.3
sys-devel/binutils/Manifest | 2 ++
sys-devel/binutils/binutils-2.29.ebuild | 11 +++++++++++
2 files changed, 13 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index adb01b3fe50..2eee5a0c70b 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -8,3 +8,5 @@ DIST binutils-2.28-patches-1.2.tar.xz 17572 SHA256 d3fd98b218b0469f216a65676fdc8
DIST binutils-2.28.1-patches-1.0.tar.xz 19772 SHA256 50cfce6ef7f546dcdb983a8b632507b5cdd51095e4acf1f15bfcd68027d438a4 SHA512 c2c7d22e1013e79040c4dcb4d70649e78a070976ba3a4bc2ceb4805827b9d93eea1805c85db4fcb6b31be5218c3d7b42a4990437a7c01dc01fd7e9dedb606828 WHIRLPOOL 2369fce643cc9b83724b486521621d744de0eaf3d95fdd34c7f1c785bc400f3ed31ae6105001870f33539664d84dd9caae854725e20007f136929d2ece755247
DIST binutils-2.28.1.tar.bz2 28120394 SHA256 6924999be62d4464458eb53c11f27277cfb63755df8c1cd47b8d15d02c1942ea SHA512 5ec5212497b0fa8324f6a0884c284cb71c01942bbd39356d1ae745a5c9d97274c10f9d9c723f4bef6f0217662dfcd0c36e4e955a7599b11217658dc7b97553eb WHIRLPOOL 5c616f719827e5da7db23e89c761323cd4828b4779e79c3983d3ea429bce57ed40219982c478237b4dd728b77bae0a6447d912d96490ed1f5fc279ba5fd73bc6
DIST binutils-2.28.tar.bz2 26556365 SHA256 6297433ee120b11b4b0a1c8f3512d7d73501753142ab9e2daa13c5a3edd32a72 SHA512 ede2e4e59a800260eea8c14eafbaee94e30abadafd5c419a3370f9f62213cf027d6400a1d4970b6958bd4d220e675dcd483a708107016e7abd5c99d7392ba8fd WHIRLPOOL 7fb876668c4fd8b10641fb8d831e7d23723ccb9b1051650c76a3a99696d37d120ef969e3c1cc144b0ffd765ef8e8698fe553c39cc65d0b9499a87d4886d6419d
+DIST binutils-2.29-patches-1.0.tar.xz 7548 SHA256 8ce4d1ea1224a305c4e36529e02dba87306075638ba0415b69ceeccedc77cd6e SHA512 5375bfb1b796b7692cf2adfc41bd2ae2e6dc19ff497db5f6beb35a456981b3adb8552ef14f32382faf655aa40da86c2d44177a658ec71e1c0e228dc27a4f2e18 WHIRLPOOL 73d2b78ea18e3427442bcb24440f671c1d35c0b559bf2141f30052b2bb8d6a8a6e29994cac741e4e50071c716d761f32b36358487a176d67e8cd226dfaaeafc2
+DIST binutils-2.29.tar.bz2 29073316 SHA256 29a29549869039aad75fdf507ac30366da5ad0b974fbff4a8e7148dbf4f40ebf SHA512 8148587d7e4f14ebcbcb3f984b116deaae5d4008228628acde14bc242a64a4b53faf1f6077a2c4ca4750e2f254b698ba506bd657f79e1202e87e7029b0069337 WHIRLPOOL 62b3e9ff6f85f8f4a13b71361f5abc4081a70de560931dcaaece1daef04c6bc7d3e0085cbacff0abbb750c4779863d45bc0d8d17273965472992c6b61b5cab20
diff --git a/sys-devel/binutils/binutils-2.29.ebuild b/sys-devel/binutils/binutils-2.29.ebuild
new file mode 100644
index 00000000000..88e0cf12036
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.29.ebuild
@@ -0,0 +1,11 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+PATCHVER="1.0"
+ELF2FLT_VER=""
+inherit toolchain-binutils
+
+#KEYWORDS="alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS=""
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-08-03 7:11 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2017-08-03 7:11 UTC (permalink / raw
To: gentoo-commits
commit: 4b33d5f877498710b827188096bd909fc4dc3185
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 2 21:47:23 2017 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Thu Aug 3 07:11:31 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4b33d5f8
sys-devel/binutils: keyword 2.28.1 everywhere
Package-Manager: Portage-2.3.6, Repoman-2.3.3
sys-devel/binutils/binutils-2.28.1.ebuild | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.28.1.ebuild b/sys-devel/binutils/binutils-2.28.1.ebuild
index de07784cd4c..6fafa8ee88a 100644
--- a/sys-devel/binutils/binutils-2.28.1.ebuild
+++ b/sys-devel/binutils/binutils-2.28.1.ebuild
@@ -7,5 +7,4 @@ PATCHVER="1.0"
ELF2FLT_VER=""
inherit toolchain-binutils
-# KEYWORDS="alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
-KEYWORDS=""
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-08-07 7:40 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2017-08-07 7:40 UTC (permalink / raw
To: gentoo-commits
commit: 8a0fa3d7e8c98f5e4d5f9c6beb13668243eefcb9
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Mon Aug 7 07:38:29 2017 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Mon Aug 7 07:40:18 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8a0fa3d7
sys-devel/binutils: stable 2.28.1 for ia64, bug #624524
Package-Manager: Portage-2.3.6, Repoman-2.3.3
RepoMan-Options: --include-arches="ia64"
sys-devel/binutils/binutils-2.28.1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.28.1.ebuild b/sys-devel/binutils/binutils-2.28.1.ebuild
index 6fafa8ee88a..607dac950c3 100644
--- a/sys-devel/binutils/binutils-2.28.1.ebuild
+++ b/sys-devel/binutils/binutils-2.28.1.ebuild
@@ -7,4 +7,4 @@ PATCHVER="1.0"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-08-08 20:41 Markus Meier
0 siblings, 0 replies; 477+ messages in thread
From: Markus Meier @ 2017-08-08 20:41 UTC (permalink / raw
To: gentoo-commits
commit: 1d12fafe5ab80b1ee630b535154ad7db110a733d
Author: Markus Meier <maekke <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 8 20:40:34 2017 +0000
Commit: Markus Meier <maekke <AT> gentoo <DOT> org>
CommitDate: Tue Aug 8 20:40:34 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1d12fafe
sys-devel/binutils: arm stable, bug #624524
Package-Manager: Portage-2.3.6, Repoman-2.3.1
RepoMan-Options: --include-arches="arm"
sys-devel/binutils/binutils-2.28.1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.28.1.ebuild b/sys-devel/binutils/binutils-2.28.1.ebuild
index 607dac950c3..28a5cb35930 100644
--- a/sys-devel/binutils/binutils-2.28.1.ebuild
+++ b/sys-devel/binutils/binutils-2.28.1.ebuild
@@ -7,4 +7,4 @@ PATCHVER="1.0"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="~alpha ~amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-08-25 21:31 Mikle Kolyada
0 siblings, 0 replies; 477+ messages in thread
From: Mikle Kolyada @ 2017-08-25 21:31 UTC (permalink / raw
To: gentoo-commits
commit: 86d69c6cb061a4f429a8c24cf9c66fd4962adbb5
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 25 21:31:00 2017 +0000
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Fri Aug 25 21:31:00 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=86d69c6c
sys-devel/binutils: amd64 stable wrt bug #624524
Package-Manager: Portage-2.3.6, Repoman-2.3.1
sys-devel/binutils/binutils-2.28.1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.28.1.ebuild b/sys-devel/binutils/binutils-2.28.1.ebuild
index 28a5cb35930..ae5376e1d71 100644
--- a/sys-devel/binutils/binutils-2.28.1.ebuild
+++ b/sys-devel/binutils/binutils-2.28.1.ebuild
@@ -7,4 +7,4 @@ PATCHVER="1.0"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="~alpha ~amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-08-25 22:34 Matt Turner
0 siblings, 0 replies; 477+ messages in thread
From: Matt Turner @ 2017-08-25 22:34 UTC (permalink / raw
To: gentoo-commits
commit: 400bc0efcaf35ad425031ba90ae6b17739f04fa0
Author: Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 25 18:55:48 2017 +0000
Commit: Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Fri Aug 25 22:33:08 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=400bc0ef
sys-devel/binutils-2.28.1: alpha stable, bug 624524
sys-devel/binutils/binutils-2.28.1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.28.1.ebuild b/sys-devel/binutils/binutils-2.28.1.ebuild
index ae5376e1d71..d2018ccceef 100644
--- a/sys-devel/binutils/binutils-2.28.1.ebuild
+++ b/sys-devel/binutils/binutils-2.28.1.ebuild
@@ -7,4 +7,4 @@ PATCHVER="1.0"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-08-31 1:15 Matt Turner
0 siblings, 0 replies; 477+ messages in thread
From: Matt Turner @ 2017-08-31 1:15 UTC (permalink / raw
To: gentoo-commits
commit: 92dd466e3818bef63382ccec32d339b59bfb754f
Author: Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 29 19:46:38 2017 +0000
Commit: Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Thu Aug 31 01:13:40 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=92dd466e
sys-devel/binutils-2.28.1: ppc stable, bug 624524
sys-devel/binutils/binutils-2.28.1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.28.1.ebuild b/sys-devel/binutils/binutils-2.28.1.ebuild
index d2018ccceef..ea05c8ea2df 100644
--- a/sys-devel/binutils/binutils-2.28.1.ebuild
+++ b/sys-devel/binutils/binutils-2.28.1.ebuild
@@ -7,4 +7,4 @@ PATCHVER="1.0"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="alpha amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-08-31 1:15 Matt Turner
0 siblings, 0 replies; 477+ messages in thread
From: Matt Turner @ 2017-08-31 1:15 UTC (permalink / raw
To: gentoo-commits
commit: d9ecedb4759c4eeb65d508314628c15da88f9b7c
Author: Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 29 19:46:39 2017 +0000
Commit: Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Thu Aug 31 01:13:40 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d9ecedb4
sys-devel/binutils-2.28.1: ppc64 stable, bug 624524
sys-devel/binutils/binutils-2.28.1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.28.1.ebuild b/sys-devel/binutils/binutils-2.28.1.ebuild
index ea05c8ea2df..d5b85d3f99a 100644
--- a/sys-devel/binutils/binutils-2.28.1.ebuild
+++ b/sys-devel/binutils/binutils-2.28.1.ebuild
@@ -7,4 +7,4 @@ PATCHVER="1.0"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="alpha amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-09-07 20:59 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2017-09-07 20:59 UTC (permalink / raw
To: gentoo-commits
commit: 469c446664cb7bae0f12ab0599ec9ed3ba68676f
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Thu Sep 7 20:57:34 2017 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Thu Sep 7 20:57:34 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=469c4466
sys-devel/binutils: stable 2.28.1 for sparc, bug #624524 (thanks to Dakon)
Package-Manager: Portage-2.3.8, Repoman-2.3.3
RepoMan-Options: --include-arches="sparc"
sys-devel/binutils/binutils-2.28.1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.28.1.ebuild b/sys-devel/binutils/binutils-2.28.1.ebuild
index d5b85d3f99a..6f5950dce38 100644
--- a/sys-devel/binutils/binutils-2.28.1.ebuild
+++ b/sys-devel/binutils/binutils-2.28.1.ebuild
@@ -7,4 +7,4 @@ PATCHVER="1.0"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="alpha amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-09-11 21:02 Thomas Deutschmann
0 siblings, 0 replies; 477+ messages in thread
From: Thomas Deutschmann @ 2017-09-11 21:02 UTC (permalink / raw
To: gentoo-commits
commit: 0c6ff9583283e9884a45f7feb8ef5677c0a4f0bb
Author: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 11 20:40:13 2017 +0000
Commit: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Mon Sep 11 21:01:49 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0c6ff958
sys-devel/binutils: x86 stable (bug #624524)
Package-Manager: Portage-2.3.8, Repoman-2.3.3
sys-devel/binutils/binutils-2.28.1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.28.1.ebuild b/sys-devel/binutils/binutils-2.28.1.ebuild
index 6f5950dce38..bf3081deef9 100644
--- a/sys-devel/binutils/binutils-2.28.1.ebuild
+++ b/sys-devel/binutils/binutils-2.28.1.ebuild
@@ -7,4 +7,4 @@ PATCHVER="1.0"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="alpha amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-09-14 8:26 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2017-09-14 8:26 UTC (permalink / raw
To: gentoo-commits
commit: 5532de3c197c3d93e4e5d6f5125be830c3a614e8
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Thu Sep 14 08:26:12 2017 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Thu Sep 14 08:26:20 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5532de3c
sys-devel/binutils: stable 2.28.1 for hppa, bug #624524 (thanks to Rolf Eike Beer)
Package-Manager: Portage-2.3.8, Repoman-2.3.3
RepoMan-Options: --include-arches="hppa"
sys-devel/binutils/binutils-2.28.1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.28.1.ebuild b/sys-devel/binutils/binutils-2.28.1.ebuild
index bf3081deef9..d57f8f8e717 100644
--- a/sys-devel/binutils/binutils-2.28.1.ebuild
+++ b/sys-devel/binutils/binutils-2.28.1.ebuild
@@ -7,4 +7,4 @@ PATCHVER="1.0"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="alpha amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-09-14 18:59 Andreas Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas Hüttel @ 2017-09-14 18:59 UTC (permalink / raw
To: gentoo-commits
commit: 6817c96d944966f38e20677926330cedb6c3a800
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Thu Sep 14 18:55:20 2017 +0000
Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Thu Sep 14 18:56:13 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6817c96d
sys-devel/binutils: Restore keywords for 2.29
Package-Manager: Portage-2.3.8, Repoman-2.3.3
sys-devel/binutils/binutils-2.29.ebuild | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.29.ebuild b/sys-devel/binutils/binutils-2.29.ebuild
index 88e0cf12036..6fafa8ee88a 100644
--- a/sys-devel/binutils/binutils-2.29.ebuild
+++ b/sys-devel/binutils/binutils-2.29.ebuild
@@ -7,5 +7,4 @@ PATCHVER="1.0"
ELF2FLT_VER=""
inherit toolchain-binutils
-#KEYWORDS="alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
-KEYWORDS=""
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-09-14 19:06 Andreas Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas Hüttel @ 2017-09-14 19:06 UTC (permalink / raw
To: gentoo-commits
commit: 1f064ba5ba69731c926832a2258e75cdd0e24945
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Thu Sep 14 19:01:31 2017 +0000
Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Thu Sep 14 19:05:55 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1f064ba5
sys-devel/binutils: Partial cleanup
Package-Manager: Portage-2.3.8, Repoman-2.3.3
sys-devel/binutils/Manifest | 2 --
sys-devel/binutils/binutils-2.28-r2.ebuild | 10 ----------
2 files changed, 12 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 2eee5a0c70b..447fb9b14ba 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -4,9 +4,7 @@ DIST binutils-2.26.1-patches-1.0.tar.xz 11212 SHA256 e56e2a6b64b8abe2f4aed1a9b15
DIST binutils-2.26.1.tar.bz2 25595243 SHA256 39c346c87aa4fb14b2f786560aec1d29411b6ec34dce3fe7309fe3dd56949fd8 SHA512 9d9165609fd3b0f20d616f9891fc8e2b466eb13e2bfce40125e12427f8f201d20e2b8322bb6cb2b45e8df812f0e8ac059149f8a1f69ba3ed9d86a35c6a540b67 WHIRLPOOL c33eecdf855dd17314c3b7bbb0060399148d4dba867eb038bfb7555010fd003ba8b5b86480e4df389e19bba7b1fd0b9264291e6af20be4ffd4ff504d2255d003
DIST binutils-2.27-patches-1.1.tar.xz 9828 SHA256 fbabb2c1cb69ad0c83d97ec6342ea663dea12b61cd3858088071f5575d842f6f SHA512 5059a784344e0554965473808b9d72af34f793e5538e82010adbbf586d583ddfd9f5ca637e6ba658e566c406244ae79b2ab5135995bcfedc8a96b9293366199d WHIRLPOOL 23c10c3c71a6d7d5f1fca97dcb77cf3bdb0a4114321a3cb51d88a4549404da63d74c30e6732c1b7fdefc3380d28b2064752155dfd22fa345e62df8df25a9690d
DIST binutils-2.27.tar.bz2 26099568 SHA256 369737ce51587f92466041a97ab7d2358c6d9e1b6490b3940eb09fb0a9a6ac88 SHA512 cf276f84935312361a2ca077e04d0b469d23a3aed979d8ba5d92ea590904ffb2c2e7ed12cc842822bfc402836be86f479660cef3791aa62f3753d8a1a6f564cb WHIRLPOOL d3204b4900529f697285fb1fe622ecc949c43f064e6b83a1cecb1ea8810a214842c729266c9a44537dc0a86d6d2b3ac100f54c721cc284e54f9d6feb90930d15
-DIST binutils-2.28-patches-1.2.tar.xz 17572 SHA256 d3fd98b218b0469f216a65676fdc899b9d777ea2d2f4b83af3d7fa6bbd36ca41 SHA512 00453fc1e3290868c23e2ca32214b5229fca23d4a551e4e136a62946b584992e9ef3f3e07819e35fb4eb83f083145330078db2631d5a089da7b5129d234aa856 WHIRLPOOL e52ca6eb5cc03fb0c3ebe27366019d38628a88d949dff873dc646ea1354ec432080818ddb212a6e94148bee3b230288eb245a5472c9c6e6ae9a5bdd162578cc4
DIST binutils-2.28.1-patches-1.0.tar.xz 19772 SHA256 50cfce6ef7f546dcdb983a8b632507b5cdd51095e4acf1f15bfcd68027d438a4 SHA512 c2c7d22e1013e79040c4dcb4d70649e78a070976ba3a4bc2ceb4805827b9d93eea1805c85db4fcb6b31be5218c3d7b42a4990437a7c01dc01fd7e9dedb606828 WHIRLPOOL 2369fce643cc9b83724b486521621d744de0eaf3d95fdd34c7f1c785bc400f3ed31ae6105001870f33539664d84dd9caae854725e20007f136929d2ece755247
DIST binutils-2.28.1.tar.bz2 28120394 SHA256 6924999be62d4464458eb53c11f27277cfb63755df8c1cd47b8d15d02c1942ea SHA512 5ec5212497b0fa8324f6a0884c284cb71c01942bbd39356d1ae745a5c9d97274c10f9d9c723f4bef6f0217662dfcd0c36e4e955a7599b11217658dc7b97553eb WHIRLPOOL 5c616f719827e5da7db23e89c761323cd4828b4779e79c3983d3ea429bce57ed40219982c478237b4dd728b77bae0a6447d912d96490ed1f5fc279ba5fd73bc6
-DIST binutils-2.28.tar.bz2 26556365 SHA256 6297433ee120b11b4b0a1c8f3512d7d73501753142ab9e2daa13c5a3edd32a72 SHA512 ede2e4e59a800260eea8c14eafbaee94e30abadafd5c419a3370f9f62213cf027d6400a1d4970b6958bd4d220e675dcd483a708107016e7abd5c99d7392ba8fd WHIRLPOOL 7fb876668c4fd8b10641fb8d831e7d23723ccb9b1051650c76a3a99696d37d120ef969e3c1cc144b0ffd765ef8e8698fe553c39cc65d0b9499a87d4886d6419d
DIST binutils-2.29-patches-1.0.tar.xz 7548 SHA256 8ce4d1ea1224a305c4e36529e02dba87306075638ba0415b69ceeccedc77cd6e SHA512 5375bfb1b796b7692cf2adfc41bd2ae2e6dc19ff497db5f6beb35a456981b3adb8552ef14f32382faf655aa40da86c2d44177a658ec71e1c0e228dc27a4f2e18 WHIRLPOOL 73d2b78ea18e3427442bcb24440f671c1d35c0b559bf2141f30052b2bb8d6a8a6e29994cac741e4e50071c716d761f32b36358487a176d67e8cd226dfaaeafc2
DIST binutils-2.29.tar.bz2 29073316 SHA256 29a29549869039aad75fdf507ac30366da5ad0b974fbff4a8e7148dbf4f40ebf SHA512 8148587d7e4f14ebcbcb3f984b116deaae5d4008228628acde14bc242a64a4b53faf1f6077a2c4ca4750e2f254b698ba506bd657f79e1202e87e7029b0069337 WHIRLPOOL 62b3e9ff6f85f8f4a13b71361f5abc4081a70de560931dcaaece1daef04c6bc7d3e0085cbacff0abbb750c4779863d45bc0d8d17273965472992c6b61b5cab20
diff --git a/sys-devel/binutils/binutils-2.28-r2.ebuild b/sys-devel/binutils/binutils-2.28-r2.ebuild
deleted file mode 100644
index 2923d33a859..00000000000
--- a/sys-devel/binutils/binutils-2.28-r2.ebuild
+++ /dev/null
@@ -1,10 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-PATCHVER="1.2"
-ELF2FLT_VER=""
-inherit toolchain-binutils
-
-KEYWORDS="alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-09-25 23:18 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2017-09-25 23:18 UTC (permalink / raw
To: gentoo-commits
commit: c0e94047d61629092b6a8562ac989bc829361844
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 25 23:11:45 2017 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Mon Sep 25 23:18:00 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c0e94047
sys-devel/binutils: bump up to 2.29.1
Package-Manager: Portage-2.3.10, Repoman-2.3.3
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.29.1.ebuild | 11 +++++++++++
2 files changed, 12 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 447fb9b14ba..37368e3a0f9 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -7,4 +7,5 @@ DIST binutils-2.27.tar.bz2 26099568 SHA256 369737ce51587f92466041a97ab7d2358c6d9
DIST binutils-2.28.1-patches-1.0.tar.xz 19772 SHA256 50cfce6ef7f546dcdb983a8b632507b5cdd51095e4acf1f15bfcd68027d438a4 SHA512 c2c7d22e1013e79040c4dcb4d70649e78a070976ba3a4bc2ceb4805827b9d93eea1805c85db4fcb6b31be5218c3d7b42a4990437a7c01dc01fd7e9dedb606828 WHIRLPOOL 2369fce643cc9b83724b486521621d744de0eaf3d95fdd34c7f1c785bc400f3ed31ae6105001870f33539664d84dd9caae854725e20007f136929d2ece755247
DIST binutils-2.28.1.tar.bz2 28120394 SHA256 6924999be62d4464458eb53c11f27277cfb63755df8c1cd47b8d15d02c1942ea SHA512 5ec5212497b0fa8324f6a0884c284cb71c01942bbd39356d1ae745a5c9d97274c10f9d9c723f4bef6f0217662dfcd0c36e4e955a7599b11217658dc7b97553eb WHIRLPOOL 5c616f719827e5da7db23e89c761323cd4828b4779e79c3983d3ea429bce57ed40219982c478237b4dd728b77bae0a6447d912d96490ed1f5fc279ba5fd73bc6
DIST binutils-2.29-patches-1.0.tar.xz 7548 SHA256 8ce4d1ea1224a305c4e36529e02dba87306075638ba0415b69ceeccedc77cd6e SHA512 5375bfb1b796b7692cf2adfc41bd2ae2e6dc19ff497db5f6beb35a456981b3adb8552ef14f32382faf655aa40da86c2d44177a658ec71e1c0e228dc27a4f2e18 WHIRLPOOL 73d2b78ea18e3427442bcb24440f671c1d35c0b559bf2141f30052b2bb8d6a8a6e29994cac741e4e50071c716d761f32b36358487a176d67e8cd226dfaaeafc2
+DIST binutils-2.29.1.tar.bz2 29123355 SHA256 1509dff41369fb70aed23682351b663b56db894034773e6dbf7d5d6071fc55cc SHA512 4063d34555526922376ccceb3f14b43e287442e82a8038cf50f4f51ad97d438c672c0e310ca4b856c9aff5aa9911073e256e8298a7a3f1844eeb60b90d955592 WHIRLPOOL 55bf62434bb00b9a355f8d7138c97b6d984eed3a83d7eb37137cf3ab8efcc8e536415d68eba375ae0ab30743f5b3014a664f7d3c773ed55da40c8814691e04d8
DIST binutils-2.29.tar.bz2 29073316 SHA256 29a29549869039aad75fdf507ac30366da5ad0b974fbff4a8e7148dbf4f40ebf SHA512 8148587d7e4f14ebcbcb3f984b116deaae5d4008228628acde14bc242a64a4b53faf1f6077a2c4ca4750e2f254b698ba506bd657f79e1202e87e7029b0069337 WHIRLPOOL 62b3e9ff6f85f8f4a13b71361f5abc4081a70de560931dcaaece1daef04c6bc7d3e0085cbacff0abbb750c4779863d45bc0d8d17273965472992c6b61b5cab20
diff --git a/sys-devel/binutils/binutils-2.29.1.ebuild b/sys-devel/binutils/binutils-2.29.1.ebuild
new file mode 100644
index 00000000000..518550da571
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.29.1.ebuild
@@ -0,0 +1,11 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+PATCHVER="1.0"
+PATCH_BINUTILS_VER="2.29"
+ELF2FLT_VER=""
+inherit toolchain-binutils
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-10-12 21:10 Andreas Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas Hüttel @ 2017-10-12 21:10 UTC (permalink / raw
To: gentoo-commits
commit: 432c27adfd54cf33d1800e42f3a7d3a8001aa8b5
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 12 21:07:39 2017 +0000
Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Thu Oct 12 21:07:39 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=432c27ad
sys-devel/binutils: Revbump to patchlevel 2, unkeyworded, untested
Package-Manager: Portage-2.3.11, Repoman-2.3.3
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.29.1-r1.ebuild | 11 +++++++++++
2 files changed, 12 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 37368e3a0f9..e47b73d984c 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -7,5 +7,6 @@ DIST binutils-2.27.tar.bz2 26099568 SHA256 369737ce51587f92466041a97ab7d2358c6d9
DIST binutils-2.28.1-patches-1.0.tar.xz 19772 SHA256 50cfce6ef7f546dcdb983a8b632507b5cdd51095e4acf1f15bfcd68027d438a4 SHA512 c2c7d22e1013e79040c4dcb4d70649e78a070976ba3a4bc2ceb4805827b9d93eea1805c85db4fcb6b31be5218c3d7b42a4990437a7c01dc01fd7e9dedb606828 WHIRLPOOL 2369fce643cc9b83724b486521621d744de0eaf3d95fdd34c7f1c785bc400f3ed31ae6105001870f33539664d84dd9caae854725e20007f136929d2ece755247
DIST binutils-2.28.1.tar.bz2 28120394 SHA256 6924999be62d4464458eb53c11f27277cfb63755df8c1cd47b8d15d02c1942ea SHA512 5ec5212497b0fa8324f6a0884c284cb71c01942bbd39356d1ae745a5c9d97274c10f9d9c723f4bef6f0217662dfcd0c36e4e955a7599b11217658dc7b97553eb WHIRLPOOL 5c616f719827e5da7db23e89c761323cd4828b4779e79c3983d3ea429bce57ed40219982c478237b4dd728b77bae0a6447d912d96490ed1f5fc279ba5fd73bc6
DIST binutils-2.29-patches-1.0.tar.xz 7548 SHA256 8ce4d1ea1224a305c4e36529e02dba87306075638ba0415b69ceeccedc77cd6e SHA512 5375bfb1b796b7692cf2adfc41bd2ae2e6dc19ff497db5f6beb35a456981b3adb8552ef14f32382faf655aa40da86c2d44177a658ec71e1c0e228dc27a4f2e18 WHIRLPOOL 73d2b78ea18e3427442bcb24440f671c1d35c0b559bf2141f30052b2bb8d6a8a6e29994cac741e4e50071c716d761f32b36358487a176d67e8cd226dfaaeafc2
+DIST binutils-2.29.1-patches-2.tar.xz 18528 SHA256 e50774626a1860a91aef58815cee187dd3206a2612f6e6315dee0d8c39128316 SHA512 b60a3af9cd6a681f32a59fc4a30602ee1290f75cc93c8ad38ab0de17a7f30538a751b801dbaf079e3d514b9671e34e91742c4c9c953a8c9794505b571b7e80f0 WHIRLPOOL be24896a10f90701ad3056477f8fc0df25b16a05cae5eda466a05a93b96e47c5809641b8f3af3720d8e8dea521c4b27c66c5d716d8f9c8a54dfb7c3dc87839e3
DIST binutils-2.29.1.tar.bz2 29123355 SHA256 1509dff41369fb70aed23682351b663b56db894034773e6dbf7d5d6071fc55cc SHA512 4063d34555526922376ccceb3f14b43e287442e82a8038cf50f4f51ad97d438c672c0e310ca4b856c9aff5aa9911073e256e8298a7a3f1844eeb60b90d955592 WHIRLPOOL 55bf62434bb00b9a355f8d7138c97b6d984eed3a83d7eb37137cf3ab8efcc8e536415d68eba375ae0ab30743f5b3014a664f7d3c773ed55da40c8814691e04d8
DIST binutils-2.29.tar.bz2 29073316 SHA256 29a29549869039aad75fdf507ac30366da5ad0b974fbff4a8e7148dbf4f40ebf SHA512 8148587d7e4f14ebcbcb3f984b116deaae5d4008228628acde14bc242a64a4b53faf1f6077a2c4ca4750e2f254b698ba506bd657f79e1202e87e7029b0069337 WHIRLPOOL 62b3e9ff6f85f8f4a13b71361f5abc4081a70de560931dcaaece1daef04c6bc7d3e0085cbacff0abbb750c4779863d45bc0d8d17273965472992c6b61b5cab20
diff --git a/sys-devel/binutils/binutils-2.29.1-r1.ebuild b/sys-devel/binutils/binutils-2.29.1-r1.ebuild
new file mode 100644
index 00000000000..01c773d1cea
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.29.1-r1.ebuild
@@ -0,0 +1,11 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+PATCHVER="2"
+ELF2FLT_VER=""
+inherit toolchain-binutils
+
+#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS=""
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-10-15 13:44 Andreas Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas Hüttel @ 2017-10-15 13:44 UTC (permalink / raw
To: gentoo-commits
commit: a21b012fa6c110975dd84f0b31cc9bdac216a1cc
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Oct 15 13:41:54 2017 +0000
Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Oct 15 13:44:03 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a21b012f
sys-devel/binutils: Port away from toolchain-binutils.eclass, update EAPI, simplify
Package-Manager: Portage-2.3.11, Repoman-2.3.3
sys-devel/binutils/binutils-9999.ebuild | 387 +++++++++++++++++++++++++++++++-
1 file changed, 385 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index cf90a61b1d4..3c7b8b3b06a 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -1,6 +1,389 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-EAPI="5"
+EAPI=6
-inherit toolchain-binutils
+inherit eutils libtool flag-o-matic gnuconfig multilib versionator
+
+DESCRIPTION="Tools necessary to build programs"
+HOMEPAGE="https://sourceware.org/binutils/"
+LICENSE="|| ( GPL-3 LGPL-3 )"
+IUSE="cxx multitarget nls static-libs test"
+
+# Variables that can be set here:
+# 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
+# Default: dilfridge :)
+
+case ${PV} in
+ 9999)
+ BVER="git"
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ ;;
+ *)
+ BVER=${PV}
+ SRC_URI="mirror://gnu/binutils/binutils-${BVER}.tar.xz"
+ ;;
+esac
+SLOT="${BVER}"
+
+#
+# The Gentoo patchset
+#
+PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${BVER}}
+PATCH_DEV=${PATCH_DEV:-dilfridge}
+
+[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
+ https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
+
+#
+# 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}
+ test? ( dev-util/dejagnu )
+ nls? ( sys-devel/gettext )
+ sys-devel/flex
+ virtual/yacc
+"
+if is_cross ; then
+ # The build assumes the host has libiberty and such when cross-compiling
+ # its build tools. We should probably make binutils itself build a local
+ # copy to use, but until then, be lazy.
+ DEPEND+=" >=sys-libs/binutils-libs-${PV}"
+fi
+
+MY_BUILDDIR=${WORKDIR}/build
+
+src_unpack() {
+ case ${PV} in
+ 9999)
+ git-r3_src_unpack;
+ ;;
+ *)
+ default
+ ;;
+ esac
+ mkdir -p "${MY_BUILDDIR}"
+ [[ -d ${WORKDIR}/patch ]] && mkdir "${WORKDIR}"/patch/skip
+}
+
+src_prepare() {
+ if [[ ! -z ${PATCH_VER} ]] ; then
+ elog "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
+ eapply "${WORKDIR}/patch"/*.patch
+ fi
+
+ # This check should probably go somewhere else, like pkg_pretend.
+ if [[ ${CTARGET} == *-uclibc* ]] ; then
+ if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
+ die "sorry, but this binutils doesn't yet support uClibc :("
+ fi
+ fi
+
+ # Make sure our explicit libdir paths don't get clobbered. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ fi
+
+ # Fix po Makefile generators
+ sed -i \
+ -e '/^datadir = /s:$(prefix)/@DATADIRNAME@:@datadir@:' \
+ -e '/^gnulocaledir = /s:$(prefix)/share:$(datadir):' \
+ */po/Make-in || die "sed po's failed"
+
+ # Apply things from PATCHES and user dirs
+ default
+
+ # Run misc portage update scripts
+ gnuconfig_update
+ elibtoolize --portage --no-uclibc
+}
+
+# Intended for ebuilds to override to set their own versioning information.
+toolchain-binutils_bugurl() {
+ printf "https://bugs.gentoo.org/"
+}
+toolchain-binutils_pkgversion() {
+ printf "Gentoo ${BVER}"
+ [[ -n ${PATCH_VER} ]] && printf " p${PATCH_VER}"
+}
+
+src_configure() {
+ # Setup some paths
+ LIBPATH=/usr/$(get_libdir)/binutils/${CTARGET}/${BVER}
+ INCPATH=${LIBPATH}/include
+ DATAPATH=/usr/share/binutils-data/${CTARGET}/${BVER}
+ if is_cross ; then
+ BINPATH=/usr/${CHOST}/${CTARGET}/binutils-bin/${BVER}
+ else
+ BINPATH=/usr/${CTARGET}/binutils-bin/${BVER}
+ fi
+
+ # Make sure we filter $LINGUAS so that only ones that
+ # actually work make it through #42033
+ strip-linguas -u */po
+
+ # Keep things sane
+ strip-flags
+
+ local x
+ echo
+ for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
+ einfo "$(printf '%10s' ${x}:) ${!x}"
+ done
+ echo
+
+ cd "${MY_BUILDDIR}"
+ local myconf=()
+
+ # enable gold (installed as ld.gold) and ld's plugin architecture
+ if use cxx ; then
+ myconf+=( --enable-gold )
+ myconf+=( --enable-plugins )
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && myconf+=( --enable-secureplt )
+
+ myconf+=(
+ --prefix="${EPREFIX}"/usr
+ --host=${CHOST}
+ --target=${CTARGET}
+ --datadir="${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. #497268
+ --enable-install-libiberty
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #490566
+ --disable-{gdb,libdecnumber,readline,sim}
+ # Strip out broken static link flags.
+ # https://gcc.gnu.org/PR56750
+ --without-stage1-ldflags
+ )
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${myconf[@]}" || die
+
+ # Prevent makeinfo from running in releases. It may not always be
+ # installed, and older binutils may fail with newer texinfo.
+ # Besides, we never patch the doc files anyways, so regenerating
+ # in the first place is useless. #193364
+ # For older versions, it means we don't get any info pages at all.
+ # Oh well, tough luck. #294617
+ if [[ -e ${S}/gas/doc/as.info ]] || ! version_is_at_least 2.24 ; then
+ sed -i \
+ -e '/^MAKEINFO/s:=.*:= true:' \
+ Makefile || die
+ fi
+}
+
+src_compile() {
+ cd "${MY_BUILDDIR}"
+ emake all
+
+ # only build info pages if we user wants them, and if
+ # we have makeinfo (may not exist when we bootstrap)
+ if type -p makeinfo > /dev/null ; then
+ emake 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}"
+ emake -k check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ for d in ../* ; do
+ [[ ${d} == ../${BVER} ]] && 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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/}" || die
+ if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
+ 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="${BVER}"
+ LIBPATH="${EPREFIX}${LIBPATH}"
+ EOF
+ newins "${T}"/env.d ${CTARGET}-${BVER}
+
+ # Handle documentation
+ if ! is_cross ; then
+ cd "${S}"
+ 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}-${BVER}
+}
+
+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}-${BVER} ]] ; then
+ local choice=$(binutils-config -l | grep ${CTARGET} | awk '{print $2}')
+ choice=${choice//$'\n'/ }
+ choice=${choice/* }
+ if [[ -z ${choice} ]] ; then
+ env -i ROOT="${ROOT}" binutils-config -u ${CTARGET}
+ else
+ binutils-config ${choice}
+ fi
+ elif [[ $(CHOST=${CTARGET} binutils-config -c) == ${CTARGET}-${BVER} ]] ; then
+ binutils-config ${CTARGET}-${BVER}
+ fi
+}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-10-18 21:58 Andreas Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas Hüttel @ 2017-10-18 21:58 UTC (permalink / raw
To: gentoo-commits
commit: c1fab515a1516785126f8be574aebdbf4ac1deeb
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Wed Oct 18 21:58:12 2017 +0000
Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Wed Oct 18 21:58:12 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c1fab515
sys-devel/binutils: Restore keywords
Package-Manager: Portage-2.3.11, Repoman-2.3.3
sys-devel/binutils/binutils-2.29.1-r1.ebuild | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.29.1-r1.ebuild b/sys-devel/binutils/binutils-2.29.1-r1.ebuild
index 01c773d1cea..c6b355b5906 100644
--- a/sys-devel/binutils/binutils-2.29.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.29.1-r1.ebuild
@@ -7,5 +7,4 @@ PATCHVER="2"
ELF2FLT_VER=""
inherit toolchain-binutils
-#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
-KEYWORDS=""
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-10-20 23:26 Andreas Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas Hüttel @ 2017-10-20 23:26 UTC (permalink / raw
To: gentoo-commits
commit: 27928b633f807a925cdf1b9a9dd45efa08c280c2
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Oct 20 23:26:01 2017 +0000
Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Oct 20 23:26:13 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=27928b63
sys-devel/binutils: Bump patchlevel to 3, only changes in the testsuite
This fixes most of the tests. The only remaining failure here is
a "real" one,
"internal error in relocate, at ../../binutils-gdb/gold/x86_64.cc:4300"
Upstream bug report:
https://sourceware.org/bugzilla/show_bug.cgi?id=21090
Bug: https://bugs.gentoo.org/634348
Package-Manager: Portage-2.3.12, Repoman-2.3.3
sys-devel/binutils/Manifest | 2 +-
sys-devel/binutils/binutils-2.29.1-r1.ebuild | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index e47b73d984c..7f8146e65dd 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -7,6 +7,6 @@ DIST binutils-2.27.tar.bz2 26099568 SHA256 369737ce51587f92466041a97ab7d2358c6d9
DIST binutils-2.28.1-patches-1.0.tar.xz 19772 SHA256 50cfce6ef7f546dcdb983a8b632507b5cdd51095e4acf1f15bfcd68027d438a4 SHA512 c2c7d22e1013e79040c4dcb4d70649e78a070976ba3a4bc2ceb4805827b9d93eea1805c85db4fcb6b31be5218c3d7b42a4990437a7c01dc01fd7e9dedb606828 WHIRLPOOL 2369fce643cc9b83724b486521621d744de0eaf3d95fdd34c7f1c785bc400f3ed31ae6105001870f33539664d84dd9caae854725e20007f136929d2ece755247
DIST binutils-2.28.1.tar.bz2 28120394 SHA256 6924999be62d4464458eb53c11f27277cfb63755df8c1cd47b8d15d02c1942ea SHA512 5ec5212497b0fa8324f6a0884c284cb71c01942bbd39356d1ae745a5c9d97274c10f9d9c723f4bef6f0217662dfcd0c36e4e955a7599b11217658dc7b97553eb WHIRLPOOL 5c616f719827e5da7db23e89c761323cd4828b4779e79c3983d3ea429bce57ed40219982c478237b4dd728b77bae0a6447d912d96490ed1f5fc279ba5fd73bc6
DIST binutils-2.29-patches-1.0.tar.xz 7548 SHA256 8ce4d1ea1224a305c4e36529e02dba87306075638ba0415b69ceeccedc77cd6e SHA512 5375bfb1b796b7692cf2adfc41bd2ae2e6dc19ff497db5f6beb35a456981b3adb8552ef14f32382faf655aa40da86c2d44177a658ec71e1c0e228dc27a4f2e18 WHIRLPOOL 73d2b78ea18e3427442bcb24440f671c1d35c0b559bf2141f30052b2bb8d6a8a6e29994cac741e4e50071c716d761f32b36358487a176d67e8cd226dfaaeafc2
-DIST binutils-2.29.1-patches-2.tar.xz 18528 SHA256 e50774626a1860a91aef58815cee187dd3206a2612f6e6315dee0d8c39128316 SHA512 b60a3af9cd6a681f32a59fc4a30602ee1290f75cc93c8ad38ab0de17a7f30538a751b801dbaf079e3d514b9671e34e91742c4c9c953a8c9794505b571b7e80f0 WHIRLPOOL be24896a10f90701ad3056477f8fc0df25b16a05cae5eda466a05a93b96e47c5809641b8f3af3720d8e8dea521c4b27c66c5d716d8f9c8a54dfb7c3dc87839e3
+DIST binutils-2.29.1-patches-3.tar.xz 20904 SHA256 a9c6cc884637a398cc6969ca7b734c48967e5ad11e2a74aae25cf53931c85b2b SHA512 ba54efaf9e9f668d2922972acd2cdf5c3e6f174cfcc73d29953ab4ba6e157ce0cb500c583568a4e3baaaa92c9d30c394a327f29b51292acc66f8d3f20f5eae2a WHIRLPOOL 993b08862835843fdda3d3916f7dfed2d9e195c13e6b52deac42b3e714a022b36f62d41a4c2de89c0dc7eb751f28ac3f2fd8774e3bc4551b411c16688400e2c3
DIST binutils-2.29.1.tar.bz2 29123355 SHA256 1509dff41369fb70aed23682351b663b56db894034773e6dbf7d5d6071fc55cc SHA512 4063d34555526922376ccceb3f14b43e287442e82a8038cf50f4f51ad97d438c672c0e310ca4b856c9aff5aa9911073e256e8298a7a3f1844eeb60b90d955592 WHIRLPOOL 55bf62434bb00b9a355f8d7138c97b6d984eed3a83d7eb37137cf3ab8efcc8e536415d68eba375ae0ab30743f5b3014a664f7d3c773ed55da40c8814691e04d8
DIST binutils-2.29.tar.bz2 29073316 SHA256 29a29549869039aad75fdf507ac30366da5ad0b974fbff4a8e7148dbf4f40ebf SHA512 8148587d7e4f14ebcbcb3f984b116deaae5d4008228628acde14bc242a64a4b53faf1f6077a2c4ca4750e2f254b698ba506bd657f79e1202e87e7029b0069337 WHIRLPOOL 62b3e9ff6f85f8f4a13b71361f5abc4081a70de560931dcaaece1daef04c6bc7d3e0085cbacff0abbb750c4779863d45bc0d8d17273965472992c6b61b5cab20
diff --git a/sys-devel/binutils/binutils-2.29.1-r1.ebuild b/sys-devel/binutils/binutils-2.29.1-r1.ebuild
index c6b355b5906..89edaa6e995 100644
--- a/sys-devel/binutils/binutils-2.29.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.29.1-r1.ebuild
@@ -3,7 +3,7 @@
EAPI="5"
-PATCHVER="2"
+PATCHVER="3"
ELF2FLT_VER=""
inherit toolchain-binutils
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-11-12 23:02 Andreas Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas Hüttel @ 2017-11-12 23:02 UTC (permalink / raw
To: gentoo-commits
commit: c57c6f02232aa1da57b22e2ad22252b4f7e26c86
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 12 23:02:23 2017 +0000
Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Nov 12 23:02:48 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c57c6f02
sys-devel/binutils: Remove old
Package-Manager: Portage-2.3.13, Repoman-2.3.4
sys-devel/binutils/Manifest | 2 --
sys-devel/binutils/binutils-2.29.1.ebuild | 11 -----------
sys-devel/binutils/binutils-2.29.ebuild | 10 ----------
3 files changed, 23 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 7f8146e65dd..336e488ec65 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -6,7 +6,5 @@ DIST binutils-2.27-patches-1.1.tar.xz 9828 SHA256 fbabb2c1cb69ad0c83d97ec6342ea6
DIST binutils-2.27.tar.bz2 26099568 SHA256 369737ce51587f92466041a97ab7d2358c6d9e1b6490b3940eb09fb0a9a6ac88 SHA512 cf276f84935312361a2ca077e04d0b469d23a3aed979d8ba5d92ea590904ffb2c2e7ed12cc842822bfc402836be86f479660cef3791aa62f3753d8a1a6f564cb WHIRLPOOL d3204b4900529f697285fb1fe622ecc949c43f064e6b83a1cecb1ea8810a214842c729266c9a44537dc0a86d6d2b3ac100f54c721cc284e54f9d6feb90930d15
DIST binutils-2.28.1-patches-1.0.tar.xz 19772 SHA256 50cfce6ef7f546dcdb983a8b632507b5cdd51095e4acf1f15bfcd68027d438a4 SHA512 c2c7d22e1013e79040c4dcb4d70649e78a070976ba3a4bc2ceb4805827b9d93eea1805c85db4fcb6b31be5218c3d7b42a4990437a7c01dc01fd7e9dedb606828 WHIRLPOOL 2369fce643cc9b83724b486521621d744de0eaf3d95fdd34c7f1c785bc400f3ed31ae6105001870f33539664d84dd9caae854725e20007f136929d2ece755247
DIST binutils-2.28.1.tar.bz2 28120394 SHA256 6924999be62d4464458eb53c11f27277cfb63755df8c1cd47b8d15d02c1942ea SHA512 5ec5212497b0fa8324f6a0884c284cb71c01942bbd39356d1ae745a5c9d97274c10f9d9c723f4bef6f0217662dfcd0c36e4e955a7599b11217658dc7b97553eb WHIRLPOOL 5c616f719827e5da7db23e89c761323cd4828b4779e79c3983d3ea429bce57ed40219982c478237b4dd728b77bae0a6447d912d96490ed1f5fc279ba5fd73bc6
-DIST binutils-2.29-patches-1.0.tar.xz 7548 SHA256 8ce4d1ea1224a305c4e36529e02dba87306075638ba0415b69ceeccedc77cd6e SHA512 5375bfb1b796b7692cf2adfc41bd2ae2e6dc19ff497db5f6beb35a456981b3adb8552ef14f32382faf655aa40da86c2d44177a658ec71e1c0e228dc27a4f2e18 WHIRLPOOL 73d2b78ea18e3427442bcb24440f671c1d35c0b559bf2141f30052b2bb8d6a8a6e29994cac741e4e50071c716d761f32b36358487a176d67e8cd226dfaaeafc2
DIST binutils-2.29.1-patches-3.tar.xz 20904 SHA256 a9c6cc884637a398cc6969ca7b734c48967e5ad11e2a74aae25cf53931c85b2b SHA512 ba54efaf9e9f668d2922972acd2cdf5c3e6f174cfcc73d29953ab4ba6e157ce0cb500c583568a4e3baaaa92c9d30c394a327f29b51292acc66f8d3f20f5eae2a WHIRLPOOL 993b08862835843fdda3d3916f7dfed2d9e195c13e6b52deac42b3e714a022b36f62d41a4c2de89c0dc7eb751f28ac3f2fd8774e3bc4551b411c16688400e2c3
DIST binutils-2.29.1.tar.bz2 29123355 SHA256 1509dff41369fb70aed23682351b663b56db894034773e6dbf7d5d6071fc55cc SHA512 4063d34555526922376ccceb3f14b43e287442e82a8038cf50f4f51ad97d438c672c0e310ca4b856c9aff5aa9911073e256e8298a7a3f1844eeb60b90d955592 WHIRLPOOL 55bf62434bb00b9a355f8d7138c97b6d984eed3a83d7eb37137cf3ab8efcc8e536415d68eba375ae0ab30743f5b3014a664f7d3c773ed55da40c8814691e04d8
-DIST binutils-2.29.tar.bz2 29073316 SHA256 29a29549869039aad75fdf507ac30366da5ad0b974fbff4a8e7148dbf4f40ebf SHA512 8148587d7e4f14ebcbcb3f984b116deaae5d4008228628acde14bc242a64a4b53faf1f6077a2c4ca4750e2f254b698ba506bd657f79e1202e87e7029b0069337 WHIRLPOOL 62b3e9ff6f85f8f4a13b71361f5abc4081a70de560931dcaaece1daef04c6bc7d3e0085cbacff0abbb750c4779863d45bc0d8d17273965472992c6b61b5cab20
diff --git a/sys-devel/binutils/binutils-2.29.1.ebuild b/sys-devel/binutils/binutils-2.29.1.ebuild
deleted file mode 100644
index 518550da571..00000000000
--- a/sys-devel/binutils/binutils-2.29.1.ebuild
+++ /dev/null
@@ -1,11 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-PATCHVER="1.0"
-PATCH_BINUTILS_VER="2.29"
-ELF2FLT_VER=""
-inherit toolchain-binutils
-
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
diff --git a/sys-devel/binutils/binutils-2.29.ebuild b/sys-devel/binutils/binutils-2.29.ebuild
deleted file mode 100644
index 6fafa8ee88a..00000000000
--- a/sys-devel/binutils/binutils-2.29.ebuild
+++ /dev/null
@@ -1,10 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-PATCHVER="1.0"
-ELF2FLT_VER=""
-inherit toolchain-binutils
-
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-11-18 17:46 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2017-11-18 17:46 UTC (permalink / raw
To: gentoo-commits
commit: b87faee883c20a8e1fbc6a23c364e918b859773b
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 18 17:43:38 2017 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Nov 18 17:43:38 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b87faee8
sys-devel/binutils: stable 2.29.1-r1 for ia64, bug #627166
Package-Manager: Portage-2.3.14, Repoman-2.3.6
RepoMan-Options: --include-arches="ia64"
sys-devel/binutils/binutils-2.29.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.29.1-r1.ebuild b/sys-devel/binutils/binutils-2.29.1-r1.ebuild
index b0f97883f2f..b959d410ae7 100644
--- a/sys-devel/binutils/binutils-2.29.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.29.1-r1.ebuild
@@ -7,6 +7,6 @@ PATCHVER="3"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
PATCHES=( "${FILESDIR}/${P}-nogoldtest.patch" )
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-11-18 19:08 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2017-11-18 19:08 UTC (permalink / raw
To: gentoo-commits
commit: 375dc10a70dda103278d1bfc161005bd9b582d34
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 18 19:06:52 2017 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Nov 18 19:06:52 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=375dc10a
sys-devel/binutils: stable 2.29.1-r1 for ppc64, bug #627166
Package-Manager: Portage-2.3.14, Repoman-2.3.6
RepoMan-Options: --include-arches="ppc64"
sys-devel/binutils/binutils-2.29.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.29.1-r1.ebuild b/sys-devel/binutils/binutils-2.29.1-r1.ebuild
index b959d410ae7..1264bfe0741 100644
--- a/sys-devel/binutils/binutils-2.29.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.29.1-r1.ebuild
@@ -7,6 +7,6 @@ PATCHVER="3"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ~ppc ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
PATCHES=( "${FILESDIR}/${P}-nogoldtest.patch" )
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-11-19 19:14 Thomas Deutschmann
0 siblings, 0 replies; 477+ messages in thread
From: Thomas Deutschmann @ 2017-11-19 19:14 UTC (permalink / raw
To: gentoo-commits
commit: bab437bc3f678c5493c91a81bbc9cb20b5ecbbbf
Author: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 19 18:56:56 2017 +0000
Commit: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Sun Nov 19 19:14:16 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bab437bc
sys-devel/binutils: x86 stable (bug #627166)
Package-Manager: Portage-2.3.13, Repoman-2.3.4
sys-devel/binutils/binutils-2.29.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.29.1-r1.ebuild b/sys-devel/binutils/binutils-2.29.1-r1.ebuild
index 1264bfe0741..54af7005d1e 100644
--- a/sys-devel/binutils/binutils-2.29.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.29.1-r1.ebuild
@@ -7,6 +7,6 @@ PATCHVER="3"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ~ppc ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ~ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
PATCHES=( "${FILESDIR}/${P}-nogoldtest.patch" )
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-11-19 21:20 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2017-11-19 21:20 UTC (permalink / raw
To: gentoo-commits
commit: 7a327ae9889345b4a89e5a93d6be6c712f27e955
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 19 21:20:03 2017 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sun Nov 19 21:20:34 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7a327ae9
sys-devel/binutils: stable 2.29.1-r1 for ppc, bug #627166
Package-Manager: Portage-2.3.14, Repoman-2.3.6
RepoMan-Options: --include-arches="ppc"
sys-devel/binutils/binutils-2.29.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.29.1-r1.ebuild b/sys-devel/binutils/binutils-2.29.1-r1.ebuild
index 54af7005d1e..5a34f9732ea 100644
--- a/sys-devel/binutils/binutils-2.29.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.29.1-r1.ebuild
@@ -7,6 +7,6 @@ PATCHVER="3"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ~ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
PATCHES=( "${FILESDIR}/${P}-nogoldtest.patch" )
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-11-20 15:18 Manuel Rüger
0 siblings, 0 replies; 477+ messages in thread
From: Manuel Rüger @ 2017-11-20 15:18 UTC (permalink / raw
To: gentoo-commits
commit: 1117b5d762000ecfcb27fe710053425b2143d0c6
Author: Manuel Rüger <mrueg <AT> gentoo <DOT> org>
AuthorDate: Mon Nov 20 15:18:22 2017 +0000
Commit: Manuel Rüger <mrueg <AT> gentoo <DOT> org>
CommitDate: Mon Nov 20 15:18:22 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1117b5d7
sys-devel/binutils: Stable on amd64
Package-Manager: Portage-2.3.14, Repoman-2.3.6
sys-devel/binutils/binutils-2.29.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.29.1-r1.ebuild b/sys-devel/binutils/binutils-2.29.1-r1.ebuild
index 5a34f9732ea..36beef8d6bc 100644
--- a/sys-devel/binutils/binutils-2.29.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.29.1-r1.ebuild
@@ -7,6 +7,6 @@ PATCHVER="3"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
PATCHES=( "${FILESDIR}/${P}-nogoldtest.patch" )
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-11-23 11:54 Tobias Klausmann
0 siblings, 0 replies; 477+ messages in thread
From: Tobias Klausmann @ 2017-11-23 11:54 UTC (permalink / raw
To: gentoo-commits
commit: 0502f9c96840308341e68d9629d50a0950859327
Author: Tobias Klausmann <klausman <AT> gentoo <DOT> org>
AuthorDate: Thu Nov 23 11:54:25 2017 +0000
Commit: Tobias Klausmann <klausman <AT> gentoo <DOT> org>
CommitDate: Thu Nov 23 11:54:25 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0502f9c9
sys-devel/binutils-2.29.1-r1: alpha stable
Gentoo-Bug: http://bugs.gentoo.org/627166
sys-devel/binutils/Manifest | 4 ++--
sys-devel/binutils/binutils-2.29.1-r1.ebuild | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 336e488ec65..47e401f513b 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -6,5 +6,5 @@ DIST binutils-2.27-patches-1.1.tar.xz 9828 SHA256 fbabb2c1cb69ad0c83d97ec6342ea6
DIST binutils-2.27.tar.bz2 26099568 SHA256 369737ce51587f92466041a97ab7d2358c6d9e1b6490b3940eb09fb0a9a6ac88 SHA512 cf276f84935312361a2ca077e04d0b469d23a3aed979d8ba5d92ea590904ffb2c2e7ed12cc842822bfc402836be86f479660cef3791aa62f3753d8a1a6f564cb WHIRLPOOL d3204b4900529f697285fb1fe622ecc949c43f064e6b83a1cecb1ea8810a214842c729266c9a44537dc0a86d6d2b3ac100f54c721cc284e54f9d6feb90930d15
DIST binutils-2.28.1-patches-1.0.tar.xz 19772 SHA256 50cfce6ef7f546dcdb983a8b632507b5cdd51095e4acf1f15bfcd68027d438a4 SHA512 c2c7d22e1013e79040c4dcb4d70649e78a070976ba3a4bc2ceb4805827b9d93eea1805c85db4fcb6b31be5218c3d7b42a4990437a7c01dc01fd7e9dedb606828 WHIRLPOOL 2369fce643cc9b83724b486521621d744de0eaf3d95fdd34c7f1c785bc400f3ed31ae6105001870f33539664d84dd9caae854725e20007f136929d2ece755247
DIST binutils-2.28.1.tar.bz2 28120394 SHA256 6924999be62d4464458eb53c11f27277cfb63755df8c1cd47b8d15d02c1942ea SHA512 5ec5212497b0fa8324f6a0884c284cb71c01942bbd39356d1ae745a5c9d97274c10f9d9c723f4bef6f0217662dfcd0c36e4e955a7599b11217658dc7b97553eb WHIRLPOOL 5c616f719827e5da7db23e89c761323cd4828b4779e79c3983d3ea429bce57ed40219982c478237b4dd728b77bae0a6447d912d96490ed1f5fc279ba5fd73bc6
-DIST binutils-2.29.1-patches-3.tar.xz 20904 SHA256 a9c6cc884637a398cc6969ca7b734c48967e5ad11e2a74aae25cf53931c85b2b SHA512 ba54efaf9e9f668d2922972acd2cdf5c3e6f174cfcc73d29953ab4ba6e157ce0cb500c583568a4e3baaaa92c9d30c394a327f29b51292acc66f8d3f20f5eae2a WHIRLPOOL 993b08862835843fdda3d3916f7dfed2d9e195c13e6b52deac42b3e714a022b36f62d41a4c2de89c0dc7eb751f28ac3f2fd8774e3bc4551b411c16688400e2c3
-DIST binutils-2.29.1.tar.bz2 29123355 SHA256 1509dff41369fb70aed23682351b663b56db894034773e6dbf7d5d6071fc55cc SHA512 4063d34555526922376ccceb3f14b43e287442e82a8038cf50f4f51ad97d438c672c0e310ca4b856c9aff5aa9911073e256e8298a7a3f1844eeb60b90d955592 WHIRLPOOL 55bf62434bb00b9a355f8d7138c97b6d984eed3a83d7eb37137cf3ab8efcc8e536415d68eba375ae0ab30743f5b3014a664f7d3c773ed55da40c8814691e04d8
+DIST binutils-2.29.1-patches-3.tar.xz 20904 BLAKE2B 5549cb2412123e4ad3a13935762cc0dca46215950dbf38a149caf4c6416da382a0fd7ecffe97b10bce4dfdcef5edc2673d49bb21e9d37be37e33b454a8c2bc1a SHA512 ba54efaf9e9f668d2922972acd2cdf5c3e6f174cfcc73d29953ab4ba6e157ce0cb500c583568a4e3baaaa92c9d30c394a327f29b51292acc66f8d3f20f5eae2a
+DIST binutils-2.29.1.tar.bz2 29123355 BLAKE2B 83de518a27bae0f13c57b1979493dd7f7cabae424cff5e8495d1f064da24b6ef9e1c19d1d1adad2dca7142372782023f66b4b4223170a49b96ba3834266fe878 SHA512 4063d34555526922376ccceb3f14b43e287442e82a8038cf50f4f51ad97d438c672c0e310ca4b856c9aff5aa9911073e256e8298a7a3f1844eeb60b90d955592
diff --git a/sys-devel/binutils/binutils-2.29.1-r1.ebuild b/sys-devel/binutils/binutils-2.29.1-r1.ebuild
index 36beef8d6bc..c3540f0fd25 100644
--- a/sys-devel/binutils/binutils-2.29.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.29.1-r1.ebuild
@@ -7,6 +7,6 @@ PATCHVER="3"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
PATCHES=( "${FILESDIR}/${P}-nogoldtest.patch" )
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-11-24 6:15 Markus Meier
0 siblings, 0 replies; 477+ messages in thread
From: Markus Meier @ 2017-11-24 6:15 UTC (permalink / raw
To: gentoo-commits
commit: 089c537357de5d526967041cda425dbce30bee93
Author: Markus Meier <maekke <AT> gentoo <DOT> org>
AuthorDate: Fri Nov 24 06:13:20 2017 +0000
Commit: Markus Meier <maekke <AT> gentoo <DOT> org>
CommitDate: Fri Nov 24 06:13:20 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=089c5373
sys-devel/binutils: arm stable, bug #627166
Package-Manager: Portage-2.3.13, Repoman-2.3.3
RepoMan-Options: --include-arches="arm"
sys-devel/binutils/Manifest | 16 ++++++++--------
sys-devel/binutils/binutils-2.29.1-r1.ebuild | 2 +-
2 files changed, 9 insertions(+), 9 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 47e401f513b..c82f79d40db 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -1,10 +1,10 @@
-DIST binutils-2.25.1-patches-1.1.tar.xz 18724 SHA256 3d4c0ab2d45d3a952f60246fa5a4353f057c03110130b50e3b2103bd49c345fa SHA512 209c55bf26b51d8c513b40abd2d95f687159c4e964a6c732924f277d04c97323c427fe452c63d5ec6962dcd8892d6d5d807ba88826739425bce6812a31f573dd WHIRLPOOL 2b650af352183d2b58abaee955b223606d63bd5f22a73360e79af1d3b575c5ea385f90be92348ec850534d96f7b6632b1e494f314ec1655eedc26108e849aab7
-DIST binutils-2.25.1.tar.bz2 24163561 SHA256 b5b14added7d78a8d1ca70b5cb75fef57ce2197264f4f5835326b0df22ac9f22 SHA512 0b36dda0e6d32cd25613c0e64b56b28312515c54d6a159efd3db9a86717f114ab0a0a1f69d08975084d55713ebaeab64e4085c9b3d1c3fa86712869f80eb954d WHIRLPOOL daa804331ee880296c2fe29fd9b8a52cc695629d4bbe0b9889d96ffc54d330f00fac3f3cb12b3aaf6b7505521ef499c53760912cd7c9bb54f2d5e288224bd1eb
-DIST binutils-2.26.1-patches-1.0.tar.xz 11212 SHA256 e56e2a6b64b8abe2f4aed1a9b1517fc8cbb5fd661f40118d0163d93943870e77 SHA512 c520967659c66f05f7ad795bb0bc2522e139977ab3ae8cfd9ec0d093a412a7291d1cabaa6b429c618fcf7253458a6fbe5a7dc3f62e0ac9762667308067db075c WHIRLPOOL 027b6a864134e2690d309922009740338bbd927581c6657c640d3061447f308c2e27a8c06a9202ae3f4aac4bcbf9e28303b52f81745d4062bf5b8c638cd1a9b7
-DIST binutils-2.26.1.tar.bz2 25595243 SHA256 39c346c87aa4fb14b2f786560aec1d29411b6ec34dce3fe7309fe3dd56949fd8 SHA512 9d9165609fd3b0f20d616f9891fc8e2b466eb13e2bfce40125e12427f8f201d20e2b8322bb6cb2b45e8df812f0e8ac059149f8a1f69ba3ed9d86a35c6a540b67 WHIRLPOOL c33eecdf855dd17314c3b7bbb0060399148d4dba867eb038bfb7555010fd003ba8b5b86480e4df389e19bba7b1fd0b9264291e6af20be4ffd4ff504d2255d003
-DIST binutils-2.27-patches-1.1.tar.xz 9828 SHA256 fbabb2c1cb69ad0c83d97ec6342ea663dea12b61cd3858088071f5575d842f6f SHA512 5059a784344e0554965473808b9d72af34f793e5538e82010adbbf586d583ddfd9f5ca637e6ba658e566c406244ae79b2ab5135995bcfedc8a96b9293366199d WHIRLPOOL 23c10c3c71a6d7d5f1fca97dcb77cf3bdb0a4114321a3cb51d88a4549404da63d74c30e6732c1b7fdefc3380d28b2064752155dfd22fa345e62df8df25a9690d
-DIST binutils-2.27.tar.bz2 26099568 SHA256 369737ce51587f92466041a97ab7d2358c6d9e1b6490b3940eb09fb0a9a6ac88 SHA512 cf276f84935312361a2ca077e04d0b469d23a3aed979d8ba5d92ea590904ffb2c2e7ed12cc842822bfc402836be86f479660cef3791aa62f3753d8a1a6f564cb WHIRLPOOL d3204b4900529f697285fb1fe622ecc949c43f064e6b83a1cecb1ea8810a214842c729266c9a44537dc0a86d6d2b3ac100f54c721cc284e54f9d6feb90930d15
-DIST binutils-2.28.1-patches-1.0.tar.xz 19772 SHA256 50cfce6ef7f546dcdb983a8b632507b5cdd51095e4acf1f15bfcd68027d438a4 SHA512 c2c7d22e1013e79040c4dcb4d70649e78a070976ba3a4bc2ceb4805827b9d93eea1805c85db4fcb6b31be5218c3d7b42a4990437a7c01dc01fd7e9dedb606828 WHIRLPOOL 2369fce643cc9b83724b486521621d744de0eaf3d95fdd34c7f1c785bc400f3ed31ae6105001870f33539664d84dd9caae854725e20007f136929d2ece755247
-DIST binutils-2.28.1.tar.bz2 28120394 SHA256 6924999be62d4464458eb53c11f27277cfb63755df8c1cd47b8d15d02c1942ea SHA512 5ec5212497b0fa8324f6a0884c284cb71c01942bbd39356d1ae745a5c9d97274c10f9d9c723f4bef6f0217662dfcd0c36e4e955a7599b11217658dc7b97553eb WHIRLPOOL 5c616f719827e5da7db23e89c761323cd4828b4779e79c3983d3ea429bce57ed40219982c478237b4dd728b77bae0a6447d912d96490ed1f5fc279ba5fd73bc6
+DIST binutils-2.25.1-patches-1.1.tar.xz 18724 BLAKE2B 0a8380427247463340b28fa28171f127b9a3c8163ce63d103d1d15492c30df9cf24a5122ff271dc80425a0b212438f5d39f99783fda52e7b5e861a3f5f0e2992 SHA512 209c55bf26b51d8c513b40abd2d95f687159c4e964a6c732924f277d04c97323c427fe452c63d5ec6962dcd8892d6d5d807ba88826739425bce6812a31f573dd
+DIST binutils-2.25.1.tar.bz2 24163561 BLAKE2B 25fc879f99d6547fd0dc911e74c35cf52f3da2c0f9fd758031dda90da63cdd819345d0a69f692a40dee9f63895d816cee7910a9f48ce56e7b4251827768946f4 SHA512 0b36dda0e6d32cd25613c0e64b56b28312515c54d6a159efd3db9a86717f114ab0a0a1f69d08975084d55713ebaeab64e4085c9b3d1c3fa86712869f80eb954d
+DIST binutils-2.26.1-patches-1.0.tar.xz 11212 BLAKE2B f785930a9bf994312f3a525ef46727c582e6cd3992b5648bdf4c787f55fed4b36c69be3ac7d9962dcd72b6dbe0155dbf23d1daa14be5c7ad5da1cf634f2522aa SHA512 c520967659c66f05f7ad795bb0bc2522e139977ab3ae8cfd9ec0d093a412a7291d1cabaa6b429c618fcf7253458a6fbe5a7dc3f62e0ac9762667308067db075c
+DIST binutils-2.26.1.tar.bz2 25595243 BLAKE2B 5114ab9ebfc1097f0ebfd1e134ea098b583724d2c822fb7365b6212be0edfd313961bcee8de1193f359b7e904b23146036bfa9e3e7bc0621160bf85f573a8d44 SHA512 9d9165609fd3b0f20d616f9891fc8e2b466eb13e2bfce40125e12427f8f201d20e2b8322bb6cb2b45e8df812f0e8ac059149f8a1f69ba3ed9d86a35c6a540b67
+DIST binutils-2.27-patches-1.1.tar.xz 9828 BLAKE2B 158787c0ee2b26ad78d90b0ce3c8c0c79256d2e85d5f4b582b275953235555a6323f791a98e1de357559994fef284a910a54749dcfc3ac0aea9cfad6ee70980e SHA512 5059a784344e0554965473808b9d72af34f793e5538e82010adbbf586d583ddfd9f5ca637e6ba658e566c406244ae79b2ab5135995bcfedc8a96b9293366199d
+DIST binutils-2.27.tar.bz2 26099568 BLAKE2B e9433b4dc28b0aeaa31d21fc039459e73c47050bb79dc0cf3f00e384604c37c0c1704ac6cba79c6b15edcbfd13f17b8013efeaca422d5b0e5a7f60c202fc5d18 SHA512 cf276f84935312361a2ca077e04d0b469d23a3aed979d8ba5d92ea590904ffb2c2e7ed12cc842822bfc402836be86f479660cef3791aa62f3753d8a1a6f564cb
+DIST binutils-2.28.1-patches-1.0.tar.xz 19772 BLAKE2B 146b393b49ba868c7c064c58275ba1af3b7cbc7e97cc55b03c80d8b391955c40dd4e81ac4eeabcdfb53e41ea334a377d86300e037f8ccb810555a48dfa9da878 SHA512 c2c7d22e1013e79040c4dcb4d70649e78a070976ba3a4bc2ceb4805827b9d93eea1805c85db4fcb6b31be5218c3d7b42a4990437a7c01dc01fd7e9dedb606828
+DIST binutils-2.28.1.tar.bz2 28120394 BLAKE2B 3a0ed2bcf0c859638546b7460d9e6f0a55518402ff0c65c90ce462a318f5ae6690961616d188ce6cf0271c9f2fb8b7902782d32cf0e711068c53d3d06956d89e SHA512 5ec5212497b0fa8324f6a0884c284cb71c01942bbd39356d1ae745a5c9d97274c10f9d9c723f4bef6f0217662dfcd0c36e4e955a7599b11217658dc7b97553eb
DIST binutils-2.29.1-patches-3.tar.xz 20904 BLAKE2B 5549cb2412123e4ad3a13935762cc0dca46215950dbf38a149caf4c6416da382a0fd7ecffe97b10bce4dfdcef5edc2673d49bb21e9d37be37e33b454a8c2bc1a SHA512 ba54efaf9e9f668d2922972acd2cdf5c3e6f174cfcc73d29953ab4ba6e157ce0cb500c583568a4e3baaaa92c9d30c394a327f29b51292acc66f8d3f20f5eae2a
DIST binutils-2.29.1.tar.bz2 29123355 BLAKE2B 83de518a27bae0f13c57b1979493dd7f7cabae424cff5e8495d1f064da24b6ef9e1c19d1d1adad2dca7142372782023f66b4b4223170a49b96ba3834266fe878 SHA512 4063d34555526922376ccceb3f14b43e287442e82a8038cf50f4f51ad97d438c672c0e310ca4b856c9aff5aa9911073e256e8298a7a3f1844eeb60b90d955592
diff --git a/sys-devel/binutils/binutils-2.29.1-r1.ebuild b/sys-devel/binutils/binutils-2.29.1-r1.ebuild
index c3540f0fd25..c9e6035404f 100644
--- a/sys-devel/binutils/binutils-2.29.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.29.1-r1.ebuild
@@ -7,6 +7,6 @@ PATCHVER="3"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="alpha amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
PATCHES=( "${FILESDIR}/${P}-nogoldtest.patch" )
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-12-24 9:46 Mart Raudsepp
0 siblings, 0 replies; 477+ messages in thread
From: Mart Raudsepp @ 2017-12-24 9:46 UTC (permalink / raw
To: gentoo-commits
commit: e363447a19fb340b1d57b98c62a983984cd42737
Author: Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Sun Dec 24 09:22:34 2017 +0000
Commit: Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Sun Dec 24 09:22:34 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e363447a
sys-devel/binutils-2.29.1-r1: arm64 stable
Package-Manager: Portage-2.3.19, Repoman-2.3.6
RepoMan-Options: --include-arches="arm64"
sys-devel/binutils/binutils-2.29.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.29.1-r1.ebuild b/sys-devel/binutils/binutils-2.29.1-r1.ebuild
index c9e6035404f..49389780186 100644
--- a/sys-devel/binutils/binutils-2.29.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.29.1-r1.ebuild
@@ -7,6 +7,6 @@ PATCHVER="3"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="alpha amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
PATCHES=( "${FILESDIR}/${P}-nogoldtest.patch" )
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2017-12-27 22:30 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2017-12-27 22:30 UTC (permalink / raw
To: gentoo-commits
commit: 11b30d27c860778708a0b2a05995ad81bab04aeb
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Wed Dec 27 22:29:55 2017 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Wed Dec 27 22:30:20 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=11b30d27
sys-devel/binutils: stable 2.29.1-r1 for hppa, bug #627166
Package-Manager: Portage-2.3.19, Repoman-2.3.6
RepoMan-Options: --include-arches="hppa"
sys-devel/binutils/binutils-2.29.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.29.1-r1.ebuild b/sys-devel/binutils/binutils-2.29.1-r1.ebuild
index 49389780186..8cac4ed2a89 100644
--- a/sys-devel/binutils/binutils-2.29.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.29.1-r1.ebuild
@@ -7,6 +7,6 @@ PATCHVER="3"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="alpha amd64 arm arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
PATCHES=( "${FILESDIR}/${P}-nogoldtest.patch" )
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-01-08 22:22 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2018-01-08 22:22 UTC (permalink / raw
To: gentoo-commits
commit: b7fcc77358449f26c195619f3ed0a8b216741d67
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Mon Jan 8 22:21:53 2018 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Mon Jan 8 22:22:00 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b7fcc773
sys-devel/binutils: fix *.mo file collision in live ebuild, bug #641036
Upstream commit ca39c2f4dd0fedcaaee348be7a913f0c14876796
(https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=ca39c2f4dd0fedcaaee348be7a913f0c14876796)
added support for overriding datarootdir without need for sed hack we had.
It broke our hack but we can remove it completely and use
--datarootdir= instead.
Thanks to Manuel Lauss!
Fixed-by: Manuel Lauss
Closes: https://bugs.gentoo.org/641036
Package-Manager: Portage-2.3.19, Repoman-2.3.6
sys-devel/binutils/binutils-9999.ebuild | 9 ++-------
1 file changed, 2 insertions(+), 7 deletions(-)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 3c7b8b3b06a..16b853f51c7 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -124,12 +124,6 @@ src_prepare() {
sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
fi
- # Fix po Makefile generators
- sed -i \
- -e '/^datadir = /s:$(prefix)/@DATADIRNAME@:@datadir@:' \
- -e '/^gnulocaledir = /s:$(prefix)/share:$(datadir):' \
- */po/Make-in || die "sed po's failed"
-
# Apply things from PATCHES and user dirs
default
@@ -215,6 +209,7 @@ src_configure() {
--host=${CHOST}
--target=${CTARGET}
--datadir="${EPREFIX}"${DATAPATH}
+ --datarootdir="${EPREFIX}"${DATAPATH}
--infodir="${EPREFIX}"${DATAPATH}/info
--mandir="${EPREFIX}"${DATAPATH}/man
--bindir="${EPREFIX}"${BINPATH}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-01-14 20:04 Mike Frysinger
0 siblings, 0 replies; 477+ messages in thread
From: Mike Frysinger @ 2018-01-14 20:04 UTC (permalink / raw
To: gentoo-commits
commit: abc70c8a62cbd33c8db6d59d99c0200b0c1e671d
Author: Mike Frysinger <vapier <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 14 20:03:34 2018 +0000
Commit: Mike Frysinger <vapier <AT> gentoo <DOT> org>
CommitDate: Sun Jan 14 20:03:53 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=abc70c8a
sys-devel/binutils: mark 2.28.1 arm64/m68k/s390/sh stable
sys-devel/binutils/binutils-2.28.1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.28.1.ebuild b/sys-devel/binutils/binutils-2.28.1.ebuild
index d57f8f8e717..63894d4eb47 100644
--- a/sys-devel/binutils/binutils-2.28.1.ebuild
+++ b/sys-devel/binutils/binutils-2.28.1.ebuild
@@ -7,4 +7,4 @@ PATCHVER="1.0"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-01-14 20:04 Mike Frysinger
0 siblings, 0 replies; 477+ messages in thread
From: Mike Frysinger @ 2018-01-14 20:04 UTC (permalink / raw
To: gentoo-commits
commit: 127fb7ed439baf7c03e8d9a742adc3e0df5e0e80
Author: Mike Frysinger <vapier <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 14 20:03:43 2018 +0000
Commit: Mike Frysinger <vapier <AT> gentoo <DOT> org>
CommitDate: Sun Jan 14 20:03:54 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=127fb7ed
sys-devel/binutils: mark 2.29.1-r1 m68k/s390/sh stable
sys-devel/binutils/binutils-2.29.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.29.1-r1.ebuild b/sys-devel/binutils/binutils-2.29.1-r1.ebuild
index 8cac4ed2a89..0dd92fdbd6e 100644
--- a/sys-devel/binutils/binutils-2.29.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.29.1-r1.ebuild
@@ -7,6 +7,6 @@ PATCHVER="3"
ELF2FLT_VER=""
inherit toolchain-binutils
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh ~sparc x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd"
PATCHES=( "${FILESDIR}/${P}-nogoldtest.patch" )
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-01-27 13:16 Andreas Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas Hüttel @ 2018-01-27 13:16 UTC (permalink / raw
To: gentoo-commits
commit: 359ed61f2483c1c236c9b3a60b4be1a7ffb09414
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 27 13:15:30 2018 +0000
Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Jan 27 13:15:53 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=359ed61f
sys-devel/binutils: Minor fixes. Use defaults.
Package-Manager: Portage-2.3.20, Repoman-2.3.6
sys-devel/binutils/binutils-9999.ebuild | 8 +++-----
1 file changed, 3 insertions(+), 5 deletions(-)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 16b853f51c7..3e4f54cd69b 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -7,8 +7,8 @@ inherit eutils libtool flag-o-matic gnuconfig multilib versionator
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
-LICENSE="|| ( GPL-3 LGPL-3 )"
-IUSE="cxx multitarget nls static-libs test"
+LICENSE="GPL-3+"
+IUSE="+cxx multitarget +nls static-libs test"
# Variables that can be set here:
# PATCH_VER - the patchset version
@@ -86,12 +86,11 @@ src_unpack() {
;;
esac
mkdir -p "${MY_BUILDDIR}"
- [[ -d ${WORKDIR}/patch ]] && mkdir "${WORKDIR}"/patch/skip
}
src_prepare() {
if [[ ! -z ${PATCH_VER} ]] ; then
- elog "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
+ einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
eapply "${WORKDIR}/patch"/*.patch
fi
@@ -132,7 +131,6 @@ src_prepare() {
elibtoolize --portage --no-uclibc
}
-# Intended for ebuilds to override to set their own versioning information.
toolchain-binutils_bugurl() {
printf "https://bugs.gentoo.org/"
}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-01-27 14:50 Andreas Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas Hüttel @ 2018-01-27 14:50 UTC (permalink / raw
To: gentoo-commits
commit: c271008f733b42327582844aced340354df9295e
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 27 14:50:05 2018 +0000
Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Jan 27 14:50:38 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c271008f
sys-devel/binutils: Introduce doc useflag
Package-Manager: Portage-2.3.20, Repoman-2.3.6
sys-devel/binutils/binutils-9999.ebuild | 17 ++++++-----------
1 file changed, 6 insertions(+), 11 deletions(-)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 3e4f54cd69b..a2db40c93a4 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -8,7 +8,7 @@ inherit eutils libtool flag-o-matic gnuconfig multilib versionator
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
LICENSE="GPL-3+"
-IUSE="+cxx multitarget +nls static-libs test"
+IUSE="+cxx doc multitarget +nls static-libs test"
# Variables that can be set here:
# PATCH_VER - the patchset version
@@ -62,6 +62,7 @@ RDEPEND="
sys-libs/zlib
"
DEPEND="${RDEPEND}
+ doc? ( sys-apps/texinfo )
test? ( dev-util/dejagnu )
nls? ( sys-devel/gettext )
sys-devel/flex
@@ -235,13 +236,8 @@ src_configure() {
echo ./configure "${myconf[@]}"
"${S}"/configure "${myconf[@]}" || die
- # Prevent makeinfo from running in releases. It may not always be
- # installed, and older binutils may fail with newer texinfo.
- # Besides, we never patch the doc files anyways, so regenerating
- # in the first place is useless. #193364
- # For older versions, it means we don't get any info pages at all.
- # Oh well, tough luck. #294617
- if [[ -e ${S}/gas/doc/as.info ]] || ! version_is_at_least 2.24 ; then
+ # Prevent makeinfo from running if doc is unset.
+ if ! use doc ; then
sed -i \
-e '/^MAKEINFO/s:=.*:= true:' \
Makefile || die
@@ -252,9 +248,8 @@ src_compile() {
cd "${MY_BUILDDIR}"
emake all
- # only build info pages if we user wants them, and if
- # we have makeinfo (may not exist when we bootstrap)
- if type -p makeinfo > /dev/null ; then
+ # only build info pages if the user wants them
+ if use doc ; then
emake info
fi
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-01-27 15:07 Andreas Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas Hüttel @ 2018-01-27 15:07 UTC (permalink / raw
To: gentoo-commits
commit: 93ae1aca9eb2f93bc12d2e6b5f6e147c24eb2fc7
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 27 15:07:32 2018 +0000
Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Jan 27 15:07:32 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=93ae1aca
sys-devel/binutils: Set default hash style via configure parameter
This allows us to drop a gentoo-specific patch.
Package-Manager: Portage-2.3.20, Repoman-2.3.6
sys-devel/binutils/binutils-9999.ebuild | 1 +
1 file changed, 1 insertion(+)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index a2db40c93a4..cef3720ff2c 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -218,6 +218,7 @@ src_configure() {
--enable-obsolete
--enable-shared
--enable-threads
+ --enable-default-hash-style=gnu
# Newer versions (>=2.27) offer a configure flag now.
--enable-relro
# Newer versions (>=2.24) make this an explicit option. #497268
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-01-27 21:26 Andreas Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas Hüttel @ 2018-01-27 21:26 UTC (permalink / raw
To: gentoo-commits
commit: 78f22d07f7369721a4c1aa0a8a3bc136aec066dd
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 27 21:17:01 2018 +0000
Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Jan 27 21:26:00 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=78f22d07
sys-devel/binutils: Version bump
Package-Manager: Portage-2.3.20, Repoman-2.3.6
sys-devel/binutils/Manifest | 2 ++
.../binutils/{binutils-9999.ebuild => binutils-2.30.ebuild} | 11 +++++++++--
sys-devel/binutils/binutils-9999.ebuild | 6 +++++-
3 files changed, 16 insertions(+), 3 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index c82f79d40db..325f29e412a 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -8,3 +8,5 @@ DIST binutils-2.28.1-patches-1.0.tar.xz 19772 BLAKE2B 146b393b49ba868c7c064c5827
DIST binutils-2.28.1.tar.bz2 28120394 BLAKE2B 3a0ed2bcf0c859638546b7460d9e6f0a55518402ff0c65c90ce462a318f5ae6690961616d188ce6cf0271c9f2fb8b7902782d32cf0e711068c53d3d06956d89e SHA512 5ec5212497b0fa8324f6a0884c284cb71c01942bbd39356d1ae745a5c9d97274c10f9d9c723f4bef6f0217662dfcd0c36e4e955a7599b11217658dc7b97553eb
DIST binutils-2.29.1-patches-3.tar.xz 20904 BLAKE2B 5549cb2412123e4ad3a13935762cc0dca46215950dbf38a149caf4c6416da382a0fd7ecffe97b10bce4dfdcef5edc2673d49bb21e9d37be37e33b454a8c2bc1a SHA512 ba54efaf9e9f668d2922972acd2cdf5c3e6f174cfcc73d29953ab4ba6e157ce0cb500c583568a4e3baaaa92c9d30c394a327f29b51292acc66f8d3f20f5eae2a
DIST binutils-2.29.1.tar.bz2 29123355 BLAKE2B 83de518a27bae0f13c57b1979493dd7f7cabae424cff5e8495d1f064da24b6ef9e1c19d1d1adad2dca7142372782023f66b4b4223170a49b96ba3834266fe878 SHA512 4063d34555526922376ccceb3f14b43e287442e82a8038cf50f4f51ad97d438c672c0e310ca4b856c9aff5aa9911073e256e8298a7a3f1844eeb60b90d955592
+DIST binutils-2.30-patches-1.tar.xz 13884 BLAKE2B 86d160144e4ae3213838ccd07d008a96f210dbe8d894f2043420bd0003f8e0611564f77dadf60780da61278bbac41130922703fef69ba8ac451bcae5d9c65cf4 SHA512 cf38328bac920c1159e73727a9bb46bd462fa60650c90ee8a3d6221d447c678fdd79c6886efc52e35897d535dd717c1dc363bcb3f201aacd15ace078694456da
+DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f5916fb82ce95ceab424fd8dc19f6daa7ac32a149f222ccdcc603354165cc206fde070eaa44fe2cc5e57486efc7868 SHA512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-2.30.ebuild
similarity index 96%
copy from sys-devel/binutils/binutils-9999.ebuild
copy to sys-devel/binutils/binutils-2.30.ebuild
index cef3720ff2c..9d200c15a44 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-2.30.ebuild
@@ -19,6 +19,8 @@ IUSE="+cxx doc multitarget +nls static-libs test"
# for the patchsets
# Default: dilfridge :)
+PATCH_VER=1
+
case ${PV} in
9999)
BVER="git"
@@ -29,10 +31,11 @@ case ${PV} in
;;
*)
BVER=${PV}
- SRC_URI="mirror://gnu/binutils/binutils-${BVER}.tar.xz"
+ SRC_URI="mirror://gnu/binutils/binutils-${BVER}.tar.xz https://sourceware.org/pub/binutils/releases/binutils-${BVER}.tar.xz"
;;
esac
SLOT="${BVER}"
+#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
#
# The Gentoo patchset
@@ -203,6 +206,11 @@ src_configure() {
has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
has_version ">=sys-libs/glibc-2.5" && 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}
@@ -218,7 +226,6 @@ src_configure() {
--enable-obsolete
--enable-shared
--enable-threads
- --enable-default-hash-style=gnu
# Newer versions (>=2.27) offer a configure flag now.
--enable-relro
# Newer versions (>=2.24) make this an explicit option. #497268
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index cef3720ff2c..f0c8730c819 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -203,6 +203,11 @@ src_configure() {
has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
has_version ">=sys-libs/glibc-2.5" && 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}
@@ -218,7 +223,6 @@ src_configure() {
--enable-obsolete
--enable-shared
--enable-threads
- --enable-default-hash-style=gnu
# Newer versions (>=2.27) offer a configure flag now.
--enable-relro
# Newer versions (>=2.24) make this an explicit option. #497268
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-01-29 20:11 Andreas Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas Hüttel @ 2018-01-29 20:11 UTC (permalink / raw
To: gentoo-commits
commit: 8cb4ccb5c2ebb02e0e8b9de5df9fca6da7f89b5b
Author: Andreas K. Huettel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Mon Jan 29 20:07:50 2018 +0000
Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Mon Jan 29 20:10:46 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8cb4ccb5
sys-devel/binutils: Restore keywords of 2.30
Package-Manager: Portage-2.3.20, Repoman-2.3.6
sys-devel/binutils/binutils-2.30.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.30.ebuild b/sys-devel/binutils/binutils-2.30.ebuild
index 9d200c15a44..a372f88e24b 100644
--- a/sys-devel/binutils/binutils-2.30.ebuild
+++ b/sys-devel/binutils/binutils-2.30.ebuild
@@ -35,7 +35,7 @@ case ${PV} in
;;
esac
SLOT="${BVER}"
-#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
#
# The Gentoo patchset
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-04-07 10:43 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2018-04-07 10:43 UTC (permalink / raw
To: gentoo-commits
commit: b023986de7d466d361798bae98f45f8ba7a42e8a
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 7 10:40:14 2018 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Apr 7 10:42:41 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b023986d
sys-devel/binutils: fix ldscrips ${CTARGET} search path, bug #147155
This change fixes long-standing search path issue in Gentoo's binutils:
Before the change search path was the following:
/usr/${CTARGET}/lib/ldscripts
Note: it points to $SYSROOT, not to native cross-tools.
After the change search path is the following:
/usr/${CHOST}/${CTARGET}/lib/ldscripts
Added two notes to the ebuild on how things are supposed to work:
- Note [slotting support]
- Note [tooldir hack for ldscripts]
Applied change to 2.30-r1 and live ebuilds.
Reported-by: Heiko Rosemann
Closes: https://bugs.gentoo.org/147155
Package-Manager: Portage-2.3.28, Repoman-2.3.9
...inutils-9999.ebuild => binutils-2.30-r1.ebuild} | 41 +++++++++++++++++++---
sys-devel/binutils/binutils-9999.ebuild | 36 +++++++++++++++++--
2 files changed, 70 insertions(+), 7 deletions(-)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-2.30-r1.ebuild
similarity index 85%
copy from sys-devel/binutils/binutils-9999.ebuild
copy to sys-devel/binutils/binutils-2.30-r1.ebuild
index f0c8730c819..145bbe7e290 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r1.ebuild
@@ -19,6 +19,8 @@ IUSE="+cxx doc multitarget +nls static-libs test"
# for the patchsets
# Default: dilfridge :)
+PATCH_VER=1
+
case ${PV} in
9999)
BVER="git"
@@ -29,10 +31,11 @@ case ${PV} in
;;
*)
BVER=${PV}
- SRC_URI="mirror://gnu/binutils/binutils-${BVER}.tar.xz"
+ SRC_URI="mirror://gnu/binutils/binutils-${BVER}.tar.xz https://sourceware.org/pub/binutils/releases/binutils-${BVER}.tar.xz"
;;
esac
SLOT="${BVER}"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
#
# The Gentoo patchset
@@ -146,10 +149,11 @@ src_configure() {
INCPATH=${LIBPATH}/include
DATAPATH=/usr/share/binutils-data/${CTARGET}/${BVER}
if is_cross ; then
- BINPATH=/usr/${CHOST}/${CTARGET}/binutils-bin/${BVER}
+ TOOLPATH=/usr/${CHOST}/${CTARGET}
else
- BINPATH=/usr/${CTARGET}/binutils-bin/${BVER}
+ TOOLPATH=/usr/${CTARGET}
fi
+ BINPATH=${TOOLPATH}/binutils-bin/${BVER}
# Make sure we filter $LINGUAS so that only ones that
# actually work make it through #42033
@@ -251,7 +255,8 @@ src_configure() {
src_compile() {
cd "${MY_BUILDDIR}"
- emake all
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
# only build info pages if the user wants them
if use doc ; then
@@ -272,6 +277,7 @@ src_install() {
local x d
cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
rm -rf "${ED}"/${LIBPATH}/bin
use static-libs || find "${ED}" -name '*.la' -delete
@@ -380,3 +386,30 @@ pkg_postrm() {
binutils-config ${CTARGET}-${BVER}
fi
}
+
+# Note [slotting support]
+# -----------------------
+# Gentoo's layout for binutils files is non-standard as Gentoo
+# supports slotted installation for binutils. But 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 ./configure to tweak evey location we need
+# for slotting binutils. This note is about SCRIPTDIR define.
+#
+# SCRIPDIR defines 'ldscripts/' directory location. SCRIPDIR 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}/${BVER}
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index f0c8730c819..1c3f3623a94 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -146,10 +146,11 @@ src_configure() {
INCPATH=${LIBPATH}/include
DATAPATH=/usr/share/binutils-data/${CTARGET}/${BVER}
if is_cross ; then
- BINPATH=/usr/${CHOST}/${CTARGET}/binutils-bin/${BVER}
+ TOOLPATH=/usr/${CHOST}/${CTARGET}
else
- BINPATH=/usr/${CTARGET}/binutils-bin/${BVER}
+ TOOLPATH=/usr/${CTARGET}
fi
+ BINPATH=${TOOLPATH}/binutils-bin/${BVER}
# Make sure we filter $LINGUAS so that only ones that
# actually work make it through #42033
@@ -251,7 +252,8 @@ src_configure() {
src_compile() {
cd "${MY_BUILDDIR}"
- emake all
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
# only build info pages if the user wants them
if use doc ; then
@@ -272,6 +274,7 @@ src_install() {
local x d
cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
rm -rf "${ED}"/${LIBPATH}/bin
use static-libs || find "${ED}" -name '*.la' -delete
@@ -380,3 +383,30 @@ pkg_postrm() {
binutils-config ${CTARGET}-${BVER}
fi
}
+
+# Note [slotting support]
+# -----------------------
+# Gentoo's layout for binutils files is non-standard as Gentoo
+# supports slotted installation for binutils. But 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 ./configure to tweak evey location we need
+# for slotting binutils. This note is about SCRIPTDIR define.
+#
+# SCRIPDIR defines 'ldscripts/' directory location. SCRIPDIR 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}/${BVER}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-04-07 19:48 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2018-04-07 19:48 UTC (permalink / raw
To: gentoo-commits
commit: bcab49022f23201eb970383cda56842c028f4622
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 7 19:48:05 2018 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Apr 7 19:48:05 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bcab4902
sys-devel/binutils: fix typos and add accidentally words
Reported-by: [Arfrever]
Package-Manager: Portage-2.3.28, Repoman-2.3.9
sys-devel/binutils/binutils-2.30-r1.ebuild | 9 +++++----
sys-devel/binutils/binutils-9999.ebuild | 9 +++++----
2 files changed, 10 insertions(+), 8 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.30-r1.ebuild b/sys-devel/binutils/binutils-2.30-r1.ebuild
index 145bbe7e290..1940638068c 100644
--- a/sys-devel/binutils/binutils-2.30-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r1.ebuild
@@ -390,7 +390,7 @@ pkg_postrm() {
# Note [slotting support]
# -----------------------
# Gentoo's layout for binutils files is non-standard as Gentoo
-# supports slotted installation for binutils. But many tools
+# supports slotted installation for binutils. Many tools
# still expect binutils to reside in known locations.
# binutils-config package restores symlinks into known locations,
# like:
@@ -400,10 +400,11 @@ pkg_postrm() {
#
# Note [tooldir hack for ldscripts]
# ---------------------------------
-# Build system does not ./configure to tweak evey location we need
-# for slotting binutils. This note is about SCRIPTDIR define.
+# Build system does not allow ./configure to tweak every location
+# we need for slotting binutils hence annd the shuffling in
+# src_install(). This note is about SCRIPTDIR define handling.
#
-# SCRIPDIR defines 'ldscripts/' directory location. SCRIPDIR value
+# 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.
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 1c3f3623a94..2c6b66e54bb 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -387,7 +387,7 @@ pkg_postrm() {
# Note [slotting support]
# -----------------------
# Gentoo's layout for binutils files is non-standard as Gentoo
-# supports slotted installation for binutils. But many tools
+# supports slotted installation for binutils. Many tools
# still expect binutils to reside in known locations.
# binutils-config package restores symlinks into known locations,
# like:
@@ -397,10 +397,11 @@ pkg_postrm() {
#
# Note [tooldir hack for ldscripts]
# ---------------------------------
-# Build system does not ./configure to tweak evey location we need
-# for slotting binutils. This note is about SCRIPTDIR define.
+# Build system does not allow ./configure to tweak every location
+# we need for slotting binutils hence annd the shuffling in
+# src_install(). This note is about SCRIPTDIR define handling.
#
-# SCRIPDIR defines 'ldscripts/' directory location. SCRIPDIR value
+# 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.
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-04-07 20:03 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2018-04-07 20:03 UTC (permalink / raw
To: gentoo-commits
commit: e1e764680bc329188cf0daa515e3741b7e5d0c50
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 7 20:03:15 2018 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Apr 7 20:03:15 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e1e76468
sys-devel/binutils: fix s/annd/all/ typo
Reported-by: [Arfrever]
Package-Manager: Portage-2.3.28, Repoman-2.3.9
sys-devel/binutils/binutils-2.30-r1.ebuild | 2 +-
sys-devel/binutils/binutils-9999.ebuild | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.30-r1.ebuild b/sys-devel/binutils/binutils-2.30-r1.ebuild
index 1940638068c..3666a095749 100644
--- a/sys-devel/binutils/binutils-2.30-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r1.ebuild
@@ -401,7 +401,7 @@ pkg_postrm() {
# Note [tooldir hack for ldscripts]
# ---------------------------------
# Build system does not allow ./configure to tweak every location
-# we need for slotting binutils hence annd the shuffling in
+# 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
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 2c6b66e54bb..bab46c55f2e 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -398,7 +398,7 @@ pkg_postrm() {
# Note [tooldir hack for ldscripts]
# ---------------------------------
# Build system does not allow ./configure to tweak every location
-# we need for slotting binutils hence annd the shuffling in
+# 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
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-04-29 20:08 Andreas Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas Hüttel @ 2018-04-29 20:08 UTC (permalink / raw
To: gentoo-commits
commit: 8c7fe7564dc60dd6caa3afd787728acb43fc7abe
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 29 20:07:56 2018 +0000
Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Apr 29 20:08:06 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8c7fe756
sys-devel/binutils: Revision bump (no keywords), 2.30 patchset 2
Bug: https://bugs.gentoo.org/502492
Bug: https://bugs.gentoo.org/647798
Bug: https://bugs.gentoo.org/647296
Bug: https://bugs.gentoo.org/649690
Bug: https://bugs.gentoo.org/651576
Package-Manager: Portage-2.3.31, Repoman-2.3.9
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.30-r2.ebuild | 417 +++++++++++++++++++++++++++++
2 files changed, 418 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 325f29e412a..67acde949fd 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -9,4 +9,5 @@ DIST binutils-2.28.1.tar.bz2 28120394 BLAKE2B 3a0ed2bcf0c859638546b7460d9e6f0a55
DIST binutils-2.29.1-patches-3.tar.xz 20904 BLAKE2B 5549cb2412123e4ad3a13935762cc0dca46215950dbf38a149caf4c6416da382a0fd7ecffe97b10bce4dfdcef5edc2673d49bb21e9d37be37e33b454a8c2bc1a SHA512 ba54efaf9e9f668d2922972acd2cdf5c3e6f174cfcc73d29953ab4ba6e157ce0cb500c583568a4e3baaaa92c9d30c394a327f29b51292acc66f8d3f20f5eae2a
DIST binutils-2.29.1.tar.bz2 29123355 BLAKE2B 83de518a27bae0f13c57b1979493dd7f7cabae424cff5e8495d1f064da24b6ef9e1c19d1d1adad2dca7142372782023f66b4b4223170a49b96ba3834266fe878 SHA512 4063d34555526922376ccceb3f14b43e287442e82a8038cf50f4f51ad97d438c672c0e310ca4b856c9aff5aa9911073e256e8298a7a3f1844eeb60b90d955592
DIST binutils-2.30-patches-1.tar.xz 13884 BLAKE2B 86d160144e4ae3213838ccd07d008a96f210dbe8d894f2043420bd0003f8e0611564f77dadf60780da61278bbac41130922703fef69ba8ac451bcae5d9c65cf4 SHA512 cf38328bac920c1159e73727a9bb46bd462fa60650c90ee8a3d6221d447c678fdd79c6886efc52e35897d535dd717c1dc363bcb3f201aacd15ace078694456da
+DIST binutils-2.30-patches-2.tar.xz 490272 BLAKE2B a28a5b5bb8faa33fec269f2c69d6ed0e4e7d5a9169861aa4b3c45511794e1e749c216862a8258c2029f1b40c511dcb2a0aeaecda57e75d52418f10d6f345718f SHA512 1686d5b58ee968f2000647acab2bee4c263d1c85fd43fed8c820fccfc0d7024a01211e7853cd5ce452fa90da500bc17309edf6dbc901c7fd6fc7b3e3d6f42581
DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f5916fb82ce95ceab424fd8dc19f6daa7ac32a149f222ccdcc603354165cc206fde070eaa44fe2cc5e57486efc7868 SHA512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839
diff --git a/sys-devel/binutils/binutils-2.30-r2.ebuild b/sys-devel/binutils/binutils-2.30-r2.ebuild
new file mode 100644
index 00000000000..1261d38d4f5
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.30-r2.ebuild
@@ -0,0 +1,417 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils libtool flag-o-matic gnuconfig multilib versionator
+
+DESCRIPTION="Tools necessary to build programs"
+HOMEPAGE="https://sourceware.org/binutils/"
+LICENSE="GPL-3+"
+IUSE="+cxx doc multitarget +nls static-libs test"
+
+# Variables that can be set here:
+# 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
+# Default: dilfridge :)
+
+PATCH_VER=2
+
+case ${PV} in
+ 9999)
+ BVER="git"
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ ;;
+ *)
+ BVER=${PV}
+ SRC_URI="mirror://gnu/binutils/binutils-${BVER}.tar.xz https://sourceware.org/pub/binutils/releases/binutils-${BVER}.tar.xz"
+ ;;
+esac
+SLOT="${BVER}"
+#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+KEYWORDS=""
+
+#
+# The Gentoo patchset
+#
+PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${BVER}}
+PATCH_DEV=${PATCH_DEV:-dilfridge}
+
+[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
+ https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
+
+#
+# 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}
+ doc? ( sys-apps/texinfo )
+ test? ( dev-util/dejagnu )
+ nls? ( sys-devel/gettext )
+ sys-devel/flex
+ virtual/yacc
+"
+if is_cross ; then
+ # The build assumes the host has libiberty and such when cross-compiling
+ # its build tools. We should probably make binutils itself build a local
+ # copy to use, but until then, be lazy.
+ DEPEND+=" >=sys-libs/binutils-libs-${PV}"
+fi
+
+MY_BUILDDIR=${WORKDIR}/build
+
+src_unpack() {
+ case ${PV} in
+ 9999)
+ git-r3_src_unpack;
+ ;;
+ *)
+ default
+ ;;
+ esac
+ mkdir -p "${MY_BUILDDIR}"
+}
+
+src_prepare() {
+ if [[ ! -z ${PATCH_VER} ]] ; then
+ einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
+ eapply "${WORKDIR}/patch"/*.patch
+ fi
+
+ # This check should probably go somewhere else, like pkg_pretend.
+ if [[ ${CTARGET} == *-uclibc* ]] ; then
+ if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
+ die "sorry, but this binutils doesn't yet support uClibc :("
+ fi
+ fi
+
+ # Make sure our explicit libdir paths don't get clobbered. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ 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 ${BVER}"
+ [[ -n ${PATCH_VER} ]] && printf " p${PATCH_VER}"
+}
+
+src_configure() {
+ # Setup some paths
+ LIBPATH=/usr/$(get_libdir)/binutils/${CTARGET}/${BVER}
+ INCPATH=${LIBPATH}/include
+ DATAPATH=/usr/share/binutils-data/${CTARGET}/${BVER}
+ if is_cross ; then
+ TOOLPATH=/usr/${CHOST}/${CTARGET}
+ else
+ TOOLPATH=/usr/${CTARGET}
+ fi
+ BINPATH=${TOOLPATH}/binutils-bin/${BVER}
+
+ # Make sure we filter $LINGUAS so that only ones that
+ # actually work make it through #42033
+ strip-linguas -u */po
+
+ # Keep things sane
+ strip-flags
+
+ local x
+ echo
+ for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
+ einfo "$(printf '%10s' ${x}:) ${!x}"
+ done
+ echo
+
+ cd "${MY_BUILDDIR}"
+ local myconf=()
+
+ # enable gold (installed as ld.gold) and ld's plugin architecture
+ if use cxx ; then
+ myconf+=( --enable-gold )
+ myconf+=( --enable-plugins )
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && 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. #497268
+ --enable-install-libiberty
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #490566
+ --disable-{gdb,libdecnumber,readline,sim}
+ # Strip out broken static link flags.
+ # https://gcc.gnu.org/PR56750
+ --without-stage1-ldflags
+ )
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${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}"
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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}"
+ emake -k check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ for d in ../* ; do
+ [[ ${d} == ../${BVER} ]] && 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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/}" || die
+ if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
+ 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="${BVER}"
+ LIBPATH="${EPREFIX}${LIBPATH}"
+ EOF
+ newins "${T}"/env.d ${CTARGET}-${BVER}
+
+ # Handle documentation
+ if ! is_cross ; then
+ cd "${S}"
+ 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}-${BVER}
+}
+
+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}-${BVER} ]] ; then
+ local choice=$(binutils-config -l | grep ${CTARGET} | awk '{print $2}')
+ choice=${choice//$'\n'/ }
+ choice=${choice/* }
+ if [[ -z ${choice} ]] ; then
+ env -i ROOT="${ROOT}" binutils-config -u ${CTARGET}
+ else
+ binutils-config ${choice}
+ fi
+ elif [[ $(CHOST=${CTARGET} binutils-config -c) == ${CTARGET}-${BVER} ]] ; then
+ binutils-config ${CTARGET}-${BVER}
+ 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}/${BVER}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-05-01 20:24 Andreas Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas Hüttel @ 2018-05-01 20:24 UTC (permalink / raw
To: gentoo-commits
commit: 6101d9c81f968734448ddfa9ead94077d07fdab9
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Tue May 1 20:23:07 2018 +0000
Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Tue May 1 20:24:19 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6101d9c8
sys-devel/binutils: Restore keywords
Package-Manager: Portage-2.3.31, Repoman-2.3.9
sys-devel/binutils/binutils-2.30-r2.ebuild | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.30-r2.ebuild b/sys-devel/binutils/binutils-2.30-r2.ebuild
index 1261d38d4f5..4fa2ab7ce33 100644
--- a/sys-devel/binutils/binutils-2.30-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r2.ebuild
@@ -35,8 +35,7 @@ case ${PV} in
;;
esac
SLOT="${BVER}"
-#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
-KEYWORDS=""
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
#
# The Gentoo patchset
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-05-12 18:44 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2018-05-12 18:44 UTC (permalink / raw
To: gentoo-commits
commit: 0ab0a9c9d3005a7a0415e30c6ee379fc25485090
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat May 12 18:41:29 2018 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat May 12 18:44:21 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0ab0a9c9
sys-devel/binutils: don't purge environment for binutils-config
Follow toolchain.eclass cleanup where gcc-config was broken due
to missing PATH= assignment:
https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6526608cbdb8202bc69aaaedd19f773ef651862c
This change removes environment cleansing for binutils-config
Reported-by: hiyuh
Bug: https://bugs.gentoo.org/588642
Package-Manager: Portage-2.3.36, Repoman-2.3.9
sys-devel/binutils/binutils-2.30-r1.ebuild | 2 +-
sys-devel/binutils/binutils-2.30-r2.ebuild | 2 +-
sys-devel/binutils/binutils-2.30.ebuild | 2 +-
sys-devel/binutils/binutils-9999.ebuild | 2 +-
4 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.30-r1.ebuild b/sys-devel/binutils/binutils-2.30-r1.ebuild
index 3666a095749..3842bc3a240 100644
--- a/sys-devel/binutils/binutils-2.30-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r1.ebuild
@@ -378,7 +378,7 @@ pkg_postrm() {
choice=${choice//$'\n'/ }
choice=${choice/* }
if [[ -z ${choice} ]] ; then
- env -i ROOT="${ROOT}" binutils-config -u ${CTARGET}
+ binutils-config -u ${CTARGET}
else
binutils-config ${choice}
fi
diff --git a/sys-devel/binutils/binutils-2.30-r2.ebuild b/sys-devel/binutils/binutils-2.30-r2.ebuild
index 4fa2ab7ce33..1b44a0d4a1e 100644
--- a/sys-devel/binutils/binutils-2.30-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r2.ebuild
@@ -378,7 +378,7 @@ pkg_postrm() {
choice=${choice//$'\n'/ }
choice=${choice/* }
if [[ -z ${choice} ]] ; then
- env -i ROOT="${ROOT}" binutils-config -u ${CTARGET}
+ binutils-config -u ${CTARGET}
else
binutils-config ${choice}
fi
diff --git a/sys-devel/binutils/binutils-2.30.ebuild b/sys-devel/binutils/binutils-2.30.ebuild
index a372f88e24b..8fc0905153a 100644
--- a/sys-devel/binutils/binutils-2.30.ebuild
+++ b/sys-devel/binutils/binutils-2.30.ebuild
@@ -375,7 +375,7 @@ pkg_postrm() {
choice=${choice//$'\n'/ }
choice=${choice/* }
if [[ -z ${choice} ]] ; then
- env -i ROOT="${ROOT}" binutils-config -u ${CTARGET}
+ binutils-config -u ${CTARGET}
else
binutils-config ${choice}
fi
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index bab46c55f2e..d7ba7c31aa7 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -375,7 +375,7 @@ pkg_postrm() {
choice=${choice//$'\n'/ }
choice=${choice/* }
if [[ -z ${choice} ]] ; then
- env -i ROOT="${ROOT}" binutils-config -u ${CTARGET}
+ binutils-config -u ${CTARGET}
else
binutils-config ${choice}
fi
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-05-19 17:21 Andreas Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas Hüttel @ 2018-05-19 17:21 UTC (permalink / raw
To: gentoo-commits
commit: 4485556b5c3f3c92dbee97dd0b38e1452ad9e1c7
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat May 19 17:19:46 2018 +0000
Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat May 19 17:19:46 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4485556b
sys-devel/binutils: Remove old
Package-Manager: Portage-2.3.36, Repoman-2.3.9
sys-devel/binutils/Manifest | 1 -
sys-devel/binutils/binutils-2.30-r1.ebuild | 416 -----------------------------
sys-devel/binutils/binutils-2.30.ebuild | 385 --------------------------
3 files changed, 802 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 67acde949fd..943d5a86288 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -8,6 +8,5 @@ DIST binutils-2.28.1-patches-1.0.tar.xz 19772 BLAKE2B 146b393b49ba868c7c064c5827
DIST binutils-2.28.1.tar.bz2 28120394 BLAKE2B 3a0ed2bcf0c859638546b7460d9e6f0a55518402ff0c65c90ce462a318f5ae6690961616d188ce6cf0271c9f2fb8b7902782d32cf0e711068c53d3d06956d89e SHA512 5ec5212497b0fa8324f6a0884c284cb71c01942bbd39356d1ae745a5c9d97274c10f9d9c723f4bef6f0217662dfcd0c36e4e955a7599b11217658dc7b97553eb
DIST binutils-2.29.1-patches-3.tar.xz 20904 BLAKE2B 5549cb2412123e4ad3a13935762cc0dca46215950dbf38a149caf4c6416da382a0fd7ecffe97b10bce4dfdcef5edc2673d49bb21e9d37be37e33b454a8c2bc1a SHA512 ba54efaf9e9f668d2922972acd2cdf5c3e6f174cfcc73d29953ab4ba6e157ce0cb500c583568a4e3baaaa92c9d30c394a327f29b51292acc66f8d3f20f5eae2a
DIST binutils-2.29.1.tar.bz2 29123355 BLAKE2B 83de518a27bae0f13c57b1979493dd7f7cabae424cff5e8495d1f064da24b6ef9e1c19d1d1adad2dca7142372782023f66b4b4223170a49b96ba3834266fe878 SHA512 4063d34555526922376ccceb3f14b43e287442e82a8038cf50f4f51ad97d438c672c0e310ca4b856c9aff5aa9911073e256e8298a7a3f1844eeb60b90d955592
-DIST binutils-2.30-patches-1.tar.xz 13884 BLAKE2B 86d160144e4ae3213838ccd07d008a96f210dbe8d894f2043420bd0003f8e0611564f77dadf60780da61278bbac41130922703fef69ba8ac451bcae5d9c65cf4 SHA512 cf38328bac920c1159e73727a9bb46bd462fa60650c90ee8a3d6221d447c678fdd79c6886efc52e35897d535dd717c1dc363bcb3f201aacd15ace078694456da
DIST binutils-2.30-patches-2.tar.xz 490272 BLAKE2B a28a5b5bb8faa33fec269f2c69d6ed0e4e7d5a9169861aa4b3c45511794e1e749c216862a8258c2029f1b40c511dcb2a0aeaecda57e75d52418f10d6f345718f SHA512 1686d5b58ee968f2000647acab2bee4c263d1c85fd43fed8c820fccfc0d7024a01211e7853cd5ce452fa90da500bc17309edf6dbc901c7fd6fc7b3e3d6f42581
DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f5916fb82ce95ceab424fd8dc19f6daa7ac32a149f222ccdcc603354165cc206fde070eaa44fe2cc5e57486efc7868 SHA512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839
diff --git a/sys-devel/binutils/binutils-2.30-r1.ebuild b/sys-devel/binutils/binutils-2.30-r1.ebuild
deleted file mode 100644
index 3842bc3a240..00000000000
--- a/sys-devel/binutils/binutils-2.30-r1.ebuild
+++ /dev/null
@@ -1,416 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eutils libtool flag-o-matic gnuconfig multilib versionator
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="https://sourceware.org/binutils/"
-LICENSE="GPL-3+"
-IUSE="+cxx doc multitarget +nls static-libs test"
-
-# Variables that can be set here:
-# 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
-# Default: dilfridge :)
-
-PATCH_VER=1
-
-case ${PV} in
- 9999)
- BVER="git"
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- ;;
- *)
- BVER=${PV}
- SRC_URI="mirror://gnu/binutils/binutils-${BVER}.tar.xz https://sourceware.org/pub/binutils/releases/binutils-${BVER}.tar.xz"
- ;;
-esac
-SLOT="${BVER}"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
-
-#
-# The Gentoo patchset
-#
-PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${BVER}}
-PATCH_DEV=${PATCH_DEV:-dilfridge}
-
-[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
- https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
-
-#
-# 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}
- doc? ( sys-apps/texinfo )
- test? ( dev-util/dejagnu )
- nls? ( sys-devel/gettext )
- sys-devel/flex
- virtual/yacc
-"
-if is_cross ; then
- # The build assumes the host has libiberty and such when cross-compiling
- # its build tools. We should probably make binutils itself build a local
- # copy to use, but until then, be lazy.
- DEPEND+=" >=sys-libs/binutils-libs-${PV}"
-fi
-
-MY_BUILDDIR=${WORKDIR}/build
-
-src_unpack() {
- case ${PV} in
- 9999)
- git-r3_src_unpack;
- ;;
- *)
- default
- ;;
- esac
- mkdir -p "${MY_BUILDDIR}"
-}
-
-src_prepare() {
- if [[ ! -z ${PATCH_VER} ]] ; then
- einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
- eapply "${WORKDIR}/patch"/*.patch
- fi
-
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
- # Make sure our explicit libdir paths don't get clobbered. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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 ${BVER}"
- [[ -n ${PATCH_VER} ]] && printf " p${PATCH_VER}"
-}
-
-src_configure() {
- # Setup some paths
- LIBPATH=/usr/$(get_libdir)/binutils/${CTARGET}/${BVER}
- INCPATH=${LIBPATH}/include
- DATAPATH=/usr/share/binutils-data/${CTARGET}/${BVER}
- if is_cross ; then
- TOOLPATH=/usr/${CHOST}/${CTARGET}
- else
- TOOLPATH=/usr/${CTARGET}
- fi
- BINPATH=${TOOLPATH}/binutils-bin/${BVER}
-
- # Make sure we filter $LINGUAS so that only ones that
- # actually work make it through #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}"
- local myconf=()
-
- # enable gold (installed as ld.gold) and ld's plugin architecture
- if use cxx ; then
- myconf+=( --enable-gold )
- myconf+=( --enable-plugins )
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #490566
- --disable-{gdb,libdecnumber,readline,sim}
- # Strip out broken static link flags.
- # https://gcc.gnu.org/PR56750
- --without-stage1-ldflags
- )
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- # see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- for d in ../* ; do
- [[ ${d} == ../${BVER} ]] && 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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/}" || die
- if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
- 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="${BVER}"
- LIBPATH="${EPREFIX}${LIBPATH}"
- EOF
- newins "${T}"/env.d ${CTARGET}-${BVER}
-
- # Handle documentation
- if ! is_cross ; then
- cd "${S}"
- 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}-${BVER}
-}
-
-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}-${BVER} ]] ; 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}-${BVER} ]] ; then
- binutils-config ${CTARGET}-${BVER}
- 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}/${BVER}
diff --git a/sys-devel/binutils/binutils-2.30.ebuild b/sys-devel/binutils/binutils-2.30.ebuild
deleted file mode 100644
index 8fc0905153a..00000000000
--- a/sys-devel/binutils/binutils-2.30.ebuild
+++ /dev/null
@@ -1,385 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eutils libtool flag-o-matic gnuconfig multilib versionator
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="https://sourceware.org/binutils/"
-LICENSE="GPL-3+"
-IUSE="+cxx doc multitarget +nls static-libs test"
-
-# Variables that can be set here:
-# 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
-# Default: dilfridge :)
-
-PATCH_VER=1
-
-case ${PV} in
- 9999)
- BVER="git"
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- ;;
- *)
- BVER=${PV}
- SRC_URI="mirror://gnu/binutils/binutils-${BVER}.tar.xz https://sourceware.org/pub/binutils/releases/binutils-${BVER}.tar.xz"
- ;;
-esac
-SLOT="${BVER}"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
-
-#
-# The Gentoo patchset
-#
-PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${BVER}}
-PATCH_DEV=${PATCH_DEV:-dilfridge}
-
-[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
- https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
-
-#
-# 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}
- doc? ( sys-apps/texinfo )
- test? ( dev-util/dejagnu )
- nls? ( sys-devel/gettext )
- sys-devel/flex
- virtual/yacc
-"
-if is_cross ; then
- # The build assumes the host has libiberty and such when cross-compiling
- # its build tools. We should probably make binutils itself build a local
- # copy to use, but until then, be lazy.
- DEPEND+=" >=sys-libs/binutils-libs-${PV}"
-fi
-
-MY_BUILDDIR=${WORKDIR}/build
-
-src_unpack() {
- case ${PV} in
- 9999)
- git-r3_src_unpack;
- ;;
- *)
- default
- ;;
- esac
- mkdir -p "${MY_BUILDDIR}"
-}
-
-src_prepare() {
- if [[ ! -z ${PATCH_VER} ]] ; then
- einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
- eapply "${WORKDIR}/patch"/*.patch
- fi
-
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
- # Make sure our explicit libdir paths don't get clobbered. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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 ${BVER}"
- [[ -n ${PATCH_VER} ]] && printf " p${PATCH_VER}"
-}
-
-src_configure() {
- # Setup some paths
- LIBPATH=/usr/$(get_libdir)/binutils/${CTARGET}/${BVER}
- INCPATH=${LIBPATH}/include
- DATAPATH=/usr/share/binutils-data/${CTARGET}/${BVER}
- if is_cross ; then
- BINPATH=/usr/${CHOST}/${CTARGET}/binutils-bin/${BVER}
- else
- BINPATH=/usr/${CTARGET}/binutils-bin/${BVER}
- fi
-
- # Make sure we filter $LINGUAS so that only ones that
- # actually work make it through #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}"
- local myconf=()
-
- # enable gold (installed as ld.gold) and ld's plugin architecture
- if use cxx ; then
- myconf+=( --enable-gold )
- myconf+=( --enable-plugins )
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #490566
- --disable-{gdb,libdecnumber,readline,sim}
- # Strip out broken static link flags.
- # https://gcc.gnu.org/PR56750
- --without-stage1-ldflags
- )
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- emake all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- for d in ../* ; do
- [[ ${d} == ../${BVER} ]] && 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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/}" || die
- if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
- 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="${BVER}"
- LIBPATH="${EPREFIX}${LIBPATH}"
- EOF
- newins "${T}"/env.d ${CTARGET}-${BVER}
-
- # Handle documentation
- if ! is_cross ; then
- cd "${S}"
- 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}-${BVER}
-}
-
-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}-${BVER} ]] ; 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}-${BVER} ]] ; then
- binutils-config ${CTARGET}-${BVER}
- fi
-}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-06-02 5:48 Mikle Kolyada
0 siblings, 0 replies; 477+ messages in thread
From: Mikle Kolyada @ 2018-06-02 5:48 UTC (permalink / raw
To: gentoo-commits
commit: 034c23d5e72f173405b29ff240018e1af093c690
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sat Jun 2 05:47:52 2018 +0000
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sat Jun 2 05:47:52 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=034c23d5
sys-devel/binutils: amd64 stable wrt bug #655574
Package-Manager: Portage-2.3.24, Repoman-2.3.6
sys-devel/binutils/binutils-2.30-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.30-r2.ebuild b/sys-devel/binutils/binutils-2.30-r2.ebuild
index 1b44a0d4a1e..31336ee7d67 100644
--- a/sys-devel/binutils/binutils-2.30-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r2.ebuild
@@ -35,7 +35,7 @@ case ${PV} in
;;
esac
SLOT="${BVER}"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
#
# The Gentoo patchset
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-06-03 8:00 Mart Raudsepp
0 siblings, 0 replies; 477+ messages in thread
From: Mart Raudsepp @ 2018-06-03 8:00 UTC (permalink / raw
To: gentoo-commits
commit: 03839be71da3858345bad2380a2aab8d4e02fd38
Author: Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Sun Jun 3 07:06:24 2018 +0000
Commit: Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Sun Jun 3 08:00:32 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=03839be7
sys-devel/binutils-2.30-r2: arm64 stable (bug #655574)
Package-Manager: Portage-2.3.28, Repoman-2.3.9
sys-devel/binutils/binutils-2.30-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.30-r2.ebuild b/sys-devel/binutils/binutils-2.30-r2.ebuild
index 31336ee7d67..3679f472e4c 100644
--- a/sys-devel/binutils/binutils-2.30-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r2.ebuild
@@ -35,7 +35,7 @@ case ${PV} in
;;
esac
SLOT="${BVER}"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
#
# The Gentoo patchset
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-06-03 20:47 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2018-06-03 20:47 UTC (permalink / raw
To: gentoo-commits
commit: 32ff0a5431a242ad6f73c29833fcb52d126a5691
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sun Jun 3 20:46:26 2018 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sun Jun 3 20:46:51 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=32ff0a54
sys-devel/binutils: stable 2.30-r2 for ia64, bug #655574
Bug: https://bugs.gentoo.org/655574
Package-Manager: Portage-2.3.38, Repoman-2.3.9
RepoMan-Options: --include-arches="ia64"
sys-devel/binutils/binutils-2.30-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.30-r2.ebuild b/sys-devel/binutils/binutils-2.30-r2.ebuild
index 3679f472e4c..26bc3112879 100644
--- a/sys-devel/binutils/binutils-2.30-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r2.ebuild
@@ -35,7 +35,7 @@ case ${PV} in
;;
esac
SLOT="${BVER}"
-KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
#
# The Gentoo patchset
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-06-12 21:06 Andreas Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas Hüttel @ 2018-06-12 21:06 UTC (permalink / raw
To: gentoo-commits
commit: 01bca6cd9e06fdb660a59cb639f6d2c6b796aa89
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Tue Jun 12 21:02:50 2018 +0000
Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Tue Jun 12 21:06:36 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=01bca6cd
sys-devel/binutils: Revision bump, patchset 3
Few upstream commits. Mostly a re-do of the Gentoo-specific
testsuite patches.
Package-Manager: Portage-2.3.40, Repoman-2.3.9
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.30-r3.ebuild | 417 +++++++++++++++++++++++++++++
2 files changed, 418 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 943d5a86288..68339b6c103 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -9,4 +9,5 @@ DIST binutils-2.28.1.tar.bz2 28120394 BLAKE2B 3a0ed2bcf0c859638546b7460d9e6f0a55
DIST binutils-2.29.1-patches-3.tar.xz 20904 BLAKE2B 5549cb2412123e4ad3a13935762cc0dca46215950dbf38a149caf4c6416da382a0fd7ecffe97b10bce4dfdcef5edc2673d49bb21e9d37be37e33b454a8c2bc1a SHA512 ba54efaf9e9f668d2922972acd2cdf5c3e6f174cfcc73d29953ab4ba6e157ce0cb500c583568a4e3baaaa92c9d30c394a327f29b51292acc66f8d3f20f5eae2a
DIST binutils-2.29.1.tar.bz2 29123355 BLAKE2B 83de518a27bae0f13c57b1979493dd7f7cabae424cff5e8495d1f064da24b6ef9e1c19d1d1adad2dca7142372782023f66b4b4223170a49b96ba3834266fe878 SHA512 4063d34555526922376ccceb3f14b43e287442e82a8038cf50f4f51ad97d438c672c0e310ca4b856c9aff5aa9911073e256e8298a7a3f1844eeb60b90d955592
DIST binutils-2.30-patches-2.tar.xz 490272 BLAKE2B a28a5b5bb8faa33fec269f2c69d6ed0e4e7d5a9169861aa4b3c45511794e1e749c216862a8258c2029f1b40c511dcb2a0aeaecda57e75d52418f10d6f345718f SHA512 1686d5b58ee968f2000647acab2bee4c263d1c85fd43fed8c820fccfc0d7024a01211e7853cd5ce452fa90da500bc17309edf6dbc901c7fd6fc7b3e3d6f42581
+DIST binutils-2.30-patches-3.tar.xz 548804 BLAKE2B 428a1750233ae3f019e20cb5ed1d8e6fe6455181e8f5961dbfe7b66493d1c42050f889e45c02c1fc1a84d545c9e61f81ad6ffd5afc0b1099a702ccc7637c3abe SHA512 c91e902d1d9fc2e9782df04c93173c3207c771f1c063e2ff12c9336593c954ea3f1b2474a8fc045927d72fe18f7401874059599d100c4a1fd152081f05913d03
DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f5916fb82ce95ceab424fd8dc19f6daa7ac32a149f222ccdcc603354165cc206fde070eaa44fe2cc5e57486efc7868 SHA512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839
diff --git a/sys-devel/binutils/binutils-2.30-r3.ebuild b/sys-devel/binutils/binutils-2.30-r3.ebuild
new file mode 100644
index 00000000000..02b4fbca807
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.30-r3.ebuild
@@ -0,0 +1,417 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils libtool flag-o-matic gnuconfig multilib versionator
+
+DESCRIPTION="Tools necessary to build programs"
+HOMEPAGE="https://sourceware.org/binutils/"
+LICENSE="GPL-3+"
+IUSE="+cxx doc multitarget +nls static-libs test"
+
+# Variables that can be set here:
+# 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
+# Default: dilfridge :)
+
+PATCH_VER=3
+
+case ${PV} in
+ 9999)
+ BVER="git"
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ ;;
+ *)
+ BVER=${PV}
+ SRC_URI="mirror://gnu/binutils/binutils-${BVER}.tar.xz https://sourceware.org/pub/binutils/releases/binutils-${BVER}.tar.xz"
+ ;;
+esac
+SLOT="${BVER}"
+#KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd ~x86-fbsd"
+KEYWORDS=""
+
+#
+# The Gentoo patchset
+#
+PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${BVER}}
+PATCH_DEV=${PATCH_DEV:-dilfridge}
+
+[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
+ https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
+
+#
+# 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}
+ doc? ( sys-apps/texinfo )
+ test? ( dev-util/dejagnu )
+ nls? ( sys-devel/gettext )
+ sys-devel/flex
+ virtual/yacc
+"
+if is_cross ; then
+ # The build assumes the host has libiberty and such when cross-compiling
+ # its build tools. We should probably make binutils itself build a local
+ # copy to use, but until then, be lazy.
+ DEPEND+=" >=sys-libs/binutils-libs-${PV}"
+fi
+
+MY_BUILDDIR=${WORKDIR}/build
+
+src_unpack() {
+ case ${PV} in
+ 9999)
+ git-r3_src_unpack;
+ ;;
+ *)
+ default
+ ;;
+ esac
+ mkdir -p "${MY_BUILDDIR}"
+}
+
+src_prepare() {
+ if [[ ! -z ${PATCH_VER} ]] ; then
+ einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
+ eapply "${WORKDIR}/patch"/*.patch
+ fi
+
+ # This check should probably go somewhere else, like pkg_pretend.
+ if [[ ${CTARGET} == *-uclibc* ]] ; then
+ if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
+ die "sorry, but this binutils doesn't yet support uClibc :("
+ fi
+ fi
+
+ # Make sure our explicit libdir paths don't get clobbered. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ 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 ${BVER}"
+ [[ -n ${PATCH_VER} ]] && printf " p${PATCH_VER}"
+}
+
+src_configure() {
+ # Setup some paths
+ LIBPATH=/usr/$(get_libdir)/binutils/${CTARGET}/${BVER}
+ INCPATH=${LIBPATH}/include
+ DATAPATH=/usr/share/binutils-data/${CTARGET}/${BVER}
+ if is_cross ; then
+ TOOLPATH=/usr/${CHOST}/${CTARGET}
+ else
+ TOOLPATH=/usr/${CTARGET}
+ fi
+ BINPATH=${TOOLPATH}/binutils-bin/${BVER}
+
+ # Make sure we filter $LINGUAS so that only ones that
+ # actually work make it through #42033
+ strip-linguas -u */po
+
+ # Keep things sane
+ strip-flags
+
+ local x
+ echo
+ for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
+ einfo "$(printf '%10s' ${x}:) ${!x}"
+ done
+ echo
+
+ cd "${MY_BUILDDIR}"
+ local myconf=()
+
+ # enable gold (installed as ld.gold) and ld's plugin architecture
+ if use cxx ; then
+ myconf+=( --enable-gold )
+ myconf+=( --enable-plugins )
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && 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. #497268
+ --enable-install-libiberty
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #490566
+ --disable-{gdb,libdecnumber,readline,sim}
+ # Strip out broken static link flags.
+ # https://gcc.gnu.org/PR56750
+ --without-stage1-ldflags
+ )
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${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}"
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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}"
+ emake -k check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ for d in ../* ; do
+ [[ ${d} == ../${BVER} ]] && 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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/}" || die
+ if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
+ 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="${BVER}"
+ LIBPATH="${EPREFIX}${LIBPATH}"
+ EOF
+ newins "${T}"/env.d ${CTARGET}-${BVER}
+
+ # Handle documentation
+ if ! is_cross ; then
+ cd "${S}"
+ 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}-${BVER}
+}
+
+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}-${BVER} ]] ; 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}-${BVER} ]] ; then
+ binutils-config ${CTARGET}-${BVER}
+ 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}/${BVER}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-06-13 22:10 Andreas Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas Hüttel @ 2018-06-13 22:10 UTC (permalink / raw
To: gentoo-commits
commit: c3acce0f7a0538f9bc414e186840174aaf85fc44
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Wed Jun 13 22:08:38 2018 +0000
Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Wed Jun 13 22:08:38 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c3acce0f
sys-devel/binutils: Restore keywords
Package-Manager: Portage-2.3.40, Repoman-2.3.9
sys-devel/binutils/binutils-2.30-r3.ebuild | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.30-r3.ebuild b/sys-devel/binutils/binutils-2.30-r3.ebuild
index 02b4fbca807..7902b582213 100644
--- a/sys-devel/binutils/binutils-2.30-r3.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r3.ebuild
@@ -35,8 +35,7 @@ case ${PV} in
;;
esac
SLOT="${BVER}"
-#KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd ~x86-fbsd"
-KEYWORDS=""
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
#
# The Gentoo patchset
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-06-18 20:21 Tobias Klausmann
0 siblings, 0 replies; 477+ messages in thread
From: Tobias Klausmann @ 2018-06-18 20:21 UTC (permalink / raw
To: gentoo-commits
commit: 5d804381ef9d29484e689ca287af15dd88d00526
Author: Tobias Klausmann <klausman <AT> gentoo <DOT> org>
AuthorDate: Mon Jun 18 20:21:35 2018 +0000
Commit: Tobias Klausmann <klausman <AT> gentoo <DOT> org>
CommitDate: Mon Jun 18 20:21:35 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5d804381
sys-devel/binutils-2.30-r2: alpha stable
Gentoo-Bug: http://bugs.gentoo.org/655574
sys-devel/binutils/binutils-2.30-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.30-r2.ebuild b/sys-devel/binutils/binutils-2.30-r2.ebuild
index d88d5caf9dd..bd063c2a5f4 100644
--- a/sys-devel/binutils/binutils-2.30-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r2.ebuild
@@ -35,7 +35,7 @@ case ${PV} in
;;
esac
SLOT="${BVER}"
-KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 ~arm arm64 ~hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd ~x86-fbsd"
#
# The Gentoo patchset
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-06-22 18:21 Andreas Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas Hüttel @ 2018-06-22 18:21 UTC (permalink / raw
To: gentoo-commits
commit: abfa31f3d0796c3f7c9f8da123596173c4d78c2e
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Jun 22 18:08:34 2018 +0000
Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Jun 22 18:21:46 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=abfa31f3
sys-devel/binutils: Use 9999 instead of git as live designator, add patchset
Package-Manager: Portage-2.3.40, Repoman-2.3.9
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-9999.ebuild | 37 +++++++++++++++++----------------
2 files changed, 20 insertions(+), 18 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 68339b6c103..de8b3b1b3d3 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -11,3 +11,4 @@ DIST binutils-2.29.1.tar.bz2 29123355 BLAKE2B 83de518a27bae0f13c57b1979493dd7f7c
DIST binutils-2.30-patches-2.tar.xz 490272 BLAKE2B a28a5b5bb8faa33fec269f2c69d6ed0e4e7d5a9169861aa4b3c45511794e1e749c216862a8258c2029f1b40c511dcb2a0aeaecda57e75d52418f10d6f345718f SHA512 1686d5b58ee968f2000647acab2bee4c263d1c85fd43fed8c820fccfc0d7024a01211e7853cd5ce452fa90da500bc17309edf6dbc901c7fd6fc7b3e3d6f42581
DIST binutils-2.30-patches-3.tar.xz 548804 BLAKE2B 428a1750233ae3f019e20cb5ed1d8e6fe6455181e8f5961dbfe7b66493d1c42050f889e45c02c1fc1a84d545c9e61f81ad6ffd5afc0b1099a702ccc7637c3abe SHA512 c91e902d1d9fc2e9782df04c93173c3207c771f1c063e2ff12c9336593c954ea3f1b2474a8fc045927d72fe18f7401874059599d100c4a1fd152081f05913d03
DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f5916fb82ce95ceab424fd8dc19f6daa7ac32a149f222ccdcc603354165cc206fde070eaa44fe2cc5e57486efc7868 SHA512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839
+DIST binutils-9999-patches-1.tar.xz 10116 BLAKE2B 1ae970fd13ea1b94f554ed5b3fde4b6bdd90efcfc2488efc2f1465511279027c2e7f2a7371069afadb91bf833680a24e1a5df50d3169c9ee132c933b3c1fdba9 SHA512 a5d97d7070b876bf072db2a99a2876c239e03409849b9c93467bd3e70cd97c468110031a09e1c182c05d48004ec3e1651f44a1850b0275a385c3bae598cd98d7
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index d7ba7c31aa7..c7972aa0b70 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -19,25 +19,25 @@ IUSE="+cxx doc multitarget +nls static-libs test"
# for the patchsets
# Default: dilfridge :)
+PATCH_VER=1
+
case ${PV} in
9999)
- BVER="git"
EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
inherit git-r3
S=${WORKDIR}/binutils
EGIT_CHECKOUT_DIR=${S}
;;
*)
- BVER=${PV}
- SRC_URI="mirror://gnu/binutils/binutils-${BVER}.tar.xz"
+ SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
;;
esac
-SLOT="${BVER}"
+SLOT="${PV}"
#
# The Gentoo patchset
#
-PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${BVER}}
+PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
PATCH_DEV=${PATCH_DEV:-dilfridge}
[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
@@ -80,7 +80,8 @@ MY_BUILDDIR=${WORKDIR}/build
src_unpack() {
case ${PV} in
9999)
- git-r3_src_unpack;
+ git-r3_src_unpack
+ default
;;
*)
default
@@ -136,21 +137,21 @@ toolchain-binutils_bugurl() {
printf "https://bugs.gentoo.org/"
}
toolchain-binutils_pkgversion() {
- printf "Gentoo ${BVER}"
+ printf "Gentoo ${PV}"
[[ -n ${PATCH_VER} ]] && printf " p${PATCH_VER}"
}
src_configure() {
# Setup some paths
- LIBPATH=/usr/$(get_libdir)/binutils/${CTARGET}/${BVER}
+ LIBPATH=/usr/$(get_libdir)/binutils/${CTARGET}/${PV}
INCPATH=${LIBPATH}/include
- DATAPATH=/usr/share/binutils-data/${CTARGET}/${BVER}
+ DATAPATH=/usr/share/binutils-data/${CTARGET}/${PV}
if is_cross ; then
TOOLPATH=/usr/${CHOST}/${CTARGET}
else
TOOLPATH=/usr/${CTARGET}
fi
- BINPATH=${TOOLPATH}/binutils-bin/${BVER}
+ BINPATH=${TOOLPATH}/binutils-bin/${PV}
# Make sure we filter $LINGUAS so that only ones that
# actually work make it through #42033
@@ -282,7 +283,7 @@ src_install() {
# Newer versions of binutils get fancy with ${LIBPATH} #171905
cd "${ED}"/${LIBPATH}
for d in ../* ; do
- [[ ${d} == ../${BVER} ]] && continue
+ [[ ${d} == ../${PV} ]] && continue
mv ${d}/* . || die
rmdir ${d} || die
done
@@ -323,10 +324,10 @@ src_install() {
insinto /etc/env.d/binutils
cat <<-EOF > "${T}"/env.d
TARGET="${CTARGET}"
- VER="${BVER}"
+ VER="${PV}"
LIBPATH="${EPREFIX}${LIBPATH}"
EOF
- newins "${T}"/env.d ${CTARGET}-${BVER}
+ newins "${T}"/env.d ${CTARGET}-${PV}
# Handle documentation
if ! is_cross ; then
@@ -358,7 +359,7 @@ src_install() {
pkg_postinst() {
# Make sure this ${CTARGET} has a binutils version selected
[[ -e ${EROOT}/etc/env.d/binutils/config-${CTARGET} ]] && return 0
- binutils-config ${CTARGET}-${BVER}
+ binutils-config ${CTARGET}-${PV}
}
pkg_postrm() {
@@ -370,7 +371,7 @@ pkg_postrm() {
# 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}-${BVER} ]] ; then
+ 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/* }
@@ -379,8 +380,8 @@ pkg_postrm() {
else
binutils-config ${choice}
fi
- elif [[ $(CHOST=${CTARGET} binutils-config -c) == ${CTARGET}-${BVER} ]] ; then
- binutils-config ${CTARGET}-${BVER}
+ elif [[ $(CHOST=${CTARGET} binutils-config -c) == ${CTARGET}-${PV} ]] ; then
+ binutils-config ${CTARGET}-${PV}
fi
}
@@ -410,4 +411,4 @@ pkg_postrm() {
# - 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}/${BVER}
+# ${LIBPATH}: /usr/$(get_libdir)/binutils/${CTARGET}/${PV}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-06-23 8:24 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2018-06-23 8:24 UTC (permalink / raw
To: gentoo-commits
commit: e1dd6cfb40ad425b00890d6fd134c79c450d63fe
Author: Rolf Eike Beer <eike <AT> sf-mail <DOT> de>
AuthorDate: Sat Jun 23 08:12:25 2018 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Jun 23 08:24:14 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e1dd6cfb
sys-devel/binutils: stable 2.30-r2 for sparc
Bug: https://bugs.gentoo.org/655574
Closes: https://bugs.gentoo.org/645858
Package-Manager: Portage-2.3.40, Repoman-2.3.9
RepoMan-Options: --include-arches="sparc"
sys-devel/binutils/binutils-2.30-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.30-r2.ebuild b/sys-devel/binutils/binutils-2.30-r2.ebuild
index bd063c2a5f4..e60c18e851b 100644
--- a/sys-devel/binutils/binutils-2.30-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r2.ebuild
@@ -35,7 +35,7 @@ case ${PV} in
;;
esac
SLOT="${BVER}"
-KEYWORDS="alpha amd64 ~arm arm64 ~hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 ~arm arm64 ~hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
#
# The Gentoo patchset
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-06-26 16:12 Mikle Kolyada
0 siblings, 0 replies; 477+ messages in thread
From: Mikle Kolyada @ 2018-06-26 16:12 UTC (permalink / raw
To: gentoo-commits
commit: 44be0052d2abca01a9f9d908a42463f03c77fc6d
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Tue Jun 26 16:11:51 2018 +0000
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Tue Jun 26 16:11:51 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=44be0052
sys-devel/binutils: arm stable wrt bug #655574
Package-Manager: Portage-2.3.40, Repoman-2.3.9
sys-devel/binutils/binutils-2.30-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.30-r2.ebuild b/sys-devel/binutils/binutils-2.30-r2.ebuild
index e60c18e851b..b1ea0927280 100644
--- a/sys-devel/binutils/binutils-2.30-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r2.ebuild
@@ -35,7 +35,7 @@ case ${PV} in
;;
esac
SLOT="${BVER}"
-KEYWORDS="alpha amd64 ~arm arm64 ~hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm arm64 ~hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
#
# The Gentoo patchset
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-06-27 19:06 Andreas Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas Hüttel @ 2018-06-27 19:06 UTC (permalink / raw
To: gentoo-commits
commit: 84eab008261ffb440c5bdab3c5a29428dcbe1c38
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Wed Jun 27 19:05:39 2018 +0000
Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Wed Jun 27 19:06:05 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=84eab008
sys-devel/binutils: Add stable branch live ebuild
Package-Manager: Portage-2.3.40, Repoman-2.3.9
...{binutils-9999.ebuild => binutils-2.31.9999.ebuild} | 18 ++++++++++++++----
sys-devel/binutils/binutils-9999.ebuild | 17 +++++++++++++----
2 files changed, 27 insertions(+), 8 deletions(-)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-2.31.9999.ebuild
similarity index 97%
copy from sys-devel/binutils/binutils-9999.ebuild
copy to sys-devel/binutils/binutils-2.31.9999.ebuild
index c7972aa0b70..5a79c08c6b9 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-2.31.9999.ebuild
@@ -20,6 +20,7 @@ IUSE="+cxx doc multitarget +nls static-libs test"
# Default: dilfridge :)
PATCH_VER=1
+PATCH_BINUTILS_VER=9999
case ${PV} in
9999)
@@ -27,12 +28,22 @@ case ${PV} in
inherit git-r3
S=${WORKDIR}/binutils
EGIT_CHECKOUT_DIR=${S}
+ SLOT=${PV}
+ ;;
+ *.9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ EGIT_BRANCH=${PV%.9999}
+ EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
+ SLOT=${PV%.9999}
;;
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
+ SLOT=${PV}
;;
esac
-SLOT="${PV}"
#
# The Gentoo patchset
@@ -79,14 +90,13 @@ MY_BUILDDIR=${WORKDIR}/build
src_unpack() {
case ${PV} in
- 9999)
+ *9999)
git-r3_src_unpack
- default
;;
*)
- default
;;
esac
+ default
mkdir -p "${MY_BUILDDIR}"
}
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index c7972aa0b70..a2e72661a56 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -27,12 +27,22 @@ case ${PV} in
inherit git-r3
S=${WORKDIR}/binutils
EGIT_CHECKOUT_DIR=${S}
+ SLOT=${PV}
+ ;;
+ *.9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ EGIT_BRANCH=${PV%.9999}
+ EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
+ SLOT=${PV%.9999}
;;
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
+ SLOT=${PV}
;;
esac
-SLOT="${PV}"
#
# The Gentoo patchset
@@ -79,14 +89,13 @@ MY_BUILDDIR=${WORKDIR}/build
src_unpack() {
case ${PV} in
- 9999)
+ *9999)
git-r3_src_unpack
- default
;;
*)
- default
;;
esac
+ default
mkdir -p "${MY_BUILDDIR}"
}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-06-29 22:10 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2018-06-29 22:10 UTC (permalink / raw
To: gentoo-commits
commit: 7cd28a73409715be629121cbf0167282a5ea1314
Author: Rolf Eike Beer <eike <AT> sf-mail <DOT> de>
AuthorDate: Fri Jun 29 19:40:04 2018 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Fri Jun 29 22:09:41 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7cd28a73
sys-devel/binutils: stable 2.30-r2 for hppa
Bug: https://bugs.gentoo.org/655574
Package-Manager: Portage-2.3.40, Repoman-2.3.9
RepoMan-Options: --include-arches="hppa"
sys-devel/binutils/binutils-2.30-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.30-r2.ebuild b/sys-devel/binutils/binutils-2.30-r2.ebuild
index b1ea0927280..82f4bcd0174 100644
--- a/sys-devel/binutils/binutils-2.30-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r2.ebuild
@@ -35,7 +35,7 @@ case ${PV} in
;;
esac
SLOT="${BVER}"
-KEYWORDS="alpha amd64 arm arm64 ~hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
#
# The Gentoo patchset
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-07-01 17:49 Mikle Kolyada
0 siblings, 0 replies; 477+ messages in thread
From: Mikle Kolyada @ 2018-07-01 17:49 UTC (permalink / raw
To: gentoo-commits
commit: cbe8ff65cbb48e37bc1c11fab2b857cbb0448f6b
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 1 17:49:27 2018 +0000
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sun Jul 1 17:49:27 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cbe8ff65
sys-devel/binutils: s390 stable wrt bug #655574
Package-Manager: Portage-2.3.40, Repoman-2.3.9
sys-devel/binutils/binutils-2.30-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.30-r2.ebuild b/sys-devel/binutils/binutils-2.30-r2.ebuild
index 82f4bcd0174..098b68c753a 100644
--- a/sys-devel/binutils/binutils-2.30-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r2.ebuild
@@ -35,7 +35,7 @@ case ${PV} in
;;
esac
SLOT="${BVER}"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ~ppc ~ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
#
# The Gentoo patchset
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-07-15 12:55 Andreas Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas Hüttel @ 2018-07-15 12:55 UTC (permalink / raw
To: gentoo-commits
commit: 9fae8a49a964ee34e8cba59da3e1a0c16a339b37
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 15 12:54:27 2018 +0000
Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Jul 15 12:55:04 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9fae8a49
sys-devel/binutils: Zero-day 2.31 bump for the brave or stupid
=== ld Summary ===
unexpected failures 1
FAIL: --warn-shared-textrel --fatal-warnings (?)
Gold testsuite fully b0rken, needs investigation:
/bin/sh: /var/tmp/portage/sys-devel/binutils-2.31/work/binutils-2.31
/gold/../test-driver: No such file or directory
make[5]: *** [Makefile:1394: bootstrap-test-r.log] Error 127
Package-Manager: Portage-2.3.40, Repoman-2.3.9
sys-devel/binutils/Manifest | 2 +
sys-devel/binutils/binutils-2.31.ebuild | 423 ++++++++++++++++++++++++++++++++
2 files changed, 425 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index de8b3b1b3d3..2f09e530523 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -11,4 +11,6 @@ DIST binutils-2.29.1.tar.bz2 29123355 BLAKE2B 83de518a27bae0f13c57b1979493dd7f7c
DIST binutils-2.30-patches-2.tar.xz 490272 BLAKE2B a28a5b5bb8faa33fec269f2c69d6ed0e4e7d5a9169861aa4b3c45511794e1e749c216862a8258c2029f1b40c511dcb2a0aeaecda57e75d52418f10d6f345718f SHA512 1686d5b58ee968f2000647acab2bee4c263d1c85fd43fed8c820fccfc0d7024a01211e7853cd5ce452fa90da500bc17309edf6dbc901c7fd6fc7b3e3d6f42581
DIST binutils-2.30-patches-3.tar.xz 548804 BLAKE2B 428a1750233ae3f019e20cb5ed1d8e6fe6455181e8f5961dbfe7b66493d1c42050f889e45c02c1fc1a84d545c9e61f81ad6ffd5afc0b1099a702ccc7637c3abe SHA512 c91e902d1d9fc2e9782df04c93173c3207c771f1c063e2ff12c9336593c954ea3f1b2474a8fc045927d72fe18f7401874059599d100c4a1fd152081f05913d03
DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f5916fb82ce95ceab424fd8dc19f6daa7ac32a149f222ccdcc603354165cc206fde070eaa44fe2cc5e57486efc7868 SHA512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839
+DIST binutils-2.31-patches-1.tar.xz 16692 BLAKE2B ee9c7b344b12073c881eaf6fa80e8cb3187add720a26b60e7ef7db9dc3eb8e6e2b83cd0afb3115c4846aa914f8957554bd010f67af34dc5ad81e676639cf361e SHA512 4004d52327babd00f946b199f71e9eca840e66c65a287730af80b5a69138fe5f946f33c13400e028088238314c644f00b858049f8923948d2e6144dc779c24c0
+DIST binutils-2.31.tar.xz 20445772 BLAKE2B 02d9ef7f8ea0d24682716b6890916d507762b4672a3148192afbbc1d6323b3f3970eb630ec9af5e18c60ba1d4579d49d847e571bcd8b1236c24b04c9e3815481 SHA512 3448a71c42d790569c1159c1042aa520b2d8ac8af7506fb1f2a4199dfb13b39f1c2271a5cb3a643d10c7d8a388a73f190e90503d4793a016da7893473aa1c635
DIST binutils-9999-patches-1.tar.xz 10116 BLAKE2B 1ae970fd13ea1b94f554ed5b3fde4b6bdd90efcfc2488efc2f1465511279027c2e7f2a7371069afadb91bf833680a24e1a5df50d3169c9ee132c933b3c1fdba9 SHA512 a5d97d7070b876bf072db2a99a2876c239e03409849b9c93467bd3e70cd97c468110031a09e1c182c05d48004ec3e1651f44a1850b0275a385c3bae598cd98d7
diff --git a/sys-devel/binutils/binutils-2.31.ebuild b/sys-devel/binutils/binutils-2.31.ebuild
new file mode 100644
index 00000000000..a2e72661a56
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.31.ebuild
@@ -0,0 +1,423 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils libtool flag-o-matic gnuconfig multilib versionator
+
+DESCRIPTION="Tools necessary to build programs"
+HOMEPAGE="https://sourceware.org/binutils/"
+LICENSE="GPL-3+"
+IUSE="+cxx doc multitarget +nls static-libs test"
+
+# Variables that can be set here:
+# 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
+# Default: dilfridge :)
+
+PATCH_VER=1
+
+case ${PV} in
+ 9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ SLOT=${PV}
+ ;;
+ *.9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ EGIT_BRANCH=${PV%.9999}
+ EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
+ SLOT=${PV%.9999}
+ ;;
+ *)
+ SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
+ SLOT=${PV}
+ ;;
+esac
+
+#
+# The Gentoo patchset
+#
+PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
+PATCH_DEV=${PATCH_DEV:-dilfridge}
+
+[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
+ https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
+
+#
+# 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}
+ doc? ( sys-apps/texinfo )
+ test? ( dev-util/dejagnu )
+ nls? ( sys-devel/gettext )
+ sys-devel/flex
+ virtual/yacc
+"
+if is_cross ; then
+ # The build assumes the host has libiberty and such when cross-compiling
+ # its build tools. We should probably make binutils itself build a local
+ # copy to use, but until then, be lazy.
+ DEPEND+=" >=sys-libs/binutils-libs-${PV}"
+fi
+
+MY_BUILDDIR=${WORKDIR}/build
+
+src_unpack() {
+ case ${PV} in
+ *9999)
+ git-r3_src_unpack
+ ;;
+ *)
+ ;;
+ esac
+ default
+ mkdir -p "${MY_BUILDDIR}"
+}
+
+src_prepare() {
+ if [[ ! -z ${PATCH_VER} ]] ; then
+ einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
+ eapply "${WORKDIR}/patch"/*.patch
+ fi
+
+ # This check should probably go somewhere else, like pkg_pretend.
+ if [[ ${CTARGET} == *-uclibc* ]] ; then
+ if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
+ die "sorry, but this binutils doesn't yet support uClibc :("
+ fi
+ fi
+
+ # Make sure our explicit libdir paths don't get clobbered. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ 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() {
+ # 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 #42033
+ strip-linguas -u */po
+
+ # Keep things sane
+ strip-flags
+
+ local x
+ echo
+ for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
+ einfo "$(printf '%10s' ${x}:) ${!x}"
+ done
+ echo
+
+ cd "${MY_BUILDDIR}"
+ local myconf=()
+
+ # enable gold (installed as ld.gold) and ld's plugin architecture
+ if use cxx ; then
+ myconf+=( --enable-gold )
+ myconf+=( --enable-plugins )
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && 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. #497268
+ --enable-install-libiberty
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #490566
+ --disable-{gdb,libdecnumber,readline,sim}
+ # Strip out broken static link flags.
+ # https://gcc.gnu.org/PR56750
+ --without-stage1-ldflags
+ )
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${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}"
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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}"
+ emake -k check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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/}" || die
+ if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
+ 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}"
+ 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-07-18 15:04 Andreas Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas Hüttel @ 2018-07-18 15:04 UTC (permalink / raw
To: gentoo-commits
commit: 0d915d91aacb836f31a7c92d107e9bbc7eb44a64
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Wed Jul 18 14:45:09 2018 +0000
Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Wed Jul 18 15:04:30 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0d915d91
sys-devel/binutils: Version bump to point release 2.31.1
Package-Manager: Portage-2.3.40, Repoman-2.3.9
sys-devel/binutils/Manifest | 2 ++
.../binutils/{binutils-2.31.9999.ebuild => binutils-2.31.1.ebuild} | 7 +++----
sys-devel/binutils/binutils-2.31.9999.ebuild | 6 +++---
sys-devel/binutils/binutils-9999.ebuild | 7 ++++---
4 files changed, 12 insertions(+), 10 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 2f09e530523..276c7a8c749 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -12,5 +12,7 @@ DIST binutils-2.30-patches-2.tar.xz 490272 BLAKE2B a28a5b5bb8faa33fec269f2c69d6e
DIST binutils-2.30-patches-3.tar.xz 548804 BLAKE2B 428a1750233ae3f019e20cb5ed1d8e6fe6455181e8f5961dbfe7b66493d1c42050f889e45c02c1fc1a84d545c9e61f81ad6ffd5afc0b1099a702ccc7637c3abe SHA512 c91e902d1d9fc2e9782df04c93173c3207c771f1c063e2ff12c9336593c954ea3f1b2474a8fc045927d72fe18f7401874059599d100c4a1fd152081f05913d03
DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f5916fb82ce95ceab424fd8dc19f6daa7ac32a149f222ccdcc603354165cc206fde070eaa44fe2cc5e57486efc7868 SHA512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839
DIST binutils-2.31-patches-1.tar.xz 16692 BLAKE2B ee9c7b344b12073c881eaf6fa80e8cb3187add720a26b60e7ef7db9dc3eb8e6e2b83cd0afb3115c4846aa914f8957554bd010f67af34dc5ad81e676639cf361e SHA512 4004d52327babd00f946b199f71e9eca840e66c65a287730af80b5a69138fe5f946f33c13400e028088238314c644f00b858049f8923948d2e6144dc779c24c0
+DIST binutils-2.31.1-patches-1.tar.xz 10644 BLAKE2B 3c2e09713593fc01d78d45ee4e4ac92020d5de781325c8ea98a5193a36a2a0a814f1b6730ae718ad92f92c5876e8e47d0eee7c42d2fce281cc0b37fadb85c42b SHA512 d701e6e2c9d22ca5c7ac4bf08d9206a6648b299b7b04a053aaabc34fa94d7c5fd074a08e3f3af66365069918d9000986c646430bf2adf94213cbf0d55d6e6c51
+DIST binutils-2.31.1.tar.xz 20467996 BLAKE2B 6b914df1fbb7cf54f2159f71b2c2b09f3f6a569b7a3cb4cf9790d0a3733a7548bc0ea32334a178ed3b56e8b97656ae99c7abaf212601beeaeae9a0884c0f6051 SHA512 0fca326feb1d5f5fe505a827b20237fe3ec9c13eaf7ec7e35847fd71184f605ba1cefe1314b1b8f8a29c0aa9d88162849ee1c1a3e70c2f7407d88339b17edb30
DIST binutils-2.31.tar.xz 20445772 BLAKE2B 02d9ef7f8ea0d24682716b6890916d507762b4672a3148192afbbc1d6323b3f3970eb630ec9af5e18c60ba1d4579d49d847e571bcd8b1236c24b04c9e3815481 SHA512 3448a71c42d790569c1159c1042aa520b2d8ac8af7506fb1f2a4199dfb13b39f1c2271a5cb3a643d10c7d8a388a73f190e90503d4793a016da7893473aa1c635
DIST binutils-9999-patches-1.tar.xz 10116 BLAKE2B 1ae970fd13ea1b94f554ed5b3fde4b6bdd90efcfc2488efc2f1465511279027c2e7f2a7371069afadb91bf833680a24e1a5df50d3169c9ee132c933b3c1fdba9 SHA512 a5d97d7070b876bf072db2a99a2876c239e03409849b9c93467bd3e70cd97c468110031a09e1c182c05d48004ec3e1651f44a1850b0275a385c3bae598cd98d7
diff --git a/sys-devel/binutils/binutils-2.31.9999.ebuild b/sys-devel/binutils/binutils-2.31.1.ebuild
similarity index 98%
copy from sys-devel/binutils/binutils-2.31.9999.ebuild
copy to sys-devel/binutils/binutils-2.31.1.ebuild
index 5a79c08c6b9..46fc4e24954 100644
--- a/sys-devel/binutils/binutils-2.31.9999.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1.ebuild
@@ -20,7 +20,6 @@ IUSE="+cxx doc multitarget +nls static-libs test"
# Default: dilfridge :)
PATCH_VER=1
-PATCH_BINUTILS_VER=9999
case ${PV} in
9999)
@@ -35,13 +34,13 @@ case ${PV} in
inherit git-r3
S=${WORKDIR}/binutils
EGIT_CHECKOUT_DIR=${S}
- EGIT_BRANCH=${PV%.9999}
+ EGIT_BRANCH=$(get_version_component_range 1-2)
EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
- SLOT=${PV%.9999}
+ SLOT=$(get_version_component_range 1-2)
;;
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
- SLOT=${PV}
+ SLOT=$(get_version_component_range 1-2)
;;
esac
diff --git a/sys-devel/binutils/binutils-2.31.9999.ebuild b/sys-devel/binutils/binutils-2.31.9999.ebuild
index 5a79c08c6b9..b51be8aa269 100644
--- a/sys-devel/binutils/binutils-2.31.9999.ebuild
+++ b/sys-devel/binutils/binutils-2.31.9999.ebuild
@@ -35,13 +35,13 @@ case ${PV} in
inherit git-r3
S=${WORKDIR}/binutils
EGIT_CHECKOUT_DIR=${S}
- EGIT_BRANCH=${PV%.9999}
+ EGIT_BRANCH=$(get_version_component_range 1-2)
EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
- SLOT=${PV%.9999}
+ SLOT=$(get_version_component_range 1-2)
;;
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
- SLOT=${PV}
+ SLOT=$(get_version_component_range 1-2)
;;
esac
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index a2e72661a56..b51be8aa269 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -20,6 +20,7 @@ IUSE="+cxx doc multitarget +nls static-libs test"
# Default: dilfridge :)
PATCH_VER=1
+PATCH_BINUTILS_VER=9999
case ${PV} in
9999)
@@ -34,13 +35,13 @@ case ${PV} in
inherit git-r3
S=${WORKDIR}/binutils
EGIT_CHECKOUT_DIR=${S}
- EGIT_BRANCH=${PV%.9999}
+ EGIT_BRANCH=$(get_version_component_range 1-2)
EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
- SLOT=${PV%.9999}
+ SLOT=$(get_version_component_range 1-2)
;;
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
- SLOT=${PV}
+ SLOT=$(get_version_component_range 1-2)
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-08-04 18:18 Andreas Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas Hüttel @ 2018-08-04 18:18 UTC (permalink / raw
To: gentoo-commits
commit: 7e98ed3ed12e27e20999e368ea45d85711c0e243
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Aug 4 18:17:19 2018 +0000
Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Aug 4 18:17:19 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7e98ed3e
sys-devel/binutils: Remove branch live ebuild
Package-Manager: Portage-2.3.44, Repoman-2.3.10
sys-devel/binutils/binutils-2.31.9999.ebuild | 424 ---------------------------
1 file changed, 424 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.31.9999.ebuild b/sys-devel/binutils/binutils-2.31.9999.ebuild
deleted file mode 100644
index b51be8aa269..00000000000
--- a/sys-devel/binutils/binutils-2.31.9999.ebuild
+++ /dev/null
@@ -1,424 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eutils libtool flag-o-matic gnuconfig multilib versionator
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="https://sourceware.org/binutils/"
-LICENSE="GPL-3+"
-IUSE="+cxx doc multitarget +nls static-libs test"
-
-# Variables that can be set here:
-# 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
-# Default: dilfridge :)
-
-PATCH_VER=1
-PATCH_BINUTILS_VER=9999
-
-case ${PV} in
- 9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- SLOT=${PV}
- ;;
- *.9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- EGIT_BRANCH=$(get_version_component_range 1-2)
- EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
- SLOT=$(get_version_component_range 1-2)
- ;;
- *)
- SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
- SLOT=$(get_version_component_range 1-2)
- ;;
-esac
-
-#
-# The Gentoo patchset
-#
-PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
-PATCH_DEV=${PATCH_DEV:-dilfridge}
-
-[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
- https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
-
-#
-# 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}
- doc? ( sys-apps/texinfo )
- test? ( dev-util/dejagnu )
- nls? ( sys-devel/gettext )
- sys-devel/flex
- virtual/yacc
-"
-if is_cross ; then
- # The build assumes the host has libiberty and such when cross-compiling
- # its build tools. We should probably make binutils itself build a local
- # copy to use, but until then, be lazy.
- DEPEND+=" >=sys-libs/binutils-libs-${PV}"
-fi
-
-MY_BUILDDIR=${WORKDIR}/build
-
-src_unpack() {
- case ${PV} in
- *9999)
- git-r3_src_unpack
- ;;
- *)
- ;;
- esac
- default
- mkdir -p "${MY_BUILDDIR}"
-}
-
-src_prepare() {
- if [[ ! -z ${PATCH_VER} ]] ; then
- einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
- eapply "${WORKDIR}/patch"/*.patch
- fi
-
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
- # Make sure our explicit libdir paths don't get clobbered. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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() {
- # 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 #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}"
- local myconf=()
-
- # enable gold (installed as ld.gold) and ld's plugin architecture
- if use cxx ; then
- myconf+=( --enable-gold )
- myconf+=( --enable-plugins )
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #490566
- --disable-{gdb,libdecnumber,readline,sim}
- # Strip out broken static link flags.
- # https://gcc.gnu.org/PR56750
- --without-stage1-ldflags
- )
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- # see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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/}" || die
- if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
- 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}"
- 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-08-04 18:18 Andreas Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas Hüttel @ 2018-08-04 18:18 UTC (permalink / raw
To: gentoo-commits
commit: 0be121f7407806d69880293cc57fe8534d94b6d4
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Aug 4 18:16:11 2018 +0000
Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Aug 4 18:16:11 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0be121f7
sys-devel/binutils: Remove old
Package-Manager: Portage-2.3.44, Repoman-2.3.10
sys-devel/binutils/Manifest | 2 -
sys-devel/binutils/binutils-2.31.ebuild | 427 --------------------------------
2 files changed, 429 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 276c7a8c749..0926475d632 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -11,8 +11,6 @@ DIST binutils-2.29.1.tar.bz2 29123355 BLAKE2B 83de518a27bae0f13c57b1979493dd7f7c
DIST binutils-2.30-patches-2.tar.xz 490272 BLAKE2B a28a5b5bb8faa33fec269f2c69d6ed0e4e7d5a9169861aa4b3c45511794e1e749c216862a8258c2029f1b40c511dcb2a0aeaecda57e75d52418f10d6f345718f SHA512 1686d5b58ee968f2000647acab2bee4c263d1c85fd43fed8c820fccfc0d7024a01211e7853cd5ce452fa90da500bc17309edf6dbc901c7fd6fc7b3e3d6f42581
DIST binutils-2.30-patches-3.tar.xz 548804 BLAKE2B 428a1750233ae3f019e20cb5ed1d8e6fe6455181e8f5961dbfe7b66493d1c42050f889e45c02c1fc1a84d545c9e61f81ad6ffd5afc0b1099a702ccc7637c3abe SHA512 c91e902d1d9fc2e9782df04c93173c3207c771f1c063e2ff12c9336593c954ea3f1b2474a8fc045927d72fe18f7401874059599d100c4a1fd152081f05913d03
DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f5916fb82ce95ceab424fd8dc19f6daa7ac32a149f222ccdcc603354165cc206fde070eaa44fe2cc5e57486efc7868 SHA512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839
-DIST binutils-2.31-patches-1.tar.xz 16692 BLAKE2B ee9c7b344b12073c881eaf6fa80e8cb3187add720a26b60e7ef7db9dc3eb8e6e2b83cd0afb3115c4846aa914f8957554bd010f67af34dc5ad81e676639cf361e SHA512 4004d52327babd00f946b199f71e9eca840e66c65a287730af80b5a69138fe5f946f33c13400e028088238314c644f00b858049f8923948d2e6144dc779c24c0
DIST binutils-2.31.1-patches-1.tar.xz 10644 BLAKE2B 3c2e09713593fc01d78d45ee4e4ac92020d5de781325c8ea98a5193a36a2a0a814f1b6730ae718ad92f92c5876e8e47d0eee7c42d2fce281cc0b37fadb85c42b SHA512 d701e6e2c9d22ca5c7ac4bf08d9206a6648b299b7b04a053aaabc34fa94d7c5fd074a08e3f3af66365069918d9000986c646430bf2adf94213cbf0d55d6e6c51
DIST binutils-2.31.1.tar.xz 20467996 BLAKE2B 6b914df1fbb7cf54f2159f71b2c2b09f3f6a569b7a3cb4cf9790d0a3733a7548bc0ea32334a178ed3b56e8b97656ae99c7abaf212601beeaeae9a0884c0f6051 SHA512 0fca326feb1d5f5fe505a827b20237fe3ec9c13eaf7ec7e35847fd71184f605ba1cefe1314b1b8f8a29c0aa9d88162849ee1c1a3e70c2f7407d88339b17edb30
-DIST binutils-2.31.tar.xz 20445772 BLAKE2B 02d9ef7f8ea0d24682716b6890916d507762b4672a3148192afbbc1d6323b3f3970eb630ec9af5e18c60ba1d4579d49d847e571bcd8b1236c24b04c9e3815481 SHA512 3448a71c42d790569c1159c1042aa520b2d8ac8af7506fb1f2a4199dfb13b39f1c2271a5cb3a643d10c7d8a388a73f190e90503d4793a016da7893473aa1c635
DIST binutils-9999-patches-1.tar.xz 10116 BLAKE2B 1ae970fd13ea1b94f554ed5b3fde4b6bdd90efcfc2488efc2f1465511279027c2e7f2a7371069afadb91bf833680a24e1a5df50d3169c9ee132c933b3c1fdba9 SHA512 a5d97d7070b876bf072db2a99a2876c239e03409849b9c93467bd3e70cd97c468110031a09e1c182c05d48004ec3e1651f44a1850b0275a385c3bae598cd98d7
diff --git a/sys-devel/binutils/binutils-2.31.ebuild b/sys-devel/binutils/binutils-2.31.ebuild
deleted file mode 100644
index ea7e40bf967..00000000000
--- a/sys-devel/binutils/binutils-2.31.ebuild
+++ /dev/null
@@ -1,427 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eutils libtool flag-o-matic gnuconfig multilib versionator
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="https://sourceware.org/binutils/"
-LICENSE="GPL-3+"
-IUSE="+cxx doc multitarget +nls static-libs test"
-
-# Variables that can be set here:
-# 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
-# Default: dilfridge :)
-
-PATCH_VER=1
-
-case ${PV} in
- 9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- SLOT=${PV}
- ;;
- *.9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- EGIT_BRANCH=${PV%.9999}
- EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
- SLOT=${PV%.9999}
- ;;
- *)
- SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
- SLOT=${PV}
- ;;
-esac
-
-#
-# The Gentoo patchset
-#
-PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
-PATCH_DEV=${PATCH_DEV:-dilfridge}
-
-[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
- https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
-
-#
-# 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}
- doc? ( sys-apps/texinfo )
- test? ( dev-util/dejagnu )
- nls? ( sys-devel/gettext )
- sys-devel/flex
- virtual/yacc
-"
-if is_cross ; then
- # The build assumes the host has libiberty and such when cross-compiling
- # its build tools. We should probably make binutils itself build a local
- # copy to use, but until then, be lazy.
- DEPEND+=" >=sys-libs/binutils-libs-${PV}"
-fi
-
-MY_BUILDDIR=${WORKDIR}/build
-
-src_unpack() {
- case ${PV} in
- *9999)
- git-r3_src_unpack
- ;;
- *)
- ;;
- esac
- default
- mkdir -p "${MY_BUILDDIR}"
-}
-
-src_prepare() {
- # this file is missing in the 2.31 tarball, affects gold testsuite
- cp "${FILESDIR}/${P}-test-driver" "${S}/test-driver" || die
- chmod +x "${S}/test-driver" || die
-
- if [[ ! -z ${PATCH_VER} ]] ; then
- einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
- eapply "${WORKDIR}/patch"/*.patch
- fi
-
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
- # Make sure our explicit libdir paths don't get clobbered. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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() {
- # 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 #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}"
- local myconf=()
-
- # enable gold (installed as ld.gold) and ld's plugin architecture
- if use cxx ; then
- myconf+=( --enable-gold )
- myconf+=( --enable-plugins )
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #490566
- --disable-{gdb,libdecnumber,readline,sim}
- # Strip out broken static link flags.
- # https://gcc.gnu.org/PR56750
- --without-stage1-ldflags
- )
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- # see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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/}" || die
- if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
- 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}"
- 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-08-07 9:45 Andreas Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas Hüttel @ 2018-08-07 9:45 UTC (permalink / raw
To: gentoo-commits
commit: 9adc627026410dbb651570f75263073f7751208c
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 7 09:41:48 2018 +0000
Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Tue Aug 7 09:45:08 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9adc6270
sys-devel/binutils: Restore keywords of 2.31.1
Package-Manager: Portage-2.3.44, Repoman-2.3.10
sys-devel/binutils/binutils-2.31.1.ebuild | 1 +
1 file changed, 1 insertion(+)
diff --git a/sys-devel/binutils/binutils-2.31.1.ebuild b/sys-devel/binutils/binutils-2.31.1.ebuild
index 46fc4e24954..d28b62827bc 100644
--- a/sys-devel/binutils/binutils-2.31.1.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1.ebuild
@@ -41,6 +41,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-08-19 5:50 Matt Turner
0 siblings, 0 replies; 477+ messages in thread
From: Matt Turner @ 2018-08-19 5:50 UTC (permalink / raw
To: gentoo-commits
commit: 93279ac9867989c6ccdcac30b0bbbfa9efa4bedd
Author: Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Sun Aug 19 05:50:26 2018 +0000
Commit: Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Sun Aug 19 05:50:26 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=93279ac9
sys-devel/binutils-2.30-r2: ppc stable, bug 655574
sys-devel/binutils/binutils-2.30-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.30-r2.ebuild b/sys-devel/binutils/binutils-2.30-r2.ebuild
index 098b68c753a..ac9653927d7 100644
--- a/sys-devel/binutils/binutils-2.30-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r2.ebuild
@@ -35,7 +35,7 @@ case ${PV} in
;;
esac
SLOT="${BVER}"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ~ppc ~ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ~ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
#
# The Gentoo patchset
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-08-19 5:50 Matt Turner
0 siblings, 0 replies; 477+ messages in thread
From: Matt Turner @ 2018-08-19 5:50 UTC (permalink / raw
To: gentoo-commits
commit: ed5b837d999eb67d768164c203c84b488c935389
Author: Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Sun Aug 19 05:50:33 2018 +0000
Commit: Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Sun Aug 19 05:50:33 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ed5b837d
sys-devel/binutils-2.30-r2: ppc64 stable, bug 655574
sys-devel/binutils/binutils-2.30-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.30-r2.ebuild b/sys-devel/binutils/binutils-2.30-r2.ebuild
index ac9653927d7..3ac285bad43 100644
--- a/sys-devel/binutils/binutils-2.30-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r2.ebuild
@@ -35,7 +35,7 @@ case ${PV} in
;;
esac
SLOT="${BVER}"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ~ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
#
# The Gentoo patchset
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-08-27 13:17 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2018-08-27 13:17 UTC (permalink / raw
To: gentoo-commits
commit: bb0df5be78a66dcd29eb320351fb81e8cc54dca0
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Mon Aug 27 13:11:53 2018 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Mon Aug 27 13:17:09 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bb0df5be
sys-devel/binutils: cut 2 patchset for 2.31.1
Single new patch to fix build failure against llvm:
+ 0013-Fix-type-checking-errors.patch
Reported-by: David Carlos Manuelda
Closes: https://bugs.gentoo.org/663194
Package-Manager: Portage-2.3.48, Repoman-2.3.10
sys-devel/binutils/Manifest | 2 +-
sys-devel/binutils/binutils-2.31.1.ebuild | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 0926475d632..6f0279b237c 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -11,6 +11,6 @@ DIST binutils-2.29.1.tar.bz2 29123355 BLAKE2B 83de518a27bae0f13c57b1979493dd7f7c
DIST binutils-2.30-patches-2.tar.xz 490272 BLAKE2B a28a5b5bb8faa33fec269f2c69d6ed0e4e7d5a9169861aa4b3c45511794e1e749c216862a8258c2029f1b40c511dcb2a0aeaecda57e75d52418f10d6f345718f SHA512 1686d5b58ee968f2000647acab2bee4c263d1c85fd43fed8c820fccfc0d7024a01211e7853cd5ce452fa90da500bc17309edf6dbc901c7fd6fc7b3e3d6f42581
DIST binutils-2.30-patches-3.tar.xz 548804 BLAKE2B 428a1750233ae3f019e20cb5ed1d8e6fe6455181e8f5961dbfe7b66493d1c42050f889e45c02c1fc1a84d545c9e61f81ad6ffd5afc0b1099a702ccc7637c3abe SHA512 c91e902d1d9fc2e9782df04c93173c3207c771f1c063e2ff12c9336593c954ea3f1b2474a8fc045927d72fe18f7401874059599d100c4a1fd152081f05913d03
DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f5916fb82ce95ceab424fd8dc19f6daa7ac32a149f222ccdcc603354165cc206fde070eaa44fe2cc5e57486efc7868 SHA512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839
-DIST binutils-2.31.1-patches-1.tar.xz 10644 BLAKE2B 3c2e09713593fc01d78d45ee4e4ac92020d5de781325c8ea98a5193a36a2a0a814f1b6730ae718ad92f92c5876e8e47d0eee7c42d2fce281cc0b37fadb85c42b SHA512 d701e6e2c9d22ca5c7ac4bf08d9206a6648b299b7b04a053aaabc34fa94d7c5fd074a08e3f3af66365069918d9000986c646430bf2adf94213cbf0d55d6e6c51
+DIST binutils-2.31.1-patches-2.tar.xz 11232 BLAKE2B b8ac65872017c063650d4e04855efa3fd3e9faa566e81fa9fb3ae777c1337627023c1af85b708a7933b577a69652451ff488340d7cc9f035d3a3a655da0fc8d6 SHA512 2d0ee2e727586fc39cdb8abc7251c12dd350d18dd84103ddacc08978db48d45445c05b7ea5f095842f6e0350db94d593270b23a38920a01ca59c363decaa2a58
DIST binutils-2.31.1.tar.xz 20467996 BLAKE2B 6b914df1fbb7cf54f2159f71b2c2b09f3f6a569b7a3cb4cf9790d0a3733a7548bc0ea32334a178ed3b56e8b97656ae99c7abaf212601beeaeae9a0884c0f6051 SHA512 0fca326feb1d5f5fe505a827b20237fe3ec9c13eaf7ec7e35847fd71184f605ba1cefe1314b1b8f8a29c0aa9d88162849ee1c1a3e70c2f7407d88339b17edb30
DIST binutils-9999-patches-1.tar.xz 10116 BLAKE2B 1ae970fd13ea1b94f554ed5b3fde4b6bdd90efcfc2488efc2f1465511279027c2e7f2a7371069afadb91bf833680a24e1a5df50d3169c9ee132c933b3c1fdba9 SHA512 a5d97d7070b876bf072db2a99a2876c239e03409849b9c93467bd3e70cd97c468110031a09e1c182c05d48004ec3e1651f44a1850b0275a385c3bae598cd98d7
diff --git a/sys-devel/binutils/binutils-2.31.1.ebuild b/sys-devel/binutils/binutils-2.31.1.ebuild
index d28b62827bc..aa2b74cf6c1 100644
--- a/sys-devel/binutils/binutils-2.31.1.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1.ebuild
@@ -19,7 +19,7 @@ IUSE="+cxx doc multitarget +nls static-libs test"
# for the patchsets
# Default: dilfridge :)
-PATCH_VER=1
+PATCH_VER=2
case ${PV} in
9999)
@@ -49,7 +49,7 @@ esac
# The Gentoo patchset
#
PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
-PATCH_DEV=${PATCH_DEV:-dilfridge}
+PATCH_DEV=${PATCH_DEV:-slyfox}
[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-09-15 11:27 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2018-09-15 11:27 UTC (permalink / raw
To: gentoo-commits
commit: 5d01953075fcfdb1fbb0e39c3f5f07271e4cf092
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Sep 15 11:26:52 2018 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Sep 15 11:27:17 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5d019530
sys-devel/binutils: expand SONAME with USE=multitarget, bug #666100
In #663690 creative use of LD_LIBRARY_PATH exposed a problem
of Gentoo's split across binutils and binutils-libs:
we install libbfd.so with the same SONAME but different ABIs.
This caused 'ld' to SIGSEGV or fail asserts.
The change here is to give unique SONAME to each of:
native binutils, cross binutils, binutils-libs packages.
On top of that we encode USE=multitarget flags into SONAME as well.
binutils-libs will also include USE=64-bit-bfd.
This way dynamic linker will be able to detect incompatible changes
like:
- rebuild binutils with new USE flags
- install binutils-libs (silently overrides binutils' libbfd.so)
and report it explicitly.
Bug: https://bugs.gentoo.org/666100
Package-Manager: Portage-2.3.49, Repoman-2.3.10
sys-devel/binutils/Manifest | 2 +-
sys-devel/binutils/binutils-9999.ebuild | 7 +++++--
2 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 6f0279b237c..6ead7bd848b 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -13,4 +13,4 @@ DIST binutils-2.30-patches-3.tar.xz 548804 BLAKE2B 428a1750233ae3f019e20cb5ed1d8
DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f5916fb82ce95ceab424fd8dc19f6daa7ac32a149f222ccdcc603354165cc206fde070eaa44fe2cc5e57486efc7868 SHA512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839
DIST binutils-2.31.1-patches-2.tar.xz 11232 BLAKE2B b8ac65872017c063650d4e04855efa3fd3e9faa566e81fa9fb3ae777c1337627023c1af85b708a7933b577a69652451ff488340d7cc9f035d3a3a655da0fc8d6 SHA512 2d0ee2e727586fc39cdb8abc7251c12dd350d18dd84103ddacc08978db48d45445c05b7ea5f095842f6e0350db94d593270b23a38920a01ca59c363decaa2a58
DIST binutils-2.31.1.tar.xz 20467996 BLAKE2B 6b914df1fbb7cf54f2159f71b2c2b09f3f6a569b7a3cb4cf9790d0a3733a7548bc0ea32334a178ed3b56e8b97656ae99c7abaf212601beeaeae9a0884c0f6051 SHA512 0fca326feb1d5f5fe505a827b20237fe3ec9c13eaf7ec7e35847fd71184f605ba1cefe1314b1b8f8a29c0aa9d88162849ee1c1a3e70c2f7407d88339b17edb30
-DIST binutils-9999-patches-1.tar.xz 10116 BLAKE2B 1ae970fd13ea1b94f554ed5b3fde4b6bdd90efcfc2488efc2f1465511279027c2e7f2a7371069afadb91bf833680a24e1a5df50d3169c9ee132c933b3c1fdba9 SHA512 a5d97d7070b876bf072db2a99a2876c239e03409849b9c93467bd3e70cd97c468110031a09e1c182c05d48004ec3e1651f44a1850b0275a385c3bae598cd98d7
+DIST binutils-9999-patches-2.tar.xz 11672 BLAKE2B 40b790713fc6cf463de3b3c3d207686890cc674fa44828952e73a66b723e4d9e8374b9e13fd44ffc5e0e5e1dc6eb63910563f4f318ff22f56813bd29ba4fe338 SHA512 ed1d88b693e35368e7ec6e16ccd7a5561ba697b778afc2da296f46698aff5d4d6a39c5fc030ce189b00af944d80f673bdac770771d23dd1f256eac2fb5858493
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index b51be8aa269..93dcbdf26b0 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -19,7 +19,7 @@ IUSE="+cxx doc multitarget +nls static-libs test"
# for the patchsets
# Default: dilfridge :)
-PATCH_VER=1
+PATCH_VER=2
PATCH_BINUTILS_VER=9999
case ${PV} in
@@ -49,7 +49,7 @@ esac
# The Gentoo patchset
#
PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
-PATCH_DEV=${PATCH_DEV:-dilfridge}
+PATCH_DEV=${PATCH_DEV:-slyfox}
[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
@@ -249,6 +249,9 @@ src_configure() {
# 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. #666100
+ --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
)
echo ./configure "${myconf[@]}"
"${S}"/configure "${myconf[@]}" || die
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-09-16 7:59 Mikle Kolyada
0 siblings, 0 replies; 477+ messages in thread
From: Mikle Kolyada @ 2018-09-16 7:59 UTC (permalink / raw
To: gentoo-commits
commit: 5680fbc0bb223a01444356f413ec80a6cc3de35b
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sun Sep 16 07:58:36 2018 +0000
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sun Sep 16 07:58:36 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5680fbc0
sys-devel/binutils: sh/m68k stable wrt bug #655574
Package-Manager: Portage-2.3.40, Repoman-2.3.9
sys-devel/binutils/binutils-2.30-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.30-r2.ebuild b/sys-devel/binutils/binutils-2.30-r2.ebuild
index 3ac285bad43..65b7a3f9a10 100644
--- a/sys-devel/binutils/binutils-2.30-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r2.ebuild
@@ -35,7 +35,7 @@ case ${PV} in
;;
esac
SLOT="${BVER}"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
#
# The Gentoo patchset
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-09-21 7:00 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2018-09-21 7:00 UTC (permalink / raw
To: gentoo-commits
commit: 29a5c809380b2a3cb1eb15229404e9cf4dfca61c
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Thu Sep 20 21:58:33 2018 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Fri Sep 21 07:00:29 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=29a5c809
sys-devel/binutils: release patchset 3 for 2.31.1
One new patch:
+ 0014-Gentoo-add-with-extra-soversion-suffix-option.patch
Changes SONAME from
libopcodes-2.31.1.so
to
libopcodes-2.31.1.gentoo-sys-devel-binutils-mt.so
SONAME now encodes USE=multilib and package name.
Bug: https://bugs.gentoo.org/663690
Bug: https://bugs.gentoo.org/666376
Bug: https://bugs.gentoo.org/666100
Package-Manager: Portage-2.3.49, Repoman-2.3.10
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.31.1-r1.ebuild | 427 +++++++++++++++++++++++++++
2 files changed, 428 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 6ead7bd848b..56b480b7efa 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -12,5 +12,6 @@ DIST binutils-2.30-patches-2.tar.xz 490272 BLAKE2B a28a5b5bb8faa33fec269f2c69d6e
DIST binutils-2.30-patches-3.tar.xz 548804 BLAKE2B 428a1750233ae3f019e20cb5ed1d8e6fe6455181e8f5961dbfe7b66493d1c42050f889e45c02c1fc1a84d545c9e61f81ad6ffd5afc0b1099a702ccc7637c3abe SHA512 c91e902d1d9fc2e9782df04c93173c3207c771f1c063e2ff12c9336593c954ea3f1b2474a8fc045927d72fe18f7401874059599d100c4a1fd152081f05913d03
DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f5916fb82ce95ceab424fd8dc19f6daa7ac32a149f222ccdcc603354165cc206fde070eaa44fe2cc5e57486efc7868 SHA512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839
DIST binutils-2.31.1-patches-2.tar.xz 11232 BLAKE2B b8ac65872017c063650d4e04855efa3fd3e9faa566e81fa9fb3ae777c1337627023c1af85b708a7933b577a69652451ff488340d7cc9f035d3a3a655da0fc8d6 SHA512 2d0ee2e727586fc39cdb8abc7251c12dd350d18dd84103ddacc08978db48d45445c05b7ea5f095842f6e0350db94d593270b23a38920a01ca59c363decaa2a58
+DIST binutils-2.31.1-patches-3.tar.xz 12640 BLAKE2B 3444b219dd02ad513e6c36214d649a8a74638382103c88ec8de76a579be0ee13f8d1450e3b8d82dfddad55f2f851b32aee910a99230c7d8673f8426fc79a4cd9 SHA512 67b23c17518305561d190a15cba4a1af18a0a3cf1d7e62583ac7667d2fa40e7c7ec024cc981009d5d1caf1939633ab55fc0a198b69af02dc7841be43ff1acd13
DIST binutils-2.31.1.tar.xz 20467996 BLAKE2B 6b914df1fbb7cf54f2159f71b2c2b09f3f6a569b7a3cb4cf9790d0a3733a7548bc0ea32334a178ed3b56e8b97656ae99c7abaf212601beeaeae9a0884c0f6051 SHA512 0fca326feb1d5f5fe505a827b20237fe3ec9c13eaf7ec7e35847fd71184f605ba1cefe1314b1b8f8a29c0aa9d88162849ee1c1a3e70c2f7407d88339b17edb30
DIST binutils-9999-patches-2.tar.xz 11672 BLAKE2B 40b790713fc6cf463de3b3c3d207686890cc674fa44828952e73a66b723e4d9e8374b9e13fd44ffc5e0e5e1dc6eb63910563f4f318ff22f56813bd29ba4fe338 SHA512 ed1d88b693e35368e7ec6e16ccd7a5561ba697b778afc2da296f46698aff5d4d6a39c5fc030ce189b00af944d80f673bdac770771d23dd1f256eac2fb5858493
diff --git a/sys-devel/binutils/binutils-2.31.1-r1.ebuild b/sys-devel/binutils/binutils-2.31.1-r1.ebuild
new file mode 100644
index 00000000000..d7752af4f3f
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.31.1-r1.ebuild
@@ -0,0 +1,427 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils libtool flag-o-matic gnuconfig multilib versionator
+
+DESCRIPTION="Tools necessary to build programs"
+HOMEPAGE="https://sourceware.org/binutils/"
+LICENSE="GPL-3+"
+IUSE="+cxx doc multitarget +nls static-libs test"
+
+# Variables that can be set here:
+# 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
+# Default: dilfridge :)
+
+PATCH_VER=3
+
+case ${PV} in
+ 9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ SLOT=${PV}
+ ;;
+ *.9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ EGIT_BRANCH=$(get_version_component_range 1-2)
+ EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
+ SLOT=$(get_version_component_range 1-2)
+ ;;
+ *)
+ SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
+ SLOT=$(get_version_component_range 1-2)
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+ ;;
+esac
+
+#
+# The Gentoo patchset
+#
+PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
+PATCH_DEV=${PATCH_DEV:-slyfox}
+
+[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
+ https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
+
+#
+# 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}
+ doc? ( sys-apps/texinfo )
+ test? ( dev-util/dejagnu )
+ nls? ( sys-devel/gettext )
+ sys-devel/flex
+ virtual/yacc
+"
+if is_cross ; then
+ # The build assumes the host has libiberty and such when cross-compiling
+ # its build tools. We should probably make binutils itself build a local
+ # copy to use, but until then, be lazy.
+ DEPEND+=" >=sys-libs/binutils-libs-${PV}"
+fi
+
+MY_BUILDDIR=${WORKDIR}/build
+
+src_unpack() {
+ case ${PV} in
+ *9999)
+ git-r3_src_unpack
+ ;;
+ *)
+ ;;
+ esac
+ default
+ mkdir -p "${MY_BUILDDIR}"
+}
+
+src_prepare() {
+ if [[ ! -z ${PATCH_VER} ]] ; then
+ einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
+ eapply "${WORKDIR}/patch"/*.patch
+ fi
+
+ # This check should probably go somewhere else, like pkg_pretend.
+ if [[ ${CTARGET} == *-uclibc* ]] ; then
+ if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
+ die "sorry, but this binutils doesn't yet support uClibc :("
+ fi
+ fi
+
+ # Make sure our explicit libdir paths don't get clobbered. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ 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() {
+ # 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 #42033
+ strip-linguas -u */po
+
+ # Keep things sane
+ strip-flags
+
+ local x
+ echo
+ for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
+ einfo "$(printf '%10s' ${x}:) ${!x}"
+ done
+ echo
+
+ cd "${MY_BUILDDIR}"
+ local myconf=()
+
+ # enable gold (installed as ld.gold) and ld's plugin architecture
+ if use cxx ; then
+ myconf+=( --enable-gold )
+ myconf+=( --enable-plugins )
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && 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. #497268
+ --enable-install-libiberty
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #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. #666100
+ --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
+ )
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${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}"
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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}"
+ emake -k check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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/}" || die
+ if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
+ 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}"
+ 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-09-25 7:37 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2018-09-25 7:37 UTC (permalink / raw
To: gentoo-commits
commit: d8b0a8d7bb07bd2a7c4bd33a9e9598051030823a
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Tue Sep 25 07:30:30 2018 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Tue Sep 25 07:30:30 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d8b0a8d7
sys-devel/binutils: release patchset 5 for 2.30
One new main patch:
+ 0098-Gentoo-add-with-extra-soversion-suffix-option.patch
And four backports:
+ 0094-Replace-CET-bit-with-IBT-and-SHSTK-bits.patch
+ 0095-Fix-parens-in-ld-bootstrap.exp.patch
+ 0096-x86-64-Clear-the-R_X86_64_converted_reloc_bit-bit.patch
+ 0097-Fix-unwind-offset-for-call_info-start_symbol.patch
Changes SONAME from
libopcodes-2.30.so
to
libopcodes-2.30.gentoo-sys-devel-binutils-mt.so
SONAME now encodes USE=multilib and package name.
Bug: https://bugs.gentoo.org/663690
Bug: https://bugs.gentoo.org/666376
Bug: https://bugs.gentoo.org/666100
Package-Manager: Portage-2.3.49, Repoman-2.3.11
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.30-r4.ebuild | 419 +++++++++++++++++++++++++++++
2 files changed, 420 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 56b480b7efa..7c9af85c0bf 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -10,6 +10,7 @@ DIST binutils-2.29.1-patches-3.tar.xz 20904 BLAKE2B 5549cb2412123e4ad3a13935762c
DIST binutils-2.29.1.tar.bz2 29123355 BLAKE2B 83de518a27bae0f13c57b1979493dd7f7cabae424cff5e8495d1f064da24b6ef9e1c19d1d1adad2dca7142372782023f66b4b4223170a49b96ba3834266fe878 SHA512 4063d34555526922376ccceb3f14b43e287442e82a8038cf50f4f51ad97d438c672c0e310ca4b856c9aff5aa9911073e256e8298a7a3f1844eeb60b90d955592
DIST binutils-2.30-patches-2.tar.xz 490272 BLAKE2B a28a5b5bb8faa33fec269f2c69d6ed0e4e7d5a9169861aa4b3c45511794e1e749c216862a8258c2029f1b40c511dcb2a0aeaecda57e75d52418f10d6f345718f SHA512 1686d5b58ee968f2000647acab2bee4c263d1c85fd43fed8c820fccfc0d7024a01211e7853cd5ce452fa90da500bc17309edf6dbc901c7fd6fc7b3e3d6f42581
DIST binutils-2.30-patches-3.tar.xz 548804 BLAKE2B 428a1750233ae3f019e20cb5ed1d8e6fe6455181e8f5961dbfe7b66493d1c42050f889e45c02c1fc1a84d545c9e61f81ad6ffd5afc0b1099a702ccc7637c3abe SHA512 c91e902d1d9fc2e9782df04c93173c3207c771f1c063e2ff12c9336593c954ea3f1b2474a8fc045927d72fe18f7401874059599d100c4a1fd152081f05913d03
+DIST binutils-2.30-patches-5.tar.xz 590864 BLAKE2B 71de4d08f92ab1898ad576a21763f955067cbbed543250888e0c5d51f4ef77d0d829049e9a835691cf2de03965fbcc9bcfa092eb304c03f9b885e7a3dadab286 SHA512 029b3be6ae9b8620f8580a35701bd4517b4e0232ff3cf9983b3808475c7443cbf500b6cace2c052df0bd1e47202838f4d2453238db28709a947117071d9ae804
DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f5916fb82ce95ceab424fd8dc19f6daa7ac32a149f222ccdcc603354165cc206fde070eaa44fe2cc5e57486efc7868 SHA512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839
DIST binutils-2.31.1-patches-2.tar.xz 11232 BLAKE2B b8ac65872017c063650d4e04855efa3fd3e9faa566e81fa9fb3ae777c1337627023c1af85b708a7933b577a69652451ff488340d7cc9f035d3a3a655da0fc8d6 SHA512 2d0ee2e727586fc39cdb8abc7251c12dd350d18dd84103ddacc08978db48d45445c05b7ea5f095842f6e0350db94d593270b23a38920a01ca59c363decaa2a58
DIST binutils-2.31.1-patches-3.tar.xz 12640 BLAKE2B 3444b219dd02ad513e6c36214d649a8a74638382103c88ec8de76a579be0ee13f8d1450e3b8d82dfddad55f2f851b32aee910a99230c7d8673f8426fc79a4cd9 SHA512 67b23c17518305561d190a15cba4a1af18a0a3cf1d7e62583ac7667d2fa40e7c7ec024cc981009d5d1caf1939633ab55fc0a198b69af02dc7841be43ff1acd13
diff --git a/sys-devel/binutils/binutils-2.30-r4.ebuild b/sys-devel/binutils/binutils-2.30-r4.ebuild
new file mode 100644
index 00000000000..3689025ad45
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.30-r4.ebuild
@@ -0,0 +1,419 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils libtool flag-o-matic gnuconfig multilib versionator
+
+DESCRIPTION="Tools necessary to build programs"
+HOMEPAGE="https://sourceware.org/binutils/"
+LICENSE="GPL-3+"
+IUSE="+cxx doc multitarget +nls static-libs test"
+
+# Variables that can be set here:
+# 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
+# Default: dilfridge :)
+
+PATCH_VER=5
+
+case ${PV} in
+ 9999)
+ BVER="git"
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ ;;
+ *)
+ BVER=${PV}
+ SRC_URI="mirror://gnu/binutils/binutils-${BVER}.tar.xz https://sourceware.org/pub/binutils/releases/binutils-${BVER}.tar.xz"
+ ;;
+esac
+SLOT="${BVER}"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+
+#
+# The Gentoo patchset
+#
+PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${BVER}}
+PATCH_DEV=${PATCH_DEV:-slyfox}
+
+[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
+ https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
+
+#
+# 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}
+ doc? ( sys-apps/texinfo )
+ test? ( dev-util/dejagnu )
+ nls? ( sys-devel/gettext )
+ sys-devel/flex
+ virtual/yacc
+"
+if is_cross ; then
+ # The build assumes the host has libiberty and such when cross-compiling
+ # its build tools. We should probably make binutils itself build a local
+ # copy to use, but until then, be lazy.
+ DEPEND+=" >=sys-libs/binutils-libs-${PV}"
+fi
+
+MY_BUILDDIR=${WORKDIR}/build
+
+src_unpack() {
+ case ${PV} in
+ 9999)
+ git-r3_src_unpack;
+ ;;
+ *)
+ default
+ ;;
+ esac
+ mkdir -p "${MY_BUILDDIR}"
+}
+
+src_prepare() {
+ if [[ ! -z ${PATCH_VER} ]] ; then
+ einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
+ eapply "${WORKDIR}/patch"/*.patch
+ fi
+
+ # This check should probably go somewhere else, like pkg_pretend.
+ if [[ ${CTARGET} == *-uclibc* ]] ; then
+ if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
+ die "sorry, but this binutils doesn't yet support uClibc :("
+ fi
+ fi
+
+ # Make sure our explicit libdir paths don't get clobbered. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ 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 ${BVER}"
+ [[ -n ${PATCH_VER} ]] && printf " p${PATCH_VER}"
+}
+
+src_configure() {
+ # Setup some paths
+ LIBPATH=/usr/$(get_libdir)/binutils/${CTARGET}/${BVER}
+ INCPATH=${LIBPATH}/include
+ DATAPATH=/usr/share/binutils-data/${CTARGET}/${BVER}
+ if is_cross ; then
+ TOOLPATH=/usr/${CHOST}/${CTARGET}
+ else
+ TOOLPATH=/usr/${CTARGET}
+ fi
+ BINPATH=${TOOLPATH}/binutils-bin/${BVER}
+
+ # Make sure we filter $LINGUAS so that only ones that
+ # actually work make it through #42033
+ strip-linguas -u */po
+
+ # Keep things sane
+ strip-flags
+
+ local x
+ echo
+ for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
+ einfo "$(printf '%10s' ${x}:) ${!x}"
+ done
+ echo
+
+ cd "${MY_BUILDDIR}"
+ local myconf=()
+
+ # enable gold (installed as ld.gold) and ld's plugin architecture
+ if use cxx ; then
+ myconf+=( --enable-gold )
+ myconf+=( --enable-plugins )
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && 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. #497268
+ --enable-install-libiberty
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #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. #666100
+ --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
+ )
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${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}"
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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}"
+ emake -k check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ for d in ../* ; do
+ [[ ${d} == ../${BVER} ]] && 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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/}" || die
+ if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
+ 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="${BVER}"
+ LIBPATH="${EPREFIX}${LIBPATH}"
+ EOF
+ newins "${T}"/env.d ${CTARGET}-${BVER}
+
+ # Handle documentation
+ if ! is_cross ; then
+ cd "${S}"
+ 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}-${BVER}
+}
+
+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}-${BVER} ]] ; 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}-${BVER} ]] ; then
+ binutils-config ${CTARGET}-${BVER}
+ 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}/${BVER}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-10-01 0:07 Thomas Deutschmann
0 siblings, 0 replies; 477+ messages in thread
From: Thomas Deutschmann @ 2018-10-01 0:07 UTC (permalink / raw
To: gentoo-commits
commit: 281d3e874216de6695515936543394034c86b6f8
Author: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Sun Sep 30 23:58:23 2018 +0000
Commit: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Mon Oct 1 00:06:37 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=281d3e87
sys-devel/binutils: x86 stable (bug #666976)
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>
Package-Manager: Portage-2.3.50, Repoman-2.3.11
sys-devel/binutils/binutils-2.30-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.30-r4.ebuild b/sys-devel/binutils/binutils-2.30-r4.ebuild
index 3689025ad45..d8f3675ac95 100644
--- a/sys-devel/binutils/binutils-2.30-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r4.ebuild
@@ -35,7 +35,7 @@ case ${PV} in
;;
esac
SLOT="${BVER}"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd ~x86-fbsd"
#
# The Gentoo patchset
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-10-04 6:26 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2018-10-04 6:26 UTC (permalink / raw
To: gentoo-commits
commit: 34f314d6d7f7695c0c9e864289f485a96684d1b5
Author: Rolf Eike Beer <eike <AT> sf-mail <DOT> de>
AuthorDate: Thu Oct 4 06:19:56 2018 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Thu Oct 4 06:26:35 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=34f314d6
sys-devel/binutils: stable 2.30-r4 for sparc, bug #667648
Signed-off-by: Rolf Eike Beer <eike <AT> sf-mail.de>
Package-Manager: Portage-2.3.49, Repoman-2.3.10
RepoMan-Options: --include-arches="sparc"
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-2.30-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.30-r4.ebuild b/sys-devel/binutils/binutils-2.30-r4.ebuild
index d8f3675ac95..808a8d7b4db 100644
--- a/sys-devel/binutils/binutils-2.30-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r4.ebuild
@@ -35,7 +35,7 @@ case ${PV} in
;;
esac
SLOT="${BVER}"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd ~x86-fbsd"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
#
# The Gentoo patchset
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-10-04 7:59 Mikle Kolyada
0 siblings, 0 replies; 477+ messages in thread
From: Mikle Kolyada @ 2018-10-04 7:59 UTC (permalink / raw
To: gentoo-commits
commit: 51f5bd4c15453baba3bdca7a7469bbc3c0ff3cfc
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 4 07:56:10 2018 +0000
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Thu Oct 4 07:56:10 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=51f5bd4c
sys-devel/binutils: amd64 stable wrt bug #666976
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>
Package-Manager: Portage-2.3.49, Repoman-2.3.11
sys-devel/binutils/binutils-2.30-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.30-r4.ebuild b/sys-devel/binutils/binutils-2.30-r4.ebuild
index 808a8d7b4db..cbeb8a1aa28 100644
--- a/sys-devel/binutils/binutils-2.30-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r4.ebuild
@@ -35,7 +35,7 @@ case ${PV} in
;;
esac
SLOT="${BVER}"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
#
# The Gentoo patchset
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-10-06 11:27 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2018-10-06 11:27 UTC (permalink / raw
To: gentoo-commits
commit: 0f079a0ab8ef42b18cfa4983a668dd431732f4db
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Oct 6 11:24:32 2018 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Oct 6 11:27:14 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0f079a0a
sys-devel/binutils: drop DEPEND+=binutils-libs for cross case
Nowadays' binutils does not need host's libiberty.a and builds
it's own copy for bootstrap. Drop ebuild dependency.
This allows users to use unstable cross-toolchain on stable systems
with less friction: no need to install unstable binutils-libs.
Reported-by: NeckTwi Ozfguah
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
Package-Manager: Portage-2.3.50, Repoman-2.3.11
sys-devel/binutils/binutils-2.31.1-r1.ebuild | 8 +-------
sys-devel/binutils/binutils-9999.ebuild | 8 +-------
2 files changed, 2 insertions(+), 14 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r1.ebuild b/sys-devel/binutils/binutils-2.31.1-r1.ebuild
index d7752af4f3f..180506d1f3e 100644
--- a/sys-devel/binutils/binutils-2.31.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -79,12 +79,6 @@ DEPEND="${RDEPEND}
sys-devel/flex
virtual/yacc
"
-if is_cross ; then
- # The build assumes the host has libiberty and such when cross-compiling
- # its build tools. We should probably make binutils itself build a local
- # copy to use, but until then, be lazy.
- DEPEND+=" >=sys-libs/binutils-libs-${PV}"
-fi
MY_BUILDDIR=${WORKDIR}/build
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 93dcbdf26b0..52df1648f4f 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -79,12 +79,6 @@ DEPEND="${RDEPEND}
sys-devel/flex
virtual/yacc
"
-if is_cross ; then
- # The build assumes the host has libiberty and such when cross-compiling
- # its build tools. We should probably make binutils itself build a local
- # copy to use, but until then, be lazy.
- DEPEND+=" >=sys-libs/binutils-libs-${PV}"
-fi
MY_BUILDDIR=${WORKDIR}/build
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-10-06 16:48 Matt Turner
0 siblings, 0 replies; 477+ messages in thread
From: Matt Turner @ 2018-10-06 16:48 UTC (permalink / raw
To: gentoo-commits
commit: cecfd762a155b0134e3dae3e95837bc1403c2371
Author: Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Sat Oct 6 16:13:31 2018 +0000
Commit: Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Sat Oct 6 16:47:27 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cecfd762
sys-devel/binutils-2.30-r4: ppc64 stable, bug 667648
Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>
sys-devel/binutils/binutils-2.30-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.30-r4.ebuild b/sys-devel/binutils/binutils-2.30-r4.ebuild
index 627cd7cfe89..9c417b75742 100644
--- a/sys-devel/binutils/binutils-2.30-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r4.ebuild
@@ -35,7 +35,7 @@ case ${PV} in
;;
esac
SLOT="${BVER}"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ~ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
#
# The Gentoo patchset
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-10-12 19:08 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2018-10-12 19:08 UTC (permalink / raw
To: gentoo-commits
commit: badfabe017e4622007622b9b6cd50eb4619c9804
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Fri Oct 12 19:07:33 2018 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Fri Oct 12 19:08:14 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=badfabe0
sys-devel/binutils: stable 2.30-r4 for ia64, bug #667648
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
Package-Manager: Portage-2.3.51, Repoman-2.3.11
RepoMan-Options: --include-arches="ia64"
sys-devel/binutils/binutils-2.30-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.30-r4.ebuild b/sys-devel/binutils/binutils-2.30-r4.ebuild
index 9c417b75742..dd95d8a5f2b 100644
--- a/sys-devel/binutils/binutils-2.30-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r4.ebuild
@@ -35,7 +35,7 @@ case ${PV} in
;;
esac
SLOT="${BVER}"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
#
# The Gentoo patchset
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-10-13 6:56 Tobias Klausmann
0 siblings, 0 replies; 477+ messages in thread
From: Tobias Klausmann @ 2018-10-13 6:56 UTC (permalink / raw
To: gentoo-commits
commit: 48869896afd8ba203e9b19bf615592f833032eb5
Author: Tobias Klausmann <klausman <AT> gentoo <DOT> org>
AuthorDate: Sat Oct 13 06:55:52 2018 +0000
Commit: Tobias Klausmann <klausman <AT> gentoo <DOT> org>
CommitDate: Sat Oct 13 06:55:52 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=48869896
sys-devel/binutils-2.30-r4: alpha stable
Gentoo-Bug: http://bugs.gentoo.org/667648
Signed-off-by: Tobias Klausmann <klausman <AT> gentoo.org>
sys-devel/binutils/binutils-2.30-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.30-r4.ebuild b/sys-devel/binutils/binutils-2.30-r4.ebuild
index dd95d8a5f2b..bcc863c1ac6 100644
--- a/sys-devel/binutils/binutils-2.30-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r4.ebuild
@@ -35,7 +35,7 @@ case ${PV} in
;;
esac
SLOT="${BVER}"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
#
# The Gentoo patchset
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-10-13 16:14 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2018-10-13 16:14 UTC (permalink / raw
To: gentoo-commits
commit: ea81ad8a95a44b9921c3e715f5cb129bab00d7c6
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Oct 13 16:14:02 2018 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Oct 13 16:14:45 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ea81ad8a
sys-devel/binutils: stable 2.30-r4 for hppa, bug #667648
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
Package-Manager: Portage-2.3.51, Repoman-2.3.11
RepoMan-Options: --include-arches="hppa"
sys-devel/binutils/binutils-2.30-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.30-r4.ebuild b/sys-devel/binutils/binutils-2.30-r4.ebuild
index bcc863c1ac6..3c21c3f362e 100644
--- a/sys-devel/binutils/binutils-2.30-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r4.ebuild
@@ -35,7 +35,7 @@ case ${PV} in
;;
esac
SLOT="${BVER}"
-KEYWORDS="alpha amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 ~arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
#
# The Gentoo patchset
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-10-14 11:10 Mikle Kolyada
0 siblings, 0 replies; 477+ messages in thread
From: Mikle Kolyada @ 2018-10-14 11:10 UTC (permalink / raw
To: gentoo-commits
commit: 026bb2135171b3ce1b9645f79a5fcc57b7d7a2d8
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sun Oct 14 11:09:53 2018 +0000
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sun Oct 14 11:09:53 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=026bb213
sys-devel/binutils: s390/sh/m68k stable wrt bug #667648
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>
Package-Manager: Portage-2.3.49, Repoman-2.3.11
sys-devel/binutils/binutils-2.30-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.30-r4.ebuild b/sys-devel/binutils/binutils-2.30-r4.ebuild
index 3c21c3f362e..bee5ec6cf22 100644
--- a/sys-devel/binutils/binutils-2.30-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r4.ebuild
@@ -35,7 +35,7 @@ case ${PV} in
;;
esac
SLOT="${BVER}"
-KEYWORDS="alpha amd64 ~arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 ~arm ~arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
#
# The Gentoo patchset
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-11-11 11:20 Mikle Kolyada
0 siblings, 0 replies; 477+ messages in thread
From: Mikle Kolyada @ 2018-11-11 11:20 UTC (permalink / raw
To: gentoo-commits
commit: 0f9b5128867753d0050ab298c28850c3ce2f3f9c
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 11 11:20:20 2018 +0000
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sun Nov 11 11:20:20 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0f9b5128
sys-devel/binutils: arm stable wrt bug #667648
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>
Package-Manager: Portage-2.3.51, Repoman-2.3.11
sys-devel/binutils/binutils-2.30-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.30-r4.ebuild b/sys-devel/binutils/binutils-2.30-r4.ebuild
index bee5ec6cf22..766b797c085 100644
--- a/sys-devel/binutils/binutils-2.30-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r4.ebuild
@@ -35,7 +35,7 @@ case ${PV} in
;;
esac
SLOT="${BVER}"
-KEYWORDS="alpha amd64 ~arm ~arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
#
# The Gentoo patchset
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-11-30 22:25 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2018-11-30 22:25 UTC (permalink / raw
To: gentoo-commits
commit: bbfd6046b2226311ba889d80fc2f3c7e6fd6886e
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Nov 30 22:25:25 2018 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Nov 30 22:25:52 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bbfd6046
sys-devel/binutils: Remove old
Package-Manager: Portage-2.3.52, Repoman-2.3.12
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 -
sys-devel/binutils/binutils-2.30-r3.ebuild | 416 ----------------------------
sys-devel/binutils/binutils-2.31.1.ebuild | 424 -----------------------------
3 files changed, 842 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 7c9af85c0bf..4776f356d52 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -9,10 +9,8 @@ DIST binutils-2.28.1.tar.bz2 28120394 BLAKE2B 3a0ed2bcf0c859638546b7460d9e6f0a55
DIST binutils-2.29.1-patches-3.tar.xz 20904 BLAKE2B 5549cb2412123e4ad3a13935762cc0dca46215950dbf38a149caf4c6416da382a0fd7ecffe97b10bce4dfdcef5edc2673d49bb21e9d37be37e33b454a8c2bc1a SHA512 ba54efaf9e9f668d2922972acd2cdf5c3e6f174cfcc73d29953ab4ba6e157ce0cb500c583568a4e3baaaa92c9d30c394a327f29b51292acc66f8d3f20f5eae2a
DIST binutils-2.29.1.tar.bz2 29123355 BLAKE2B 83de518a27bae0f13c57b1979493dd7f7cabae424cff5e8495d1f064da24b6ef9e1c19d1d1adad2dca7142372782023f66b4b4223170a49b96ba3834266fe878 SHA512 4063d34555526922376ccceb3f14b43e287442e82a8038cf50f4f51ad97d438c672c0e310ca4b856c9aff5aa9911073e256e8298a7a3f1844eeb60b90d955592
DIST binutils-2.30-patches-2.tar.xz 490272 BLAKE2B a28a5b5bb8faa33fec269f2c69d6ed0e4e7d5a9169861aa4b3c45511794e1e749c216862a8258c2029f1b40c511dcb2a0aeaecda57e75d52418f10d6f345718f SHA512 1686d5b58ee968f2000647acab2bee4c263d1c85fd43fed8c820fccfc0d7024a01211e7853cd5ce452fa90da500bc17309edf6dbc901c7fd6fc7b3e3d6f42581
-DIST binutils-2.30-patches-3.tar.xz 548804 BLAKE2B 428a1750233ae3f019e20cb5ed1d8e6fe6455181e8f5961dbfe7b66493d1c42050f889e45c02c1fc1a84d545c9e61f81ad6ffd5afc0b1099a702ccc7637c3abe SHA512 c91e902d1d9fc2e9782df04c93173c3207c771f1c063e2ff12c9336593c954ea3f1b2474a8fc045927d72fe18f7401874059599d100c4a1fd152081f05913d03
DIST binutils-2.30-patches-5.tar.xz 590864 BLAKE2B 71de4d08f92ab1898ad576a21763f955067cbbed543250888e0c5d51f4ef77d0d829049e9a835691cf2de03965fbcc9bcfa092eb304c03f9b885e7a3dadab286 SHA512 029b3be6ae9b8620f8580a35701bd4517b4e0232ff3cf9983b3808475c7443cbf500b6cace2c052df0bd1e47202838f4d2453238db28709a947117071d9ae804
DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f5916fb82ce95ceab424fd8dc19f6daa7ac32a149f222ccdcc603354165cc206fde070eaa44fe2cc5e57486efc7868 SHA512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839
-DIST binutils-2.31.1-patches-2.tar.xz 11232 BLAKE2B b8ac65872017c063650d4e04855efa3fd3e9faa566e81fa9fb3ae777c1337627023c1af85b708a7933b577a69652451ff488340d7cc9f035d3a3a655da0fc8d6 SHA512 2d0ee2e727586fc39cdb8abc7251c12dd350d18dd84103ddacc08978db48d45445c05b7ea5f095842f6e0350db94d593270b23a38920a01ca59c363decaa2a58
DIST binutils-2.31.1-patches-3.tar.xz 12640 BLAKE2B 3444b219dd02ad513e6c36214d649a8a74638382103c88ec8de76a579be0ee13f8d1450e3b8d82dfddad55f2f851b32aee910a99230c7d8673f8426fc79a4cd9 SHA512 67b23c17518305561d190a15cba4a1af18a0a3cf1d7e62583ac7667d2fa40e7c7ec024cc981009d5d1caf1939633ab55fc0a198b69af02dc7841be43ff1acd13
DIST binutils-2.31.1.tar.xz 20467996 BLAKE2B 6b914df1fbb7cf54f2159f71b2c2b09f3f6a569b7a3cb4cf9790d0a3733a7548bc0ea32334a178ed3b56e8b97656ae99c7abaf212601beeaeae9a0884c0f6051 SHA512 0fca326feb1d5f5fe505a827b20237fe3ec9c13eaf7ec7e35847fd71184f605ba1cefe1314b1b8f8a29c0aa9d88162849ee1c1a3e70c2f7407d88339b17edb30
DIST binutils-9999-patches-2.tar.xz 11672 BLAKE2B 40b790713fc6cf463de3b3c3d207686890cc674fa44828952e73a66b723e4d9e8374b9e13fd44ffc5e0e5e1dc6eb63910563f4f318ff22f56813bd29ba4fe338 SHA512 ed1d88b693e35368e7ec6e16ccd7a5561ba697b778afc2da296f46698aff5d4d6a39c5fc030ce189b00af944d80f673bdac770771d23dd1f256eac2fb5858493
diff --git a/sys-devel/binutils/binutils-2.30-r3.ebuild b/sys-devel/binutils/binutils-2.30-r3.ebuild
deleted file mode 100644
index 7902b582213..00000000000
--- a/sys-devel/binutils/binutils-2.30-r3.ebuild
+++ /dev/null
@@ -1,416 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eutils libtool flag-o-matic gnuconfig multilib versionator
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="https://sourceware.org/binutils/"
-LICENSE="GPL-3+"
-IUSE="+cxx doc multitarget +nls static-libs test"
-
-# Variables that can be set here:
-# 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
-# Default: dilfridge :)
-
-PATCH_VER=3
-
-case ${PV} in
- 9999)
- BVER="git"
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- ;;
- *)
- BVER=${PV}
- SRC_URI="mirror://gnu/binutils/binutils-${BVER}.tar.xz https://sourceware.org/pub/binutils/releases/binutils-${BVER}.tar.xz"
- ;;
-esac
-SLOT="${BVER}"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
-
-#
-# The Gentoo patchset
-#
-PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${BVER}}
-PATCH_DEV=${PATCH_DEV:-dilfridge}
-
-[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
- https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
-
-#
-# 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}
- doc? ( sys-apps/texinfo )
- test? ( dev-util/dejagnu )
- nls? ( sys-devel/gettext )
- sys-devel/flex
- virtual/yacc
-"
-if is_cross ; then
- # The build assumes the host has libiberty and such when cross-compiling
- # its build tools. We should probably make binutils itself build a local
- # copy to use, but until then, be lazy.
- DEPEND+=" >=sys-libs/binutils-libs-${PV}"
-fi
-
-MY_BUILDDIR=${WORKDIR}/build
-
-src_unpack() {
- case ${PV} in
- 9999)
- git-r3_src_unpack;
- ;;
- *)
- default
- ;;
- esac
- mkdir -p "${MY_BUILDDIR}"
-}
-
-src_prepare() {
- if [[ ! -z ${PATCH_VER} ]] ; then
- einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
- eapply "${WORKDIR}/patch"/*.patch
- fi
-
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
- # Make sure our explicit libdir paths don't get clobbered. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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 ${BVER}"
- [[ -n ${PATCH_VER} ]] && printf " p${PATCH_VER}"
-}
-
-src_configure() {
- # Setup some paths
- LIBPATH=/usr/$(get_libdir)/binutils/${CTARGET}/${BVER}
- INCPATH=${LIBPATH}/include
- DATAPATH=/usr/share/binutils-data/${CTARGET}/${BVER}
- if is_cross ; then
- TOOLPATH=/usr/${CHOST}/${CTARGET}
- else
- TOOLPATH=/usr/${CTARGET}
- fi
- BINPATH=${TOOLPATH}/binutils-bin/${BVER}
-
- # Make sure we filter $LINGUAS so that only ones that
- # actually work make it through #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}"
- local myconf=()
-
- # enable gold (installed as ld.gold) and ld's plugin architecture
- if use cxx ; then
- myconf+=( --enable-gold )
- myconf+=( --enable-plugins )
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #490566
- --disable-{gdb,libdecnumber,readline,sim}
- # Strip out broken static link flags.
- # https://gcc.gnu.org/PR56750
- --without-stage1-ldflags
- )
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- # see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- for d in ../* ; do
- [[ ${d} == ../${BVER} ]] && 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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/}" || die
- if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
- 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="${BVER}"
- LIBPATH="${EPREFIX}${LIBPATH}"
- EOF
- newins "${T}"/env.d ${CTARGET}-${BVER}
-
- # Handle documentation
- if ! is_cross ; then
- cd "${S}"
- 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}-${BVER}
-}
-
-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}-${BVER} ]] ; 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}-${BVER} ]] ; then
- binutils-config ${CTARGET}-${BVER}
- 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}/${BVER}
diff --git a/sys-devel/binutils/binutils-2.31.1.ebuild b/sys-devel/binutils/binutils-2.31.1.ebuild
deleted file mode 100644
index aa2b74cf6c1..00000000000
--- a/sys-devel/binutils/binutils-2.31.1.ebuild
+++ /dev/null
@@ -1,424 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eutils libtool flag-o-matic gnuconfig multilib versionator
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="https://sourceware.org/binutils/"
-LICENSE="GPL-3+"
-IUSE="+cxx doc multitarget +nls static-libs test"
-
-# Variables that can be set here:
-# 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
-# Default: dilfridge :)
-
-PATCH_VER=2
-
-case ${PV} in
- 9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- SLOT=${PV}
- ;;
- *.9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- EGIT_BRANCH=$(get_version_component_range 1-2)
- EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
- SLOT=$(get_version_component_range 1-2)
- ;;
- *)
- SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
- SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
- ;;
-esac
-
-#
-# The Gentoo patchset
-#
-PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
-PATCH_DEV=${PATCH_DEV:-slyfox}
-
-[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
- https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
-
-#
-# 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}
- doc? ( sys-apps/texinfo )
- test? ( dev-util/dejagnu )
- nls? ( sys-devel/gettext )
- sys-devel/flex
- virtual/yacc
-"
-if is_cross ; then
- # The build assumes the host has libiberty and such when cross-compiling
- # its build tools. We should probably make binutils itself build a local
- # copy to use, but until then, be lazy.
- DEPEND+=" >=sys-libs/binutils-libs-${PV}"
-fi
-
-MY_BUILDDIR=${WORKDIR}/build
-
-src_unpack() {
- case ${PV} in
- *9999)
- git-r3_src_unpack
- ;;
- *)
- ;;
- esac
- default
- mkdir -p "${MY_BUILDDIR}"
-}
-
-src_prepare() {
- if [[ ! -z ${PATCH_VER} ]] ; then
- einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
- eapply "${WORKDIR}/patch"/*.patch
- fi
-
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
- # Make sure our explicit libdir paths don't get clobbered. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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() {
- # 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 #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}"
- local myconf=()
-
- # enable gold (installed as ld.gold) and ld's plugin architecture
- if use cxx ; then
- myconf+=( --enable-gold )
- myconf+=( --enable-plugins )
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #490566
- --disable-{gdb,libdecnumber,readline,sim}
- # Strip out broken static link flags.
- # https://gcc.gnu.org/PR56750
- --without-stage1-ldflags
- )
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- # see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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/}" || die
- if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
- 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}"
- 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-11-30 23:00 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2018-11-30 23:00 UTC (permalink / raw
To: gentoo-commits
commit: ba4d9e822666d49d04e7302d553ad4e6dce5158d
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Nov 30 23:00:20 2018 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Nov 30 23:00:30 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ba4d9e82
sys-devel/binutils: Strip -Wall -Wreturn-type in tests, bug 637066
Closes: https://bugs.gentoo.org/637066
Package-Manager: Portage-2.3.52, Repoman-2.3.12
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.31.1-r1.ebuild | 4 ++++
sys-devel/binutils/binutils-9999.ebuild | 4 ++++
2 files changed, 8 insertions(+)
diff --git a/sys-devel/binutils/binutils-2.31.1-r1.ebuild b/sys-devel/binutils/binutils-2.31.1-r1.ebuild
index 180506d1f3e..4cb85dd6a7e 100644
--- a/sys-devel/binutils/binutils-2.31.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r1.ebuild
@@ -275,6 +275,10 @@ src_compile() {
src_test() {
cd "${MY_BUILDDIR}"
+
+ # bug 637066
+ filter-flags -Wall -Wreturn-type
+
emake -k check
}
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 52df1648f4f..5e72d97d140 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -275,6 +275,10 @@ src_compile() {
src_test() {
cd "${MY_BUILDDIR}"
+
+ # bug 637066
+ filter-flags -Wall -Wreturn-type
+
emake -k check
}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-12-03 23:43 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2018-12-03 23:43 UTC (permalink / raw
To: gentoo-commits
commit: 0309767fb5b4f958d271526d3730a7da407b2a93
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Mon Dec 3 23:43:15 2018 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Mon Dec 3 23:43:32 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0309767f
sys-devel/binutils: 2.31.1 revbump, pl 4 (no keywords, please test!)
Bug: https://bugs.gentoo.org/672398
Bug: https://bugs.gentoo.org/672126
Bug: https://bugs.gentoo.org/623566
Package-Manager: Portage-2.3.52, Repoman-2.3.12
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.31.1-r2.ebuild | 427 +++++++++++++++++++++++++++
2 files changed, 428 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 4776f356d52..17862f98713 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -12,5 +12,6 @@ DIST binutils-2.30-patches-2.tar.xz 490272 BLAKE2B a28a5b5bb8faa33fec269f2c69d6e
DIST binutils-2.30-patches-5.tar.xz 590864 BLAKE2B 71de4d08f92ab1898ad576a21763f955067cbbed543250888e0c5d51f4ef77d0d829049e9a835691cf2de03965fbcc9bcfa092eb304c03f9b885e7a3dadab286 SHA512 029b3be6ae9b8620f8580a35701bd4517b4e0232ff3cf9983b3808475c7443cbf500b6cace2c052df0bd1e47202838f4d2453238db28709a947117071d9ae804
DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f5916fb82ce95ceab424fd8dc19f6daa7ac32a149f222ccdcc603354165cc206fde070eaa44fe2cc5e57486efc7868 SHA512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839
DIST binutils-2.31.1-patches-3.tar.xz 12640 BLAKE2B 3444b219dd02ad513e6c36214d649a8a74638382103c88ec8de76a579be0ee13f8d1450e3b8d82dfddad55f2f851b32aee910a99230c7d8673f8426fc79a4cd9 SHA512 67b23c17518305561d190a15cba4a1af18a0a3cf1d7e62583ac7667d2fa40e7c7ec024cc981009d5d1caf1939633ab55fc0a198b69af02dc7841be43ff1acd13
+DIST binutils-2.31.1-patches-4.tar.xz 63460 BLAKE2B 6507d03a3b75fe4b65b3c58377baaf377e07aa3e5dee4f6f4cd25336f53a15b4249e72a107213062611c8674be2bcd478a8f1406940385e0b0e58ad5a7c61cc0 SHA512 aa9f2a5b9c2189c528f34c55cd2609eae5fb47e46b51a8f9aa595b0a1e2c3f103880dcc8f07e48b10971d669e4c2a7ce8a41be4763a1ebf9e956e3f1eade8f22
DIST binutils-2.31.1.tar.xz 20467996 BLAKE2B 6b914df1fbb7cf54f2159f71b2c2b09f3f6a569b7a3cb4cf9790d0a3733a7548bc0ea32334a178ed3b56e8b97656ae99c7abaf212601beeaeae9a0884c0f6051 SHA512 0fca326feb1d5f5fe505a827b20237fe3ec9c13eaf7ec7e35847fd71184f605ba1cefe1314b1b8f8a29c0aa9d88162849ee1c1a3e70c2f7407d88339b17edb30
DIST binutils-9999-patches-2.tar.xz 11672 BLAKE2B 40b790713fc6cf463de3b3c3d207686890cc674fa44828952e73a66b723e4d9e8374b9e13fd44ffc5e0e5e1dc6eb63910563f4f318ff22f56813bd29ba4fe338 SHA512 ed1d88b693e35368e7ec6e16ccd7a5561ba697b778afc2da296f46698aff5d4d6a39c5fc030ce189b00af944d80f673bdac770771d23dd1f256eac2fb5858493
diff --git a/sys-devel/binutils/binutils-2.31.1-r2.ebuild b/sys-devel/binutils/binutils-2.31.1-r2.ebuild
new file mode 100644
index 00000000000..351a427d7dc
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.31.1-r2.ebuild
@@ -0,0 +1,427 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils libtool flag-o-matic gnuconfig multilib versionator
+
+DESCRIPTION="Tools necessary to build programs"
+HOMEPAGE="https://sourceware.org/binutils/"
+LICENSE="GPL-3+"
+IUSE="+cxx doc multitarget +nls static-libs test"
+
+# Variables that can be set here:
+# 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
+# Default: dilfridge :)
+
+PATCH_VER=4
+PATCH_DEV=dilfridge
+
+case ${PV} in
+ 9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ SLOT=${PV}
+ ;;
+ *.9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ EGIT_BRANCH=$(get_version_component_range 1-2)
+ EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
+ SLOT=$(get_version_component_range 1-2)
+ ;;
+ *)
+ SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
+ SLOT=$(get_version_component_range 1-2)
+ #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS=""
+ ;;
+esac
+
+#
+# The Gentoo patchset
+#
+PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
+PATCH_DEV=${PATCH_DEV:-slyfox}
+
+[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
+ https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
+
+#
+# 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}
+ doc? ( sys-apps/texinfo )
+ test? ( dev-util/dejagnu )
+ nls? ( sys-devel/gettext )
+ sys-devel/flex
+ virtual/yacc
+"
+
+MY_BUILDDIR=${WORKDIR}/build
+
+src_unpack() {
+ case ${PV} in
+ *9999)
+ git-r3_src_unpack
+ ;;
+ *)
+ ;;
+ esac
+ default
+ mkdir -p "${MY_BUILDDIR}"
+}
+
+src_prepare() {
+ if [[ ! -z ${PATCH_VER} ]] ; then
+ einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
+ eapply "${WORKDIR}/patch"/*.patch
+ fi
+
+ # This check should probably go somewhere else, like pkg_pretend.
+ if [[ ${CTARGET} == *-uclibc* ]] ; then
+ if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
+ die "sorry, but this binutils doesn't yet support uClibc :("
+ fi
+ fi
+
+ # Make sure our explicit libdir paths don't get clobbered. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ 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() {
+ # 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 #42033
+ strip-linguas -u */po
+
+ # Keep things sane
+ strip-flags
+
+ local x
+ echo
+ for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
+ einfo "$(printf '%10s' ${x}:) ${!x}"
+ done
+ echo
+
+ cd "${MY_BUILDDIR}"
+ local myconf=()
+
+ # enable gold (installed as ld.gold) and ld's plugin architecture
+ if use cxx ; then
+ myconf+=( --enable-gold )
+ myconf+=( --enable-plugins )
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && 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. #497268
+ --enable-install-libiberty
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #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. #666100
+ --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
+ )
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${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}"
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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}"
+
+ # bug 637066
+ filter-flags -Wall -Wreturn-type
+
+ emake -k check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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/}" || die
+ if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
+ 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}"
+ 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-12-08 18:03 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2018-12-08 18:03 UTC (permalink / raw
To: gentoo-commits
commit: 39bff4d8ecf2590b647d7aef196b7f22d57b85c6
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 8 17:54:03 2018 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Dec 8 18:03:10 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=39bff4d8
sys-devel/binutils: rekeyword
Closes: https://bugs.gentoo.org/672398
Bug: https://bugs.gentoo.org/623566
Closes: https://bugs.gentoo.org/672126
Package-Manager: Portage-2.3.52, Repoman-2.3.12
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.31.1-r2.ebuild | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r2.ebuild b/sys-devel/binutils/binutils-2.31.1-r2.ebuild
index 351a427d7dc..e912ce32036 100644
--- a/sys-devel/binutils/binutils-2.31.1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r2.ebuild
@@ -42,8 +42,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
- KEYWORDS=""
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-12-09 13:58 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2018-12-09 13:58 UTC (permalink / raw
To: gentoo-commits
commit: 879c1e82230d3bc19278f6cad88fa3e8f5703466
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Dec 9 13:21:33 2018 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Dec 9 13:57:52 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=879c1e82
sys-devel/binutils: Remove semi-broken old
Package-Manager: Portage-2.3.52, Repoman-2.3.12
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 -
sys-devel/binutils/binutils-2.31.1-r1.ebuild | 425 ---------------------------
2 files changed, 426 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 17862f98713..2952a615098 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -11,7 +11,6 @@ DIST binutils-2.29.1.tar.bz2 29123355 BLAKE2B 83de518a27bae0f13c57b1979493dd7f7c
DIST binutils-2.30-patches-2.tar.xz 490272 BLAKE2B a28a5b5bb8faa33fec269f2c69d6ed0e4e7d5a9169861aa4b3c45511794e1e749c216862a8258c2029f1b40c511dcb2a0aeaecda57e75d52418f10d6f345718f SHA512 1686d5b58ee968f2000647acab2bee4c263d1c85fd43fed8c820fccfc0d7024a01211e7853cd5ce452fa90da500bc17309edf6dbc901c7fd6fc7b3e3d6f42581
DIST binutils-2.30-patches-5.tar.xz 590864 BLAKE2B 71de4d08f92ab1898ad576a21763f955067cbbed543250888e0c5d51f4ef77d0d829049e9a835691cf2de03965fbcc9bcfa092eb304c03f9b885e7a3dadab286 SHA512 029b3be6ae9b8620f8580a35701bd4517b4e0232ff3cf9983b3808475c7443cbf500b6cace2c052df0bd1e47202838f4d2453238db28709a947117071d9ae804
DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f5916fb82ce95ceab424fd8dc19f6daa7ac32a149f222ccdcc603354165cc206fde070eaa44fe2cc5e57486efc7868 SHA512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839
-DIST binutils-2.31.1-patches-3.tar.xz 12640 BLAKE2B 3444b219dd02ad513e6c36214d649a8a74638382103c88ec8de76a579be0ee13f8d1450e3b8d82dfddad55f2f851b32aee910a99230c7d8673f8426fc79a4cd9 SHA512 67b23c17518305561d190a15cba4a1af18a0a3cf1d7e62583ac7667d2fa40e7c7ec024cc981009d5d1caf1939633ab55fc0a198b69af02dc7841be43ff1acd13
DIST binutils-2.31.1-patches-4.tar.xz 63460 BLAKE2B 6507d03a3b75fe4b65b3c58377baaf377e07aa3e5dee4f6f4cd25336f53a15b4249e72a107213062611c8674be2bcd478a8f1406940385e0b0e58ad5a7c61cc0 SHA512 aa9f2a5b9c2189c528f34c55cd2609eae5fb47e46b51a8f9aa595b0a1e2c3f103880dcc8f07e48b10971d669e4c2a7ce8a41be4763a1ebf9e956e3f1eade8f22
DIST binutils-2.31.1.tar.xz 20467996 BLAKE2B 6b914df1fbb7cf54f2159f71b2c2b09f3f6a569b7a3cb4cf9790d0a3733a7548bc0ea32334a178ed3b56e8b97656ae99c7abaf212601beeaeae9a0884c0f6051 SHA512 0fca326feb1d5f5fe505a827b20237fe3ec9c13eaf7ec7e35847fd71184f605ba1cefe1314b1b8f8a29c0aa9d88162849ee1c1a3e70c2f7407d88339b17edb30
DIST binutils-9999-patches-2.tar.xz 11672 BLAKE2B 40b790713fc6cf463de3b3c3d207686890cc674fa44828952e73a66b723e4d9e8374b9e13fd44ffc5e0e5e1dc6eb63910563f4f318ff22f56813bd29ba4fe338 SHA512 ed1d88b693e35368e7ec6e16ccd7a5561ba697b778afc2da296f46698aff5d4d6a39c5fc030ce189b00af944d80f673bdac770771d23dd1f256eac2fb5858493
diff --git a/sys-devel/binutils/binutils-2.31.1-r1.ebuild b/sys-devel/binutils/binutils-2.31.1-r1.ebuild
deleted file mode 100644
index 4cb85dd6a7e..00000000000
--- a/sys-devel/binutils/binutils-2.31.1-r1.ebuild
+++ /dev/null
@@ -1,425 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eutils libtool flag-o-matic gnuconfig multilib versionator
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="https://sourceware.org/binutils/"
-LICENSE="GPL-3+"
-IUSE="+cxx doc multitarget +nls static-libs test"
-
-# Variables that can be set here:
-# 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
-# Default: dilfridge :)
-
-PATCH_VER=3
-
-case ${PV} in
- 9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- SLOT=${PV}
- ;;
- *.9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- EGIT_BRANCH=$(get_version_component_range 1-2)
- EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
- SLOT=$(get_version_component_range 1-2)
- ;;
- *)
- SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
- SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
- ;;
-esac
-
-#
-# The Gentoo patchset
-#
-PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
-PATCH_DEV=${PATCH_DEV:-slyfox}
-
-[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
- https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
-
-#
-# 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}
- doc? ( sys-apps/texinfo )
- test? ( dev-util/dejagnu )
- nls? ( sys-devel/gettext )
- sys-devel/flex
- virtual/yacc
-"
-
-MY_BUILDDIR=${WORKDIR}/build
-
-src_unpack() {
- case ${PV} in
- *9999)
- git-r3_src_unpack
- ;;
- *)
- ;;
- esac
- default
- mkdir -p "${MY_BUILDDIR}"
-}
-
-src_prepare() {
- if [[ ! -z ${PATCH_VER} ]] ; then
- einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
- eapply "${WORKDIR}/patch"/*.patch
- fi
-
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
- # Make sure our explicit libdir paths don't get clobbered. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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() {
- # 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 #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}"
- local myconf=()
-
- # enable gold (installed as ld.gold) and ld's plugin architecture
- if use cxx ; then
- myconf+=( --enable-gold )
- myconf+=( --enable-plugins )
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #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. #666100
- --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
- )
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
-
- # bug 637066
- filter-flags -Wall -Wreturn-type
-
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- # see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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/}" || die
- if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
- 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}"
- 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-12-14 23:52 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2018-12-14 23:52 UTC (permalink / raw
To: gentoo-commits
commit: 3a968179d27cd2827b01b55d76b026b2f1050b17
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Dec 14 23:49:42 2018 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Dec 14 23:52:28 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3a968179
sys-devel/binutils: Revbump, patchlevel 5
Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=23968
Package-Manager: Portage-2.3.52, Repoman-2.3.12
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.31.1-r3.ebuild | 427 +++++++++++++++++++++++++++
2 files changed, 428 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 2952a615098..2774ec02ae5 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -12,5 +12,6 @@ DIST binutils-2.30-patches-2.tar.xz 490272 BLAKE2B a28a5b5bb8faa33fec269f2c69d6e
DIST binutils-2.30-patches-5.tar.xz 590864 BLAKE2B 71de4d08f92ab1898ad576a21763f955067cbbed543250888e0c5d51f4ef77d0d829049e9a835691cf2de03965fbcc9bcfa092eb304c03f9b885e7a3dadab286 SHA512 029b3be6ae9b8620f8580a35701bd4517b4e0232ff3cf9983b3808475c7443cbf500b6cace2c052df0bd1e47202838f4d2453238db28709a947117071d9ae804
DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f5916fb82ce95ceab424fd8dc19f6daa7ac32a149f222ccdcc603354165cc206fde070eaa44fe2cc5e57486efc7868 SHA512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839
DIST binutils-2.31.1-patches-4.tar.xz 63460 BLAKE2B 6507d03a3b75fe4b65b3c58377baaf377e07aa3e5dee4f6f4cd25336f53a15b4249e72a107213062611c8674be2bcd478a8f1406940385e0b0e58ad5a7c61cc0 SHA512 aa9f2a5b9c2189c528f34c55cd2609eae5fb47e46b51a8f9aa595b0a1e2c3f103880dcc8f07e48b10971d669e4c2a7ce8a41be4763a1ebf9e956e3f1eade8f22
+DIST binutils-2.31.1-patches-5.tar.xz 65896 BLAKE2B 7fb2c4c71336a77f3fef57a0430c511ef7326f8196d8f3a57a6d56aed464953172eeb0755f020387739cf27f709d0bc3de9c3c8b972a94f1480639465158e180 SHA512 c254f22b8ca662cf49cd5fc076d3e9b82d7f421420408c960c54310fc49462600325e7bc50f863cab7c8c49caebac3ac353dc24ab5947e8f01b98c11f43f57d2
DIST binutils-2.31.1.tar.xz 20467996 BLAKE2B 6b914df1fbb7cf54f2159f71b2c2b09f3f6a569b7a3cb4cf9790d0a3733a7548bc0ea32334a178ed3b56e8b97656ae99c7abaf212601beeaeae9a0884c0f6051 SHA512 0fca326feb1d5f5fe505a827b20237fe3ec9c13eaf7ec7e35847fd71184f605ba1cefe1314b1b8f8a29c0aa9d88162849ee1c1a3e70c2f7407d88339b17edb30
DIST binutils-9999-patches-2.tar.xz 11672 BLAKE2B 40b790713fc6cf463de3b3c3d207686890cc674fa44828952e73a66b723e4d9e8374b9e13fd44ffc5e0e5e1dc6eb63910563f4f318ff22f56813bd29ba4fe338 SHA512 ed1d88b693e35368e7ec6e16ccd7a5561ba697b778afc2da296f46698aff5d4d6a39c5fc030ce189b00af944d80f673bdac770771d23dd1f256eac2fb5858493
diff --git a/sys-devel/binutils/binutils-2.31.1-r3.ebuild b/sys-devel/binutils/binutils-2.31.1-r3.ebuild
new file mode 100644
index 00000000000..f715fe19957
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.31.1-r3.ebuild
@@ -0,0 +1,427 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils libtool flag-o-matic gnuconfig multilib versionator
+
+DESCRIPTION="Tools necessary to build programs"
+HOMEPAGE="https://sourceware.org/binutils/"
+LICENSE="GPL-3+"
+IUSE="+cxx doc multitarget +nls static-libs test"
+
+# Variables that can be set here:
+# 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
+# Default: dilfridge :)
+
+PATCH_VER=5
+PATCH_DEV=dilfridge
+
+case ${PV} in
+ 9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ SLOT=${PV}
+ ;;
+ *.9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ EGIT_BRANCH=$(get_version_component_range 1-2)
+ EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
+ SLOT=$(get_version_component_range 1-2)
+ ;;
+ *)
+ SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
+ SLOT=$(get_version_component_range 1-2)
+ #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS=""
+ ;;
+esac
+
+#
+# The Gentoo patchset
+#
+PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
+PATCH_DEV=${PATCH_DEV:-slyfox}
+
+[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
+ https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
+
+#
+# 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}
+ doc? ( sys-apps/texinfo )
+ test? ( dev-util/dejagnu )
+ nls? ( sys-devel/gettext )
+ sys-devel/flex
+ virtual/yacc
+"
+
+MY_BUILDDIR=${WORKDIR}/build
+
+src_unpack() {
+ case ${PV} in
+ *9999)
+ git-r3_src_unpack
+ ;;
+ *)
+ ;;
+ esac
+ default
+ mkdir -p "${MY_BUILDDIR}"
+}
+
+src_prepare() {
+ if [[ ! -z ${PATCH_VER} ]] ; then
+ einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
+ eapply "${WORKDIR}/patch"/*.patch
+ fi
+
+ # This check should probably go somewhere else, like pkg_pretend.
+ if [[ ${CTARGET} == *-uclibc* ]] ; then
+ if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
+ die "sorry, but this binutils doesn't yet support uClibc :("
+ fi
+ fi
+
+ # Make sure our explicit libdir paths don't get clobbered. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ 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() {
+ # 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 #42033
+ strip-linguas -u */po
+
+ # Keep things sane
+ strip-flags
+
+ local x
+ echo
+ for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
+ einfo "$(printf '%10s' ${x}:) ${!x}"
+ done
+ echo
+
+ cd "${MY_BUILDDIR}"
+ local myconf=()
+
+ # enable gold (installed as ld.gold) and ld's plugin architecture
+ if use cxx ; then
+ myconf+=( --enable-gold )
+ myconf+=( --enable-plugins )
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && 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. #497268
+ --enable-install-libiberty
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #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. #666100
+ --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
+ )
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${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}"
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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}"
+
+ # bug 637066
+ filter-flags -Wall -Wreturn-type
+
+ emake -k check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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/}" || die
+ if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
+ 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}"
+ 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-12-20 22:50 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2018-12-20 22:50 UTC (permalink / raw
To: gentoo-commits
commit: 686b558193dec6abfdc5d0d8b50edff45d993437
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Thu Dec 20 22:47:04 2018 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Thu Dec 20 22:47:04 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=686b5581
sys-devel/binutils: Re-keyword
Package-Manager: Portage-2.3.52, Repoman-2.3.12
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.31.1-r3.ebuild | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r3.ebuild b/sys-devel/binutils/binutils-2.31.1-r3.ebuild
index f715fe19957..0ba64dc35a0 100644
--- a/sys-devel/binutils/binutils-2.31.1-r3.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r3.ebuild
@@ -42,8 +42,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
- KEYWORDS=""
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-12-22 11:38 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2018-12-22 11:38 UTC (permalink / raw
To: gentoo-commits
commit: ffa36209bcc2e0ae20cd4c5b8e21f9725834e1bc
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 22 11:33:33 2018 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Dec 22 11:38:35 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ffa36209
sys-devel/binutils: Remove old
Package-Manager: Portage-2.3.52, Repoman-2.3.12
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 -
sys-devel/binutils/binutils-2.30-r2.ebuild | 416 -----------------------------
2 files changed, 417 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 2774ec02ae5..791b2bbbf65 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -8,7 +8,6 @@ DIST binutils-2.28.1-patches-1.0.tar.xz 19772 BLAKE2B 146b393b49ba868c7c064c5827
DIST binutils-2.28.1.tar.bz2 28120394 BLAKE2B 3a0ed2bcf0c859638546b7460d9e6f0a55518402ff0c65c90ce462a318f5ae6690961616d188ce6cf0271c9f2fb8b7902782d32cf0e711068c53d3d06956d89e SHA512 5ec5212497b0fa8324f6a0884c284cb71c01942bbd39356d1ae745a5c9d97274c10f9d9c723f4bef6f0217662dfcd0c36e4e955a7599b11217658dc7b97553eb
DIST binutils-2.29.1-patches-3.tar.xz 20904 BLAKE2B 5549cb2412123e4ad3a13935762cc0dca46215950dbf38a149caf4c6416da382a0fd7ecffe97b10bce4dfdcef5edc2673d49bb21e9d37be37e33b454a8c2bc1a SHA512 ba54efaf9e9f668d2922972acd2cdf5c3e6f174cfcc73d29953ab4ba6e157ce0cb500c583568a4e3baaaa92c9d30c394a327f29b51292acc66f8d3f20f5eae2a
DIST binutils-2.29.1.tar.bz2 29123355 BLAKE2B 83de518a27bae0f13c57b1979493dd7f7cabae424cff5e8495d1f064da24b6ef9e1c19d1d1adad2dca7142372782023f66b4b4223170a49b96ba3834266fe878 SHA512 4063d34555526922376ccceb3f14b43e287442e82a8038cf50f4f51ad97d438c672c0e310ca4b856c9aff5aa9911073e256e8298a7a3f1844eeb60b90d955592
-DIST binutils-2.30-patches-2.tar.xz 490272 BLAKE2B a28a5b5bb8faa33fec269f2c69d6ed0e4e7d5a9169861aa4b3c45511794e1e749c216862a8258c2029f1b40c511dcb2a0aeaecda57e75d52418f10d6f345718f SHA512 1686d5b58ee968f2000647acab2bee4c263d1c85fd43fed8c820fccfc0d7024a01211e7853cd5ce452fa90da500bc17309edf6dbc901c7fd6fc7b3e3d6f42581
DIST binutils-2.30-patches-5.tar.xz 590864 BLAKE2B 71de4d08f92ab1898ad576a21763f955067cbbed543250888e0c5d51f4ef77d0d829049e9a835691cf2de03965fbcc9bcfa092eb304c03f9b885e7a3dadab286 SHA512 029b3be6ae9b8620f8580a35701bd4517b4e0232ff3cf9983b3808475c7443cbf500b6cace2c052df0bd1e47202838f4d2453238db28709a947117071d9ae804
DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f5916fb82ce95ceab424fd8dc19f6daa7ac32a149f222ccdcc603354165cc206fde070eaa44fe2cc5e57486efc7868 SHA512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839
DIST binutils-2.31.1-patches-4.tar.xz 63460 BLAKE2B 6507d03a3b75fe4b65b3c58377baaf377e07aa3e5dee4f6f4cd25336f53a15b4249e72a107213062611c8674be2bcd478a8f1406940385e0b0e58ad5a7c61cc0 SHA512 aa9f2a5b9c2189c528f34c55cd2609eae5fb47e46b51a8f9aa595b0a1e2c3f103880dcc8f07e48b10971d669e4c2a7ce8a41be4763a1ebf9e956e3f1eade8f22
diff --git a/sys-devel/binutils/binutils-2.30-r2.ebuild b/sys-devel/binutils/binutils-2.30-r2.ebuild
deleted file mode 100644
index 65b7a3f9a10..00000000000
--- a/sys-devel/binutils/binutils-2.30-r2.ebuild
+++ /dev/null
@@ -1,416 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eutils libtool flag-o-matic gnuconfig multilib versionator
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="https://sourceware.org/binutils/"
-LICENSE="GPL-3+"
-IUSE="+cxx doc multitarget +nls static-libs test"
-
-# Variables that can be set here:
-# 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
-# Default: dilfridge :)
-
-PATCH_VER=2
-
-case ${PV} in
- 9999)
- BVER="git"
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- ;;
- *)
- BVER=${PV}
- SRC_URI="mirror://gnu/binutils/binutils-${BVER}.tar.xz https://sourceware.org/pub/binutils/releases/binutils-${BVER}.tar.xz"
- ;;
-esac
-SLOT="${BVER}"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
-
-#
-# The Gentoo patchset
-#
-PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${BVER}}
-PATCH_DEV=${PATCH_DEV:-dilfridge}
-
-[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
- https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
-
-#
-# 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}
- doc? ( sys-apps/texinfo )
- test? ( dev-util/dejagnu )
- nls? ( sys-devel/gettext )
- sys-devel/flex
- virtual/yacc
-"
-if is_cross ; then
- # The build assumes the host has libiberty and such when cross-compiling
- # its build tools. We should probably make binutils itself build a local
- # copy to use, but until then, be lazy.
- DEPEND+=" >=sys-libs/binutils-libs-${PV}"
-fi
-
-MY_BUILDDIR=${WORKDIR}/build
-
-src_unpack() {
- case ${PV} in
- 9999)
- git-r3_src_unpack;
- ;;
- *)
- default
- ;;
- esac
- mkdir -p "${MY_BUILDDIR}"
-}
-
-src_prepare() {
- if [[ ! -z ${PATCH_VER} ]] ; then
- einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
- eapply "${WORKDIR}/patch"/*.patch
- fi
-
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
- # Make sure our explicit libdir paths don't get clobbered. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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 ${BVER}"
- [[ -n ${PATCH_VER} ]] && printf " p${PATCH_VER}"
-}
-
-src_configure() {
- # Setup some paths
- LIBPATH=/usr/$(get_libdir)/binutils/${CTARGET}/${BVER}
- INCPATH=${LIBPATH}/include
- DATAPATH=/usr/share/binutils-data/${CTARGET}/${BVER}
- if is_cross ; then
- TOOLPATH=/usr/${CHOST}/${CTARGET}
- else
- TOOLPATH=/usr/${CTARGET}
- fi
- BINPATH=${TOOLPATH}/binutils-bin/${BVER}
-
- # Make sure we filter $LINGUAS so that only ones that
- # actually work make it through #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}"
- local myconf=()
-
- # enable gold (installed as ld.gold) and ld's plugin architecture
- if use cxx ; then
- myconf+=( --enable-gold )
- myconf+=( --enable-plugins )
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #490566
- --disable-{gdb,libdecnumber,readline,sim}
- # Strip out broken static link flags.
- # https://gcc.gnu.org/PR56750
- --without-stage1-ldflags
- )
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- # see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- for d in ../* ; do
- [[ ${d} == ../${BVER} ]] && 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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/}" || die
- if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
- 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="${BVER}"
- LIBPATH="${EPREFIX}${LIBPATH}"
- EOF
- newins "${T}"/env.d ${CTARGET}-${BVER}
-
- # Handle documentation
- if ! is_cross ; then
- cd "${S}"
- 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}-${BVER}
-}
-
-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}-${BVER} ]] ; 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}-${BVER} ]] ; then
- binutils-config ${CTARGET}-${BVER}
- 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}/${BVER}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-12-22 11:38 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2018-12-22 11:38 UTC (permalink / raw
To: gentoo-commits
commit: 94b1bf254857db32af82322628e13fca3101375e
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 22 11:32:43 2018 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Dec 22 11:38:32 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=94b1bf25
sys-devel/binutils: arm64 stable, bug 667648
1 xpass in ld tests (pr19719)
Bug: https://bugs.gentoo.org/667648
Package-Manager: Portage-2.3.52, Repoman-2.3.12
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.30-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.30-r4.ebuild b/sys-devel/binutils/binutils-2.30-r4.ebuild
index 766b797c085..80940330383 100644
--- a/sys-devel/binutils/binutils-2.30-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r4.ebuild
@@ -35,7 +35,7 @@ case ${PV} in
;;
esac
SLOT="${BVER}"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
#
# The Gentoo patchset
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2018-12-28 23:13 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2018-12-28 23:13 UTC (permalink / raw
To: gentoo-commits
commit: 7f69a4c00c63bf41ae875dc5ac6604f99ce86bf0
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Dec 28 23:13:06 2018 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Dec 28 23:13:06 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7f69a4c0
sys-devel/binutils: Remove old
Package-Manager: Portage-2.3.52, Repoman-2.3.12
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 -
sys-devel/binutils/binutils-2.31.1-r2.ebuild | 426 ---------------------------
2 files changed, 427 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 791b2bbbf65..f4c10ca6dc3 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -10,7 +10,6 @@ DIST binutils-2.29.1-patches-3.tar.xz 20904 BLAKE2B 5549cb2412123e4ad3a13935762c
DIST binutils-2.29.1.tar.bz2 29123355 BLAKE2B 83de518a27bae0f13c57b1979493dd7f7cabae424cff5e8495d1f064da24b6ef9e1c19d1d1adad2dca7142372782023f66b4b4223170a49b96ba3834266fe878 SHA512 4063d34555526922376ccceb3f14b43e287442e82a8038cf50f4f51ad97d438c672c0e310ca4b856c9aff5aa9911073e256e8298a7a3f1844eeb60b90d955592
DIST binutils-2.30-patches-5.tar.xz 590864 BLAKE2B 71de4d08f92ab1898ad576a21763f955067cbbed543250888e0c5d51f4ef77d0d829049e9a835691cf2de03965fbcc9bcfa092eb304c03f9b885e7a3dadab286 SHA512 029b3be6ae9b8620f8580a35701bd4517b4e0232ff3cf9983b3808475c7443cbf500b6cace2c052df0bd1e47202838f4d2453238db28709a947117071d9ae804
DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f5916fb82ce95ceab424fd8dc19f6daa7ac32a149f222ccdcc603354165cc206fde070eaa44fe2cc5e57486efc7868 SHA512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839
-DIST binutils-2.31.1-patches-4.tar.xz 63460 BLAKE2B 6507d03a3b75fe4b65b3c58377baaf377e07aa3e5dee4f6f4cd25336f53a15b4249e72a107213062611c8674be2bcd478a8f1406940385e0b0e58ad5a7c61cc0 SHA512 aa9f2a5b9c2189c528f34c55cd2609eae5fb47e46b51a8f9aa595b0a1e2c3f103880dcc8f07e48b10971d669e4c2a7ce8a41be4763a1ebf9e956e3f1eade8f22
DIST binutils-2.31.1-patches-5.tar.xz 65896 BLAKE2B 7fb2c4c71336a77f3fef57a0430c511ef7326f8196d8f3a57a6d56aed464953172eeb0755f020387739cf27f709d0bc3de9c3c8b972a94f1480639465158e180 SHA512 c254f22b8ca662cf49cd5fc076d3e9b82d7f421420408c960c54310fc49462600325e7bc50f863cab7c8c49caebac3ac353dc24ab5947e8f01b98c11f43f57d2
DIST binutils-2.31.1.tar.xz 20467996 BLAKE2B 6b914df1fbb7cf54f2159f71b2c2b09f3f6a569b7a3cb4cf9790d0a3733a7548bc0ea32334a178ed3b56e8b97656ae99c7abaf212601beeaeae9a0884c0f6051 SHA512 0fca326feb1d5f5fe505a827b20237fe3ec9c13eaf7ec7e35847fd71184f605ba1cefe1314b1b8f8a29c0aa9d88162849ee1c1a3e70c2f7407d88339b17edb30
DIST binutils-9999-patches-2.tar.xz 11672 BLAKE2B 40b790713fc6cf463de3b3c3d207686890cc674fa44828952e73a66b723e4d9e8374b9e13fd44ffc5e0e5e1dc6eb63910563f4f318ff22f56813bd29ba4fe338 SHA512 ed1d88b693e35368e7ec6e16ccd7a5561ba697b778afc2da296f46698aff5d4d6a39c5fc030ce189b00af944d80f673bdac770771d23dd1f256eac2fb5858493
diff --git a/sys-devel/binutils/binutils-2.31.1-r2.ebuild b/sys-devel/binutils/binutils-2.31.1-r2.ebuild
deleted file mode 100644
index e912ce32036..00000000000
--- a/sys-devel/binutils/binutils-2.31.1-r2.ebuild
+++ /dev/null
@@ -1,426 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eutils libtool flag-o-matic gnuconfig multilib versionator
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="https://sourceware.org/binutils/"
-LICENSE="GPL-3+"
-IUSE="+cxx doc multitarget +nls static-libs test"
-
-# Variables that can be set here:
-# 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
-# Default: dilfridge :)
-
-PATCH_VER=4
-PATCH_DEV=dilfridge
-
-case ${PV} in
- 9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- SLOT=${PV}
- ;;
- *.9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- EGIT_BRANCH=$(get_version_component_range 1-2)
- EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
- SLOT=$(get_version_component_range 1-2)
- ;;
- *)
- SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
- SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
- ;;
-esac
-
-#
-# The Gentoo patchset
-#
-PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
-PATCH_DEV=${PATCH_DEV:-slyfox}
-
-[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
- https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
-
-#
-# 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}
- doc? ( sys-apps/texinfo )
- test? ( dev-util/dejagnu )
- nls? ( sys-devel/gettext )
- sys-devel/flex
- virtual/yacc
-"
-
-MY_BUILDDIR=${WORKDIR}/build
-
-src_unpack() {
- case ${PV} in
- *9999)
- git-r3_src_unpack
- ;;
- *)
- ;;
- esac
- default
- mkdir -p "${MY_BUILDDIR}"
-}
-
-src_prepare() {
- if [[ ! -z ${PATCH_VER} ]] ; then
- einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
- eapply "${WORKDIR}/patch"/*.patch
- fi
-
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
- # Make sure our explicit libdir paths don't get clobbered. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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() {
- # 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 #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}"
- local myconf=()
-
- # enable gold (installed as ld.gold) and ld's plugin architecture
- if use cxx ; then
- myconf+=( --enable-gold )
- myconf+=( --enable-plugins )
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #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. #666100
- --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
- )
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
-
- # bug 637066
- filter-flags -Wall -Wreturn-type
-
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- # see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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/}" || die
- if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
- 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}"
- 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-02-03 18:52 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2019-02-03 18:52 UTC (permalink / raw
To: gentoo-commits
commit: adc2db698a2756f53ed115e21334f5ff46618285
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sun Feb 3 18:52:29 2019 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sun Feb 3 18:52:37 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=adc2db69
sys-devel/binutils: indent metadata.xml
Package-Manager: Portage-2.3.59, Repoman-2.3.12
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/metadata.xml | 20 ++++++++++----------
1 file changed, 10 insertions(+), 10 deletions(-)
diff --git a/sys-devel/binutils/metadata.xml b/sys-devel/binutils/metadata.xml
index 3b4e0782a80..cd119b3491c 100644
--- a/sys-devel/binutils/metadata.xml
+++ b/sys-devel/binutils/metadata.xml
@@ -1,14 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<maintainer type="project">
-<email>toolchain@gentoo.org</email>
-<name>Gentoo Toolchain Project</name>
-</maintainer>
-<use>
-<flag name="multitarget">Adds support to binutils for cross compiling (does not work with gas)</flag>
-</use>
-<upstream>
-<remote-id type="cpe">cpe:/a:gnu:binutils</remote-id>
-</upstream>
+ <maintainer type="project">
+ <email>toolchain@gentoo.org</email>
+ <name>Gentoo Toolchain Project</name>
+ </maintainer>
+ <use>
+ <flag name="multitarget">Adds support to binutils for cross compiling (does not work with gas)</flag>
+ </use>
+ <upstream>
+ <remote-id type="cpe">cpe:/a:gnu:binutils</remote-id>
+ </upstream>
</pkgmetadata>
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-02-12 23:01 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2019-02-12 23:01 UTC (permalink / raw
To: gentoo-commits
commit: bcf3b906fdf9380837d462e56aca0da1f2388f2c
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Tue Feb 12 23:01:16 2019 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Tue Feb 12 23:01:33 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bcf3b906
sys-devel/binutils: add USE=default-gold, bug #496760
binutils allows you to set ld=ld.bfd (default) and ld=ld.gold.
Expose this override as USE=default-gold.
Reported-by: Marcin Mirosław
Bug: https://bugs.gentoo.org/496760
Package-Manager: Portage-2.3.60, Repoman-2.3.12
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-2.31.1-r3.ebuild | 8 ++++++--
sys-devel/binutils/binutils-9999.ebuild | 5 ++++-
sys-devel/binutils/metadata.xml | 1 +
3 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r3.ebuild b/sys-devel/binutils/binutils-2.31.1-r3.ebuild
index 0ba64dc35a0..ef47b02deaf 100644
--- a/sys-devel/binutils/binutils-2.31.1-r3.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -8,7 +8,8 @@ inherit eutils libtool flag-o-matic gnuconfig multilib versionator
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
LICENSE="GPL-3+"
-IUSE="+cxx doc multitarget +nls static-libs test"
+IUSE="+cxx default-gold doc multitarget +nls static-libs test"
+REQUIRED_USE="default-gold? ( cxx )"
# Variables that can be set here:
# PATCH_VER - the patchset version
@@ -179,6 +180,9 @@ src_configure() {
if use cxx ; then
myconf+=( --enable-gold )
myconf+=( --enable-plugins )
+ if use default-gold; then
+ myconf+=( --enable-gold=default )
+ fi
fi
if use nls ; then
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 5e72d97d140..4e2bb0f4ec7 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -178,6 +178,9 @@ src_configure() {
if use cxx ; then
myconf+=( --enable-gold )
myconf+=( --enable-plugins )
+ if use default-gold; then
+ myconf+=( --enable-gold=default )
+ fi
fi
if use nls ; then
diff --git a/sys-devel/binutils/metadata.xml b/sys-devel/binutils/metadata.xml
index cd119b3491c..98c985e11c4 100644
--- a/sys-devel/binutils/metadata.xml
+++ b/sys-devel/binutils/metadata.xml
@@ -6,6 +6,7 @@
<name>Gentoo Toolchain Project</name>
</maintainer>
<use>
+ <flag name="default-gold">Set ld to point to ld.gold instead of ld.bfd</flag>
<flag name="multitarget">Adds support to binutils for cross compiling (does not work with gas)</flag>
</use>
<upstream>
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-02-12 23:32 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2019-02-12 23:32 UTC (permalink / raw
To: gentoo-commits
commit: 2daa70b566d006aa2cfba6e20842b7287766f5e5
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Tue Feb 12 23:31:18 2019 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Tue Feb 12 23:31:18 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2daa70b5
sys-devel/binutils: split USE="cxx" into USE="gold plugins"
Reported-by: Dirkjan Ochtman
Bug: https://bugs.gentoo.org/663776
Package-Manager: Portage-2.3.60, Repoman-2.3.12
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
.../{binutils-9999.ebuild => binutils-2.31.1-r4.ebuild} | 14 +++++++++-----
sys-devel/binutils/binutils-9999.ebuild | 9 ++++++---
sys-devel/binutils/metadata.xml | 2 ++
3 files changed, 17 insertions(+), 8 deletions(-)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-2.31.1-r4.ebuild
similarity index 97%
copy from sys-devel/binutils/binutils-9999.ebuild
copy to sys-devel/binutils/binutils-2.31.1-r4.ebuild
index 4e2bb0f4ec7..841412c05e2 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r4.ebuild
@@ -8,7 +8,8 @@ inherit eutils libtool flag-o-matic gnuconfig multilib versionator
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
LICENSE="GPL-3+"
-IUSE="+cxx doc multitarget +nls static-libs test"
+IUSE="default-gold doc +gold multitarget +nls +plugins static-libs test"
+REQUIRED_USE="default-gold? ( gold )"
# Variables that can be set here:
# PATCH_VER - the patchset version
@@ -19,8 +20,8 @@ IUSE="+cxx doc multitarget +nls static-libs test"
# for the patchsets
# Default: dilfridge :)
-PATCH_VER=2
-PATCH_BINUTILS_VER=9999
+PATCH_VER=5
+PATCH_DEV=dilfridge
case ${PV} in
9999)
@@ -42,6 +43,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
@@ -174,10 +176,12 @@ src_configure() {
cd "${MY_BUILDDIR}"
local myconf=()
+ if use plugins ; then
+ myconf+=( --enable-plugins )
+ fi
# enable gold (installed as ld.gold) and ld's plugin architecture
- if use cxx ; then
+ if use gold ; then
myconf+=( --enable-gold )
- myconf+=( --enable-plugins )
if use default-gold; then
myconf+=( --enable-gold=default )
fi
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 4e2bb0f4ec7..7debbc5c53e 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -8,7 +8,8 @@ inherit eutils libtool flag-o-matic gnuconfig multilib versionator
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
LICENSE="GPL-3+"
-IUSE="+cxx doc multitarget +nls static-libs test"
+IUSE="default-gold doc +gold multitarget +nls +plugins static-libs test"
+REQUIRED_USE="default-gold? ( gold )"
# Variables that can be set here:
# PATCH_VER - the patchset version
@@ -174,10 +175,12 @@ src_configure() {
cd "${MY_BUILDDIR}"
local myconf=()
+ if use plugins ; then
+ myconf+=( --enable-plugins )
+ fi
# enable gold (installed as ld.gold) and ld's plugin architecture
- if use cxx ; then
+ if use gold ; then
myconf+=( --enable-gold )
- myconf+=( --enable-plugins )
if use default-gold; then
myconf+=( --enable-gold=default )
fi
diff --git a/sys-devel/binutils/metadata.xml b/sys-devel/binutils/metadata.xml
index 98c985e11c4..66f4f23df42 100644
--- a/sys-devel/binutils/metadata.xml
+++ b/sys-devel/binutils/metadata.xml
@@ -7,6 +7,8 @@
</maintainer>
<use>
<flag name="default-gold">Set ld to point to ld.gold instead of ld.bfd</flag>
+ <flag name="gold">Build ld.gold linker</flag>
+ <flag name="plugins">Enable plugin support in tools</flag>
<flag name="multitarget">Adds support to binutils for cross compiling (does not work with gas)</flag>
</use>
<upstream>
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-02-14 22:17 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2019-02-14 22:17 UTC (permalink / raw
To: gentoo-commits
commit: 39d937a0feb6af576c2c751e44afce92452960d7
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Thu Feb 14 22:17:29 2019 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Thu Feb 14 22:17:29 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=39d937a0
sys-devel/binutils: temporary restore transitional IUSE=+cxx flag
Temporary restore IUSE=+cxx to help llvm. IUSE=+cxx will still go
away soon.
Reported-by: Johannes Hirte
Bug: https://bugs.gentoo.org/677888
Bug: https://bugs.gentoo.org/663776
Package-Manager: Portage-2.3.60, Repoman-2.3.12
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-2.31.1-r4.ebuild | 6 ++++--
sys-devel/binutils/binutils-9999.ebuild | 6 ++++--
2 files changed, 8 insertions(+), 4 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r4.ebuild b/sys-devel/binutils/binutils-2.31.1-r4.ebuild
index 841412c05e2..367c124577d 100644
--- a/sys-devel/binutils/binutils-2.31.1-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r4.ebuild
@@ -8,8 +8,10 @@ inherit eutils libtool flag-o-matic gnuconfig multilib versionator
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
LICENSE="GPL-3+"
-IUSE="default-gold doc +gold multitarget +nls +plugins static-libs test"
-REQUIRED_USE="default-gold? ( gold )"
+# USE="+cxx" is a transitional flag until llvm migrates to new flags:
+# bug #677888
+IUSE="+cxx default-gold doc +gold multitarget +nls +plugins static-libs test"
+REQUIRED_USE="cxx? ( gold plugins ) default-gold? ( gold )"
# Variables that can be set here:
# PATCH_VER - the patchset version
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 7debbc5c53e..8b89c6e8abe 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -8,8 +8,10 @@ inherit eutils libtool flag-o-matic gnuconfig multilib versionator
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
LICENSE="GPL-3+"
-IUSE="default-gold doc +gold multitarget +nls +plugins static-libs test"
-REQUIRED_USE="default-gold? ( gold )"
+# USE="+cxx" is a transitional flag until llvm migrates to new flags:
+# bug #677888
+IUSE="+cxx default-gold doc +gold multitarget +nls +plugins static-libs test"
+REQUIRED_USE="cxx? ( gold plugins ) default-gold? ( gold )"
# Variables that can be set here:
# PATCH_VER - the patchset version
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-02-16 10:35 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2019-02-16 10:35 UTC (permalink / raw
To: gentoo-commits
commit: 7b792b02dbe0eb57ec7945bf1a721a336fbfc114
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Feb 16 10:33:44 2019 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Feb 16 10:35:41 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7b792b02
sys-devel/binutils: bump up to 2.32, patchset 1
Initial patchset is based on current binutils-2.32 branch.
Reported-by: Lars Wendler
Bug: https://bugs.gentoo.org/677342
Package-Manager: Portage-2.3.60, Repoman-2.3.12
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 +
sys-devel/binutils/binutils-2.32.ebuild | 438 ++++++++++++++++++++++++++++++++
2 files changed, 440 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index f4c10ca6dc3..e595fc34151 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -12,4 +12,6 @@ DIST binutils-2.30-patches-5.tar.xz 590864 BLAKE2B 71de4d08f92ab1898ad576a21763f
DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f5916fb82ce95ceab424fd8dc19f6daa7ac32a149f222ccdcc603354165cc206fde070eaa44fe2cc5e57486efc7868 SHA512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839
DIST binutils-2.31.1-patches-5.tar.xz 65896 BLAKE2B 7fb2c4c71336a77f3fef57a0430c511ef7326f8196d8f3a57a6d56aed464953172eeb0755f020387739cf27f709d0bc3de9c3c8b972a94f1480639465158e180 SHA512 c254f22b8ca662cf49cd5fc076d3e9b82d7f421420408c960c54310fc49462600325e7bc50f863cab7c8c49caebac3ac353dc24ab5947e8f01b98c11f43f57d2
DIST binutils-2.31.1.tar.xz 20467996 BLAKE2B 6b914df1fbb7cf54f2159f71b2c2b09f3f6a569b7a3cb4cf9790d0a3733a7548bc0ea32334a178ed3b56e8b97656ae99c7abaf212601beeaeae9a0884c0f6051 SHA512 0fca326feb1d5f5fe505a827b20237fe3ec9c13eaf7ec7e35847fd71184f605ba1cefe1314b1b8f8a29c0aa9d88162849ee1c1a3e70c2f7407d88339b17edb30
+DIST binutils-2.32-patches-1.tar.xz 93252 BLAKE2B 80d229be60c3377fe52ff3e74ee911b5dcfb9456d3f42a57662fbda3184ac1c63e698e592f804ac05c459527d0cd4bae7d8c9ef8caef02fdf4f17aa783f4ff81 SHA512 69999f60d89589dcf9e3cb18e50f153ab4ce05bdf3f3758fa322b5c4cb468aeda46c416da540995ddff1ea5e96354c264fa5ff0156c53685816d35117eb481e0
+DIST binutils-2.32.tar.xz 20774880 BLAKE2B d1bdbd9c8487c091665c197974ce4bdf520b7a67ed6997a81b87e6a0af9514a091458244f583acec5ae580ac2ee5e908f67f483b8e5263cd18ced794cb235da6 SHA512 d326408f12a03d9a61a9de56584c2af12f81c2e50d2d7e835d51565df8314df01575724afa1e43bd0db45cfc9916b41519b67dfce03232aa4978704492a6994a
DIST binutils-9999-patches-2.tar.xz 11672 BLAKE2B 40b790713fc6cf463de3b3c3d207686890cc674fa44828952e73a66b723e4d9e8374b9e13fd44ffc5e0e5e1dc6eb63910563f4f318ff22f56813bd29ba4fe338 SHA512 ed1d88b693e35368e7ec6e16ccd7a5561ba697b778afc2da296f46698aff5d4d6a39c5fc030ce189b00af944d80f673bdac770771d23dd1f256eac2fb5858493
diff --git a/sys-devel/binutils/binutils-2.32.ebuild b/sys-devel/binutils/binutils-2.32.ebuild
new file mode 100644
index 00000000000..a4f678d5dfb
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.32.ebuild
@@ -0,0 +1,438 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils libtool flag-o-matic gnuconfig multilib versionator
+
+DESCRIPTION="Tools necessary to build programs"
+HOMEPAGE="https://sourceware.org/binutils/"
+LICENSE="GPL-3+"
+# USE="+cxx" is a transitional flag until llvm migrates to new flags:
+# bug #677888
+IUSE="+cxx default-gold doc +gold multitarget +nls +plugins static-libs test"
+REQUIRED_USE="cxx? ( gold plugins ) default-gold? ( gold )"
+
+# Variables that can be set here:
+# 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
+# Default: dilfridge :)
+
+PATCH_VER=1
+PATCH_DEV=slyfox
+
+case ${PV} in
+ 9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ SLOT=${PV}
+ ;;
+ *.9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ EGIT_BRANCH=$(get_version_component_range 1-2)
+ EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
+ SLOT=$(get_version_component_range 1-2)
+ ;;
+ *)
+ SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
+ SLOT=$(get_version_component_range 1-2)
+ # no keywords yet. Needs some testing
+ #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+ ;;
+esac
+
+#
+# The Gentoo patchset
+#
+PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
+PATCH_DEV=${PATCH_DEV:-slyfox}
+
+[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
+ https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
+
+#
+# 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}
+ doc? ( sys-apps/texinfo )
+ test? ( dev-util/dejagnu )
+ nls? ( sys-devel/gettext )
+ sys-devel/flex
+ virtual/yacc
+"
+
+MY_BUILDDIR=${WORKDIR}/build
+
+src_unpack() {
+ case ${PV} in
+ *9999)
+ git-r3_src_unpack
+ ;;
+ *)
+ ;;
+ esac
+ default
+ mkdir -p "${MY_BUILDDIR}"
+}
+
+src_prepare() {
+ if [[ ! -z ${PATCH_VER} ]] ; then
+ # Use upstream patch to enable development mode
+ rm -v "${WORKDIR}/patch"/0000-Gentoo-Git-is-development.patch || die
+
+ einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
+ eapply "${WORKDIR}/patch"/*.patch
+ fi
+
+ # This check should probably go somewhere else, like pkg_pretend.
+ if [[ ${CTARGET} == *-uclibc* ]] ; then
+ if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
+ die "sorry, but this binutils doesn't yet support uClibc :("
+ fi
+ fi
+
+ # Make sure our explicit libdir paths don't get clobbered. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ 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() {
+ # 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 #42033
+ strip-linguas -u */po
+
+ # Keep things sane
+ strip-flags
+
+ local x
+ echo
+ for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
+ einfo "$(printf '%10s' ${x}:) ${!x}"
+ done
+ echo
+
+ cd "${MY_BUILDDIR}"
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && 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. #497268
+ --enable-install-libiberty
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #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. #666100
+ --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
+ )
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${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}"
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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}"
+
+ # bug 637066
+ filter-flags -Wall -Wreturn-type
+
+ emake -k check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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/}" || die
+ if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
+ 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}"
+ 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-02-16 17:51 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2019-02-16 17:51 UTC (permalink / raw
To: gentoo-commits
commit: 3407dea0d86cec43c829625177a1d340bc721402
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Feb 16 17:50:51 2019 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Feb 16 17:51:05 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3407dea0
sys-devel/binutils: update 9999 with patchset 3
Rebase patchset against current binutils master branch.
Package-Manager: Portage-2.3.60, Repoman-2.3.12
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 +-
sys-devel/binutils/binutils-9999.ebuild | 3 +--
2 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index e595fc34151..aff96d4dde3 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -14,4 +14,4 @@ DIST binutils-2.31.1-patches-5.tar.xz 65896 BLAKE2B 7fb2c4c71336a77f3fef57a0430c
DIST binutils-2.31.1.tar.xz 20467996 BLAKE2B 6b914df1fbb7cf54f2159f71b2c2b09f3f6a569b7a3cb4cf9790d0a3733a7548bc0ea32334a178ed3b56e8b97656ae99c7abaf212601beeaeae9a0884c0f6051 SHA512 0fca326feb1d5f5fe505a827b20237fe3ec9c13eaf7ec7e35847fd71184f605ba1cefe1314b1b8f8a29c0aa9d88162849ee1c1a3e70c2f7407d88339b17edb30
DIST binutils-2.32-patches-1.tar.xz 93252 BLAKE2B 80d229be60c3377fe52ff3e74ee911b5dcfb9456d3f42a57662fbda3184ac1c63e698e592f804ac05c459527d0cd4bae7d8c9ef8caef02fdf4f17aa783f4ff81 SHA512 69999f60d89589dcf9e3cb18e50f153ab4ce05bdf3f3758fa322b5c4cb468aeda46c416da540995ddff1ea5e96354c264fa5ff0156c53685816d35117eb481e0
DIST binutils-2.32.tar.xz 20774880 BLAKE2B d1bdbd9c8487c091665c197974ce4bdf520b7a67ed6997a81b87e6a0af9514a091458244f583acec5ae580ac2ee5e908f67f483b8e5263cd18ced794cb235da6 SHA512 d326408f12a03d9a61a9de56584c2af12f81c2e50d2d7e835d51565df8314df01575724afa1e43bd0db45cfc9916b41519b67dfce03232aa4978704492a6994a
-DIST binutils-9999-patches-2.tar.xz 11672 BLAKE2B 40b790713fc6cf463de3b3c3d207686890cc674fa44828952e73a66b723e4d9e8374b9e13fd44ffc5e0e5e1dc6eb63910563f4f318ff22f56813bd29ba4fe338 SHA512 ed1d88b693e35368e7ec6e16ccd7a5561ba697b778afc2da296f46698aff5d4d6a39c5fc030ce189b00af944d80f673bdac770771d23dd1f256eac2fb5858493
+DIST binutils-9999-patches-3.tar.xz 17516 BLAKE2B 6b75a11f2e1d938d5579b52d97dc1d33659c4b5496c76a4aae1a48088fa8edd7339fb65c98ee9e7eb6d389d18b240c596139648329c2724c575440c97f5c8918 SHA512 b4c412c0a973dc7b794a6ab29da1d55a94d40b96c54982ebcb831661be0512e5cd6b11f26998d63193cedb77f554968e63398a6e74ffbaa57d65e3415ca1ac44
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 8b89c6e8abe..cf4640ceaf6 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -20,9 +20,8 @@ REQUIRED_USE="cxx? ( gold plugins ) default-gold? ( gold )"
# - Default: PV
# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
# for the patchsets
-# Default: dilfridge :)
-PATCH_VER=2
+PATCH_VER=3
PATCH_BINUTILS_VER=9999
case ${PV} in
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-02-23 12:55 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2019-02-23 12:55 UTC (permalink / raw
To: gentoo-commits
commit: 34e3a2893ff99f875f43fdb40c0573c8338c1154
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Feb 23 12:54:10 2019 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Feb 23 12:55:03 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=34e3a289
sys-devel/binutils: enable verbose test logging
Package-Manager: Portage-2.3.62, Repoman-2.3.12
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-2.32.ebuild | 3 ++-
sys-devel/binutils/binutils-9999.ebuild | 3 ++-
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.32.ebuild b/sys-devel/binutils/binutils-2.32.ebuild
index a4f678d5dfb..d3c4f9a56ee 100644
--- a/sys-devel/binutils/binutils-2.32.ebuild
+++ b/sys-devel/binutils/binutils-2.32.ebuild
@@ -292,7 +292,8 @@ src_test() {
# bug 637066
filter-flags -Wall -Wreturn-type
- emake -k check
+ # enable verbose test run and result logging
+ emake -k check RUNTESTFLAGS='-a -v' VERBOSE=1
}
src_install() {
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index cf4640ceaf6..a4877ac8378 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -286,7 +286,8 @@ src_test() {
# bug 637066
filter-flags -Wall -Wreturn-type
- emake -k check
+ # enable verbose test run and result logging
+ emake -k check RUNTESTFLAGS='-a -v' VERBOSE=1
}
src_install() {
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-02-23 13:06 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2019-02-23 13:06 UTC (permalink / raw
To: gentoo-commits
commit: 9006656559ccf4445641a3ddff6a88bcbe091992
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Feb 23 13:03:00 2019 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Feb 23 13:06:10 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=90066565
sys-devel/binutils: put 2.32 into ~arch, bug #677342
Reported-by: Lars Wendler
Closes: https://bugs.gentoo.org/677342
Package-Manager: Portage-2.3.62, Repoman-2.3.12
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-2.32.ebuild | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.32.ebuild b/sys-devel/binutils/binutils-2.32.ebuild
index d3c4f9a56ee..312d249e85f 100644
--- a/sys-devel/binutils/binutils-2.32.ebuild
+++ b/sys-devel/binutils/binutils-2.32.ebuild
@@ -45,8 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- # no keywords yet. Needs some testing
- #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-03-26 21:32 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2019-03-26 21:32 UTC (permalink / raw
To: gentoo-commits
commit: 34d0abe451f534ec59d3a798bdcf09e4e09eea79
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Tue Mar 26 21:19:23 2019 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Tue Mar 26 21:31:56 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=34d0abe4
sys-devel/binutils: Remove old
Package-Manager: Portage-2.3.62, Repoman-2.3.12
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.31.1-r3.ebuild | 430 ---------------------------
1 file changed, 430 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r3.ebuild b/sys-devel/binutils/binutils-2.31.1-r3.ebuild
deleted file mode 100644
index ef47b02deaf..00000000000
--- a/sys-devel/binutils/binutils-2.31.1-r3.ebuild
+++ /dev/null
@@ -1,430 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eutils libtool flag-o-matic gnuconfig multilib versionator
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="https://sourceware.org/binutils/"
-LICENSE="GPL-3+"
-IUSE="+cxx default-gold doc multitarget +nls static-libs test"
-REQUIRED_USE="default-gold? ( cxx )"
-
-# Variables that can be set here:
-# 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
-# Default: dilfridge :)
-
-PATCH_VER=5
-PATCH_DEV=dilfridge
-
-case ${PV} in
- 9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- SLOT=${PV}
- ;;
- *.9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- EGIT_BRANCH=$(get_version_component_range 1-2)
- EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
- SLOT=$(get_version_component_range 1-2)
- ;;
- *)
- SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
- SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
- ;;
-esac
-
-#
-# The Gentoo patchset
-#
-PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
-PATCH_DEV=${PATCH_DEV:-slyfox}
-
-[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
- https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
-
-#
-# 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}
- doc? ( sys-apps/texinfo )
- test? ( dev-util/dejagnu )
- nls? ( sys-devel/gettext )
- sys-devel/flex
- virtual/yacc
-"
-
-MY_BUILDDIR=${WORKDIR}/build
-
-src_unpack() {
- case ${PV} in
- *9999)
- git-r3_src_unpack
- ;;
- *)
- ;;
- esac
- default
- mkdir -p "${MY_BUILDDIR}"
-}
-
-src_prepare() {
- if [[ ! -z ${PATCH_VER} ]] ; then
- einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
- eapply "${WORKDIR}/patch"/*.patch
- fi
-
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
- # Make sure our explicit libdir paths don't get clobbered. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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() {
- # 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 #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}"
- local myconf=()
-
- # enable gold (installed as ld.gold) and ld's plugin architecture
- if use cxx ; then
- myconf+=( --enable-gold )
- myconf+=( --enable-plugins )
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #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. #666100
- --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
- )
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
-
- # bug 637066
- filter-flags -Wall -Wreturn-type
-
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- # see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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/}" || die
- if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
- 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}"
- 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-03-29 21:59 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2019-03-29 21:59 UTC (permalink / raw
To: gentoo-commits
commit: 1b193ef47df52c45f63b70388fcc2ae74413eb9f
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 29 21:58:47 2019 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Mar 29 21:59:20 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1b193ef4
sys-devel/binutils: Disable gold testsuite in stable candidate.
The testsuite always fails. The failures are most likely Gentoo-specific
and still need a fix sometime. Meanwhile, let's give the entire testsuite
a chance to succeed (as in previous stabilizations).
Bug: https://bugs.gentoo.org/681682
Bug: https://bugs.gentoo.org/662362
Bug: https://bugs.gentoo.org/667894
Bug: https://bugs.gentoo.org/677914
Package-Manager: Portage-2.3.62, Repoman-2.3.12
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.31.1-r4.ebuild | 3 +++
1 file changed, 3 insertions(+)
diff --git a/sys-devel/binutils/binutils-2.31.1-r4.ebuild b/sys-devel/binutils/binutils-2.31.1-r4.ebuild
index 367c124577d..89cac2cbcbb 100644
--- a/sys-devel/binutils/binutils-2.31.1-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r4.ebuild
@@ -58,6 +58,9 @@ PATCH_DEV=${PATCH_DEV:-slyfox}
[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
+# Disable gold testsuite since it always fails.
+PATCHES=( "${FILESDIR}/${PN}-2.29.1-nogoldtest.patch" )
+
#
# The cross-compile logic
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-04-04 6:56 Mikle Kolyada
0 siblings, 0 replies; 477+ messages in thread
From: Mikle Kolyada @ 2019-04-04 6:56 UTC (permalink / raw
To: gentoo-commits
commit: 4734da26046fbe8b6b14df8c6503b47af09840a5
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Thu Apr 4 06:55:25 2019 +0000
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Thu Apr 4 06:55:25 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4734da26
sys-devel/binutils: amd64 stable wrt bug #681682
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>
Package-Manager: Portage-2.3.62, Repoman-2.3.11
RepoMan-Options: --include-arches="amd64"
sys-devel/binutils/binutils-2.31.1-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r4.ebuild b/sys-devel/binutils/binutils-2.31.1-r4.ebuild
index 89cac2cbcbb..28dc00ffcac 100644
--- a/sys-devel/binutils/binutils-2.31.1-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r4.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-04-06 14:35 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2019-04-06 14:35 UTC (permalink / raw
To: gentoo-commits
commit: 4192ce7b8eda636ce3a5f784fdb6ff27ff052732
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 6 14:32:50 2019 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Apr 6 14:32:50 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4192ce7b
sys-devel/binutils: 2.31.1 revbump, no keywords, needs testing
Package-Manager: Portage-2.3.62, Repoman-2.3.12
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.31.1-r5.ebuild | 437 +++++++++++++++++++++++++++
2 files changed, 438 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index aff96d4dde3..4c7c3c8a2f1 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -11,6 +11,7 @@ DIST binutils-2.29.1.tar.bz2 29123355 BLAKE2B 83de518a27bae0f13c57b1979493dd7f7c
DIST binutils-2.30-patches-5.tar.xz 590864 BLAKE2B 71de4d08f92ab1898ad576a21763f955067cbbed543250888e0c5d51f4ef77d0d829049e9a835691cf2de03965fbcc9bcfa092eb304c03f9b885e7a3dadab286 SHA512 029b3be6ae9b8620f8580a35701bd4517b4e0232ff3cf9983b3808475c7443cbf500b6cace2c052df0bd1e47202838f4d2453238db28709a947117071d9ae804
DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f5916fb82ce95ceab424fd8dc19f6daa7ac32a149f222ccdcc603354165cc206fde070eaa44fe2cc5e57486efc7868 SHA512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839
DIST binutils-2.31.1-patches-5.tar.xz 65896 BLAKE2B 7fb2c4c71336a77f3fef57a0430c511ef7326f8196d8f3a57a6d56aed464953172eeb0755f020387739cf27f709d0bc3de9c3c8b972a94f1480639465158e180 SHA512 c254f22b8ca662cf49cd5fc076d3e9b82d7f421420408c960c54310fc49462600325e7bc50f863cab7c8c49caebac3ac353dc24ab5947e8f01b98c11f43f57d2
+DIST binutils-2.31.1-patches-6.tar.xz 76196 BLAKE2B e3c8de07dad62bb3093846389bc1fae0921dd6e63ee2458a85051d298cd1dd52487f83affa33d899e4ddd34b6fd3e28c79a525854c0432d576f83f855d843588 SHA512 6ddfe7b0dc9f340fb1dde3bbc426d087241738b15a5f16a336569b45b2c8ac4077e81e19168c5b165bd4abbaed419e2f290291ef7438a0ecde1f8a6a72217d4c
DIST binutils-2.31.1.tar.xz 20467996 BLAKE2B 6b914df1fbb7cf54f2159f71b2c2b09f3f6a569b7a3cb4cf9790d0a3733a7548bc0ea32334a178ed3b56e8b97656ae99c7abaf212601beeaeae9a0884c0f6051 SHA512 0fca326feb1d5f5fe505a827b20237fe3ec9c13eaf7ec7e35847fd71184f605ba1cefe1314b1b8f8a29c0aa9d88162849ee1c1a3e70c2f7407d88339b17edb30
DIST binutils-2.32-patches-1.tar.xz 93252 BLAKE2B 80d229be60c3377fe52ff3e74ee911b5dcfb9456d3f42a57662fbda3184ac1c63e698e592f804ac05c459527d0cd4bae7d8c9ef8caef02fdf4f17aa783f4ff81 SHA512 69999f60d89589dcf9e3cb18e50f153ab4ce05bdf3f3758fa322b5c4cb468aeda46c416da540995ddff1ea5e96354c264fa5ff0156c53685816d35117eb481e0
DIST binutils-2.32.tar.xz 20774880 BLAKE2B d1bdbd9c8487c091665c197974ce4bdf520b7a67ed6997a81b87e6a0af9514a091458244f583acec5ae580ac2ee5e908f67f483b8e5263cd18ced794cb235da6 SHA512 d326408f12a03d9a61a9de56584c2af12f81c2e50d2d7e835d51565df8314df01575724afa1e43bd0db45cfc9916b41519b67dfce03232aa4978704492a6994a
diff --git a/sys-devel/binutils/binutils-2.31.1-r5.ebuild b/sys-devel/binutils/binutils-2.31.1-r5.ebuild
new file mode 100644
index 00000000000..9f5cea23fe4
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.31.1-r5.ebuild
@@ -0,0 +1,437 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils libtool flag-o-matic gnuconfig multilib versionator
+
+DESCRIPTION="Tools necessary to build programs"
+HOMEPAGE="https://sourceware.org/binutils/"
+LICENSE="GPL-3+"
+# USE="+cxx" is a transitional flag until llvm migrates to new flags:
+# bug #677888
+IUSE="+cxx default-gold doc +gold multitarget +nls +plugins static-libs test"
+REQUIRED_USE="cxx? ( gold plugins ) default-gold? ( gold )"
+
+# Variables that can be set here:
+# 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
+# Default: dilfridge :)
+
+PATCH_VER=6
+PATCH_DEV=dilfridge
+
+case ${PV} in
+ 9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ SLOT=${PV}
+ ;;
+ *.9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ EGIT_BRANCH=$(get_version_component_range 1-2)
+ EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
+ SLOT=$(get_version_component_range 1-2)
+ ;;
+ *)
+ SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
+ SLOT=$(get_version_component_range 1-2)
+ #KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+ ;;
+esac
+
+#
+# The Gentoo patchset
+#
+PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
+PATCH_DEV=${PATCH_DEV:-slyfox}
+
+[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
+ https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
+
+# Disable gold testsuite since it always fails.
+PATCHES=( "${FILESDIR}/${PN}-2.29.1-nogoldtest.patch" )
+
+#
+# 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}
+ doc? ( sys-apps/texinfo )
+ test? ( dev-util/dejagnu )
+ nls? ( sys-devel/gettext )
+ sys-devel/flex
+ virtual/yacc
+"
+
+MY_BUILDDIR=${WORKDIR}/build
+
+src_unpack() {
+ case ${PV} in
+ *9999)
+ git-r3_src_unpack
+ ;;
+ *)
+ ;;
+ esac
+ default
+ mkdir -p "${MY_BUILDDIR}"
+}
+
+src_prepare() {
+ if [[ ! -z ${PATCH_VER} ]] ; then
+ einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
+ eapply "${WORKDIR}/patch"/*.patch
+ fi
+
+ # This check should probably go somewhere else, like pkg_pretend.
+ if [[ ${CTARGET} == *-uclibc* ]] ; then
+ if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
+ die "sorry, but this binutils doesn't yet support uClibc :("
+ fi
+ fi
+
+ # Make sure our explicit libdir paths don't get clobbered. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ 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() {
+ # 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 #42033
+ strip-linguas -u */po
+
+ # Keep things sane
+ strip-flags
+
+ local x
+ echo
+ for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
+ einfo "$(printf '%10s' ${x}:) ${!x}"
+ done
+ echo
+
+ cd "${MY_BUILDDIR}"
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && 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. #497268
+ --enable-install-libiberty
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #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. #666100
+ --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
+ )
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${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}"
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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}"
+
+ # bug 637066
+ filter-flags -Wall -Wreturn-type
+
+ emake -k check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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/}" || die
+ if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
+ 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}"
+ 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-04-07 22:00 Mikle Kolyada
0 siblings, 0 replies; 477+ messages in thread
From: Mikle Kolyada @ 2019-04-07 22:00 UTC (permalink / raw
To: gentoo-commits
commit: 1ecc04913b452c04e27d4455df8ef9c9bd0c03ec
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 7 21:59:35 2019 +0000
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sun Apr 7 21:59:35 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1ecc0491
sys-devel/binutils: arm stable wrt bug #681682
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>
Package-Manager: Portage-2.3.62, Repoman-2.3.11
RepoMan-Options: --include-arches="arm"
sys-devel/binutils/binutils-2.31.1-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r4.ebuild b/sys-devel/binutils/binutils-2.31.1-r4.ebuild
index 97caf7941f8..f4976430534 100644
--- a/sys-devel/binutils/binutils-2.31.1-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r4.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-04-07 22:00 Mikle Kolyada
0 siblings, 0 replies; 477+ messages in thread
From: Mikle Kolyada @ 2019-04-07 22:00 UTC (permalink / raw
To: gentoo-commits
commit: ccbd100a9ec68a050efd7f0e7bb4cfa23f54f218
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 7 22:00:00 2019 +0000
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sun Apr 7 22:00:00 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ccbd100a
sys-devel/binutils: m68k stable wrt bug #681682
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>
Package-Manager: Portage-2.3.62, Repoman-2.3.11
RepoMan-Options: --include-arches="m68k"
sys-devel/binutils/binutils-2.31.1-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r4.ebuild b/sys-devel/binutils/binutils-2.31.1-r4.ebuild
index f4976430534..8ba97ea1be0 100644
--- a/sys-devel/binutils/binutils-2.31.1-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r4.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 m68k ~mips ~ppc ~ppc64 s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-04-07 22:00 Mikle Kolyada
0 siblings, 0 replies; 477+ messages in thread
From: Mikle Kolyada @ 2019-04-07 22:00 UTC (permalink / raw
To: gentoo-commits
commit: 5e50ed055277c7f2c6f1a39193709e513cb6215e
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 7 21:59:03 2019 +0000
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sun Apr 7 21:59:03 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5e50ed05
sys-devel/binutils: s390 stable wrt bug #681682
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>
Package-Manager: Portage-2.3.62, Repoman-2.3.11
RepoMan-Options: --include-arches="s390"
sys-devel/binutils/binutils-2.31.1-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r4.ebuild b/sys-devel/binutils/binutils-2.31.1-r4.ebuild
index 28dc00ffcac..97caf7941f8 100644
--- a/sys-devel/binutils/binutils-2.31.1-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r4.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-04-07 22:00 Mikle Kolyada
0 siblings, 0 replies; 477+ messages in thread
From: Mikle Kolyada @ 2019-04-07 22:00 UTC (permalink / raw
To: gentoo-commits
commit: ab4a41ebdfd35e5b8057c34065b17384bec4e0c5
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 7 22:00:19 2019 +0000
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sun Apr 7 22:00:19 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ab4a41eb
sys-devel/binutils: sh stable wrt bug #681682
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>
Package-Manager: Portage-2.3.62, Repoman-2.3.11
RepoMan-Options: --include-arches="sh"
sys-devel/binutils/binutils-2.31.1-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r4.ebuild b/sys-devel/binutils/binutils-2.31.1-r4.ebuild
index 8ba97ea1be0..c3ec62ac859 100644
--- a/sys-devel/binutils/binutils-2.31.1-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r4.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 m68k ~mips ~ppc ~ppc64 s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 m68k ~mips ~ppc ~ppc64 s390 sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-04-09 14:09 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2019-04-09 14:09 UTC (permalink / raw
To: gentoo-commits
commit: 479112d63d2489e6d0e0f3386ebaf3efbf683b8b
Author: Andreas K. Huettel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 9 14:06:45 2019 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Tue Apr 9 14:09:13 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=479112d6
sys-devel/binutils: Re-keyword 2.31.1-r5
Package-Manager: Portage-2.3.62, Repoman-2.3.12
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.31.1-r5.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r5.ebuild b/sys-devel/binutils/binutils-2.31.1-r5.ebuild
index 9f5cea23fe4..27d9212fc0c 100644
--- a/sys-devel/binutils/binutils-2.31.1-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r5.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- #KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-04-10 23:34 Aaron Bauman
0 siblings, 0 replies; 477+ messages in thread
From: Aaron Bauman @ 2019-04-10 23:34 UTC (permalink / raw
To: gentoo-commits
commit: b3890347c5f17c59da8a47203c37d54a575bc860
Author: Aaron Bauman <bman <AT> gentoo <DOT> org>
AuthorDate: Wed Apr 10 23:33:29 2019 +0000
Commit: Aaron Bauman <bman <AT> gentoo <DOT> org>
CommitDate: Wed Apr 10 23:33:29 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b3890347
sys-devel/binutils: arm64 stable (bug #681682)
Signed-off-by: Aaron Bauman <bman <AT> gentoo.org>
Package-Manager: Portage-2.3.62, Repoman-2.3.11
sys-devel/binutils/binutils-2.31.1-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r4.ebuild b/sys-devel/binutils/binutils-2.31.1-r4.ebuild
index 8fbb9673ded..2f9f4183e3a 100644
--- a/sys-devel/binutils/binutils-2.31.1-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r4.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 m68k ~mips ~ppc ~ppc64 s390 sh ~sparc x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 m68k ~mips ~ppc ~ppc64 s390 sh ~sparc x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-04-11 11:35 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2019-04-11 11:35 UTC (permalink / raw
To: gentoo-commits
commit: af6346fb7a41af59557ab635c07ecf98de093448
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Thu Apr 11 11:34:41 2019 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Thu Apr 11 11:35:02 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=af6346fb
sys-devel/binutils: update 9999 pathcset, bug #683014
Update new_dtags patch as context changed enough around.
The actual patch itself did not have to change.
Reported-by: Agostino Sarubbo
Closes: https://bugs.gentoo.org/683014
Package-Manager: Portage-2.3.62, Repoman-2.3.12
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 +-
sys-devel/binutils/binutils-9999.ebuild | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 4c7c3c8a2f1..36aaebc1f70 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -15,4 +15,4 @@ DIST binutils-2.31.1-patches-6.tar.xz 76196 BLAKE2B e3c8de07dad62bb3093846389bc1
DIST binutils-2.31.1.tar.xz 20467996 BLAKE2B 6b914df1fbb7cf54f2159f71b2c2b09f3f6a569b7a3cb4cf9790d0a3733a7548bc0ea32334a178ed3b56e8b97656ae99c7abaf212601beeaeae9a0884c0f6051 SHA512 0fca326feb1d5f5fe505a827b20237fe3ec9c13eaf7ec7e35847fd71184f605ba1cefe1314b1b8f8a29c0aa9d88162849ee1c1a3e70c2f7407d88339b17edb30
DIST binutils-2.32-patches-1.tar.xz 93252 BLAKE2B 80d229be60c3377fe52ff3e74ee911b5dcfb9456d3f42a57662fbda3184ac1c63e698e592f804ac05c459527d0cd4bae7d8c9ef8caef02fdf4f17aa783f4ff81 SHA512 69999f60d89589dcf9e3cb18e50f153ab4ce05bdf3f3758fa322b5c4cb468aeda46c416da540995ddff1ea5e96354c264fa5ff0156c53685816d35117eb481e0
DIST binutils-2.32.tar.xz 20774880 BLAKE2B d1bdbd9c8487c091665c197974ce4bdf520b7a67ed6997a81b87e6a0af9514a091458244f583acec5ae580ac2ee5e908f67f483b8e5263cd18ced794cb235da6 SHA512 d326408f12a03d9a61a9de56584c2af12f81c2e50d2d7e835d51565df8314df01575724afa1e43bd0db45cfc9916b41519b67dfce03232aa4978704492a6994a
-DIST binutils-9999-patches-3.tar.xz 17516 BLAKE2B 6b75a11f2e1d938d5579b52d97dc1d33659c4b5496c76a4aae1a48088fa8edd7339fb65c98ee9e7eb6d389d18b240c596139648329c2724c575440c97f5c8918 SHA512 b4c412c0a973dc7b794a6ab29da1d55a94d40b96c54982ebcb831661be0512e5cd6b11f26998d63193cedb77f554968e63398a6e74ffbaa57d65e3415ca1ac44
+DIST binutils-9999-patches-4.tar.xz 17480 BLAKE2B 8e85fb15c740e19bb27482bea134342970fe1af8c39639a16a087c1e3b7386e469d9db6b0d1c0e1e62d550c145814e3013ef65708e91313b648a94ac5c4cafed SHA512 6d09513da6995b83c24afd0799f918281198c412cb65f04e07002fed1b036fb1c6cb075be499a2415e8b286f288b80c02fae1b1dfcd288fe216254d31206b6e3
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index a4877ac8378..80a41f81b29 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -21,7 +21,7 @@ REQUIRED_USE="cxx? ( gold plugins ) default-gold? ( gold )"
# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
# for the patchsets
-PATCH_VER=3
+PATCH_VER=4
PATCH_BINUTILS_VER=9999
case ${PV} in
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-04-18 21:38 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2019-04-18 21:38 UTC (permalink / raw
To: gentoo-commits
commit: 0a5fff247244e8094595002711d429d4ab08f073
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Thu Apr 18 21:37:49 2019 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Thu Apr 18 21:38:15 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0a5fff24
sys-devel/binutils: 2.32 patchlevel bump
Bug: https://bugs.gentoo.org/683790
Package-Manager: Portage-2.3.63, Repoman-2.3.12
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.32-r1.ebuild | 438 +++++++++++++++++++++++++++++
2 files changed, 439 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 36aaebc1f70..4149643f0b6 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -14,5 +14,6 @@ DIST binutils-2.31.1-patches-5.tar.xz 65896 BLAKE2B 7fb2c4c71336a77f3fef57a0430c
DIST binutils-2.31.1-patches-6.tar.xz 76196 BLAKE2B e3c8de07dad62bb3093846389bc1fae0921dd6e63ee2458a85051d298cd1dd52487f83affa33d899e4ddd34b6fd3e28c79a525854c0432d576f83f855d843588 SHA512 6ddfe7b0dc9f340fb1dde3bbc426d087241738b15a5f16a336569b45b2c8ac4077e81e19168c5b165bd4abbaed419e2f290291ef7438a0ecde1f8a6a72217d4c
DIST binutils-2.31.1.tar.xz 20467996 BLAKE2B 6b914df1fbb7cf54f2159f71b2c2b09f3f6a569b7a3cb4cf9790d0a3733a7548bc0ea32334a178ed3b56e8b97656ae99c7abaf212601beeaeae9a0884c0f6051 SHA512 0fca326feb1d5f5fe505a827b20237fe3ec9c13eaf7ec7e35847fd71184f605ba1cefe1314b1b8f8a29c0aa9d88162849ee1c1a3e70c2f7407d88339b17edb30
DIST binutils-2.32-patches-1.tar.xz 93252 BLAKE2B 80d229be60c3377fe52ff3e74ee911b5dcfb9456d3f42a57662fbda3184ac1c63e698e592f804ac05c459527d0cd4bae7d8c9ef8caef02fdf4f17aa783f4ff81 SHA512 69999f60d89589dcf9e3cb18e50f153ab4ce05bdf3f3758fa322b5c4cb468aeda46c416da540995ddff1ea5e96354c264fa5ff0156c53685816d35117eb481e0
+DIST binutils-2.32-patches-2.tar.xz 145672 BLAKE2B 8218e621f99cb4bcd1638c3011449b94480d207eaeb79cf75c0072e0f1a86bfd1603fc4515bc40d3ac1921a18b9a211b20568f59b11b13eb44e6cff1329c5af9 SHA512 55c25a603f6175af3ade6848e5c1faba06a147d72e9a4f53d44502d97db76499485a67b278a654d18884714a7bf7b360c77c9e42dba3cdc188f805bfe461f09f
DIST binutils-2.32.tar.xz 20774880 BLAKE2B d1bdbd9c8487c091665c197974ce4bdf520b7a67ed6997a81b87e6a0af9514a091458244f583acec5ae580ac2ee5e908f67f483b8e5263cd18ced794cb235da6 SHA512 d326408f12a03d9a61a9de56584c2af12f81c2e50d2d7e835d51565df8314df01575724afa1e43bd0db45cfc9916b41519b67dfce03232aa4978704492a6994a
DIST binutils-9999-patches-4.tar.xz 17480 BLAKE2B 8e85fb15c740e19bb27482bea134342970fe1af8c39639a16a087c1e3b7386e469d9db6b0d1c0e1e62d550c145814e3013ef65708e91313b648a94ac5c4cafed SHA512 6d09513da6995b83c24afd0799f918281198c412cb65f04e07002fed1b036fb1c6cb075be499a2415e8b286f288b80c02fae1b1dfcd288fe216254d31206b6e3
diff --git a/sys-devel/binutils/binutils-2.32-r1.ebuild b/sys-devel/binutils/binutils-2.32-r1.ebuild
new file mode 100644
index 00000000000..4b6a785eef7
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.32-r1.ebuild
@@ -0,0 +1,438 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils libtool flag-o-matic gnuconfig multilib versionator
+
+DESCRIPTION="Tools necessary to build programs"
+HOMEPAGE="https://sourceware.org/binutils/"
+LICENSE="GPL-3+"
+# USE="+cxx" is a transitional flag until llvm migrates to new flags:
+# bug #677888
+IUSE="+cxx default-gold doc +gold multitarget +nls +plugins static-libs test"
+REQUIRED_USE="cxx? ( gold plugins ) default-gold? ( gold )"
+
+# Variables that can be set here:
+# 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
+# Default: dilfridge :)
+
+PATCH_VER=2
+PATCH_DEV=dilfridge
+
+case ${PV} in
+ 9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ SLOT=${PV}
+ ;;
+ *.9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ EGIT_BRANCH=$(get_version_component_range 1-2)
+ EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
+ SLOT=$(get_version_component_range 1-2)
+ ;;
+ *)
+ SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
+ SLOT=$(get_version_component_range 1-2)
+ #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+ ;;
+esac
+
+#
+# The Gentoo patchset
+#
+PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
+PATCH_DEV=${PATCH_DEV:-slyfox}
+
+[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
+ https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
+
+#
+# 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}
+ doc? ( sys-apps/texinfo )
+ test? ( dev-util/dejagnu )
+ nls? ( sys-devel/gettext )
+ sys-devel/flex
+ virtual/yacc
+"
+
+MY_BUILDDIR=${WORKDIR}/build
+
+src_unpack() {
+ case ${PV} in
+ *9999)
+ git-r3_src_unpack
+ ;;
+ *)
+ ;;
+ esac
+ default
+ mkdir -p "${MY_BUILDDIR}"
+}
+
+src_prepare() {
+ if [[ ! -z ${PATCH_VER} ]] ; then
+ # Use upstream patch to enable development mode
+ rm -v "${WORKDIR}/patch"/0000-Gentoo-Git-is-development.patch || die
+
+ einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
+ eapply "${WORKDIR}/patch"/*.patch
+ fi
+
+ # This check should probably go somewhere else, like pkg_pretend.
+ if [[ ${CTARGET} == *-uclibc* ]] ; then
+ if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
+ die "sorry, but this binutils doesn't yet support uClibc :("
+ fi
+ fi
+
+ # Make sure our explicit libdir paths don't get clobbered. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ 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() {
+ # 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 #42033
+ strip-linguas -u */po
+
+ # Keep things sane
+ strip-flags
+
+ local x
+ echo
+ for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
+ einfo "$(printf '%10s' ${x}:) ${!x}"
+ done
+ echo
+
+ cd "${MY_BUILDDIR}"
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && 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. #497268
+ --enable-install-libiberty
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #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. #666100
+ --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
+ )
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${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}"
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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}"
+
+ # bug 637066
+ filter-flags -Wall -Wreturn-type
+
+ # enable verbose test run and result logging
+ emake -k check RUNTESTFLAGS='-a -v' VERBOSE=1
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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/}" || die
+ if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
+ 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}"
+ 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-04-19 12:20 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2019-04-19 12:20 UTC (permalink / raw
To: gentoo-commits
commit: 8b005bd6a22228d2e675378cdaad2d01ff38ebab
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Apr 19 12:19:20 2019 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Apr 19 12:20:39 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8b005bd6
sys-devel/binutils: Re-keyword 2.32-r1
Package-Manager: Portage-2.3.63, Repoman-2.3.12
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.32-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.32-r1.ebuild b/sys-devel/binutils/binutils-2.32-r1.ebuild
index 4b6a785eef7..ce1d9442f7e 100644
--- a/sys-devel/binutils/binutils-2.32-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r1.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-04-20 18:27 Mikle Kolyada
0 siblings, 0 replies; 477+ messages in thread
From: Mikle Kolyada @ 2019-04-20 18:27 UTC (permalink / raw
To: gentoo-commits
commit: 9cf4f304687b3672182f0cdcf5905ceff520838b
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 20 18:26:30 2019 +0000
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sat Apr 20 18:27:11 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9cf4f304
sys-devel/binutils: alpha stable wrt bug #681682
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>
Package-Manager: Portage-2.3.62, Repoman-2.3.11
RepoMan-Options: --include-arches="alpha"
sys-devel/binutils/binutils-2.31.1-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r4.ebuild b/sys-devel/binutils/binutils-2.31.1-r4.ebuild
index 2f9f4183e3a..be07db1d952 100644
--- a/sys-devel/binutils/binutils-2.31.1-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r4.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 m68k ~mips ~ppc ~ppc64 s390 sh ~sparc x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="alpha amd64 arm arm64 ~hppa ~ia64 m68k ~mips ~ppc ~ppc64 s390 sh ~sparc x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-04-24 21:02 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2019-04-24 21:02 UTC (permalink / raw
To: gentoo-commits
commit: 90e4a06a30c405de6ae2262ab95b53211b46fa3a
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Wed Apr 24 21:00:14 2019 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Wed Apr 24 21:01:56 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=90e4a06a
sys-devel/binutils: Remove old
Package-Manager: Portage-2.3.64, Repoman-2.3.12
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 -
sys-devel/binutils/binutils-2.32.ebuild | 438 --------------------------------
2 files changed, 439 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 4149643f0b6..21ace0ab8b9 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -13,7 +13,6 @@ DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f59
DIST binutils-2.31.1-patches-5.tar.xz 65896 BLAKE2B 7fb2c4c71336a77f3fef57a0430c511ef7326f8196d8f3a57a6d56aed464953172eeb0755f020387739cf27f709d0bc3de9c3c8b972a94f1480639465158e180 SHA512 c254f22b8ca662cf49cd5fc076d3e9b82d7f421420408c960c54310fc49462600325e7bc50f863cab7c8c49caebac3ac353dc24ab5947e8f01b98c11f43f57d2
DIST binutils-2.31.1-patches-6.tar.xz 76196 BLAKE2B e3c8de07dad62bb3093846389bc1fae0921dd6e63ee2458a85051d298cd1dd52487f83affa33d899e4ddd34b6fd3e28c79a525854c0432d576f83f855d843588 SHA512 6ddfe7b0dc9f340fb1dde3bbc426d087241738b15a5f16a336569b45b2c8ac4077e81e19168c5b165bd4abbaed419e2f290291ef7438a0ecde1f8a6a72217d4c
DIST binutils-2.31.1.tar.xz 20467996 BLAKE2B 6b914df1fbb7cf54f2159f71b2c2b09f3f6a569b7a3cb4cf9790d0a3733a7548bc0ea32334a178ed3b56e8b97656ae99c7abaf212601beeaeae9a0884c0f6051 SHA512 0fca326feb1d5f5fe505a827b20237fe3ec9c13eaf7ec7e35847fd71184f605ba1cefe1314b1b8f8a29c0aa9d88162849ee1c1a3e70c2f7407d88339b17edb30
-DIST binutils-2.32-patches-1.tar.xz 93252 BLAKE2B 80d229be60c3377fe52ff3e74ee911b5dcfb9456d3f42a57662fbda3184ac1c63e698e592f804ac05c459527d0cd4bae7d8c9ef8caef02fdf4f17aa783f4ff81 SHA512 69999f60d89589dcf9e3cb18e50f153ab4ce05bdf3f3758fa322b5c4cb468aeda46c416da540995ddff1ea5e96354c264fa5ff0156c53685816d35117eb481e0
DIST binutils-2.32-patches-2.tar.xz 145672 BLAKE2B 8218e621f99cb4bcd1638c3011449b94480d207eaeb79cf75c0072e0f1a86bfd1603fc4515bc40d3ac1921a18b9a211b20568f59b11b13eb44e6cff1329c5af9 SHA512 55c25a603f6175af3ade6848e5c1faba06a147d72e9a4f53d44502d97db76499485a67b278a654d18884714a7bf7b360c77c9e42dba3cdc188f805bfe461f09f
DIST binutils-2.32.tar.xz 20774880 BLAKE2B d1bdbd9c8487c091665c197974ce4bdf520b7a67ed6997a81b87e6a0af9514a091458244f583acec5ae580ac2ee5e908f67f483b8e5263cd18ced794cb235da6 SHA512 d326408f12a03d9a61a9de56584c2af12f81c2e50d2d7e835d51565df8314df01575724afa1e43bd0db45cfc9916b41519b67dfce03232aa4978704492a6994a
DIST binutils-9999-patches-4.tar.xz 17480 BLAKE2B 8e85fb15c740e19bb27482bea134342970fe1af8c39639a16a087c1e3b7386e469d9db6b0d1c0e1e62d550c145814e3013ef65708e91313b648a94ac5c4cafed SHA512 6d09513da6995b83c24afd0799f918281198c412cb65f04e07002fed1b036fb1c6cb075be499a2415e8b286f288b80c02fae1b1dfcd288fe216254d31206b6e3
diff --git a/sys-devel/binutils/binutils-2.32.ebuild b/sys-devel/binutils/binutils-2.32.ebuild
deleted file mode 100644
index 312d249e85f..00000000000
--- a/sys-devel/binutils/binutils-2.32.ebuild
+++ /dev/null
@@ -1,438 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eutils libtool flag-o-matic gnuconfig multilib versionator
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="https://sourceware.org/binutils/"
-LICENSE="GPL-3+"
-# USE="+cxx" is a transitional flag until llvm migrates to new flags:
-# bug #677888
-IUSE="+cxx default-gold doc +gold multitarget +nls +plugins static-libs test"
-REQUIRED_USE="cxx? ( gold plugins ) default-gold? ( gold )"
-
-# Variables that can be set here:
-# 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
-# Default: dilfridge :)
-
-PATCH_VER=1
-PATCH_DEV=slyfox
-
-case ${PV} in
- 9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- SLOT=${PV}
- ;;
- *.9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- EGIT_BRANCH=$(get_version_component_range 1-2)
- EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
- SLOT=$(get_version_component_range 1-2)
- ;;
- *)
- SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
- SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
- ;;
-esac
-
-#
-# The Gentoo patchset
-#
-PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
-PATCH_DEV=${PATCH_DEV:-slyfox}
-
-[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
- https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
-
-#
-# 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}
- doc? ( sys-apps/texinfo )
- test? ( dev-util/dejagnu )
- nls? ( sys-devel/gettext )
- sys-devel/flex
- virtual/yacc
-"
-
-MY_BUILDDIR=${WORKDIR}/build
-
-src_unpack() {
- case ${PV} in
- *9999)
- git-r3_src_unpack
- ;;
- *)
- ;;
- esac
- default
- mkdir -p "${MY_BUILDDIR}"
-}
-
-src_prepare() {
- if [[ ! -z ${PATCH_VER} ]] ; then
- # Use upstream patch to enable development mode
- rm -v "${WORKDIR}/patch"/0000-Gentoo-Git-is-development.patch || die
-
- einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
- eapply "${WORKDIR}/patch"/*.patch
- fi
-
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
- # Make sure our explicit libdir paths don't get clobbered. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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() {
- # 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 #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}"
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #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. #666100
- --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
- )
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
-
- # bug 637066
- filter-flags -Wall -Wreturn-type
-
- # enable verbose test run and result logging
- emake -k check RUNTESTFLAGS='-a -v' VERBOSE=1
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- # see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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/}" || die
- if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
- 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}"
- 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-04-25 9:09 Anthony G. Basile
0 siblings, 0 replies; 477+ messages in thread
From: Anthony G. Basile @ 2019-04-25 9:09 UTC (permalink / raw
To: gentoo-commits
commit: 9669b82c0e25faa3484471f6b6928f250dfb1a52
Author: Anthony G. Basile <blueness <AT> gentoo <DOT> org>
AuthorDate: Thu Apr 25 09:09:40 2019 +0000
Commit: Anthony G. Basile <blueness <AT> gentoo <DOT> org>
CommitDate: Thu Apr 25 09:09:40 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9669b82c
sys-devel/binutils: 2.31.1-r4 stable on ppc/ppc64, bug #681682
Signed-off-by: Anthony G. Basile <blueness <AT> gentoo.org>
Package-Manager: Portage-2.3.62, Repoman-2.3.11
sys-devel/binutils/binutils-2.31.1-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r4.ebuild b/sys-devel/binutils/binutils-2.31.1-r4.ebuild
index be07db1d952..556b540d8b3 100644
--- a/sys-devel/binutils/binutils-2.31.1-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r4.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="alpha amd64 arm arm64 ~hppa ~ia64 m68k ~mips ~ppc ~ppc64 s390 sh ~sparc x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="alpha amd64 arm arm64 ~hppa ~ia64 m68k ~mips ppc ppc64 s390 sh ~sparc x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-04-25 18:44 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2019-04-25 18:44 UTC (permalink / raw
To: gentoo-commits
commit: 2b1e55d1a19d544550e4566faaeb40ec2657315b
Author: Andreas K. Huettel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Thu Apr 25 18:40:31 2019 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Thu Apr 25 18:42:31 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2b1e55d1
sys-devel/binutils: Patchlevel bump
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
Closes: https://bugs.gentoo.org/683790
Package-Manager: Portage-2.3.64, Repoman-2.3.12
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.31.1-r6.ebuild | 437 +++++++++++++++++++++++++++
2 files changed, 438 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 21ace0ab8b9..90df1f04f08 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -12,6 +12,7 @@ DIST binutils-2.30-patches-5.tar.xz 590864 BLAKE2B 71de4d08f92ab1898ad576a21763f
DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f5916fb82ce95ceab424fd8dc19f6daa7ac32a149f222ccdcc603354165cc206fde070eaa44fe2cc5e57486efc7868 SHA512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839
DIST binutils-2.31.1-patches-5.tar.xz 65896 BLAKE2B 7fb2c4c71336a77f3fef57a0430c511ef7326f8196d8f3a57a6d56aed464953172eeb0755f020387739cf27f709d0bc3de9c3c8b972a94f1480639465158e180 SHA512 c254f22b8ca662cf49cd5fc076d3e9b82d7f421420408c960c54310fc49462600325e7bc50f863cab7c8c49caebac3ac353dc24ab5947e8f01b98c11f43f57d2
DIST binutils-2.31.1-patches-6.tar.xz 76196 BLAKE2B e3c8de07dad62bb3093846389bc1fae0921dd6e63ee2458a85051d298cd1dd52487f83affa33d899e4ddd34b6fd3e28c79a525854c0432d576f83f855d843588 SHA512 6ddfe7b0dc9f340fb1dde3bbc426d087241738b15a5f16a336569b45b2c8ac4077e81e19168c5b165bd4abbaed419e2f290291ef7438a0ecde1f8a6a72217d4c
+DIST binutils-2.31.1-patches-7.tar.xz 76828 BLAKE2B 354e7c3aa76c0cfe8fc6bb419a5b19294c0be09ebdff2fc4533dd16116fcd4f4a1b4c8db02233dabe33ca68347e0a30e542456988a4ead407edb47ed031e018c SHA512 c84ff9cd9f5b1e313e93d0f25bb4244950a73e0d97ec4dacb8763382219a08a01b16a8e93173032232ea4239098b29448331ed461f792e663e1117eb0811f85b
DIST binutils-2.31.1.tar.xz 20467996 BLAKE2B 6b914df1fbb7cf54f2159f71b2c2b09f3f6a569b7a3cb4cf9790d0a3733a7548bc0ea32334a178ed3b56e8b97656ae99c7abaf212601beeaeae9a0884c0f6051 SHA512 0fca326feb1d5f5fe505a827b20237fe3ec9c13eaf7ec7e35847fd71184f605ba1cefe1314b1b8f8a29c0aa9d88162849ee1c1a3e70c2f7407d88339b17edb30
DIST binutils-2.32-patches-2.tar.xz 145672 BLAKE2B 8218e621f99cb4bcd1638c3011449b94480d207eaeb79cf75c0072e0f1a86bfd1603fc4515bc40d3ac1921a18b9a211b20568f59b11b13eb44e6cff1329c5af9 SHA512 55c25a603f6175af3ade6848e5c1faba06a147d72e9a4f53d44502d97db76499485a67b278a654d18884714a7bf7b360c77c9e42dba3cdc188f805bfe461f09f
DIST binutils-2.32.tar.xz 20774880 BLAKE2B d1bdbd9c8487c091665c197974ce4bdf520b7a67ed6997a81b87e6a0af9514a091458244f583acec5ae580ac2ee5e908f67f483b8e5263cd18ced794cb235da6 SHA512 d326408f12a03d9a61a9de56584c2af12f81c2e50d2d7e835d51565df8314df01575724afa1e43bd0db45cfc9916b41519b67dfce03232aa4978704492a6994a
diff --git a/sys-devel/binutils/binutils-2.31.1-r6.ebuild b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
new file mode 100644
index 00000000000..98700705d01
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
@@ -0,0 +1,437 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils libtool flag-o-matic gnuconfig multilib versionator
+
+DESCRIPTION="Tools necessary to build programs"
+HOMEPAGE="https://sourceware.org/binutils/"
+LICENSE="GPL-3+"
+# USE="+cxx" is a transitional flag until llvm migrates to new flags:
+# bug #677888
+IUSE="+cxx default-gold doc +gold multitarget +nls +plugins static-libs test"
+REQUIRED_USE="cxx? ( gold plugins ) default-gold? ( gold )"
+
+# Variables that can be set here:
+# 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
+# Default: dilfridge :)
+
+PATCH_VER=7
+PATCH_DEV=dilfridge
+
+case ${PV} in
+ 9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ SLOT=${PV}
+ ;;
+ *.9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ EGIT_BRANCH=$(get_version_component_range 1-2)
+ EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
+ SLOT=$(get_version_component_range 1-2)
+ ;;
+ *)
+ SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
+ SLOT=$(get_version_component_range 1-2)
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+ ;;
+esac
+
+#
+# The Gentoo patchset
+#
+PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
+PATCH_DEV=${PATCH_DEV:-slyfox}
+
+[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
+ https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
+
+# Disable gold testsuite since it always fails.
+PATCHES=( "${FILESDIR}/${PN}-2.29.1-nogoldtest.patch" )
+
+#
+# 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}
+ doc? ( sys-apps/texinfo )
+ test? ( dev-util/dejagnu )
+ nls? ( sys-devel/gettext )
+ sys-devel/flex
+ virtual/yacc
+"
+
+MY_BUILDDIR=${WORKDIR}/build
+
+src_unpack() {
+ case ${PV} in
+ *9999)
+ git-r3_src_unpack
+ ;;
+ *)
+ ;;
+ esac
+ default
+ mkdir -p "${MY_BUILDDIR}"
+}
+
+src_prepare() {
+ if [[ ! -z ${PATCH_VER} ]] ; then
+ einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
+ eapply "${WORKDIR}/patch"/*.patch
+ fi
+
+ # This check should probably go somewhere else, like pkg_pretend.
+ if [[ ${CTARGET} == *-uclibc* ]] ; then
+ if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
+ die "sorry, but this binutils doesn't yet support uClibc :("
+ fi
+ fi
+
+ # Make sure our explicit libdir paths don't get clobbered. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ 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() {
+ # 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 #42033
+ strip-linguas -u */po
+
+ # Keep things sane
+ strip-flags
+
+ local x
+ echo
+ for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
+ einfo "$(printf '%10s' ${x}:) ${!x}"
+ done
+ echo
+
+ cd "${MY_BUILDDIR}"
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && 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. #497268
+ --enable-install-libiberty
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #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. #666100
+ --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
+ )
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${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}"
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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}"
+
+ # bug 637066
+ filter-flags -Wall -Wreturn-type
+
+ emake -k check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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/}" || die
+ if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
+ 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}"
+ 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-04-26 12:45 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2019-04-26 12:45 UTC (permalink / raw
To: gentoo-commits
commit: 488ce71e8068f3d31d779435912ab06c8fe0e2e0
Author: Andreas K. Huettel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Apr 26 12:44:01 2019 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Apr 26 12:45:38 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=488ce71e
sys-devel/binutils: Remove old
Package-Manager: Portage-2.3.64, Repoman-2.3.12
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 -
sys-devel/binutils/binutils-2.31.1-r5.ebuild | 437 ---------------------------
2 files changed, 438 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 90df1f04f08..a72f7551d4d 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -11,7 +11,6 @@ DIST binutils-2.29.1.tar.bz2 29123355 BLAKE2B 83de518a27bae0f13c57b1979493dd7f7c
DIST binutils-2.30-patches-5.tar.xz 590864 BLAKE2B 71de4d08f92ab1898ad576a21763f955067cbbed543250888e0c5d51f4ef77d0d829049e9a835691cf2de03965fbcc9bcfa092eb304c03f9b885e7a3dadab286 SHA512 029b3be6ae9b8620f8580a35701bd4517b4e0232ff3cf9983b3808475c7443cbf500b6cace2c052df0bd1e47202838f4d2453238db28709a947117071d9ae804
DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f5916fb82ce95ceab424fd8dc19f6daa7ac32a149f222ccdcc603354165cc206fde070eaa44fe2cc5e57486efc7868 SHA512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839
DIST binutils-2.31.1-patches-5.tar.xz 65896 BLAKE2B 7fb2c4c71336a77f3fef57a0430c511ef7326f8196d8f3a57a6d56aed464953172eeb0755f020387739cf27f709d0bc3de9c3c8b972a94f1480639465158e180 SHA512 c254f22b8ca662cf49cd5fc076d3e9b82d7f421420408c960c54310fc49462600325e7bc50f863cab7c8c49caebac3ac353dc24ab5947e8f01b98c11f43f57d2
-DIST binutils-2.31.1-patches-6.tar.xz 76196 BLAKE2B e3c8de07dad62bb3093846389bc1fae0921dd6e63ee2458a85051d298cd1dd52487f83affa33d899e4ddd34b6fd3e28c79a525854c0432d576f83f855d843588 SHA512 6ddfe7b0dc9f340fb1dde3bbc426d087241738b15a5f16a336569b45b2c8ac4077e81e19168c5b165bd4abbaed419e2f290291ef7438a0ecde1f8a6a72217d4c
DIST binutils-2.31.1-patches-7.tar.xz 76828 BLAKE2B 354e7c3aa76c0cfe8fc6bb419a5b19294c0be09ebdff2fc4533dd16116fcd4f4a1b4c8db02233dabe33ca68347e0a30e542456988a4ead407edb47ed031e018c SHA512 c84ff9cd9f5b1e313e93d0f25bb4244950a73e0d97ec4dacb8763382219a08a01b16a8e93173032232ea4239098b29448331ed461f792e663e1117eb0811f85b
DIST binutils-2.31.1.tar.xz 20467996 BLAKE2B 6b914df1fbb7cf54f2159f71b2c2b09f3f6a569b7a3cb4cf9790d0a3733a7548bc0ea32334a178ed3b56e8b97656ae99c7abaf212601beeaeae9a0884c0f6051 SHA512 0fca326feb1d5f5fe505a827b20237fe3ec9c13eaf7ec7e35847fd71184f605ba1cefe1314b1b8f8a29c0aa9d88162849ee1c1a3e70c2f7407d88339b17edb30
DIST binutils-2.32-patches-2.tar.xz 145672 BLAKE2B 8218e621f99cb4bcd1638c3011449b94480d207eaeb79cf75c0072e0f1a86bfd1603fc4515bc40d3ac1921a18b9a211b20568f59b11b13eb44e6cff1329c5af9 SHA512 55c25a603f6175af3ade6848e5c1faba06a147d72e9a4f53d44502d97db76499485a67b278a654d18884714a7bf7b360c77c9e42dba3cdc188f805bfe461f09f
diff --git a/sys-devel/binutils/binutils-2.31.1-r5.ebuild b/sys-devel/binutils/binutils-2.31.1-r5.ebuild
deleted file mode 100644
index 27d9212fc0c..00000000000
--- a/sys-devel/binutils/binutils-2.31.1-r5.ebuild
+++ /dev/null
@@ -1,437 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eutils libtool flag-o-matic gnuconfig multilib versionator
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="https://sourceware.org/binutils/"
-LICENSE="GPL-3+"
-# USE="+cxx" is a transitional flag until llvm migrates to new flags:
-# bug #677888
-IUSE="+cxx default-gold doc +gold multitarget +nls +plugins static-libs test"
-REQUIRED_USE="cxx? ( gold plugins ) default-gold? ( gold )"
-
-# Variables that can be set here:
-# 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
-# Default: dilfridge :)
-
-PATCH_VER=6
-PATCH_DEV=dilfridge
-
-case ${PV} in
- 9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- SLOT=${PV}
- ;;
- *.9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- EGIT_BRANCH=$(get_version_component_range 1-2)
- EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
- SLOT=$(get_version_component_range 1-2)
- ;;
- *)
- SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
- SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
- ;;
-esac
-
-#
-# The Gentoo patchset
-#
-PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
-PATCH_DEV=${PATCH_DEV:-slyfox}
-
-[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
- https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
-
-# Disable gold testsuite since it always fails.
-PATCHES=( "${FILESDIR}/${PN}-2.29.1-nogoldtest.patch" )
-
-#
-# 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}
- doc? ( sys-apps/texinfo )
- test? ( dev-util/dejagnu )
- nls? ( sys-devel/gettext )
- sys-devel/flex
- virtual/yacc
-"
-
-MY_BUILDDIR=${WORKDIR}/build
-
-src_unpack() {
- case ${PV} in
- *9999)
- git-r3_src_unpack
- ;;
- *)
- ;;
- esac
- default
- mkdir -p "${MY_BUILDDIR}"
-}
-
-src_prepare() {
- if [[ ! -z ${PATCH_VER} ]] ; then
- einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
- eapply "${WORKDIR}/patch"/*.patch
- fi
-
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
- # Make sure our explicit libdir paths don't get clobbered. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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() {
- # 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 #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}"
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #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. #666100
- --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
- )
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
-
- # bug 637066
- filter-flags -Wall -Wreturn-type
-
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- # see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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/}" || die
- if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
- 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}"
- 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-04-27 20:50 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2019-04-27 20:50 UTC (permalink / raw
To: gentoo-commits
commit: 2c86aa4bbce37daf98d00811cc0e9acfd4279bcc
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 27 20:49:52 2019 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Apr 27 20:50:39 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2c86aa4b
sys-devel/binutils: stable 2.31.1-r4 for ia64, bug #681682
Package-Manager: Portage-2.3.65, Repoman-2.3.12
RepoMan-Options: --include-arches="ia64"
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-2.31.1-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r4.ebuild b/sys-devel/binutils/binutils-2.31.1-r4.ebuild
index 556b540d8b3..3c1224c4f4b 100644
--- a/sys-devel/binutils/binutils-2.31.1-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r4.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="alpha amd64 arm arm64 ~hppa ~ia64 m68k ~mips ppc ppc64 s390 sh ~sparc x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="alpha amd64 arm arm64 ~hppa ia64 m68k ~mips ppc ppc64 s390 sh ~sparc x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-04-29 10:10 Jeroen Roovers
0 siblings, 0 replies; 477+ messages in thread
From: Jeroen Roovers @ 2019-04-29 10:10 UTC (permalink / raw
To: gentoo-commits
commit: d0b1e17ebbd7761b9fb095aa0cf02f44c98993d9
Author: Jeroen Roovers <jer <AT> gentoo <DOT> org>
AuthorDate: Mon Apr 29 10:08:37 2019 +0000
Commit: Jeroen Roovers <jer <AT> gentoo <DOT> org>
CommitDate: Mon Apr 29 10:10:00 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d0b1e17e
sys-devel/binutils: Stable for HPPA too.
Package-Manager: Portage-2.3.65, Repoman-2.3.12
RepoMan-Options: --ignore-arches
Signed-off-by: Jeroen Roovers <jer <AT> gentoo.org>
sys-devel/binutils/binutils-2.31.1-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r4.ebuild b/sys-devel/binutils/binutils-2.31.1-r4.ebuild
index 3c1224c4f4b..7f24fd4fd6a 100644
--- a/sys-devel/binutils/binutils-2.31.1-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r4.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="alpha amd64 arm arm64 ~hppa ia64 m68k ~mips ppc ppc64 s390 sh ~sparc x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh ~sparc x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-05-04 17:03 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2019-05-04 17:03 UTC (permalink / raw
To: gentoo-commits
commit: b21294f02d041f0fbeb4f8892360f8371235c1d2
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat May 4 16:59:08 2019 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat May 4 17:03:02 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b21294f0
sys-devel/binutils: keyword ~riscv
Package-Manager: Portage-2.3.66, Repoman-2.3.12
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.32-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.32-r1.ebuild b/sys-devel/binutils/binutils-2.32-r1.ebuild
index ce1d9442f7e..8d27d27cf2b 100644
--- a/sys-devel/binutils/binutils-2.32-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r1.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-05-08 6:25 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2019-05-08 6:25 UTC (permalink / raw
To: gentoo-commits
commit: fd2f358ec48f32f65e3d298c5e7a2dcca1b12d97
Author: Rolf Eike Beer <eike <AT> sf-mail <DOT> de>
AuthorDate: Wed May 8 05:58:34 2019 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Wed May 8 06:25:16 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fd2f358e
sys-devel/binutils: stable 2.31.1-r4 for sparc, bug #681682
Signed-off-by: Rolf Eike Beer <eike <AT> sf-mail.de>
Package-Manager: Portage-2.3.62, Repoman-2.3.11
RepoMan-Options: --include-arches="sparc"
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-2.31.1-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r4.ebuild b/sys-devel/binutils/binutils-2.31.1-r4.ebuild
index 7f24fd4fd6a..1d7e1c1cbf9 100644
--- a/sys-devel/binutils/binutils-2.31.1-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r4.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh ~sparc x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-05-10 2:24 Aaron Bauman
0 siblings, 0 replies; 477+ messages in thread
From: Aaron Bauman @ 2019-05-10 2:24 UTC (permalink / raw
To: gentoo-commits
commit: f23cf9ce6681d66ab50247c54f1b6ca97b6e47ca
Author: Aaron Bauman <bman <AT> gentoo <DOT> org>
AuthorDate: Fri May 10 02:23:11 2019 +0000
Commit: Aaron Bauman <bman <AT> gentoo <DOT> org>
CommitDate: Fri May 10 02:24:02 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f23cf9ce
sys-devel/binutils: arm64 stable (bug #685416)
Signed-off-by: Aaron Bauman <bman <AT> gentoo.org>
Package-Manager: Portage-2.3.66, Repoman-2.3.12
RepoMan-Options: --include-arches="arm64"
sys-devel/binutils/binutils-2.31.1-r6.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r6.ebuild b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
index 98700705d01..72eccaf050a 100644
--- a/sys-devel/binutils/binutils-2.31.1-r6.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="~alpha ~amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-05-10 17:31 Mikle Kolyada
0 siblings, 0 replies; 477+ messages in thread
From: Mikle Kolyada @ 2019-05-10 17:31 UTC (permalink / raw
To: gentoo-commits
commit: a0564c2a42bd780fbd538d03685f96d280b8d35a
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Fri May 10 17:31:09 2019 +0000
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Fri May 10 17:31:09 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a0564c2a
sys-devel/binutils: amd64 stable wrt bug #685416
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>
Package-Manager: Portage-2.3.62, Repoman-2.3.11
RepoMan-Options: --include-arches="amd64"
sys-devel/binutils/binutils-2.31.1-r6.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r6.ebuild b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
index 72eccaf050a..f10161b4fec 100644
--- a/sys-devel/binutils/binutils-2.31.1-r6.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha ~amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-05-11 12:28 Mikle Kolyada
0 siblings, 0 replies; 477+ messages in thread
From: Mikle Kolyada @ 2019-05-11 12:28 UTC (permalink / raw
To: gentoo-commits
commit: 56b696476689e4723ad9a0aefd634c8a2bd87842
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sat May 11 12:25:52 2019 +0000
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sat May 11 12:27:53 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=56b69647
sys-devel/binutils: arm stable wrt bug #685416
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>
Package-Manager: Portage-2.3.62, Repoman-2.3.11
RepoMan-Options: --include-arches="arm"
sys-devel/binutils/binutils-2.31.1-r6.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r6.ebuild b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
index f10161b4fec..c1d8e5b3875 100644
--- a/sys-devel/binutils/binutils-2.31.1-r6.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-05-11 12:28 Mikle Kolyada
0 siblings, 0 replies; 477+ messages in thread
From: Mikle Kolyada @ 2019-05-11 12:28 UTC (permalink / raw
To: gentoo-commits
commit: 2881edfc8ede3cf5f370d1246f20c56e4c96c862
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sat May 11 12:26:50 2019 +0000
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sat May 11 12:27:57 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2881edfc
sys-devel/binutils: m68k stable wrt bug #685416
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>
Package-Manager: Portage-2.3.62, Repoman-2.3.11
RepoMan-Options: --include-arches="m68k"
sys-devel/binutils/binutils-2.31.1-r6.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r6.ebuild b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
index 309878405d1..23c514aaca5 100644
--- a/sys-devel/binutils/binutils-2.31.1-r6.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 s390 sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 m68k ~mips ~ppc ~ppc64 s390 sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-05-11 12:28 Mikle Kolyada
0 siblings, 0 replies; 477+ messages in thread
From: Mikle Kolyada @ 2019-05-11 12:28 UTC (permalink / raw
To: gentoo-commits
commit: 5d6e01d84fb7f004465b5c3ecc00aa0c942474f7
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sat May 11 12:26:12 2019 +0000
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sat May 11 12:27:55 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5d6e01d8
sys-devel/binutils: s390 stable wrt bug #685416
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>
Package-Manager: Portage-2.3.62, Repoman-2.3.11
RepoMan-Options: --include-arches="s390"
sys-devel/binutils/binutils-2.31.1-r6.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r6.ebuild b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
index c1d8e5b3875..a0fe1e05e0d 100644
--- a/sys-devel/binutils/binutils-2.31.1-r6.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-05-11 12:28 Mikle Kolyada
0 siblings, 0 replies; 477+ messages in thread
From: Mikle Kolyada @ 2019-05-11 12:28 UTC (permalink / raw
To: gentoo-commits
commit: 044639f535a50d44dce333c6543425021bfac2f9
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sat May 11 12:26:30 2019 +0000
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sat May 11 12:27:56 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=044639f5
sys-devel/binutils: sh stable wrt bug #685416
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>
Package-Manager: Portage-2.3.62, Repoman-2.3.11
RepoMan-Options: --include-arches="sh"
sys-devel/binutils/binutils-2.31.1-r6.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r6.ebuild b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
index a0fe1e05e0d..309878405d1 100644
--- a/sys-devel/binutils/binutils-2.31.1-r6.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 s390 sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-05-11 12:28 Mikle Kolyada
0 siblings, 0 replies; 477+ messages in thread
From: Mikle Kolyada @ 2019-05-11 12:28 UTC (permalink / raw
To: gentoo-commits
commit: a6a1bf9289fc9c9400a630d8d43420c1a9bf2cd1
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sat May 11 12:27:10 2019 +0000
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sat May 11 12:27:59 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a6a1bf92
sys-devel/binutils: ppc64 stable wrt bug #685416
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>
Package-Manager: Portage-2.3.62, Repoman-2.3.11
RepoMan-Options: --include-arches="ppc64"
sys-devel/binutils/binutils-2.31.1-r6.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r6.ebuild b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
index 23c514aaca5..720b642b36d 100644
--- a/sys-devel/binutils/binutils-2.31.1-r6.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 m68k ~mips ~ppc ~ppc64 s390 sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 m68k ~mips ~ppc ppc64 s390 sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-05-11 12:28 Mikle Kolyada
0 siblings, 0 replies; 477+ messages in thread
From: Mikle Kolyada @ 2019-05-11 12:28 UTC (permalink / raw
To: gentoo-commits
commit: 4076e2a54977e751f3453f517b7727076594e07c
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sat May 11 12:27:28 2019 +0000
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sat May 11 12:28:00 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4076e2a5
sys-devel/binutils: ppc stable wrt bug #685416
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>
Package-Manager: Portage-2.3.62, Repoman-2.3.11
RepoMan-Options: --include-arches="ppc"
sys-devel/binutils/binutils-2.31.1-r6.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r6.ebuild b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
index 720b642b36d..9d058f56a35 100644
--- a/sys-devel/binutils/binutils-2.31.1-r6.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 m68k ~mips ~ppc ppc64 s390 sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 m68k ~mips ppc ppc64 s390 sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-05-11 12:29 Mikle Kolyada
0 siblings, 0 replies; 477+ messages in thread
From: Mikle Kolyada @ 2019-05-11 12:29 UTC (permalink / raw
To: gentoo-commits
commit: 7742015d661ac75898e46a2cd6bb35b2e565e1f2
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sat May 11 12:29:03 2019 +0000
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sat May 11 12:29:03 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7742015d
sys-devel/binutils: x86 stable wrt bug #685416
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>
Package-Manager: Portage-2.3.62, Repoman-2.3.11
RepoMan-Options: --include-arches="x86"
sys-devel/binutils/binutils-2.31.1-r6.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r6.ebuild b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
index 9d058f56a35..c98065e137a 100644
--- a/sys-devel/binutils/binutils-2.31.1-r6.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 m68k ~mips ppc ppc64 s390 sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 m68k ~mips ppc ppc64 s390 sh ~sparc x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-05-14 8:08 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2019-05-14 8:08 UTC (permalink / raw
To: gentoo-commits
commit: 2d3b7528666641ab2b87f3d4c65eb95dfdfac06f
Author: Rolf Eike Beer <eike <AT> sf-mail <DOT> de>
AuthorDate: Mon May 13 14:32:33 2019 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Tue May 14 08:07:50 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2d3b7528
sys-devel/binutils: stable 2.31.1-r6 for sparc, bug #685416
Signed-off-by: Rolf Eike Beer <eike <AT> sf-mail.de>
Package-Manager: Portage-2.3.62, Repoman-2.3.11
RepoMan-Options: --include-arches="sparc"
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-2.31.1-r6.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r6.ebuild b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
index c98065e137a..20031cc0fba 100644
--- a/sys-devel/binutils/binutils-2.31.1-r6.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 m68k ~mips ppc ppc64 s390 sh ~sparc x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-05-16 22:41 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2019-05-16 22:41 UTC (permalink / raw
To: gentoo-commits
commit: 48f035ccb412623089cb32fa503f783a9c232a2b
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Thu May 16 22:41:37 2019 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Thu May 16 22:41:52 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=48f035cc
sys-devel/binutils: drop USE="cxx" for USE="gold plugins"
Change live ebuild only to pick it for next binutils release.
Reported-by: Dirkjan Ochtman
Bug: https://bugs.gentoo.org/663776
Package-Manager: Portage-2.3.66, Repoman-2.3.12
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-9999.ebuild | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 80a41f81b29..ac40bd24d64 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -8,10 +8,8 @@ inherit eutils libtool flag-o-matic gnuconfig multilib versionator
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
LICENSE="GPL-3+"
-# USE="+cxx" is a transitional flag until llvm migrates to new flags:
-# bug #677888
-IUSE="+cxx default-gold doc +gold multitarget +nls +plugins static-libs test"
-REQUIRED_USE="cxx? ( gold plugins ) default-gold? ( gold )"
+IUSE="default-gold doc +gold multitarget +nls +plugins static-libs test"
+REQUIRED_USE="default-gold? ( gold )"
# Variables that can be set here:
# PATCH_VER - the patchset version
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-05-31 8:08 Agostino Sarubbo
0 siblings, 0 replies; 477+ messages in thread
From: Agostino Sarubbo @ 2019-05-31 8:08 UTC (permalink / raw
To: gentoo-commits
commit: ea7565dae84080463dc12674f9b423dd6e07c6da
Author: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
AuthorDate: Fri May 31 08:08:16 2019 +0000
Commit: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
CommitDate: Fri May 31 08:08:16 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ea7565da
sys-devel/binutils: ia64 stable wrt bug #685416
Signed-off-by: Agostino Sarubbo <ago <AT> gentoo.org>
Package-Manager: Portage-2.3.66, Repoman-2.3.11
RepoMan-Options: --include-arches="ia64"
sys-devel/binutils/binutils-2.31.1-r6.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r6.ebuild b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
index 20031cc0fba..b8aeb744c27 100644
--- a/sys-devel/binutils/binutils-2.31.1-r6.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-06-03 11:11 Tobias Klausmann
0 siblings, 0 replies; 477+ messages in thread
From: Tobias Klausmann @ 2019-06-03 11:11 UTC (permalink / raw
To: gentoo-commits
commit: 7c6c989453dfb5cebbba87260eb1f652e8a22656
Author: Tobias Klausmann <klausman <AT> gentoo <DOT> org>
AuthorDate: Mon Jun 3 08:44:31 2019 +0000
Commit: Tobias Klausmann <klausman <AT> gentoo <DOT> org>
CommitDate: Mon Jun 3 11:11:29 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7c6c9894
sys-devel/binutils-2.31.1-r6: alpha stable
Bug: http://bugs.gentoo.org/685416
Signed-off-by: Tobias Klausmann <klausman <AT> gentoo.org>
sys-devel/binutils/binutils-2.31.1-r6.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.31.1-r6.ebuild b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
index b8aeb744c27..b07c5579b0d 100644
--- a/sys-devel/binutils/binutils-2.31.1-r6.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="alpha amd64 arm arm64 ~hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-06-06 14:27 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2019-06-06 14:27 UTC (permalink / raw
To: gentoo-commits
commit: 9cd779255e522ca303c776fcf150dcbc64b839b6
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Thu Jun 6 14:24:54 2019 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Thu Jun 6 14:27:21 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9cd77925
sys-devel/binutils: Remove old
Bug: https://bugs.gentoo.org/685416
Package-Manager: Portage-2.3.67, Repoman-2.3.14
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 -
sys-devel/binutils/binutils-2.31.1-r4.ebuild | 437 ---------------------------
2 files changed, 438 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index a72f7551d4d..add4500d64d 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -10,7 +10,6 @@ DIST binutils-2.29.1-patches-3.tar.xz 20904 BLAKE2B 5549cb2412123e4ad3a13935762c
DIST binutils-2.29.1.tar.bz2 29123355 BLAKE2B 83de518a27bae0f13c57b1979493dd7f7cabae424cff5e8495d1f064da24b6ef9e1c19d1d1adad2dca7142372782023f66b4b4223170a49b96ba3834266fe878 SHA512 4063d34555526922376ccceb3f14b43e287442e82a8038cf50f4f51ad97d438c672c0e310ca4b856c9aff5aa9911073e256e8298a7a3f1844eeb60b90d955592
DIST binutils-2.30-patches-5.tar.xz 590864 BLAKE2B 71de4d08f92ab1898ad576a21763f955067cbbed543250888e0c5d51f4ef77d0d829049e9a835691cf2de03965fbcc9bcfa092eb304c03f9b885e7a3dadab286 SHA512 029b3be6ae9b8620f8580a35701bd4517b4e0232ff3cf9983b3808475c7443cbf500b6cace2c052df0bd1e47202838f4d2453238db28709a947117071d9ae804
DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f5916fb82ce95ceab424fd8dc19f6daa7ac32a149f222ccdcc603354165cc206fde070eaa44fe2cc5e57486efc7868 SHA512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839
-DIST binutils-2.31.1-patches-5.tar.xz 65896 BLAKE2B 7fb2c4c71336a77f3fef57a0430c511ef7326f8196d8f3a57a6d56aed464953172eeb0755f020387739cf27f709d0bc3de9c3c8b972a94f1480639465158e180 SHA512 c254f22b8ca662cf49cd5fc076d3e9b82d7f421420408c960c54310fc49462600325e7bc50f863cab7c8c49caebac3ac353dc24ab5947e8f01b98c11f43f57d2
DIST binutils-2.31.1-patches-7.tar.xz 76828 BLAKE2B 354e7c3aa76c0cfe8fc6bb419a5b19294c0be09ebdff2fc4533dd16116fcd4f4a1b4c8db02233dabe33ca68347e0a30e542456988a4ead407edb47ed031e018c SHA512 c84ff9cd9f5b1e313e93d0f25bb4244950a73e0d97ec4dacb8763382219a08a01b16a8e93173032232ea4239098b29448331ed461f792e663e1117eb0811f85b
DIST binutils-2.31.1.tar.xz 20467996 BLAKE2B 6b914df1fbb7cf54f2159f71b2c2b09f3f6a569b7a3cb4cf9790d0a3733a7548bc0ea32334a178ed3b56e8b97656ae99c7abaf212601beeaeae9a0884c0f6051 SHA512 0fca326feb1d5f5fe505a827b20237fe3ec9c13eaf7ec7e35847fd71184f605ba1cefe1314b1b8f8a29c0aa9d88162849ee1c1a3e70c2f7407d88339b17edb30
DIST binutils-2.32-patches-2.tar.xz 145672 BLAKE2B 8218e621f99cb4bcd1638c3011449b94480d207eaeb79cf75c0072e0f1a86bfd1603fc4515bc40d3ac1921a18b9a211b20568f59b11b13eb44e6cff1329c5af9 SHA512 55c25a603f6175af3ade6848e5c1faba06a147d72e9a4f53d44502d97db76499485a67b278a654d18884714a7bf7b360c77c9e42dba3cdc188f805bfe461f09f
diff --git a/sys-devel/binutils/binutils-2.31.1-r4.ebuild b/sys-devel/binutils/binutils-2.31.1-r4.ebuild
deleted file mode 100644
index 1d7e1c1cbf9..00000000000
--- a/sys-devel/binutils/binutils-2.31.1-r4.ebuild
+++ /dev/null
@@ -1,437 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eutils libtool flag-o-matic gnuconfig multilib versionator
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="https://sourceware.org/binutils/"
-LICENSE="GPL-3+"
-# USE="+cxx" is a transitional flag until llvm migrates to new flags:
-# bug #677888
-IUSE="+cxx default-gold doc +gold multitarget +nls +plugins static-libs test"
-REQUIRED_USE="cxx? ( gold plugins ) default-gold? ( gold )"
-
-# Variables that can be set here:
-# 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
-# Default: dilfridge :)
-
-PATCH_VER=5
-PATCH_DEV=dilfridge
-
-case ${PV} in
- 9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- SLOT=${PV}
- ;;
- *.9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- EGIT_BRANCH=$(get_version_component_range 1-2)
- EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
- SLOT=$(get_version_component_range 1-2)
- ;;
- *)
- SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
- SLOT=$(get_version_component_range 1-2)
- KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
- ;;
-esac
-
-#
-# The Gentoo patchset
-#
-PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
-PATCH_DEV=${PATCH_DEV:-slyfox}
-
-[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
- https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
-
-# Disable gold testsuite since it always fails.
-PATCHES=( "${FILESDIR}/${PN}-2.29.1-nogoldtest.patch" )
-
-#
-# 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}
- doc? ( sys-apps/texinfo )
- test? ( dev-util/dejagnu )
- nls? ( sys-devel/gettext )
- sys-devel/flex
- virtual/yacc
-"
-
-MY_BUILDDIR=${WORKDIR}/build
-
-src_unpack() {
- case ${PV} in
- *9999)
- git-r3_src_unpack
- ;;
- *)
- ;;
- esac
- default
- mkdir -p "${MY_BUILDDIR}"
-}
-
-src_prepare() {
- if [[ ! -z ${PATCH_VER} ]] ; then
- einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
- eapply "${WORKDIR}/patch"/*.patch
- fi
-
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
- # Make sure our explicit libdir paths don't get clobbered. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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() {
- # 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 #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}"
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #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. #666100
- --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
- )
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
-
- # bug 637066
- filter-flags -Wall -Wreturn-type
-
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- # see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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/}" || die
- if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
- 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}"
- 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-06-29 13:22 Agostino Sarubbo
0 siblings, 0 replies; 477+ messages in thread
From: Agostino Sarubbo @ 2019-06-29 13:22 UTC (permalink / raw
To: gentoo-commits
commit: 6fcba9dff65169835136618231b2896de72753bb
Author: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
AuthorDate: Sat Jun 29 13:22:05 2019 +0000
Commit: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
CommitDate: Sat Jun 29 13:22:05 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6fcba9df
sys-devel/binutils: amd64 stable wrt bug #688904
Signed-off-by: Agostino Sarubbo <ago <AT> gentoo.org>
Package-Manager: Portage-2.3.66, Repoman-2.3.11
RepoMan-Options: --include-arches="amd64"
sys-devel/binutils/binutils-2.32-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.32-r1.ebuild b/sys-devel/binutils/binutils-2.32-r1.ebuild
index 8d27d27cf2b..abccf3b775c 100644
--- a/sys-devel/binutils/binutils-2.32-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r1.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-06-29 14:46 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2019-06-29 14:46 UTC (permalink / raw
To: gentoo-commits
commit: d6f55a5e4ec69b06fe822b2661d06ae1d2d7f959
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Jun 29 14:46:25 2019 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Jun 29 14:46:46 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d6f55a5e
sys-devel/binutils: disable gold testsuite in stable candidate
Package-Manager: Portage-2.3.67, Repoman-2.3.16
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.32-r1.ebuild | 3 +++
1 file changed, 3 insertions(+)
diff --git a/sys-devel/binutils/binutils-2.32-r1.ebuild b/sys-devel/binutils/binutils-2.32-r1.ebuild
index abccf3b775c..f5cdaa639d2 100644
--- a/sys-devel/binutils/binutils-2.32-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r1.ebuild
@@ -58,6 +58,9 @@ PATCH_DEV=${PATCH_DEV:-slyfox}
[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
+# Disable gold testsuite since it always fails.
+PATCHES=( "${FILESDIR}/${PN}-2.29.1-nogoldtest.patch" )
+
#
# The cross-compile logic
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-07-01 19:23 Thomas Deutschmann
0 siblings, 0 replies; 477+ messages in thread
From: Thomas Deutschmann @ 2019-07-01 19:23 UTC (permalink / raw
To: gentoo-commits
commit: e13ef2a7c3d3a81c692c94dd7b87e8549dd107fd
Author: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Mon Jul 1 18:39:06 2019 +0000
Commit: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Mon Jul 1 18:39:06 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e13ef2a7
sys-devel/binutils: x86 stable (bug #688904)
Package-Manager: Portage-2.3.68, Repoman-2.3.16
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>
sys-devel/binutils/binutils-2.32-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.32-r1.ebuild b/sys-devel/binutils/binutils-2.32-r1.ebuild
index f5cdaa639d2..81f0b8bb674 100644
--- a/sys-devel/binutils/binutils-2.32-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r1.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-07-03 21:32 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2019-07-03 21:32 UTC (permalink / raw
To: gentoo-commits
commit: 15703552b81c19e92746c3c80fe1118a4ffed3de
Author: Rolf Eike Beer <eike <AT> sf-mail <DOT> de>
AuthorDate: Wed Jul 3 16:29:54 2019 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Wed Jul 3 21:31:56 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=15703552
sys-devel/binutils: stable 2.32-r1 for sparc, bug #688904
Signed-off-by: Rolf Eike Beer <eike <AT> sf-mail.de>
Package-Manager: Portage-2.3.66, Repoman-2.3.11
RepoMan-Options: --include-arches="sparc"
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-2.32-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.32-r1.ebuild b/sys-devel/binutils/binutils-2.32-r1.ebuild
index 81f0b8bb674..5174fd76e31 100644
--- a/sys-devel/binutils/binutils-2.32-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r1.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-07-17 14:03 Agostino Sarubbo
0 siblings, 0 replies; 477+ messages in thread
From: Agostino Sarubbo @ 2019-07-17 14:03 UTC (permalink / raw
To: gentoo-commits
commit: 1c59a2b73aff9121f9a9d2f61c9717d0d5a419d0
Author: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
AuthorDate: Wed Jul 17 14:02:29 2019 +0000
Commit: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
CommitDate: Wed Jul 17 14:02:29 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1c59a2b7
sys-devel/binutils: s390 stable wrt bug #688904
Signed-off-by: Agostino Sarubbo <ago <AT> gentoo.org>
Package-Manager: Portage-2.3.66, Repoman-2.3.11
RepoMan-Options: --include-arches="s390"
sys-devel/binutils/binutils-2.32-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.32-r1.ebuild b/sys-devel/binutils/binutils-2.32-r1.ebuild
index 5174fd76e31..d02a2139d71 100644
--- a/sys-devel/binutils/binutils-2.32-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r1.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-07-18 9:57 Agostino Sarubbo
0 siblings, 0 replies; 477+ messages in thread
From: Agostino Sarubbo @ 2019-07-18 9:57 UTC (permalink / raw
To: gentoo-commits
commit: 91801911d3450a5d6847ec1ee4abd9b4ea4acafb
Author: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 18 09:57:18 2019 +0000
Commit: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
CommitDate: Thu Jul 18 09:57:18 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=91801911
sys-devel/binutils: ppc stable wrt bug #688904
Signed-off-by: Agostino Sarubbo <ago <AT> gentoo.org>
Package-Manager: Portage-2.3.66, Repoman-2.3.11
RepoMan-Options: --include-arches="ppc"
sys-devel/binutils/binutils-2.32-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.32-r1.ebuild b/sys-devel/binutils/binutils-2.32-r1.ebuild
index d02a2139d71..7ceb8cc0399 100644
--- a/sys-devel/binutils/binutils-2.32-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r1.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ~ppc64 ~riscv s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-07-18 10:01 Agostino Sarubbo
0 siblings, 0 replies; 477+ messages in thread
From: Agostino Sarubbo @ 2019-07-18 10:01 UTC (permalink / raw
To: gentoo-commits
commit: 40e56553095eaf2e6e5d2592db72c4dcf481e8a6
Author: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 18 10:01:34 2019 +0000
Commit: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
CommitDate: Thu Jul 18 10:01:34 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=40e56553
sys-devel/binutils: ppc64 stable wrt bug #688904
Signed-off-by: Agostino Sarubbo <ago <AT> gentoo.org>
Package-Manager: Portage-2.3.66, Repoman-2.3.11
RepoMan-Options: --include-arches="ppc64"
sys-devel/binutils/binutils-2.32-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.32-r1.ebuild b/sys-devel/binutils/binutils-2.32-r1.ebuild
index 7ceb8cc0399..dbea23ee9a4 100644
--- a/sys-devel/binutils/binutils-2.32-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r1.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ~ppc64 ~riscv s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-07-18 11:45 Agostino Sarubbo
0 siblings, 0 replies; 477+ messages in thread
From: Agostino Sarubbo @ 2019-07-18 11:45 UTC (permalink / raw
To: gentoo-commits
commit: cd1d3e317efc6e7f60fe2900b695a549c0f48518
Author: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 18 11:44:53 2019 +0000
Commit: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
CommitDate: Thu Jul 18 11:44:53 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cd1d3e31
sys-devel/binutils: ia64 stable wrt bug #688904
Signed-off-by: Agostino Sarubbo <ago <AT> gentoo.org>
Package-Manager: Portage-2.3.66, Repoman-2.3.11
RepoMan-Options: --include-arches="ia64"
sys-devel/binutils/binutils-2.32-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.32-r1.ebuild b/sys-devel/binutils/binutils-2.32-r1.ebuild
index dbea23ee9a4..930f98fd4ac 100644
--- a/sys-devel/binutils/binutils-2.32-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r1.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~riscv s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-07-18 13:10 Agostino Sarubbo
0 siblings, 0 replies; 477+ messages in thread
From: Agostino Sarubbo @ 2019-07-18 13:10 UTC (permalink / raw
To: gentoo-commits
commit: 4767a272765f7ddb7e22c255b0042738598a7e71
Author: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 18 13:09:52 2019 +0000
Commit: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
CommitDate: Thu Jul 18 13:09:52 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4767a272
sys-devel/binutils: alpha stable wrt bug #688904
Signed-off-by: Agostino Sarubbo <ago <AT> gentoo.org>
Package-Manager: Portage-2.3.66, Repoman-2.3.11
RepoMan-Options: --include-arches="alpha"
sys-devel/binutils/binutils-2.32-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.32-r1.ebuild b/sys-devel/binutils/binutils-2.32-r1.ebuild
index 930f98fd4ac..e7fd64a9649 100644
--- a/sys-devel/binutils/binutils-2.32-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r1.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~riscv s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="alpha amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~riscv s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-07-22 13:16 Aaron Bauman
0 siblings, 0 replies; 477+ messages in thread
From: Aaron Bauman @ 2019-07-22 13:16 UTC (permalink / raw
To: gentoo-commits
commit: f9b2567ce9f20e20d171a1401eea641c9ab1084f
Author: Aaron Bauman <bman <AT> gentoo <DOT> org>
AuthorDate: Mon Jul 22 13:15:24 2019 +0000
Commit: Aaron Bauman <bman <AT> gentoo <DOT> org>
CommitDate: Mon Jul 22 13:15:24 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f9b2567c
sys-devel/binutils: arm64 stable (bug #688904)
Signed-off-by: Aaron Bauman <bman <AT> gentoo.org>
Package-Manager: Portage-2.3.69, Repoman-2.3.16
RepoMan-Options: --include-arches="arm64"
sys-devel/binutils/binutils-2.32-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.32-r1.ebuild b/sys-devel/binutils/binutils-2.32-r1.ebuild
index e7fd64a9649..e8aeb78540e 100644
--- a/sys-devel/binutils/binutils-2.32-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r1.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="alpha amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~riscv s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="alpha amd64 ~arm arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~riscv s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-07-28 10:36 Mikle Kolyada
0 siblings, 0 replies; 477+ messages in thread
From: Mikle Kolyada @ 2019-07-28 10:36 UTC (permalink / raw
To: gentoo-commits
commit: 78c515f724d6241f09b3723b344238cd40754032
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 28 10:35:39 2019 +0000
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sun Jul 28 10:35:39 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=78c515f7
sys-devel/binutils: sh stable wrt bug #688904
Package-Manager: Portage-2.3.66, Repoman-2.3.16
RepoMan-Options: --include-arches="sh"
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>
sys-devel/binutils/binutils-2.32-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.32-r1.ebuild b/sys-devel/binutils/binutils-2.32-r1.ebuild
index 7028514e7c3..f93cb6dcdb2 100644
--- a/sys-devel/binutils/binutils-2.32-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r1.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="alpha amd64 arm arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~riscv s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="alpha amd64 arm arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-07-28 10:36 Mikle Kolyada
0 siblings, 0 replies; 477+ messages in thread
From: Mikle Kolyada @ 2019-07-28 10:36 UTC (permalink / raw
To: gentoo-commits
commit: 981f4d0ec9725f3275ad2f120a07347d164cf75d
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 28 10:35:13 2019 +0000
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sun Jul 28 10:35:13 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=981f4d0e
sys-devel/binutils: arm stable wrt bug #688904
Package-Manager: Portage-2.3.66, Repoman-2.3.16
RepoMan-Options: --include-arches="arm"
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>
sys-devel/binutils/binutils-2.32-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.32-r1.ebuild b/sys-devel/binutils/binutils-2.32-r1.ebuild
index e8aeb78540e..7028514e7c3 100644
--- a/sys-devel/binutils/binutils-2.32-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r1.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="alpha amd64 ~arm arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~riscv s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="alpha amd64 arm arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~riscv s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-07-28 10:36 Mikle Kolyada
0 siblings, 0 replies; 477+ messages in thread
From: Mikle Kolyada @ 2019-07-28 10:36 UTC (permalink / raw
To: gentoo-commits
commit: c28981c022a460e73ef5df90413f37b4d2637183
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 28 10:36:06 2019 +0000
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sun Jul 28 10:36:06 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c28981c0
sys-devel/binutils: m68k stable wrt bug #688904
Package-Manager: Portage-2.3.66, Repoman-2.3.16
RepoMan-Options: --include-arches="m68k"
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>
sys-devel/binutils/binutils-2.32-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.32-r1.ebuild b/sys-devel/binutils/binutils-2.32-r1.ebuild
index f93cb6dcdb2..c1e39fee45e 100644
--- a/sys-devel/binutils/binutils-2.32-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r1.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="alpha amd64 arm arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="alpha amd64 arm arm64 ~hppa ia64 m68k ~mips ppc ppc64 ~riscv s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-08-09 21:09 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2019-08-09 21:09 UTC (permalink / raw
To: gentoo-commits
commit: 5d452fa9fce309c370f1f0b849c2ccd100daa946
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 9 21:09:09 2019 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Aug 9 21:09:39 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5d452fa9
sys-devel/binutils: Remove old
Package-Manager: Portage-2.3.70, Repoman-2.3.16
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 --
sys-devel/binutils/binutils-2.25.1-r1.ebuild | 10 ----------
2 files changed, 12 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index add4500d64d..263be09e1b5 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -1,5 +1,3 @@
-DIST binutils-2.25.1-patches-1.1.tar.xz 18724 BLAKE2B 0a8380427247463340b28fa28171f127b9a3c8163ce63d103d1d15492c30df9cf24a5122ff271dc80425a0b212438f5d39f99783fda52e7b5e861a3f5f0e2992 SHA512 209c55bf26b51d8c513b40abd2d95f687159c4e964a6c732924f277d04c97323c427fe452c63d5ec6962dcd8892d6d5d807ba88826739425bce6812a31f573dd
-DIST binutils-2.25.1.tar.bz2 24163561 BLAKE2B 25fc879f99d6547fd0dc911e74c35cf52f3da2c0f9fd758031dda90da63cdd819345d0a69f692a40dee9f63895d816cee7910a9f48ce56e7b4251827768946f4 SHA512 0b36dda0e6d32cd25613c0e64b56b28312515c54d6a159efd3db9a86717f114ab0a0a1f69d08975084d55713ebaeab64e4085c9b3d1c3fa86712869f80eb954d
DIST binutils-2.26.1-patches-1.0.tar.xz 11212 BLAKE2B f785930a9bf994312f3a525ef46727c582e6cd3992b5648bdf4c787f55fed4b36c69be3ac7d9962dcd72b6dbe0155dbf23d1daa14be5c7ad5da1cf634f2522aa SHA512 c520967659c66f05f7ad795bb0bc2522e139977ab3ae8cfd9ec0d093a412a7291d1cabaa6b429c618fcf7253458a6fbe5a7dc3f62e0ac9762667308067db075c
DIST binutils-2.26.1.tar.bz2 25595243 BLAKE2B 5114ab9ebfc1097f0ebfd1e134ea098b583724d2c822fb7365b6212be0edfd313961bcee8de1193f359b7e904b23146036bfa9e3e7bc0621160bf85f573a8d44 SHA512 9d9165609fd3b0f20d616f9891fc8e2b466eb13e2bfce40125e12427f8f201d20e2b8322bb6cb2b45e8df812f0e8ac059149f8a1f69ba3ed9d86a35c6a540b67
DIST binutils-2.27-patches-1.1.tar.xz 9828 BLAKE2B 158787c0ee2b26ad78d90b0ce3c8c0c79256d2e85d5f4b582b275953235555a6323f791a98e1de357559994fef284a910a54749dcfc3ac0aea9cfad6ee70980e SHA512 5059a784344e0554965473808b9d72af34f793e5538e82010adbbf586d583ddfd9f5ca637e6ba658e566c406244ae79b2ab5135995bcfedc8a96b9293366199d
diff --git a/sys-devel/binutils/binutils-2.25.1-r1.ebuild b/sys-devel/binutils/binutils-2.25.1-r1.ebuild
deleted file mode 100644
index 93b6d4acd39..00000000000
--- a/sys-devel/binutils/binutils-2.25.1-r1.ebuild
+++ /dev/null
@@ -1,10 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="4"
-
-PATCHVER="1.1"
-ELF2FLT_VER=""
-inherit toolchain-binutils
-
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-08-27 7:31 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2019-08-27 7:31 UTC (permalink / raw
To: gentoo-commits
commit: 3c64ec96a44ea093af53a2eb7b5c8bcc7a8fb00f
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 27 07:31:28 2019 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Tue Aug 27 07:31:53 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3c64ec96
sys-devel/binutils: stable 2.32-r1 for hppa, bug #688904
Package-Manager: Portage-2.3.73, Repoman-2.3.17
RepoMan-Options: --include-arches="hppa"
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-2.32-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.32-r1.ebuild b/sys-devel/binutils/binutils-2.32-r1.ebuild
index c1e39fee45e..184c0d38265 100644
--- a/sys-devel/binutils/binutils-2.32-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r1.ebuild
@@ -45,7 +45,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
- KEYWORDS="alpha amd64 arm arm64 ~hppa ia64 m68k ~mips ppc ppc64 ~riscv s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+ KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 ~riscv s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-10-13 4:18 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2019-10-13 4:18 UTC (permalink / raw
To: gentoo-commits
commit: 207aadc25adaed9c3df1324efd826049805be3ba
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Oct 13 04:17:28 2019 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Oct 13 04:18:00 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=207aadc2
sys-devel/binutils: Version bump without keywords, for testing
Some tests fail, example of ld:
no of expected passes 2403
no of unexpected failures 3
no of expected failures 57
no of untested testcases 1
no of unsupported tests 39
FAIL: ld-elf/64ksec-r
FAIL: ld-elf/64ksec
FAIL: ver_test_pr16504.sh
FAIL: strong_ref_weak_def.sh
FAIL: dyn_weak_ref.sh
FAIL: large_symbol_alignment
FAIL: exception_separate_shared_12_test
FAIL: exception_separate_shared_21_test
FAIL: weak_undef_test
FAIL: initpri3a
FAIL: script_test_1
FAIL: script_test_2
FAIL: justsyms
FAIL: justsyms_exec
FAIL: binary_test
FAIL: script_test_3
FAIL: tls_phdrs_script_test
FAIL: script_test_12i
FAIL: dynamic_list_2
FAIL: incremental_test_2
FAIL: incremental_test_5
FAIL: Run pr24406-1
Needs investigation, though part of it is probably still the usual gold problem
Package-Manager: Portage-2.3.76, Repoman-2.3.17
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 +
sys-devel/binutils/binutils-2.33.1.ebuild | 432 ++++++++++++++++++++++++++++++
2 files changed, 434 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 263be09e1b5..59fd69e0655 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -12,4 +12,6 @@ DIST binutils-2.31.1-patches-7.tar.xz 76828 BLAKE2B 354e7c3aa76c0cfe8fc6bb419a5b
DIST binutils-2.31.1.tar.xz 20467996 BLAKE2B 6b914df1fbb7cf54f2159f71b2c2b09f3f6a569b7a3cb4cf9790d0a3733a7548bc0ea32334a178ed3b56e8b97656ae99c7abaf212601beeaeae9a0884c0f6051 SHA512 0fca326feb1d5f5fe505a827b20237fe3ec9c13eaf7ec7e35847fd71184f605ba1cefe1314b1b8f8a29c0aa9d88162849ee1c1a3e70c2f7407d88339b17edb30
DIST binutils-2.32-patches-2.tar.xz 145672 BLAKE2B 8218e621f99cb4bcd1638c3011449b94480d207eaeb79cf75c0072e0f1a86bfd1603fc4515bc40d3ac1921a18b9a211b20568f59b11b13eb44e6cff1329c5af9 SHA512 55c25a603f6175af3ade6848e5c1faba06a147d72e9a4f53d44502d97db76499485a67b278a654d18884714a7bf7b360c77c9e42dba3cdc188f805bfe461f09f
DIST binutils-2.32.tar.xz 20774880 BLAKE2B d1bdbd9c8487c091665c197974ce4bdf520b7a67ed6997a81b87e6a0af9514a091458244f583acec5ae580ac2ee5e908f67f483b8e5263cd18ced794cb235da6 SHA512 d326408f12a03d9a61a9de56584c2af12f81c2e50d2d7e835d51565df8314df01575724afa1e43bd0db45cfc9916b41519b67dfce03232aa4978704492a6994a
+DIST binutils-2.33.1-patches-1.tar.xz 17944 BLAKE2B 811ad416fe9c059f645856a3123ed32303afe1d0f166a15cb6de0673b5494fdcc4c165da4a68eb7ab73f007618e3a97a5578c4b47de21e57fe501d6a21b6d595 SHA512 63b439637206d21e46d2b79383b38da2b28365a0fdea1f5ac3b665cd05e0b55cd1d7763c05567a5f7ae2c645d2ae639a27e465d535b928d9f8f0e6b94f31e1f7
+DIST binutils-2.33.1.tar.xz 21490848 BLAKE2B c336a8412938dc8c224f40a763a8bea9937cca0462a8fb80e62f14aabe590107fc061a3f4b9327e1f4652cb026384d36a91b4766d4d469d2d0680932874b638c SHA512 b7a6767c6c7ca6b5cafa7080e6820b7bb3a53b7148348c438d99905defbdf0d30c9744a484ee01c9441a8153901808513366b15ba9533e20c9673c262ade36ac
DIST binutils-9999-patches-4.tar.xz 17480 BLAKE2B 8e85fb15c740e19bb27482bea134342970fe1af8c39639a16a087c1e3b7386e469d9db6b0d1c0e1e62d550c145814e3013ef65708e91313b648a94ac5c4cafed SHA512 6d09513da6995b83c24afd0799f918281198c412cb65f04e07002fed1b036fb1c6cb075be499a2415e8b286f288b80c02fae1b1dfcd288fe216254d31206b6e3
diff --git a/sys-devel/binutils/binutils-2.33.1.ebuild b/sys-devel/binutils/binutils-2.33.1.ebuild
new file mode 100644
index 00000000000..e4e5fd60e82
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.33.1.ebuild
@@ -0,0 +1,432 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils libtool flag-o-matic gnuconfig multilib versionator
+
+DESCRIPTION="Tools necessary to build programs"
+HOMEPAGE="https://sourceware.org/binutils/"
+LICENSE="GPL-3+"
+IUSE="default-gold doc +gold multitarget +nls +plugins static-libs test"
+REQUIRED_USE="default-gold? ( gold )"
+
+# Variables that can be set here:
+# 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=1
+PATCH_DEV=dilfridge
+PATCH_BINUTILS_VER=2.33.1
+
+case ${PV} in
+ 9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ SLOT=${PV}
+ ;;
+ *.9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ EGIT_BRANCH=$(get_version_component_range 1-2)
+ EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
+ SLOT=$(get_version_component_range 1-2)
+ ;;
+ *)
+ SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
+ SLOT=$(get_version_component_range 1-2)
+ ;;
+esac
+
+#
+# The Gentoo patchset
+#
+PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
+PATCH_DEV=${PATCH_DEV:-slyfox}
+
+[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
+ https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
+
+#
+# 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}
+ doc? ( sys-apps/texinfo )
+ test? ( dev-util/dejagnu )
+ nls? ( sys-devel/gettext )
+ sys-devel/flex
+ virtual/yacc
+"
+
+MY_BUILDDIR=${WORKDIR}/build
+
+src_unpack() {
+ case ${PV} in
+ *9999)
+ git-r3_src_unpack
+ ;;
+ *)
+ ;;
+ esac
+ default
+ mkdir -p "${MY_BUILDDIR}"
+}
+
+src_prepare() {
+ if [[ ! -z ${PATCH_VER} ]] ; then
+ einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
+ eapply "${WORKDIR}/patch"/*.patch
+ fi
+
+ # This check should probably go somewhere else, like pkg_pretend.
+ if [[ ${CTARGET} == *-uclibc* ]] ; then
+ if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
+ die "sorry, but this binutils doesn't yet support uClibc :("
+ fi
+ fi
+
+ # Make sure our explicit libdir paths don't get clobbered. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ 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() {
+ # 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 #42033
+ strip-linguas -u */po
+
+ # Keep things sane
+ strip-flags
+
+ local x
+ echo
+ for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
+ einfo "$(printf '%10s' ${x}:) ${!x}"
+ done
+ echo
+
+ cd "${MY_BUILDDIR}"
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && 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. #497268
+ --enable-install-libiberty
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #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. #666100
+ --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
+ )
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${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}"
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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}"
+
+ # bug 637066
+ filter-flags -Wall -Wreturn-type
+
+ # enable verbose test run and result logging
+ emake -k check RUNTESTFLAGS='-a -v' VERBOSE=1
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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/}" || die
+ if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
+ 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}"
+ 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-11-09 0:00 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2019-11-09 0:00 UTC (permalink / raw
To: gentoo-commits
commit: 3a78011f91c3e441acb2465acddc2fa5301668e9
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Fri Nov 8 23:58:42 2019 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Fri Nov 8 23:59:57 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3a78011f
sys-devel/binutils: drop explicit patch version assignment
Package-Manager: Portage-2.3.78, Repoman-2.3.17
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-2.33.1.ebuild | 3 ++-
sys-devel/binutils/binutils-9999.ebuild | 2 ++
2 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.33.1.ebuild b/sys-devel/binutils/binutils-2.33.1.ebuild
index e7f493b2b0e..0a4433aa108 100644
--- a/sys-devel/binutils/binutils-2.33.1.ebuild
+++ b/sys-devel/binutils/binutils-2.33.1.ebuild
@@ -21,7 +21,6 @@ REQUIRED_USE="default-gold? ( gold )"
PATCH_VER=1
PATCH_DEV=dilfridge
-PATCH_BINUTILS_VER=2.33.1
case ${PV} in
9999)
@@ -43,6 +42,8 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(ver_cut 1-2)
+ # needs testing
+ #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
;;
esac
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index ef0da89a59f..88ec9fb47a3 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -42,6 +42,8 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(ver_cut 1-2)
+ # live ebuild
+ #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-11-09 0:00 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2019-11-09 0:00 UTC (permalink / raw
To: gentoo-commits
commit: 4ba7ea61625be6c78cc4e76b4110b0e0a6471e0b
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Fri Nov 8 23:55:07 2019 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Fri Nov 8 23:59:55 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4ba7ea61
sys-devel/binutils: update live ebuild to EAPI=7
Package-Manager: Portage-2.3.78, Repoman-2.3.17
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-2.33.1.ebuild | 10 +++++-----
sys-devel/binutils/binutils-9999.ebuild | 10 +++++-----
2 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.33.1.ebuild b/sys-devel/binutils/binutils-2.33.1.ebuild
index e4e5fd60e82..e7f493b2b0e 100644
--- a/sys-devel/binutils/binutils-2.33.1.ebuild
+++ b/sys-devel/binutils/binutils-2.33.1.ebuild
@@ -1,9 +1,9 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
-inherit eutils libtool flag-o-matic gnuconfig multilib versionator
+inherit eutils libtool flag-o-matic gnuconfig multilib
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
@@ -36,13 +36,13 @@ case ${PV} in
inherit git-r3
S=${WORKDIR}/binutils
EGIT_CHECKOUT_DIR=${S}
- EGIT_BRANCH=$(get_version_component_range 1-2)
+ EGIT_BRANCH=$(ver_cut 1-2)
EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
- SLOT=$(get_version_component_range 1-2)
+ SLOT=$(ver_cut 1-2)
;;
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
- SLOT=$(get_version_component_range 1-2)
+ SLOT=$(ver_cut 1-2)
;;
esac
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index ac40bd24d64..ef0da89a59f 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -1,9 +1,9 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
-inherit eutils libtool flag-o-matic gnuconfig multilib versionator
+inherit eutils libtool flag-o-matic gnuconfig multilib
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
@@ -35,13 +35,13 @@ case ${PV} in
inherit git-r3
S=${WORKDIR}/binutils
EGIT_CHECKOUT_DIR=${S}
- EGIT_BRANCH=$(get_version_component_range 1-2)
+ EGIT_BRANCH=$(ver_cut 1-2)
EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
- SLOT=$(get_version_component_range 1-2)
+ SLOT=$(ver_cut 1-2)
;;
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
- SLOT=$(get_version_component_range 1-2)
+ SLOT=$(ver_cut 1-2)
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-11-09 11:57 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2019-11-09 11:57 UTC (permalink / raw
To: gentoo-commits
commit: d3da890ed76c7c97834b547f649a01efe0cd025e
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 9 11:46:08 2019 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Nov 9 11:55:24 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d3da890e
sys-devel/binutils: disable verbose tests
Verbose tests stoll don't print enough information to just
run a command. Let's leave debugging to logs.
Package-Manager: Portage-2.3.78, Repoman-2.3.17
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-2.33.1.ebuild | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.33.1.ebuild b/sys-devel/binutils/binutils-2.33.1.ebuild
index 0a4433aa108..aade1450e0c 100644
--- a/sys-devel/binutils/binutils-2.33.1.ebuild
+++ b/sys-devel/binutils/binutils-2.33.1.ebuild
@@ -286,8 +286,7 @@ src_test() {
# bug 637066
filter-flags -Wall -Wreturn-type
- # enable verbose test run and result logging
- emake -k check RUNTESTFLAGS='-a -v' VERBOSE=1
+ emake -k check
}
src_install() {
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-11-09 13:02 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2019-11-09 13:02 UTC (permalink / raw
To: gentoo-commits
commit: d173ceb8e3a3292e18bd705957949c3e90eb66eb
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 9 12:35:10 2019 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Nov 9 13:01:55 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d173ceb8
sys-devel/binutils: restore KEYWORDS on 2.33.1
Package-Manager: Portage-2.3.78, Repoman-2.3.17
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-2.33.1.ebuild | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.33.1.ebuild b/sys-devel/binutils/binutils-2.33.1.ebuild
index aade1450e0c..7d29c078994 100644
--- a/sys-devel/binutils/binutils-2.33.1.ebuild
+++ b/sys-devel/binutils/binutils-2.33.1.ebuild
@@ -42,8 +42,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(ver_cut 1-2)
- # needs testing
- #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-11-09 13:02 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2019-11-09 13:02 UTC (permalink / raw
To: gentoo-commits
commit: 7a2c1838b64dd3afa6060a771f313206dda46206
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 9 12:27:41 2019 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Nov 9 13:01:54 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7a2c1838
sys-devel/binutils: sync live with 2.33.1
Package-Manager: Portage-2.3.78, Repoman-2.3.17
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-9999.ebuild | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 88ec9fb47a3..b6fa9a07329 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -286,8 +286,7 @@ src_test() {
# bug 637066
filter-flags -Wall -Wreturn-type
- # enable verbose test run and result logging
- emake -k check RUNTESTFLAGS='-a -v' VERBOSE=1
+ emake -k check
}
src_install() {
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-11-09 13:54 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2019-11-09 13:54 UTC (permalink / raw
To: gentoo-commits
commit: cbd349c0cd0c941c81697cc4de04f97d9042ef00
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 9 13:51:46 2019 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Nov 9 13:54:20 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cbd349c0
sys-devel/binutils: add RESTRICT="!test? ( test )"
Package-Manager: Portage-2.3.78, Repoman-2.3.17
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-2.30-r4.ebuild | 5 ++++-
sys-devel/binutils/binutils-2.31.1-r6.ebuild | 2 ++
sys-devel/binutils/binutils-2.32-r1.ebuild | 2 ++
sys-devel/binutils/binutils-2.33.1.ebuild | 2 ++
sys-devel/binutils/binutils-9999.ebuild | 2 ++
5 files changed, 12 insertions(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.30-r4.ebuild b/sys-devel/binutils/binutils-2.30-r4.ebuild
index a64424ccd02..e57b8ed86e0 100644
--- a/sys-devel/binutils/binutils-2.30-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -71,6 +71,9 @@ DEPEND="${RDEPEND}
sys-devel/flex
virtual/yacc
"
+
+RESTRICT="!test? ( test )"
+
if is_cross ; then
# The build assumes the host has libiberty and such when cross-compiling
# its build tools. We should probably make binutils itself build a local
diff --git a/sys-devel/binutils/binutils-2.31.1-r6.ebuild b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
index 511d497ac38..537b7b8ea78 100644
--- a/sys-devel/binutils/binutils-2.31.1-r6.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
@@ -87,6 +87,8 @@ DEPEND="${RDEPEND}
virtual/yacc
"
+RESTRICT="!test? ( test )"
+
MY_BUILDDIR=${WORKDIR}/build
src_unpack() {
diff --git a/sys-devel/binutils/binutils-2.32-r1.ebuild b/sys-devel/binutils/binutils-2.32-r1.ebuild
index ac19c27ce3e..682714c5e9d 100644
--- a/sys-devel/binutils/binutils-2.32-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r1.ebuild
@@ -87,6 +87,8 @@ DEPEND="${RDEPEND}
virtual/yacc
"
+RESTRICT="!test? ( test )"
+
MY_BUILDDIR=${WORKDIR}/build
src_unpack() {
diff --git a/sys-devel/binutils/binutils-2.33.1.ebuild b/sys-devel/binutils/binutils-2.33.1.ebuild
index 7d29c078994..9a1640aa407 100644
--- a/sys-devel/binutils/binutils-2.33.1.ebuild
+++ b/sys-devel/binutils/binutils-2.33.1.ebuild
@@ -81,6 +81,8 @@ DEPEND="${RDEPEND}
virtual/yacc
"
+RESTRICT="!test? ( test )"
+
MY_BUILDDIR=${WORKDIR}/build
src_unpack() {
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index b6fa9a07329..ffc9ebbec14 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -82,6 +82,8 @@ DEPEND="${RDEPEND}
virtual/yacc
"
+RESTRICT="!test? ( test )"
+
MY_BUILDDIR=${WORKDIR}/build
src_unpack() {
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2019-11-18 23:39 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2019-11-18 23:39 UTC (permalink / raw
To: gentoo-commits
commit: 95b6babce3509105800f3806cfec431072225eaa
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Mon Nov 18 23:28:35 2019 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Mon Nov 18 23:37:41 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=95b6babc
sys-devel/binutils: bump patchset up to 5
Refresh patches against current master.
Reported-by: Joe Harvell
Closes: https://bugs.gentoo.org/700488
Package-Manager: Portage-2.3.79, Repoman-2.3.18
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 +-
sys-devel/binutils/binutils-9999.ebuild | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 59fd69e0655..bc0695ae77e 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -14,4 +14,4 @@ DIST binutils-2.32-patches-2.tar.xz 145672 BLAKE2B 8218e621f99cb4bcd1638c3011449
DIST binutils-2.32.tar.xz 20774880 BLAKE2B d1bdbd9c8487c091665c197974ce4bdf520b7a67ed6997a81b87e6a0af9514a091458244f583acec5ae580ac2ee5e908f67f483b8e5263cd18ced794cb235da6 SHA512 d326408f12a03d9a61a9de56584c2af12f81c2e50d2d7e835d51565df8314df01575724afa1e43bd0db45cfc9916b41519b67dfce03232aa4978704492a6994a
DIST binutils-2.33.1-patches-1.tar.xz 17944 BLAKE2B 811ad416fe9c059f645856a3123ed32303afe1d0f166a15cb6de0673b5494fdcc4c165da4a68eb7ab73f007618e3a97a5578c4b47de21e57fe501d6a21b6d595 SHA512 63b439637206d21e46d2b79383b38da2b28365a0fdea1f5ac3b665cd05e0b55cd1d7763c05567a5f7ae2c645d2ae639a27e465d535b928d9f8f0e6b94f31e1f7
DIST binutils-2.33.1.tar.xz 21490848 BLAKE2B c336a8412938dc8c224f40a763a8bea9937cca0462a8fb80e62f14aabe590107fc061a3f4b9327e1f4652cb026384d36a91b4766d4d469d2d0680932874b638c SHA512 b7a6767c6c7ca6b5cafa7080e6820b7bb3a53b7148348c438d99905defbdf0d30c9744a484ee01c9441a8153901808513366b15ba9533e20c9673c262ade36ac
-DIST binutils-9999-patches-4.tar.xz 17480 BLAKE2B 8e85fb15c740e19bb27482bea134342970fe1af8c39639a16a087c1e3b7386e469d9db6b0d1c0e1e62d550c145814e3013ef65708e91313b648a94ac5c4cafed SHA512 6d09513da6995b83c24afd0799f918281198c412cb65f04e07002fed1b036fb1c6cb075be499a2415e8b286f288b80c02fae1b1dfcd288fe216254d31206b6e3
+DIST binutils-9999-patches-5.tar.xz 17492 BLAKE2B 4d5072d26d714dbc2a65899102c35791887b3c1298eb40a72088f5f964f500fa82581ac27a47f075812610e1757ba1ca5ac7d055dccc0d819ec06a86ca98f395 SHA512 c8a843cf04b72f010eef405cc2d029e49fb1f4582686f1e0409579d544b02d249c31f7cb9cd59747bc94727e29ddaba89951043b392017c6963ca14f3a0202b1
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index ffc9ebbec14..d55698ff492 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -19,7 +19,7 @@ REQUIRED_USE="default-gold? ( gold )"
# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
# for the patchsets
-PATCH_VER=4
+PATCH_VER=5
PATCH_BINUTILS_VER=9999
case ${PV} in
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-01-04 12:31 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2020-01-04 12:31 UTC (permalink / raw
To: gentoo-commits
commit: 06a60cd676554f19aac444144f4375d998b1fb50
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 4 12:23:24 2020 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Jan 4 12:31:05 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=06a60cd6
sys-devel/binutils: backport ia64 binary section merge, bug #699180
Single new patch:
- Fix ld/PR25316 for the ia64 target by refusing to support binary merging.
Should help =dev-libs/glib-2.60.6 test suite to embed .xml files into data
section.
Reported-by: Émeric Maschino
Bug: https://bugs.gentoo.org/699180
Bug: https://sourceware.org/PR25316
Package-Manager: Portage-2.3.84, Repoman-2.3.20
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 +
sys-devel/binutils/binutils-2.32-r2.ebuild | 439 +++++++++++++++++++++++++++
sys-devel/binutils/binutils-2.33.1-r1.ebuild | 433 ++++++++++++++++++++++++++
3 files changed, 874 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index bc0695ae77e..b74d48318f5 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -11,7 +11,9 @@ DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f59
DIST binutils-2.31.1-patches-7.tar.xz 76828 BLAKE2B 354e7c3aa76c0cfe8fc6bb419a5b19294c0be09ebdff2fc4533dd16116fcd4f4a1b4c8db02233dabe33ca68347e0a30e542456988a4ead407edb47ed031e018c SHA512 c84ff9cd9f5b1e313e93d0f25bb4244950a73e0d97ec4dacb8763382219a08a01b16a8e93173032232ea4239098b29448331ed461f792e663e1117eb0811f85b
DIST binutils-2.31.1.tar.xz 20467996 BLAKE2B 6b914df1fbb7cf54f2159f71b2c2b09f3f6a569b7a3cb4cf9790d0a3733a7548bc0ea32334a178ed3b56e8b97656ae99c7abaf212601beeaeae9a0884c0f6051 SHA512 0fca326feb1d5f5fe505a827b20237fe3ec9c13eaf7ec7e35847fd71184f605ba1cefe1314b1b8f8a29c0aa9d88162849ee1c1a3e70c2f7407d88339b17edb30
DIST binutils-2.32-patches-2.tar.xz 145672 BLAKE2B 8218e621f99cb4bcd1638c3011449b94480d207eaeb79cf75c0072e0f1a86bfd1603fc4515bc40d3ac1921a18b9a211b20568f59b11b13eb44e6cff1329c5af9 SHA512 55c25a603f6175af3ade6848e5c1faba06a147d72e9a4f53d44502d97db76499485a67b278a654d18884714a7bf7b360c77c9e42dba3cdc188f805bfe461f09f
+DIST binutils-2.32-patches-3.tar.xz 151372 BLAKE2B 70d5f78d9f3e3bf9ff096b6f24babcc35c63395a5e1155a981a5ceb4b7a5706ad2ee0c77c74e910fc0eefeaed19763113186deb9665eed538dc3b8e227bef12d SHA512 5e91eff63332c2aca86a82a287ca4959a6098065ed88078265a3d79a2c851abd113e9736b75d8102a208996ed1191b0e23569921217ece975f1d9005a55afd0d
DIST binutils-2.32.tar.xz 20774880 BLAKE2B d1bdbd9c8487c091665c197974ce4bdf520b7a67ed6997a81b87e6a0af9514a091458244f583acec5ae580ac2ee5e908f67f483b8e5263cd18ced794cb235da6 SHA512 d326408f12a03d9a61a9de56584c2af12f81c2e50d2d7e835d51565df8314df01575724afa1e43bd0db45cfc9916b41519b67dfce03232aa4978704492a6994a
DIST binutils-2.33.1-patches-1.tar.xz 17944 BLAKE2B 811ad416fe9c059f645856a3123ed32303afe1d0f166a15cb6de0673b5494fdcc4c165da4a68eb7ab73f007618e3a97a5578c4b47de21e57fe501d6a21b6d595 SHA512 63b439637206d21e46d2b79383b38da2b28365a0fdea1f5ac3b665cd05e0b55cd1d7763c05567a5f7ae2c645d2ae639a27e465d535b928d9f8f0e6b94f31e1f7
+DIST binutils-2.33.1-patches-2.tar.xz 18636 BLAKE2B 0e0757329b6a83aeff4f4c450c95e73fd48fcc89f83e63f294568632bee0972552cf2f57494352c5d9a7c16a51cdbc4108b38fa6028d4388c8e76046b3da9212 SHA512 d982f68d1f5fdb384309a2a1b7426bf840a90e7a85b37229b4223b62c36cab9dd9ec0c08382c85c68adf996dec21133df3180a2fc649363adae8645f8282f71d
DIST binutils-2.33.1.tar.xz 21490848 BLAKE2B c336a8412938dc8c224f40a763a8bea9937cca0462a8fb80e62f14aabe590107fc061a3f4b9327e1f4652cb026384d36a91b4766d4d469d2d0680932874b638c SHA512 b7a6767c6c7ca6b5cafa7080e6820b7bb3a53b7148348c438d99905defbdf0d30c9744a484ee01c9441a8153901808513366b15ba9533e20c9673c262ade36ac
DIST binutils-9999-patches-5.tar.xz 17492 BLAKE2B 4d5072d26d714dbc2a65899102c35791887b3c1298eb40a72088f5f964f500fa82581ac27a47f075812610e1757ba1ca5ac7d055dccc0d819ec06a86ca98f395 SHA512 c8a843cf04b72f010eef405cc2d029e49fb1f4582686f1e0409579d544b02d249c31f7cb9cd59747bc94727e29ddaba89951043b392017c6963ca14f3a0202b1
diff --git a/sys-devel/binutils/binutils-2.32-r2.ebuild b/sys-devel/binutils/binutils-2.32-r2.ebuild
new file mode 100644
index 00000000000..e24bc140daf
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.32-r2.ebuild
@@ -0,0 +1,439 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit eutils libtool flag-o-matic gnuconfig multilib
+
+DESCRIPTION="Tools necessary to build programs"
+HOMEPAGE="https://sourceware.org/binutils/"
+LICENSE="GPL-3+"
+IUSE="default-gold doc +gold multitarget +nls +plugins static-libs test"
+REQUIRED_USE="default-gold? ( gold )"
+
+# Variables that can be set here:
+# 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=3
+PATCH_DEV=slyfox
+
+case ${PV} in
+ 9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ SLOT=${PV}
+ ;;
+ *.9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ EGIT_BRANCH=$(ver_cut 1-2)
+ EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
+ SLOT=$(ver_cut 1-2)
+ ;;
+ *)
+ SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
+ SLOT=$(ver_cut 1-2)
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
+ ;;
+esac
+
+#
+# The Gentoo patchset
+#
+PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
+PATCH_DEV=${PATCH_DEV:-slyfox}
+
+[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
+ https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
+
+# Disable gold testsuite since it always fails.
+PATCHES=( "${FILESDIR}/${PN}-2.29.1-nogoldtest.patch" )
+
+#
+# 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}
+ doc? ( sys-apps/texinfo )
+ test? ( dev-util/dejagnu )
+ nls? ( sys-devel/gettext )
+ sys-devel/flex
+ virtual/yacc
+"
+
+RESTRICT="!test? ( test )"
+
+MY_BUILDDIR=${WORKDIR}/build
+
+src_unpack() {
+ case ${PV} in
+ *9999)
+ git-r3_src_unpack
+ ;;
+ *)
+ ;;
+ esac
+ default
+ mkdir -p "${MY_BUILDDIR}"
+}
+
+src_prepare() {
+ if [[ ! -z ${PATCH_VER} ]] ; then
+ # Use upstream patch to enable development mode
+ rm -v "${WORKDIR}/patch"/0000-Gentoo-Git-is-development.patch || die
+
+ einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
+ eapply "${WORKDIR}/patch"/*.patch
+ fi
+
+ # This check should probably go somewhere else, like pkg_pretend.
+ if [[ ${CTARGET} == *-uclibc* ]] ; then
+ if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
+ die "sorry, but this binutils doesn't yet support uClibc :("
+ fi
+ fi
+
+ # Make sure our explicit libdir paths don't get clobbered. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ 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() {
+ # 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 #42033
+ strip-linguas -u */po
+
+ # Keep things sane
+ strip-flags
+
+ local x
+ echo
+ for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
+ einfo "$(printf '%10s' ${x}:) ${!x}"
+ done
+ echo
+
+ cd "${MY_BUILDDIR}"
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && 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. #497268
+ --enable-install-libiberty
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #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. #666100
+ --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
+ )
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${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}"
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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}"
+
+ # bug 637066
+ filter-flags -Wall -Wreturn-type
+
+ emake -k check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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}/
+ 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}"
+ 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.33.1-r1.ebuild b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
new file mode 100644
index 00000000000..b961ec55af1
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
@@ -0,0 +1,433 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit eutils libtool flag-o-matic gnuconfig multilib
+
+DESCRIPTION="Tools necessary to build programs"
+HOMEPAGE="https://sourceware.org/binutils/"
+LICENSE="GPL-3+"
+IUSE="default-gold doc +gold multitarget +nls +plugins static-libs test"
+REQUIRED_USE="default-gold? ( gold )"
+
+# Variables that can be set here:
+# 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=2
+PATCH_DEV=slyfox
+
+case ${PV} in
+ 9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ SLOT=${PV}
+ ;;
+ *.9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ EGIT_BRANCH=$(ver_cut 1-2)
+ EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
+ SLOT=$(ver_cut 1-2)
+ ;;
+ *)
+ SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
+ SLOT=$(ver_cut 1-2)
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
+ ;;
+esac
+
+#
+# The Gentoo patchset
+#
+PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
+PATCH_DEV=${PATCH_DEV:-slyfox}
+
+[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
+ https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
+
+#
+# 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}
+ doc? ( sys-apps/texinfo )
+ test? ( dev-util/dejagnu )
+ nls? ( sys-devel/gettext )
+ sys-devel/flex
+ virtual/yacc
+"
+
+RESTRICT="!test? ( test )"
+
+MY_BUILDDIR=${WORKDIR}/build
+
+src_unpack() {
+ case ${PV} in
+ *9999)
+ git-r3_src_unpack
+ ;;
+ *)
+ ;;
+ esac
+ default
+ mkdir -p "${MY_BUILDDIR}"
+}
+
+src_prepare() {
+ if [[ ! -z ${PATCH_VER} ]] ; then
+ einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
+ eapply "${WORKDIR}/patch"/*.patch
+ fi
+
+ # This check should probably go somewhere else, like pkg_pretend.
+ if [[ ${CTARGET} == *-uclibc* ]] ; then
+ if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
+ die "sorry, but this binutils doesn't yet support uClibc :("
+ fi
+ fi
+
+ # Make sure our explicit libdir paths don't get clobbered. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ 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() {
+ # 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 #42033
+ strip-linguas -u */po
+
+ # Keep things sane
+ strip-flags
+
+ local x
+ echo
+ for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
+ einfo "$(printf '%10s' ${x}:) ${!x}"
+ done
+ echo
+
+ cd "${MY_BUILDDIR}"
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && 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. #497268
+ --enable-install-libiberty
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #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. #666100
+ --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
+ )
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${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}"
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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}"
+
+ # bug 637066
+ filter-flags -Wall -Wreturn-type
+
+ emake -k check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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}/
+ 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}"
+ 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-01-05 12:19 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2020-01-05 12:19 UTC (permalink / raw
To: gentoo-commits
commit: 2a577c8f5bcf8864f0bade3e5e66396efc13581c
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 5 12:19:02 2020 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sun Jan 5 12:19:28 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2a577c8f
sys-devel/binutils: stable 2.32-r2 on ia64, bug #699180
Bug: https://bugs.gentoo.org/699180
Package-Manager: Portage-2.3.84, Repoman-2.3.20
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-2.32-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.32-r2.ebuild b/sys-devel/binutils/binutils-2.32-r2.ebuild
index e24bc140daf..9d02442c6e8 100644
--- a/sys-devel/binutils/binutils-2.32-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r2.ebuild
@@ -42,7 +42,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(ver_cut 1-2)
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-01-24 15:51 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2020-01-24 15:51 UTC (permalink / raw
To: gentoo-commits
commit: 451b1e7018ad437fa6f7710d8feebb9e0224ae48
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 24 15:50:26 2020 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Fri Jan 24 15:51:16 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=451b1e70
sys-devel/binutils: drop old
Package-Manager: Portage-2.3.85, Repoman-2.3.20
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/Manifest | 8 --------
sys-devel/binutils/binutils-2.26.1.ebuild | 10 ----------
sys-devel/binutils/binutils-2.27-r1.ebuild | 10 ----------
sys-devel/binutils/binutils-2.28.1.ebuild | 10 ----------
sys-devel/binutils/binutils-2.29.1-r1.ebuild | 12 ------------
5 files changed, 50 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index b74d48318f5..e320f66e00d 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -1,11 +1,3 @@
-DIST binutils-2.26.1-patches-1.0.tar.xz 11212 BLAKE2B f785930a9bf994312f3a525ef46727c582e6cd3992b5648bdf4c787f55fed4b36c69be3ac7d9962dcd72b6dbe0155dbf23d1daa14be5c7ad5da1cf634f2522aa SHA512 c520967659c66f05f7ad795bb0bc2522e139977ab3ae8cfd9ec0d093a412a7291d1cabaa6b429c618fcf7253458a6fbe5a7dc3f62e0ac9762667308067db075c
-DIST binutils-2.26.1.tar.bz2 25595243 BLAKE2B 5114ab9ebfc1097f0ebfd1e134ea098b583724d2c822fb7365b6212be0edfd313961bcee8de1193f359b7e904b23146036bfa9e3e7bc0621160bf85f573a8d44 SHA512 9d9165609fd3b0f20d616f9891fc8e2b466eb13e2bfce40125e12427f8f201d20e2b8322bb6cb2b45e8df812f0e8ac059149f8a1f69ba3ed9d86a35c6a540b67
-DIST binutils-2.27-patches-1.1.tar.xz 9828 BLAKE2B 158787c0ee2b26ad78d90b0ce3c8c0c79256d2e85d5f4b582b275953235555a6323f791a98e1de357559994fef284a910a54749dcfc3ac0aea9cfad6ee70980e SHA512 5059a784344e0554965473808b9d72af34f793e5538e82010adbbf586d583ddfd9f5ca637e6ba658e566c406244ae79b2ab5135995bcfedc8a96b9293366199d
-DIST binutils-2.27.tar.bz2 26099568 BLAKE2B e9433b4dc28b0aeaa31d21fc039459e73c47050bb79dc0cf3f00e384604c37c0c1704ac6cba79c6b15edcbfd13f17b8013efeaca422d5b0e5a7f60c202fc5d18 SHA512 cf276f84935312361a2ca077e04d0b469d23a3aed979d8ba5d92ea590904ffb2c2e7ed12cc842822bfc402836be86f479660cef3791aa62f3753d8a1a6f564cb
-DIST binutils-2.28.1-patches-1.0.tar.xz 19772 BLAKE2B 146b393b49ba868c7c064c58275ba1af3b7cbc7e97cc55b03c80d8b391955c40dd4e81ac4eeabcdfb53e41ea334a377d86300e037f8ccb810555a48dfa9da878 SHA512 c2c7d22e1013e79040c4dcb4d70649e78a070976ba3a4bc2ceb4805827b9d93eea1805c85db4fcb6b31be5218c3d7b42a4990437a7c01dc01fd7e9dedb606828
-DIST binutils-2.28.1.tar.bz2 28120394 BLAKE2B 3a0ed2bcf0c859638546b7460d9e6f0a55518402ff0c65c90ce462a318f5ae6690961616d188ce6cf0271c9f2fb8b7902782d32cf0e711068c53d3d06956d89e SHA512 5ec5212497b0fa8324f6a0884c284cb71c01942bbd39356d1ae745a5c9d97274c10f9d9c723f4bef6f0217662dfcd0c36e4e955a7599b11217658dc7b97553eb
-DIST binutils-2.29.1-patches-3.tar.xz 20904 BLAKE2B 5549cb2412123e4ad3a13935762cc0dca46215950dbf38a149caf4c6416da382a0fd7ecffe97b10bce4dfdcef5edc2673d49bb21e9d37be37e33b454a8c2bc1a SHA512 ba54efaf9e9f668d2922972acd2cdf5c3e6f174cfcc73d29953ab4ba6e157ce0cb500c583568a4e3baaaa92c9d30c394a327f29b51292acc66f8d3f20f5eae2a
-DIST binutils-2.29.1.tar.bz2 29123355 BLAKE2B 83de518a27bae0f13c57b1979493dd7f7cabae424cff5e8495d1f064da24b6ef9e1c19d1d1adad2dca7142372782023f66b4b4223170a49b96ba3834266fe878 SHA512 4063d34555526922376ccceb3f14b43e287442e82a8038cf50f4f51ad97d438c672c0e310ca4b856c9aff5aa9911073e256e8298a7a3f1844eeb60b90d955592
DIST binutils-2.30-patches-5.tar.xz 590864 BLAKE2B 71de4d08f92ab1898ad576a21763f955067cbbed543250888e0c5d51f4ef77d0d829049e9a835691cf2de03965fbcc9bcfa092eb304c03f9b885e7a3dadab286 SHA512 029b3be6ae9b8620f8580a35701bd4517b4e0232ff3cf9983b3808475c7443cbf500b6cace2c052df0bd1e47202838f4d2453238db28709a947117071d9ae804
DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f5916fb82ce95ceab424fd8dc19f6daa7ac32a149f222ccdcc603354165cc206fde070eaa44fe2cc5e57486efc7868 SHA512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839
DIST binutils-2.31.1-patches-7.tar.xz 76828 BLAKE2B 354e7c3aa76c0cfe8fc6bb419a5b19294c0be09ebdff2fc4533dd16116fcd4f4a1b4c8db02233dabe33ca68347e0a30e542456988a4ead407edb47ed031e018c SHA512 c84ff9cd9f5b1e313e93d0f25bb4244950a73e0d97ec4dacb8763382219a08a01b16a8e93173032232ea4239098b29448331ed461f792e663e1117eb0811f85b
diff --git a/sys-devel/binutils/binutils-2.26.1.ebuild b/sys-devel/binutils/binutils-2.26.1.ebuild
deleted file mode 100644
index e3892466c1c..00000000000
--- a/sys-devel/binutils/binutils-2.26.1.ebuild
+++ /dev/null
@@ -1,10 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-PATCHVER="1.0"
-ELF2FLT_VER=""
-inherit toolchain-binutils
-
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86"
diff --git a/sys-devel/binutils/binutils-2.27-r1.ebuild b/sys-devel/binutils/binutils-2.27-r1.ebuild
deleted file mode 100644
index a036cfc9ed4..00000000000
--- a/sys-devel/binutils/binutils-2.27-r1.ebuild
+++ /dev/null
@@ -1,10 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-PATCHVER="1.1"
-ELF2FLT_VER=""
-inherit toolchain-binutils
-
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
diff --git a/sys-devel/binutils/binutils-2.28.1.ebuild b/sys-devel/binutils/binutils-2.28.1.ebuild
deleted file mode 100644
index e3892466c1c..00000000000
--- a/sys-devel/binutils/binutils-2.28.1.ebuild
+++ /dev/null
@@ -1,10 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-PATCHVER="1.0"
-ELF2FLT_VER=""
-inherit toolchain-binutils
-
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86"
diff --git a/sys-devel/binutils/binutils-2.29.1-r1.ebuild b/sys-devel/binutils/binutils-2.29.1-r1.ebuild
deleted file mode 100644
index 73230fd9e6a..00000000000
--- a/sys-devel/binutils/binutils-2.29.1-r1.ebuild
+++ /dev/null
@@ -1,12 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-PATCHVER="3"
-ELF2FLT_VER=""
-inherit toolchain-binutils
-
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh ~sparc x86"
-
-PATCHES=( "${FILESDIR}/${P}-nogoldtest.patch" )
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-02-01 22:00 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2020-02-01 22:00 UTC (permalink / raw
To: gentoo-commits
commit: d5f407b588017047dd510261c32d7570aba2116a
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Feb 1 21:06:12 2020 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Feb 1 22:00:31 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d5f407b5
sys-devel/binutils: bump up to 2.34
Package-Manager: Portage-2.3.86, Repoman-2.3.20
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 +
sys-devel/binutils/binutils-2.34.ebuild | 436 ++++++++++++++++++++++++++++++++
2 files changed, 438 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index e320f66e00d..57696899ef0 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -8,4 +8,6 @@ DIST binutils-2.32.tar.xz 20774880 BLAKE2B d1bdbd9c8487c091665c197974ce4bdf520b7
DIST binutils-2.33.1-patches-1.tar.xz 17944 BLAKE2B 811ad416fe9c059f645856a3123ed32303afe1d0f166a15cb6de0673b5494fdcc4c165da4a68eb7ab73f007618e3a97a5578c4b47de21e57fe501d6a21b6d595 SHA512 63b439637206d21e46d2b79383b38da2b28365a0fdea1f5ac3b665cd05e0b55cd1d7763c05567a5f7ae2c645d2ae639a27e465d535b928d9f8f0e6b94f31e1f7
DIST binutils-2.33.1-patches-2.tar.xz 18636 BLAKE2B 0e0757329b6a83aeff4f4c450c95e73fd48fcc89f83e63f294568632bee0972552cf2f57494352c5d9a7c16a51cdbc4108b38fa6028d4388c8e76046b3da9212 SHA512 d982f68d1f5fdb384309a2a1b7426bf840a90e7a85b37229b4223b62c36cab9dd9ec0c08382c85c68adf996dec21133df3180a2fc649363adae8645f8282f71d
DIST binutils-2.33.1.tar.xz 21490848 BLAKE2B c336a8412938dc8c224f40a763a8bea9937cca0462a8fb80e62f14aabe590107fc061a3f4b9327e1f4652cb026384d36a91b4766d4d469d2d0680932874b638c SHA512 b7a6767c6c7ca6b5cafa7080e6820b7bb3a53b7148348c438d99905defbdf0d30c9744a484ee01c9441a8153901808513366b15ba9533e20c9673c262ade36ac
+DIST binutils-2.34-patches-1.tar.xz 20388 BLAKE2B 8828505f62259a307de445357320827e7f6bc416a7f4c72140add505f62eef3928c7daec13be158b52c2a7a1d989f539025e4be6ec27ef80ede81477a42c5042 SHA512 951dffcc30ad5706dc48e71995217655c5d96472446ab66a357f19486b57d1868143a9809887eab7ba8c42c33124f8b37d3bab6618388ea8a08b4399d348a645
+DIST binutils-2.34.tar.xz 21637796 BLAKE2B 07dd23916a7d27f71c3f160c8c16abe2bd4fce294c738c665a012a3be6a87dbe8160d0c38740524f9025e01d438e99b2a94bcf9f9f79ee214f5dd033de8aad3d SHA512 2c7976939dcf5e8c5b7374cccd39bfe803b1bec73c6abfa0eb17c24e1942574c6bdb874c66a092a82adc443182eacd8a5a8001c19a76101f0c7ba40c27de0bbd
DIST binutils-9999-patches-5.tar.xz 17492 BLAKE2B 4d5072d26d714dbc2a65899102c35791887b3c1298eb40a72088f5f964f500fa82581ac27a47f075812610e1757ba1ca5ac7d055dccc0d819ec06a86ca98f395 SHA512 c8a843cf04b72f010eef405cc2d029e49fb1f4582686f1e0409579d544b02d249c31f7cb9cd59747bc94727e29ddaba89951043b392017c6963ca14f3a0202b1
diff --git a/sys-devel/binutils/binutils-2.34.ebuild b/sys-devel/binutils/binutils-2.34.ebuild
new file mode 100644
index 00000000000..8dcfe353355
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.34.ebuild
@@ -0,0 +1,436 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit eutils libtool flag-o-matic gnuconfig multilib
+
+DESCRIPTION="Tools necessary to build programs"
+HOMEPAGE="https://sourceware.org/binutils/"
+LICENSE="GPL-3+"
+IUSE="default-gold doc +gold multitarget +nls +plugins static-libs test"
+REQUIRED_USE="default-gold? ( gold )"
+
+# Variables that can be set here:
+# 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=1
+PATCH_DEV=slyfox
+
+case ${PV} in
+ 9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ SLOT=${PV}
+ ;;
+ *.9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ EGIT_BRANCH=$(ver_cut 1-2)
+ EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
+ SLOT=$(ver_cut 1-2)
+ ;;
+ *)
+ SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
+ SLOT=$(ver_cut 1-2)
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
+ ;;
+esac
+
+#
+# The Gentoo patchset
+#
+PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
+PATCH_DEV=${PATCH_DEV:-slyfox}
+
+[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
+ https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
+
+#
+# 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}
+ doc? ( sys-apps/texinfo )
+ test? ( dev-util/dejagnu )
+ nls? ( sys-devel/gettext )
+ sys-devel/flex
+ virtual/yacc
+"
+
+RESTRICT="!test? ( test )"
+
+MY_BUILDDIR=${WORKDIR}/build
+
+src_unpack() {
+ case ${PV} in
+ *9999)
+ git-r3_src_unpack
+ ;;
+ *)
+ ;;
+ esac
+ default
+ mkdir -p "${MY_BUILDDIR}"
+}
+
+src_prepare() {
+ if [[ ! -z ${PATCH_VER} ]] ; then
+ # Use upstream patch to enable development mode
+ rm -v "${WORKDIR}/patch"/0000-Gentoo-Git-is-development.patch || die
+
+ einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
+ eapply "${WORKDIR}/patch"/*.patch
+ fi
+
+ # This check should probably go somewhere else, like pkg_pretend.
+ if [[ ${CTARGET} == *-uclibc* ]] ; then
+ if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
+ die "sorry, but this binutils doesn't yet support uClibc :("
+ fi
+ fi
+
+ # Make sure our explicit libdir paths don't get clobbered. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ 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() {
+ # 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 #42033
+ strip-linguas -u */po
+
+ # Keep things sane
+ strip-flags
+
+ local x
+ echo
+ for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
+ einfo "$(printf '%10s' ${x}:) ${!x}"
+ done
+ echo
+
+ cd "${MY_BUILDDIR}"
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && 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. #497268
+ --enable-install-libiberty
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #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. #666100
+ --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
+ )
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${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}"
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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}"
+
+ # bug 637066
+ filter-flags -Wall -Wreturn-type
+
+ emake -k check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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}/
+ 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}"
+ 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-02-13 21:40 David Seifert
0 siblings, 0 replies; 477+ messages in thread
From: David Seifert @ 2020-02-13 21:40 UTC (permalink / raw
To: gentoo-commits
commit: 9cf48023bd16411d614f5dd97f8a37a04f9d3b2b
Author: David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Thu Feb 13 21:39:11 2020 +0000
Commit: David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Thu Feb 13 21:39:11 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9cf48023
sys-devel/binutils: [QA] inherit toolchain-funcs.eclass directly
Package-Manager: Portage-2.3.88, Repoman-2.3.20
Signed-off-by: David Seifert <soap <AT> gentoo.org>
sys-devel/binutils/binutils-2.30-r4.ebuild | 2 +-
sys-devel/binutils/binutils-2.31.1-r6.ebuild | 2 +-
sys-devel/binutils/binutils-2.32-r1.ebuild | 2 +-
sys-devel/binutils/binutils-2.32-r2.ebuild | 2 +-
sys-devel/binutils/binutils-2.33.1-r1.ebuild | 2 +-
sys-devel/binutils/binutils-2.33.1.ebuild | 4 ++--
sys-devel/binutils/binutils-2.34.ebuild | 2 +-
sys-devel/binutils/binutils-9999.ebuild | 4 ++--
8 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.30-r4.ebuild b/sys-devel/binutils/binutils-2.30-r4.ebuild
index 1f63ac6d03f..bbbf3b1bd43 100644
--- a/sys-devel/binutils/binutils-2.30-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.30-r4.ebuild
@@ -3,7 +3,7 @@
EAPI=6
-inherit eutils libtool flag-o-matic gnuconfig multilib versionator
+inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs versionator
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
diff --git a/sys-devel/binutils/binutils-2.31.1-r6.ebuild b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
index c24eba02a9f..e8bacea3718 100644
--- a/sys-devel/binutils/binutils-2.31.1-r6.ebuild
+++ b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
@@ -3,7 +3,7 @@
EAPI=6
-inherit eutils libtool flag-o-matic gnuconfig multilib versionator
+inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs versionator
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
diff --git a/sys-devel/binutils/binutils-2.32-r1.ebuild b/sys-devel/binutils/binutils-2.32-r1.ebuild
index 530f1caf02a..a97a41e7845 100644
--- a/sys-devel/binutils/binutils-2.32-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r1.ebuild
@@ -3,7 +3,7 @@
EAPI=6
-inherit eutils libtool flag-o-matic gnuconfig multilib versionator
+inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs versionator
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
diff --git a/sys-devel/binutils/binutils-2.32-r2.ebuild b/sys-devel/binutils/binutils-2.32-r2.ebuild
index 9d02442c6e8..3e54336e168 100644
--- a/sys-devel/binutils/binutils-2.32-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r2.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-inherit eutils libtool flag-o-matic gnuconfig multilib
+inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
diff --git a/sys-devel/binutils/binutils-2.33.1-r1.ebuild b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
index c76f4471a2f..f43e2da21fc 100644
--- a/sys-devel/binutils/binutils-2.33.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-inherit eutils libtool flag-o-matic gnuconfig multilib
+inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
diff --git a/sys-devel/binutils/binutils-2.33.1.ebuild b/sys-devel/binutils/binutils-2.33.1.ebuild
index 12f4ae43053..164192f9c5c 100644
--- a/sys-devel/binutils/binutils-2.33.1.ebuild
+++ b/sys-devel/binutils/binutils-2.33.1.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit eutils libtool flag-o-matic gnuconfig multilib
+inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
diff --git a/sys-devel/binutils/binutils-2.34.ebuild b/sys-devel/binutils/binutils-2.34.ebuild
index d2f3d447c2b..b85960a8eee 100644
--- a/sys-devel/binutils/binutils-2.34.ebuild
+++ b/sys-devel/binutils/binutils-2.34.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-inherit eutils libtool flag-o-matic gnuconfig multilib
+inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 67a0fcb0d90..a735c2f7e2e 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit eutils libtool flag-o-matic gnuconfig multilib
+inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-03-01 7:45 Mikle Kolyada
0 siblings, 0 replies; 477+ messages in thread
From: Mikle Kolyada @ 2020-03-01 7:45 UTC (permalink / raw
To: gentoo-commits
commit: adea78c3338bbf76acfb0c316f3bb914f58e3a28
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sun Mar 1 07:45:18 2020 +0000
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sun Mar 1 07:45:18 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=adea78c3
sys-devel/binutils: amd64 stable wrt big #711106
Package-Manager: Portage-2.3.84, Repoman-2.3.20
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>
sys-devel/binutils/binutils-2.33.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.33.1-r1.ebuild b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
index f43e2da21fc..e22336ceccd 100644
--- a/sys-devel/binutils/binutils-2.33.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
@@ -42,7 +42,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(ver_cut 1-2)
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-03-02 12:28 Agostino Sarubbo
0 siblings, 0 replies; 477+ messages in thread
From: Agostino Sarubbo @ 2020-03-02 12:28 UTC (permalink / raw
To: gentoo-commits
commit: a2a36f58a5a28704111f47f68564dfa246739d28
Author: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 2 12:28:11 2020 +0000
Commit: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
CommitDate: Mon Mar 2 12:28:11 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a2a36f58
sys-devel/binutils: arm stable wrt bug #711106
Package-Manager: Portage-2.3.89, Repoman-2.3.20
RepoMan-Options: --include-arches="arm"
Signed-off-by: Agostino Sarubbo <ago <AT> gentoo.org>
sys-devel/binutils/binutils-2.33.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.33.1-r1.ebuild b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
index e22336ceccd..c2d3157a738 100644
--- a/sys-devel/binutils/binutils-2.33.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
@@ -42,7 +42,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(ver_cut 1-2)
- KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
+ KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-03-02 12:29 Agostino Sarubbo
0 siblings, 0 replies; 477+ messages in thread
From: Agostino Sarubbo @ 2020-03-02 12:29 UTC (permalink / raw
To: gentoo-commits
commit: 7e9667ad2c73801b8997a344b5cd1998d9f23c89
Author: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 2 12:29:38 2020 +0000
Commit: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
CommitDate: Mon Mar 2 12:29:38 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7e9667ad
sys-devel/binutils: sparc stable wrt bug #711106
Package-Manager: Portage-2.3.89, Repoman-2.3.20
RepoMan-Options: --include-arches="sparc"
Signed-off-by: Agostino Sarubbo <ago <AT> gentoo.org>
sys-devel/binutils/binutils-2.33.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.33.1-r1.ebuild b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
index c2d3157a738..3c43f5d7180 100644
--- a/sys-devel/binutils/binutils-2.33.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
@@ -42,7 +42,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(ver_cut 1-2)
- KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
+ KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh sparc ~x86"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-03-02 12:32 Agostino Sarubbo
0 siblings, 0 replies; 477+ messages in thread
From: Agostino Sarubbo @ 2020-03-02 12:32 UTC (permalink / raw
To: gentoo-commits
commit: f3282c4a620791f748530f9ba3c3b96789db0692
Author: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 2 12:31:43 2020 +0000
Commit: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
CommitDate: Mon Mar 2 12:31:58 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f3282c4a
sys-devel/binutils: x86 stable wrt bug #711106
Package-Manager: Portage-2.3.89, Repoman-2.3.20
RepoMan-Options: --include-arches="x86"
Signed-off-by: Agostino Sarubbo <ago <AT> gentoo.org>
sys-devel/binutils/binutils-2.33.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.33.1-r1.ebuild b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
index 3c43f5d7180..c7c91dd5cd9 100644
--- a/sys-devel/binutils/binutils-2.33.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
@@ -42,7 +42,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(ver_cut 1-2)
- KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh sparc ~x86"
+ KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh sparc x86"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-03-02 12:34 Agostino Sarubbo
0 siblings, 0 replies; 477+ messages in thread
From: Agostino Sarubbo @ 2020-03-02 12:34 UTC (permalink / raw
To: gentoo-commits
commit: 8e0c1efc8b373ab321eaa29f9f9c218d54ec4a78
Author: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 2 12:33:57 2020 +0000
Commit: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
CommitDate: Mon Mar 2 12:33:57 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8e0c1efc
sys-devel/binutils: s390 stable wrt bug #711106
Package-Manager: Portage-2.3.89, Repoman-2.3.20
RepoMan-Options: --include-arches="s390"
Signed-off-by: Agostino Sarubbo <ago <AT> gentoo.org>
sys-devel/binutils/binutils-2.33.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.33.1-r1.ebuild b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
index c7c91dd5cd9..ab3f52ed077 100644
--- a/sys-devel/binutils/binutils-2.33.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
@@ -42,7 +42,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(ver_cut 1-2)
- KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh sparc x86"
+ KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv s390 ~sh sparc x86"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-03-02 12:38 Agostino Sarubbo
0 siblings, 0 replies; 477+ messages in thread
From: Agostino Sarubbo @ 2020-03-02 12:38 UTC (permalink / raw
To: gentoo-commits
commit: c50b281441551ee5c6f0baa70b207c32f81101d4
Author: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 2 12:37:54 2020 +0000
Commit: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
CommitDate: Mon Mar 2 12:37:54 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c50b2814
sys-devel/binutils: ia64 stable wrt bug #711106
Package-Manager: Portage-2.3.89, Repoman-2.3.20
RepoMan-Options: --include-arches="ia64"
Signed-off-by: Agostino Sarubbo <ago <AT> gentoo.org>
sys-devel/binutils/binutils-2.33.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.33.1-r1.ebuild b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
index ab3f52ed077..e897561fb20 100644
--- a/sys-devel/binutils/binutils-2.33.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
@@ -42,7 +42,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(ver_cut 1-2)
- KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv s390 ~sh sparc x86"
+ KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv s390 ~sh sparc x86"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-03-02 12:39 Agostino Sarubbo
0 siblings, 0 replies; 477+ messages in thread
From: Agostino Sarubbo @ 2020-03-02 12:39 UTC (permalink / raw
To: gentoo-commits
commit: 299983b8065d808a1d9e8bb55bc404ac13b7d881
Author: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 2 12:39:07 2020 +0000
Commit: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
CommitDate: Mon Mar 2 12:39:07 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=299983b8
sys-devel/binutils: ppc64 stable wrt bug #711106
Package-Manager: Portage-2.3.89, Repoman-2.3.20
RepoMan-Options: --include-arches="ppc64"
Signed-off-by: Agostino Sarubbo <ago <AT> gentoo.org>
sys-devel/binutils/binutils-2.33.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.33.1-r1.ebuild b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
index e897561fb20..e38048dc8eb 100644
--- a/sys-devel/binutils/binutils-2.33.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
@@ -42,7 +42,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(ver_cut 1-2)
- KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv s390 ~sh sparc x86"
+ KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ~ppc ppc64 ~riscv s390 ~sh sparc x86"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-03-02 15:22 Agostino Sarubbo
0 siblings, 0 replies; 477+ messages in thread
From: Agostino Sarubbo @ 2020-03-02 15:22 UTC (permalink / raw
To: gentoo-commits
commit: 3a88caa1c16fa40507d19709e949e0ac4cf72f3f
Author: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 2 15:22:25 2020 +0000
Commit: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
CommitDate: Mon Mar 2 15:22:25 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3a88caa1
sys-devel/binutils: ppc stable wrt bug #711106
Package-Manager: Portage-2.3.89, Repoman-2.3.20
RepoMan-Options: --include-arches="ppc"
Signed-off-by: Agostino Sarubbo <ago <AT> gentoo.org>
sys-devel/binutils/binutils-2.33.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.33.1-r1.ebuild b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
index e38048dc8eb..5a6771f28b6 100644
--- a/sys-devel/binutils/binutils-2.33.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
@@ -42,7 +42,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(ver_cut 1-2)
- KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ~ppc ppc64 ~riscv s390 ~sh sparc x86"
+ KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~riscv s390 ~sh sparc x86"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-03-06 13:31 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2020-03-06 13:31 UTC (permalink / raw
To: gentoo-commits
commit: 2346bb397b5eb688b44715c73ead24a638e88530
Author: Andreas K. Huettel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 6 13:29:56 2020 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Mar 6 13:29:56 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2346bb39
sys-devel/binutils: Remove old
Package-Manager: Portage-2.3.87, Repoman-2.3.20
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 -
sys-devel/binutils/binutils-2.33.1.ebuild | 433 ------------------------------
2 files changed, 434 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 57696899ef0..3621a419748 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -5,7 +5,6 @@ DIST binutils-2.31.1.tar.xz 20467996 BLAKE2B 6b914df1fbb7cf54f2159f71b2c2b09f3f6
DIST binutils-2.32-patches-2.tar.xz 145672 BLAKE2B 8218e621f99cb4bcd1638c3011449b94480d207eaeb79cf75c0072e0f1a86bfd1603fc4515bc40d3ac1921a18b9a211b20568f59b11b13eb44e6cff1329c5af9 SHA512 55c25a603f6175af3ade6848e5c1faba06a147d72e9a4f53d44502d97db76499485a67b278a654d18884714a7bf7b360c77c9e42dba3cdc188f805bfe461f09f
DIST binutils-2.32-patches-3.tar.xz 151372 BLAKE2B 70d5f78d9f3e3bf9ff096b6f24babcc35c63395a5e1155a981a5ceb4b7a5706ad2ee0c77c74e910fc0eefeaed19763113186deb9665eed538dc3b8e227bef12d SHA512 5e91eff63332c2aca86a82a287ca4959a6098065ed88078265a3d79a2c851abd113e9736b75d8102a208996ed1191b0e23569921217ece975f1d9005a55afd0d
DIST binutils-2.32.tar.xz 20774880 BLAKE2B d1bdbd9c8487c091665c197974ce4bdf520b7a67ed6997a81b87e6a0af9514a091458244f583acec5ae580ac2ee5e908f67f483b8e5263cd18ced794cb235da6 SHA512 d326408f12a03d9a61a9de56584c2af12f81c2e50d2d7e835d51565df8314df01575724afa1e43bd0db45cfc9916b41519b67dfce03232aa4978704492a6994a
-DIST binutils-2.33.1-patches-1.tar.xz 17944 BLAKE2B 811ad416fe9c059f645856a3123ed32303afe1d0f166a15cb6de0673b5494fdcc4c165da4a68eb7ab73f007618e3a97a5578c4b47de21e57fe501d6a21b6d595 SHA512 63b439637206d21e46d2b79383b38da2b28365a0fdea1f5ac3b665cd05e0b55cd1d7763c05567a5f7ae2c645d2ae639a27e465d535b928d9f8f0e6b94f31e1f7
DIST binutils-2.33.1-patches-2.tar.xz 18636 BLAKE2B 0e0757329b6a83aeff4f4c450c95e73fd48fcc89f83e63f294568632bee0972552cf2f57494352c5d9a7c16a51cdbc4108b38fa6028d4388c8e76046b3da9212 SHA512 d982f68d1f5fdb384309a2a1b7426bf840a90e7a85b37229b4223b62c36cab9dd9ec0c08382c85c68adf996dec21133df3180a2fc649363adae8645f8282f71d
DIST binutils-2.33.1.tar.xz 21490848 BLAKE2B c336a8412938dc8c224f40a763a8bea9937cca0462a8fb80e62f14aabe590107fc061a3f4b9327e1f4652cb026384d36a91b4766d4d469d2d0680932874b638c SHA512 b7a6767c6c7ca6b5cafa7080e6820b7bb3a53b7148348c438d99905defbdf0d30c9744a484ee01c9441a8153901808513366b15ba9533e20c9673c262ade36ac
DIST binutils-2.34-patches-1.tar.xz 20388 BLAKE2B 8828505f62259a307de445357320827e7f6bc416a7f4c72140add505f62eef3928c7daec13be158b52c2a7a1d989f539025e4be6ec27ef80ede81477a42c5042 SHA512 951dffcc30ad5706dc48e71995217655c5d96472446ab66a357f19486b57d1868143a9809887eab7ba8c42c33124f8b37d3bab6618388ea8a08b4399d348a645
diff --git a/sys-devel/binutils/binutils-2.33.1.ebuild b/sys-devel/binutils/binutils-2.33.1.ebuild
deleted file mode 100644
index 164192f9c5c..00000000000
--- a/sys-devel/binutils/binutils-2.33.1.ebuild
+++ /dev/null
@@ -1,433 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="https://sourceware.org/binutils/"
-LICENSE="GPL-3+"
-IUSE="default-gold doc +gold multitarget +nls +plugins static-libs test"
-REQUIRED_USE="default-gold? ( gold )"
-
-# Variables that can be set here:
-# 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=1
-PATCH_DEV=dilfridge
-
-case ${PV} in
- 9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- SLOT=${PV}
- ;;
- *.9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- EGIT_BRANCH=$(ver_cut 1-2)
- EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
- SLOT=$(ver_cut 1-2)
- ;;
- *)
- SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
- SLOT=$(ver_cut 1-2)
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
- ;;
-esac
-
-#
-# The Gentoo patchset
-#
-PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
-PATCH_DEV=${PATCH_DEV:-slyfox}
-
-[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
- https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
-
-#
-# 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}
- doc? ( sys-apps/texinfo )
- test? ( dev-util/dejagnu )
- nls? ( sys-devel/gettext )
- sys-devel/flex
- virtual/yacc
-"
-
-RESTRICT="!test? ( test )"
-
-MY_BUILDDIR=${WORKDIR}/build
-
-src_unpack() {
- case ${PV} in
- *9999)
- git-r3_src_unpack
- ;;
- *)
- ;;
- esac
- default
- mkdir -p "${MY_BUILDDIR}"
-}
-
-src_prepare() {
- if [[ ! -z ${PATCH_VER} ]] ; then
- einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
- eapply "${WORKDIR}/patch"/*.patch
- fi
-
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
- # Make sure our explicit libdir paths don't get clobbered. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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() {
- # 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 #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}"
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #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. #666100
- --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
- )
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
-
- # bug 637066
- filter-flags -Wall -Wreturn-type
-
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- # see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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}/
- 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}"
- 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-03-09 7:56 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2020-03-09 7:56 UTC (permalink / raw
To: gentoo-commits
commit: 989e9c334ed51f49865123470fd52cbf07409a02
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 9 07:56:24 2020 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Mon Mar 9 07:56:39 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=989e9c33
sys-devel/binutils: drop old
Package-Manager: Portage-2.3.93, Repoman-2.3.20
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/Manifest | 4 -
sys-devel/binutils/binutils-2.30-r4.ebuild | 422 -------------------------
sys-devel/binutils/binutils-2.31.1-r6.ebuild | 439 ---------------------------
3 files changed, 865 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 3621a419748..6c5a265a878 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -1,7 +1,3 @@
-DIST binutils-2.30-patches-5.tar.xz 590864 BLAKE2B 71de4d08f92ab1898ad576a21763f955067cbbed543250888e0c5d51f4ef77d0d829049e9a835691cf2de03965fbcc9bcfa092eb304c03f9b885e7a3dadab286 SHA512 029b3be6ae9b8620f8580a35701bd4517b4e0232ff3cf9983b3808475c7443cbf500b6cace2c052df0bd1e47202838f4d2453238db28709a947117071d9ae804
-DIST binutils-2.30.tar.xz 20286700 BLAKE2B 2dd5436a15a601011a1950e6082ec00082f5916fb82ce95ceab424fd8dc19f6daa7ac32a149f222ccdcc603354165cc206fde070eaa44fe2cc5e57486efc7868 SHA512 e747ea20d8d79fcd21b9d9f6695059caa7189d60f19256da398e34b789fea9a133c32b192e9693b5828d27683739b0198431bf8b3e39fb3b04884cf89d9aa839
-DIST binutils-2.31.1-patches-7.tar.xz 76828 BLAKE2B 354e7c3aa76c0cfe8fc6bb419a5b19294c0be09ebdff2fc4533dd16116fcd4f4a1b4c8db02233dabe33ca68347e0a30e542456988a4ead407edb47ed031e018c SHA512 c84ff9cd9f5b1e313e93d0f25bb4244950a73e0d97ec4dacb8763382219a08a01b16a8e93173032232ea4239098b29448331ed461f792e663e1117eb0811f85b
-DIST binutils-2.31.1.tar.xz 20467996 BLAKE2B 6b914df1fbb7cf54f2159f71b2c2b09f3f6a569b7a3cb4cf9790d0a3733a7548bc0ea32334a178ed3b56e8b97656ae99c7abaf212601beeaeae9a0884c0f6051 SHA512 0fca326feb1d5f5fe505a827b20237fe3ec9c13eaf7ec7e35847fd71184f605ba1cefe1314b1b8f8a29c0aa9d88162849ee1c1a3e70c2f7407d88339b17edb30
DIST binutils-2.32-patches-2.tar.xz 145672 BLAKE2B 8218e621f99cb4bcd1638c3011449b94480d207eaeb79cf75c0072e0f1a86bfd1603fc4515bc40d3ac1921a18b9a211b20568f59b11b13eb44e6cff1329c5af9 SHA512 55c25a603f6175af3ade6848e5c1faba06a147d72e9a4f53d44502d97db76499485a67b278a654d18884714a7bf7b360c77c9e42dba3cdc188f805bfe461f09f
DIST binutils-2.32-patches-3.tar.xz 151372 BLAKE2B 70d5f78d9f3e3bf9ff096b6f24babcc35c63395a5e1155a981a5ceb4b7a5706ad2ee0c77c74e910fc0eefeaed19763113186deb9665eed538dc3b8e227bef12d SHA512 5e91eff63332c2aca86a82a287ca4959a6098065ed88078265a3d79a2c851abd113e9736b75d8102a208996ed1191b0e23569921217ece975f1d9005a55afd0d
DIST binutils-2.32.tar.xz 20774880 BLAKE2B d1bdbd9c8487c091665c197974ce4bdf520b7a67ed6997a81b87e6a0af9514a091458244f583acec5ae580ac2ee5e908f67f483b8e5263cd18ced794cb235da6 SHA512 d326408f12a03d9a61a9de56584c2af12f81c2e50d2d7e835d51565df8314df01575724afa1e43bd0db45cfc9916b41519b67dfce03232aa4978704492a6994a
diff --git a/sys-devel/binutils/binutils-2.30-r4.ebuild b/sys-devel/binutils/binutils-2.30-r4.ebuild
deleted file mode 100644
index bbbf3b1bd43..00000000000
--- a/sys-devel/binutils/binutils-2.30-r4.ebuild
+++ /dev/null
@@ -1,422 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs versionator
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="https://sourceware.org/binutils/"
-LICENSE="GPL-3+"
-IUSE="+cxx doc multitarget +nls static-libs test"
-
-# Variables that can be set here:
-# 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
-# Default: dilfridge :)
-
-PATCH_VER=5
-
-case ${PV} in
- 9999)
- BVER="git"
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- ;;
- *)
- BVER=${PV}
- SRC_URI="mirror://gnu/binutils/binutils-${BVER}.tar.xz https://sourceware.org/pub/binutils/releases/binutils-${BVER}.tar.xz"
- ;;
-esac
-SLOT="${BVER}"
-KEYWORDS="~alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86"
-
-#
-# The Gentoo patchset
-#
-PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${BVER}}
-PATCH_DEV=${PATCH_DEV:-slyfox}
-
-[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
- https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
-
-#
-# 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}
- doc? ( sys-apps/texinfo )
- test? ( dev-util/dejagnu )
- nls? ( sys-devel/gettext )
- sys-devel/flex
- virtual/yacc
-"
-
-RESTRICT="!test? ( test )"
-
-if is_cross ; then
- # The build assumes the host has libiberty and such when cross-compiling
- # its build tools. We should probably make binutils itself build a local
- # copy to use, but until then, be lazy.
- DEPEND+=" >=sys-libs/binutils-libs-${PV}"
-fi
-
-MY_BUILDDIR=${WORKDIR}/build
-
-src_unpack() {
- case ${PV} in
- 9999)
- git-r3_src_unpack;
- ;;
- *)
- default
- ;;
- esac
- mkdir -p "${MY_BUILDDIR}"
-}
-
-src_prepare() {
- if [[ ! -z ${PATCH_VER} ]] ; then
- einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
- eapply "${WORKDIR}/patch"/*.patch
- fi
-
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
- # Make sure our explicit libdir paths don't get clobbered. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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 ${BVER}"
- [[ -n ${PATCH_VER} ]] && printf " p${PATCH_VER}"
-}
-
-src_configure() {
- # Setup some paths
- LIBPATH=/usr/$(get_libdir)/binutils/${CTARGET}/${BVER}
- INCPATH=${LIBPATH}/include
- DATAPATH=/usr/share/binutils-data/${CTARGET}/${BVER}
- if is_cross ; then
- TOOLPATH=/usr/${CHOST}/${CTARGET}
- else
- TOOLPATH=/usr/${CTARGET}
- fi
- BINPATH=${TOOLPATH}/binutils-bin/${BVER}
-
- # Make sure we filter $LINGUAS so that only ones that
- # actually work make it through #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}"
- local myconf=()
-
- # enable gold (installed as ld.gold) and ld's plugin architecture
- if use cxx ; then
- myconf+=( --enable-gold )
- myconf+=( --enable-plugins )
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #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. #666100
- --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
- )
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- # see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- for d in ../* ; do
- [[ ${d} == ../${BVER} ]] && 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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}/
- 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="${BVER}"
- LIBPATH="${EPREFIX}${LIBPATH}"
- EOF
- newins "${T}"/env.d ${CTARGET}-${BVER}
-
- # Handle documentation
- if ! is_cross ; then
- cd "${S}"
- 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}-${BVER}
-}
-
-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}-${BVER} ]] ; 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}-${BVER} ]] ; then
- binutils-config ${CTARGET}-${BVER}
- 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}/${BVER}
diff --git a/sys-devel/binutils/binutils-2.31.1-r6.ebuild b/sys-devel/binutils/binutils-2.31.1-r6.ebuild
deleted file mode 100644
index e8bacea3718..00000000000
--- a/sys-devel/binutils/binutils-2.31.1-r6.ebuild
+++ /dev/null
@@ -1,439 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs versionator
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="https://sourceware.org/binutils/"
-LICENSE="GPL-3+"
-# USE="+cxx" is a transitional flag until llvm migrates to new flags:
-# bug #677888
-IUSE="+cxx default-gold doc +gold multitarget +nls +plugins static-libs test"
-REQUIRED_USE="cxx? ( gold plugins ) default-gold? ( gold )"
-
-# Variables that can be set here:
-# 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
-# Default: dilfridge :)
-
-PATCH_VER=7
-PATCH_DEV=dilfridge
-
-case ${PV} in
- 9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- SLOT=${PV}
- ;;
- *.9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- EGIT_BRANCH=$(get_version_component_range 1-2)
- EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
- SLOT=$(get_version_component_range 1-2)
- ;;
- *)
- SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
- SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86"
- ;;
-esac
-
-#
-# The Gentoo patchset
-#
-PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
-PATCH_DEV=${PATCH_DEV:-slyfox}
-
-[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
- https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
-
-# Disable gold testsuite since it always fails.
-PATCHES=( "${FILESDIR}/${PN}-2.29.1-nogoldtest.patch" )
-
-#
-# 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}
- doc? ( sys-apps/texinfo )
- test? ( dev-util/dejagnu )
- nls? ( sys-devel/gettext )
- sys-devel/flex
- virtual/yacc
-"
-
-RESTRICT="!test? ( test )"
-
-MY_BUILDDIR=${WORKDIR}/build
-
-src_unpack() {
- case ${PV} in
- *9999)
- git-r3_src_unpack
- ;;
- *)
- ;;
- esac
- default
- mkdir -p "${MY_BUILDDIR}"
-}
-
-src_prepare() {
- if [[ ! -z ${PATCH_VER} ]] ; then
- einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
- eapply "${WORKDIR}/patch"/*.patch
- fi
-
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
- # Make sure our explicit libdir paths don't get clobbered. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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() {
- # 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 #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}"
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #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. #666100
- --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
- )
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
-
- # bug 637066
- filter-flags -Wall -Wreturn-type
-
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- # see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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}/
- 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}"
- 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-03-09 21:00 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2020-03-09 21:00 UTC (permalink / raw
To: gentoo-commits
commit: 7781e2cb04272163e94521c2275027b8b2be0251
Author: David Michael <fedora.dm0 <AT> gmail <DOT> com>
AuthorDate: Sun Mar 8 15:45:06 2020 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Mon Mar 9 21:00:36 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7781e2cb
sys-devel/binutils: move deps to BDEPEND for EAPI 7
Tweak only latest ~arch binutils-2.34.
Bug: https://bugs.gentoo.org/700898
Signed-off-by: David Michael <fedora.dm0 <AT> gmail.com>
Package-Manager: Portage-2.3.89, Repoman-2.3.20
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-2.34.ebuild | 3 ++-
sys-devel/binutils/binutils-9999.ebuild | 3 ++-
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.34.ebuild b/sys-devel/binutils/binutils-2.34.ebuild
index b85960a8eee..c4909daf1c2 100644
--- a/sys-devel/binutils/binutils-2.34.ebuild
+++ b/sys-devel/binutils/binutils-2.34.ebuild
@@ -73,7 +73,8 @@ RDEPEND="
>=sys-devel/binutils-config-3
sys-libs/zlib
"
-DEPEND="${RDEPEND}
+DEPEND="${RDEPEND}"
+BDEPEND="
doc? ( sys-apps/texinfo )
test? ( dev-util/dejagnu )
nls? ( sys-devel/gettext )
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index a735c2f7e2e..7e5b921ee5f 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -74,7 +74,8 @@ RDEPEND="
>=sys-devel/binutils-config-3
sys-libs/zlib
"
-DEPEND="${RDEPEND}
+DEPEND="${RDEPEND}"
+BDEPEND="
doc? ( sys-apps/texinfo )
test? ( dev-util/dejagnu )
nls? ( sys-devel/gettext )
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-03-10 7:35 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2020-03-10 7:35 UTC (permalink / raw
To: gentoo-commits
commit: f6ce8a59558a0472d72be70e9568aa3ef566b108
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Tue Mar 10 07:31:14 2020 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Tue Mar 10 07:35:06 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f6ce8a59
sys-devel/binutils: fix live ebuild link
https:// scema is not supported by sourceware's git. Use git:// instead.
Package-Manager: Portage-2.3.93, Repoman-2.3.20
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-9999.ebuild | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 7e5b921ee5f..569c1c82680 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -24,14 +24,16 @@ PATCH_BINUTILS_VER=9999
case ${PV} in
9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ # sourceware.org does not have https:// today.
+ EGIT_REPO_URI="git://sourceware.org/git/binutils-gdb.git"
inherit git-r3
S=${WORKDIR}/binutils
EGIT_CHECKOUT_DIR=${S}
SLOT=${PV}
;;
*.9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ # sourceware.org does not have https:// today.
+ EGIT_REPO_URI="git://sourceware.org/git/binutils-gdb.git"
inherit git-r3
S=${WORKDIR}/binutils
EGIT_CHECKOUT_DIR=${S}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-03-16 21:23 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2020-03-16 21:23 UTC (permalink / raw
To: gentoo-commits
commit: 3b06eba53f1183d76c0c768b2b7aca06ea448074
Author: Arfrever Frehtes Taifersar Arahesis <Arfrever <AT> Apache <DOT> Org>
AuthorDate: Mon Mar 16 18:49:30 2020 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Mon Mar 16 21:23:52 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3b06eba5
sys-devel/binutils: Use https:// again for git repository.
Reverts: f6ce8a59558a0472d72be70e9568aa3ef566b108
Signed-off-by: Arfrever Frehtes Taifersar Arahesis <Arfrever <AT> Apache.Org>
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-9999.ebuild | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 569c1c82680..7e5b921ee5f 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -24,16 +24,14 @@ PATCH_BINUTILS_VER=9999
case ${PV} in
9999)
- # sourceware.org does not have https:// today.
- EGIT_REPO_URI="git://sourceware.org/git/binutils-gdb.git"
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
inherit git-r3
S=${WORKDIR}/binutils
EGIT_CHECKOUT_DIR=${S}
SLOT=${PV}
;;
*.9999)
- # sourceware.org does not have https:// today.
- EGIT_REPO_URI="git://sourceware.org/git/binutils-gdb.git"
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
inherit git-r3
S=${WORKDIR}/binutils
EGIT_CHECKOUT_DIR=${S}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-04-01 11:12 Jeroen Roovers
0 siblings, 0 replies; 477+ messages in thread
From: Jeroen Roovers @ 2020-04-01 11:12 UTC (permalink / raw
To: gentoo-commits
commit: 04a93be3ca077bae9136a6885e35170fbf8f6adc
Author: Jeroen Roovers <jer <AT> gentoo <DOT> org>
AuthorDate: Wed Apr 1 11:10:31 2020 +0000
Commit: Jeroen Roovers <jer <AT> gentoo <DOT> org>
CommitDate: Wed Apr 1 11:12:11 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=04a93be3
sys-devel/binutils: Stable for HPPA
Package-Manager: Portage-2.3.96, Repoman-2.3.22
Signed-off-by: Jeroen Roovers <jer <AT> gentoo.org>
sys-devel/binutils/binutils-2.33.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.33.1-r1.ebuild b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
index 816185fad9b..2c51cf489da 100644
--- a/sys-devel/binutils/binutils-2.33.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
@@ -42,7 +42,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(ver_cut 1-2)
- KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
+ KEYWORDS="~alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-04-07 10:26 Mart Raudsepp
0 siblings, 0 replies; 477+ messages in thread
From: Mart Raudsepp @ 2020-04-07 10:26 UTC (permalink / raw
To: gentoo-commits
commit: 3a247162743ac87cf3f2a56e45e1cd76714c74b4
Author: Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 7 10:25:04 2020 +0000
Commit: Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Tue Apr 7 10:25:04 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3a247162
sys-devel/binutils: arm64 stable (bug #711106)
Package-Manager: Portage-2.3.84, Repoman-2.3.20
Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>
sys-devel/binutils/binutils-2.33.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.33.1-r1.ebuild b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
index 42a2cab21d0..c0f31907a70 100644
--- a/sys-devel/binutils/binutils-2.33.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
@@ -42,7 +42,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(ver_cut 1-2)
- KEYWORDS="~alpha amd64 arm ~arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-05-08 18:20 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2020-05-08 18:20 UTC (permalink / raw
To: gentoo-commits
commit: 99fab1f056c44b2f568895262eaebc859319932c
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri May 8 18:20:01 2020 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri May 8 18:20:38 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=99fab1f0
sys-devel/binutils: 2.34 revbump (unkeyworded) for testing
Package-Manager: Portage-2.3.99, Repoman-2.3.22
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.34-r1.ebuild | 442 +++++++++++++++++++++++++++++
2 files changed, 443 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 6c5a265a878..0ba20b32a59 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -4,5 +4,6 @@ DIST binutils-2.32.tar.xz 20774880 BLAKE2B d1bdbd9c8487c091665c197974ce4bdf520b7
DIST binutils-2.33.1-patches-2.tar.xz 18636 BLAKE2B 0e0757329b6a83aeff4f4c450c95e73fd48fcc89f83e63f294568632bee0972552cf2f57494352c5d9a7c16a51cdbc4108b38fa6028d4388c8e76046b3da9212 SHA512 d982f68d1f5fdb384309a2a1b7426bf840a90e7a85b37229b4223b62c36cab9dd9ec0c08382c85c68adf996dec21133df3180a2fc649363adae8645f8282f71d
DIST binutils-2.33.1.tar.xz 21490848 BLAKE2B c336a8412938dc8c224f40a763a8bea9937cca0462a8fb80e62f14aabe590107fc061a3f4b9327e1f4652cb026384d36a91b4766d4d469d2d0680932874b638c SHA512 b7a6767c6c7ca6b5cafa7080e6820b7bb3a53b7148348c438d99905defbdf0d30c9744a484ee01c9441a8153901808513366b15ba9533e20c9673c262ade36ac
DIST binutils-2.34-patches-1.tar.xz 20388 BLAKE2B 8828505f62259a307de445357320827e7f6bc416a7f4c72140add505f62eef3928c7daec13be158b52c2a7a1d989f539025e4be6ec27ef80ede81477a42c5042 SHA512 951dffcc30ad5706dc48e71995217655c5d96472446ab66a357f19486b57d1868143a9809887eab7ba8c42c33124f8b37d3bab6618388ea8a08b4399d348a645
+DIST binutils-2.34-patches-3.tar.xz 93968 BLAKE2B e39b02ccd87e5ec68a36390b7b26d897d3c0ff81f9ec1d873ea239bd6c46605cb750d608916f2973547781aeed2d5d89a985900644e0eafb10925d7c42efe7f9 SHA512 d478775bce42f3bcb16bc60d9ca6ead1ab5ae969e9d8817db209aa5dea8f96626d575852a7d2b77d187ae5521eebf8efef2dcff5dfe68433fad1fd59b80039b7
DIST binutils-2.34.tar.xz 21637796 BLAKE2B 07dd23916a7d27f71c3f160c8c16abe2bd4fce294c738c665a012a3be6a87dbe8160d0c38740524f9025e01d438e99b2a94bcf9f9f79ee214f5dd033de8aad3d SHA512 2c7976939dcf5e8c5b7374cccd39bfe803b1bec73c6abfa0eb17c24e1942574c6bdb874c66a092a82adc443182eacd8a5a8001c19a76101f0c7ba40c27de0bbd
DIST binutils-9999-patches-5.tar.xz 17492 BLAKE2B 4d5072d26d714dbc2a65899102c35791887b3c1298eb40a72088f5f964f500fa82581ac27a47f075812610e1757ba1ca5ac7d055dccc0d819ec06a86ca98f395 SHA512 c8a843cf04b72f010eef405cc2d029e49fb1f4582686f1e0409579d544b02d249c31f7cb9cd59747bc94727e29ddaba89951043b392017c6963ca14f3a0202b1
diff --git a/sys-devel/binutils/binutils-2.34-r1.ebuild b/sys-devel/binutils/binutils-2.34-r1.ebuild
new file mode 100644
index 00000000000..bf97cbe7957
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.34-r1.ebuild
@@ -0,0 +1,442 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
+
+DESCRIPTION="Tools necessary to build programs"
+HOMEPAGE="https://sourceware.org/binutils/"
+LICENSE="GPL-3+"
+IUSE="default-gold doc +gold multitarget +nls +plugins static-libs test"
+REQUIRED_USE="default-gold? ( gold )"
+
+# Variables that can be set here:
+# 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=3
+PATCH_DEV=dilfridge
+
+case ${PV} in
+ 9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ SLOT=${PV}
+ ;;
+ *.9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ EGIT_BRANCH=$(ver_cut 1-2)
+ EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
+ SLOT=$(ver_cut 1-2)
+ ;;
+ *)
+ SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
+ SLOT=$(ver_cut 1-2)
+ #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ ;;
+esac
+
+#
+# The Gentoo patchset
+#
+PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
+PATCH_DEV=${PATCH_DEV:-slyfox}
+
+[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
+ https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
+
+#
+# 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 )
+ nls? ( sys-devel/gettext )
+ sys-devel/flex
+ virtual/yacc
+"
+
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.33-gcc-10.patch
+ "${FILESDIR}"/${PN}-2.34-riscv-SEGV.patch
+)
+
+MY_BUILDDIR=${WORKDIR}/build
+
+src_unpack() {
+ case ${PV} in
+ *9999)
+ git-r3_src_unpack
+ ;;
+ *)
+ ;;
+ esac
+ default
+ mkdir -p "${MY_BUILDDIR}"
+}
+
+src_prepare() {
+ if [[ ! -z ${PATCH_VER} ]] ; then
+ # Use upstream patch to enable development mode
+ rm -v "${WORKDIR}/patch"/0000-Gentoo-Git-is-development.patch || die
+
+ einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
+ eapply "${WORKDIR}/patch"/*.patch
+ fi
+
+ # This check should probably go somewhere else, like pkg_pretend.
+ if [[ ${CTARGET} == *-uclibc* ]] ; then
+ if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
+ die "sorry, but this binutils doesn't yet support uClibc :("
+ fi
+ fi
+
+ # Make sure our explicit libdir paths don't get clobbered. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ 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() {
+ # 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 #42033
+ strip-linguas -u */po
+
+ # Keep things sane
+ strip-flags
+
+ local x
+ echo
+ for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
+ einfo "$(printf '%10s' ${x}:) ${!x}"
+ done
+ echo
+
+ cd "${MY_BUILDDIR}"
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && 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. #497268
+ --enable-install-libiberty
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #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. #666100
+ --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
+ )
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${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}"
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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}"
+
+ # bug 637066
+ filter-flags -Wall -Wreturn-type
+
+ emake -k check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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}/
+ 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}"
+ 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-05-10 18:31 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2020-05-10 18:31 UTC (permalink / raw
To: gentoo-commits
commit: be97e14eddf8e762100c30bfc5e52b7c357a1c59
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun May 10 18:30:25 2020 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun May 10 18:31:16 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=be97e14e
sys-devel/binutils: 2.34 revision bump fixing ld testsuite
Package-Manager: Portage-2.3.99, Repoman-2.3.22
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 +-
sys-devel/binutils/binutils-2.34-r1.ebuild | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 0ba20b32a59..b7099fea2fb 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -4,6 +4,6 @@ DIST binutils-2.32.tar.xz 20774880 BLAKE2B d1bdbd9c8487c091665c197974ce4bdf520b7
DIST binutils-2.33.1-patches-2.tar.xz 18636 BLAKE2B 0e0757329b6a83aeff4f4c450c95e73fd48fcc89f83e63f294568632bee0972552cf2f57494352c5d9a7c16a51cdbc4108b38fa6028d4388c8e76046b3da9212 SHA512 d982f68d1f5fdb384309a2a1b7426bf840a90e7a85b37229b4223b62c36cab9dd9ec0c08382c85c68adf996dec21133df3180a2fc649363adae8645f8282f71d
DIST binutils-2.33.1.tar.xz 21490848 BLAKE2B c336a8412938dc8c224f40a763a8bea9937cca0462a8fb80e62f14aabe590107fc061a3f4b9327e1f4652cb026384d36a91b4766d4d469d2d0680932874b638c SHA512 b7a6767c6c7ca6b5cafa7080e6820b7bb3a53b7148348c438d99905defbdf0d30c9744a484ee01c9441a8153901808513366b15ba9533e20c9673c262ade36ac
DIST binutils-2.34-patches-1.tar.xz 20388 BLAKE2B 8828505f62259a307de445357320827e7f6bc416a7f4c72140add505f62eef3928c7daec13be158b52c2a7a1d989f539025e4be6ec27ef80ede81477a42c5042 SHA512 951dffcc30ad5706dc48e71995217655c5d96472446ab66a357f19486b57d1868143a9809887eab7ba8c42c33124f8b37d3bab6618388ea8a08b4399d348a645
-DIST binutils-2.34-patches-3.tar.xz 93968 BLAKE2B e39b02ccd87e5ec68a36390b7b26d897d3c0ff81f9ec1d873ea239bd6c46605cb750d608916f2973547781aeed2d5d89a985900644e0eafb10925d7c42efe7f9 SHA512 d478775bce42f3bcb16bc60d9ca6ead1ab5ae969e9d8817db209aa5dea8f96626d575852a7d2b77d187ae5521eebf8efef2dcff5dfe68433fad1fd59b80039b7
+DIST binutils-2.34-patches-4.tar.xz 95232 BLAKE2B 0a355120ecaf447d863f6d0837028061968166c9024da36212ce7d172ee2060e4027be1fca0089e38ab9073b5332307ff1dc05b868603bd2aa0ec8e88af7cd0a SHA512 e593edbeddaf97ef23fa8eb25c5714c7f2dd2500d11422bd9dba42e119884fe71593adc98862f74c7d391ceb298556ed049eee3c504733c634faef236045876b
DIST binutils-2.34.tar.xz 21637796 BLAKE2B 07dd23916a7d27f71c3f160c8c16abe2bd4fce294c738c665a012a3be6a87dbe8160d0c38740524f9025e01d438e99b2a94bcf9f9f79ee214f5dd033de8aad3d SHA512 2c7976939dcf5e8c5b7374cccd39bfe803b1bec73c6abfa0eb17c24e1942574c6bdb874c66a092a82adc443182eacd8a5a8001c19a76101f0c7ba40c27de0bbd
DIST binutils-9999-patches-5.tar.xz 17492 BLAKE2B 4d5072d26d714dbc2a65899102c35791887b3c1298eb40a72088f5f964f500fa82581ac27a47f075812610e1757ba1ca5ac7d055dccc0d819ec06a86ca98f395 SHA512 c8a843cf04b72f010eef405cc2d029e49fb1f4582686f1e0409579d544b02d249c31f7cb9cd59747bc94727e29ddaba89951043b392017c6963ca14f3a0202b1
diff --git a/sys-devel/binutils/binutils-2.34-r1.ebuild b/sys-devel/binutils/binutils-2.34-r1.ebuild
index bf97cbe7957..98c25e05d26 100644
--- a/sys-devel/binutils/binutils-2.34-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.34-r1.ebuild
@@ -19,7 +19,7 @@ REQUIRED_USE="default-gold? ( gold )"
# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
# for the patchsets
-PATCH_VER=3
+PATCH_VER=4
PATCH_DEV=dilfridge
case ${PV} in
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-05-19 19:57 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2020-05-19 19:57 UTC (permalink / raw
To: gentoo-commits
commit: f57c6e8fd308d3a395848737c49d7619d4936438
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Tue May 19 19:52:25 2020 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Tue May 19 19:56:55 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f57c6e8f
sys-devel/binutils: Restore keywords in 2.34-r1
Package-Manager: Portage-2.3.99, Repoman-2.3.22
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.34-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.34-r1.ebuild b/sys-devel/binutils/binutils-2.34-r1.ebuild
index 98c25e05d26..4948e72ad99 100644
--- a/sys-devel/binutils/binutils-2.34-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.34-r1.ebuild
@@ -42,7 +42,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(ver_cut 1-2)
- #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-06-18 19:24 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2020-06-18 19:24 UTC (permalink / raw
To: gentoo-commits
commit: 9fcc12201af68e32d65371582e1e45b058a3fb82
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Thu Jun 18 19:24:40 2020 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Thu Jun 18 19:24:54 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9fcc1220
sys-devel/binutils: add USE=vanilla to skip live patches
Sometimes Gentoo patches get stale and fail to apply to
binutils from head. Allow users to opt out.
Package-Manager: Portage-2.3.101, Repoman-2.3.22
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-9999.ebuild | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 7e5b921ee5f..4cb22a0c7fc 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -8,7 +8,7 @@ inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
LICENSE="GPL-3+"
-IUSE="default-gold doc +gold multitarget +nls +plugins static-libs test"
+IUSE="default-gold doc +gold multitarget +nls +plugins static-libs test vanilla"
REQUIRED_USE="default-gold? ( gold )"
# Variables that can be set here:
@@ -101,8 +101,10 @@ src_unpack() {
src_prepare() {
if [[ ! -z ${PATCH_VER} ]] ; then
- einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
- eapply "${WORKDIR}/patch"/*.patch
+ if ! use vanilla; then
+ einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
+ eapply "${WORKDIR}/patch"/*.patch
+ fi
fi
# This check should probably go somewhere else, like pkg_pretend.
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-06-28 22:43 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2020-06-28 22:43 UTC (permalink / raw
To: gentoo-commits
commit: 68ffc711e6966ec00a37cd041b141e959948c0f5
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sun Jun 28 22:31:07 2020 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sun Jun 28 22:43:20 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=68ffc711
sys-devel/binutils: drop old
Package-Manager: Portage-2.3.103, Repoman-2.3.23
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 -
sys-devel/binutils/binutils-2.34.ebuild | 442 --------------------------------
2 files changed, 443 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index b7099fea2fb..9e9e3a861e0 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -3,7 +3,6 @@ DIST binutils-2.32-patches-3.tar.xz 151372 BLAKE2B 70d5f78d9f3e3bf9ff096b6f24bab
DIST binutils-2.32.tar.xz 20774880 BLAKE2B d1bdbd9c8487c091665c197974ce4bdf520b7a67ed6997a81b87e6a0af9514a091458244f583acec5ae580ac2ee5e908f67f483b8e5263cd18ced794cb235da6 SHA512 d326408f12a03d9a61a9de56584c2af12f81c2e50d2d7e835d51565df8314df01575724afa1e43bd0db45cfc9916b41519b67dfce03232aa4978704492a6994a
DIST binutils-2.33.1-patches-2.tar.xz 18636 BLAKE2B 0e0757329b6a83aeff4f4c450c95e73fd48fcc89f83e63f294568632bee0972552cf2f57494352c5d9a7c16a51cdbc4108b38fa6028d4388c8e76046b3da9212 SHA512 d982f68d1f5fdb384309a2a1b7426bf840a90e7a85b37229b4223b62c36cab9dd9ec0c08382c85c68adf996dec21133df3180a2fc649363adae8645f8282f71d
DIST binutils-2.33.1.tar.xz 21490848 BLAKE2B c336a8412938dc8c224f40a763a8bea9937cca0462a8fb80e62f14aabe590107fc061a3f4b9327e1f4652cb026384d36a91b4766d4d469d2d0680932874b638c SHA512 b7a6767c6c7ca6b5cafa7080e6820b7bb3a53b7148348c438d99905defbdf0d30c9744a484ee01c9441a8153901808513366b15ba9533e20c9673c262ade36ac
-DIST binutils-2.34-patches-1.tar.xz 20388 BLAKE2B 8828505f62259a307de445357320827e7f6bc416a7f4c72140add505f62eef3928c7daec13be158b52c2a7a1d989f539025e4be6ec27ef80ede81477a42c5042 SHA512 951dffcc30ad5706dc48e71995217655c5d96472446ab66a357f19486b57d1868143a9809887eab7ba8c42c33124f8b37d3bab6618388ea8a08b4399d348a645
DIST binutils-2.34-patches-4.tar.xz 95232 BLAKE2B 0a355120ecaf447d863f6d0837028061968166c9024da36212ce7d172ee2060e4027be1fca0089e38ab9073b5332307ff1dc05b868603bd2aa0ec8e88af7cd0a SHA512 e593edbeddaf97ef23fa8eb25c5714c7f2dd2500d11422bd9dba42e119884fe71593adc98862f74c7d391ceb298556ed049eee3c504733c634faef236045876b
DIST binutils-2.34.tar.xz 21637796 BLAKE2B 07dd23916a7d27f71c3f160c8c16abe2bd4fce294c738c665a012a3be6a87dbe8160d0c38740524f9025e01d438e99b2a94bcf9f9f79ee214f5dd033de8aad3d SHA512 2c7976939dcf5e8c5b7374cccd39bfe803b1bec73c6abfa0eb17c24e1942574c6bdb874c66a092a82adc443182eacd8a5a8001c19a76101f0c7ba40c27de0bbd
DIST binutils-9999-patches-5.tar.xz 17492 BLAKE2B 4d5072d26d714dbc2a65899102c35791887b3c1298eb40a72088f5f964f500fa82581ac27a47f075812610e1757ba1ca5ac7d055dccc0d819ec06a86ca98f395 SHA512 c8a843cf04b72f010eef405cc2d029e49fb1f4582686f1e0409579d544b02d249c31f7cb9cd59747bc94727e29ddaba89951043b392017c6963ca14f3a0202b1
diff --git a/sys-devel/binutils/binutils-2.34.ebuild b/sys-devel/binutils/binutils-2.34.ebuild
deleted file mode 100644
index 40a250edf7b..00000000000
--- a/sys-devel/binutils/binutils-2.34.ebuild
+++ /dev/null
@@ -1,442 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="https://sourceware.org/binutils/"
-LICENSE="GPL-3+"
-IUSE="default-gold doc +gold multitarget +nls +plugins static-libs test"
-REQUIRED_USE="default-gold? ( gold )"
-
-# Variables that can be set here:
-# 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=1
-PATCH_DEV=slyfox
-
-case ${PV} in
- 9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- SLOT=${PV}
- ;;
- *.9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- EGIT_BRANCH=$(ver_cut 1-2)
- EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
- SLOT=$(ver_cut 1-2)
- ;;
- *)
- SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
- SLOT=$(ver_cut 1-2)
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
- ;;
-esac
-
-#
-# The Gentoo patchset
-#
-PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
-PATCH_DEV=${PATCH_DEV:-slyfox}
-
-[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
- https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
-
-#
-# 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 )
- nls? ( sys-devel/gettext )
- sys-devel/flex
- virtual/yacc
-"
-
-RESTRICT="!test? ( test )"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-2.33-gcc-10.patch
- "${FILESDIR}"/${PN}-2.34-riscv-SEGV.patch
-)
-
-MY_BUILDDIR=${WORKDIR}/build
-
-src_unpack() {
- case ${PV} in
- *9999)
- git-r3_src_unpack
- ;;
- *)
- ;;
- esac
- default
- mkdir -p "${MY_BUILDDIR}"
-}
-
-src_prepare() {
- if [[ ! -z ${PATCH_VER} ]] ; then
- # Use upstream patch to enable development mode
- rm -v "${WORKDIR}/patch"/0000-Gentoo-Git-is-development.patch || die
-
- einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
- eapply "${WORKDIR}/patch"/*.patch
- fi
-
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
- # Make sure our explicit libdir paths don't get clobbered. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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() {
- # 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 #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}"
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #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. #666100
- --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
- )
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
-
- # bug 637066
- filter-flags -Wall -Wreturn-type
-
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- # see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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}/
- 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}"
- 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-07-25 12:43 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2020-07-25 12:43 UTC (permalink / raw
To: gentoo-commits
commit: b40858f4a9070af74398000370b7f107675f20f7
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Jul 25 12:41:39 2020 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Jul 25 12:42:48 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b40858f4
sys-devel/binutils: Update live version for separate patches repo
Package-Manager: Portage-2.3.103, Repoman-2.3.23
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 -
sys-devel/binutils/binutils-9999.ebuild | 96 ++++++++++++++++-----------------
2 files changed, 48 insertions(+), 49 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 624df839037..40e2426a73b 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -5,4 +5,3 @@ DIST binutils-2.33.1-patches-2.tar.xz 18636 BLAKE2B 0e0757329b6a83aeff4f4c450c95
DIST binutils-2.33.1.tar.xz 21490848 BLAKE2B c336a8412938dc8c224f40a763a8bea9937cca0462a8fb80e62f14aabe590107fc061a3f4b9327e1f4652cb026384d36a91b4766d4d469d2d0680932874b638c SHA512 b7a6767c6c7ca6b5cafa7080e6820b7bb3a53b7148348c438d99905defbdf0d30c9744a484ee01c9441a8153901808513366b15ba9533e20c9673c262ade36ac
DIST binutils-2.34-patches-5.tar.xz 96256 BLAKE2B 3bf83ff3217e993de70697f5c8ead2da35482f4800fa1f3fafb3957a3ab68532ec78e00490263be1850914dc0c18657c94527eb8738a7a9c3233331b147ac8b9 SHA512 e10f07c677abd17063e1bac440e8624bbbb0323d9ec32a493600f4400c9401709bec05a8fc8877dc7d8705a8416d72c2d2b1f5e5c069876f7cffa743b494a01e
DIST binutils-2.34.tar.xz 21637796 BLAKE2B 07dd23916a7d27f71c3f160c8c16abe2bd4fce294c738c665a012a3be6a87dbe8160d0c38740524f9025e01d438e99b2a94bcf9f9f79ee214f5dd033de8aad3d SHA512 2c7976939dcf5e8c5b7374cccd39bfe803b1bec73c6abfa0eb17c24e1942574c6bdb874c66a092a82adc443182eacd8a5a8001c19a76101f0c7ba40c27de0bbd
-DIST binutils-9999-patches-5.tar.xz 17492 BLAKE2B 4d5072d26d714dbc2a65899102c35791887b3c1298eb40a72088f5f964f500fa82581ac27a47f075812610e1757ba1ca5ac7d055dccc0d819ec06a86ca98f395 SHA512 c8a843cf04b72f010eef405cc2d029e49fb1f4582686f1e0409579d544b02d249c31f7cb9cd59747bc94727e29ddaba89951043b392017c6963ca14f3a0202b1
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 4cb22a0c7fc..32c72483db8 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -11,7 +11,7 @@ LICENSE="GPL-3+"
IUSE="default-gold doc +gold multitarget +nls +plugins static-libs test vanilla"
REQUIRED_USE="default-gold? ( gold )"
-# Variables that can be set here:
+# 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
@@ -20,41 +20,21 @@ REQUIRED_USE="default-gold? ( gold )"
# for the patchsets
PATCH_VER=5
-PATCH_BINUTILS_VER=9999
-
-case ${PV} in
- 9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- SLOT=${PV}
- ;;
- *.9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- EGIT_BRANCH=$(ver_cut 1-2)
- EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
- SLOT=$(ver_cut 1-2)
- ;;
- *)
- SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
- SLOT=$(ver_cut 1-2)
- # live ebuild
- #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
- ;;
-esac
-
-#
-# The Gentoo patchset
-#
-PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
-PATCH_DEV=${PATCH_DEV:-slyfox}
-
-[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
- https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
+PATCH_BINUTILS_VER=2.34
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+ SLOT=${PV}
+else
+ PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
+ PATCH_DEV=${PATCH_DEV:-slyfox}
+ SRC_URI="mirror://gnu/binutils/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)
+ # live ebuild
+ #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
+fi
#
# The cross-compile logic
@@ -88,22 +68,40 @@ RESTRICT="!test? ( test )"
MY_BUILDDIR=${WORKDIR}/build
src_unpack() {
- case ${PV} in
- *9999)
- git-r3_src_unpack
- ;;
- *)
- ;;
- esac
- default
- mkdir -p "${MY_BUILDDIR}"
+ 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}.tar.xz
+
+ cd "${WORKDIR}" || die
+ unpack glibc-${RELEASE_VER}-patches-${PATCH_VER}.tar.xz
+ fi
+
+ cd "${WORKDIR}" || die
+ mkdir -p "${MY_BUILDDIR}" || die
}
src_prepare() {
- if [[ ! -z ${PATCH_VER} ]] ; then
+ local patchsetname
+ if [[ ${PV} == 9999* ]] ; then
+ patchsetname="from git master"
+ else
+ patchsetname="${RELEASE_VER}-${PATCH_VER}"
+ fi
+
+ if [[ ! -z ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
if ! use vanilla; then
- einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
- eapply "${WORKDIR}/patch"/*.patch
+ einfo "Applying binutils patchset ${patchsetname}"
+ eapply "${WORKDIR}/patch"
+ einfo "Done."
fi
fi
@@ -245,6 +243,8 @@ src_configure() {
--enable-relro
# Newer versions (>=2.24) make this an explicit option. #497268
--enable-install-libiberty
+ # Available from 2.35 on
+ --enable-textrel-check=warning
--disable-werror
--with-bugurl="$(toolchain-binutils_bugurl)"
--with-pkgversion="$(toolchain-binutils_pkgversion)"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-07-25 17:50 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2020-07-25 17:50 UTC (permalink / raw
To: gentoo-commits
commit: fa9c2ca6157c31305c95e486d05442a2d8d45651
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Jul 25 17:49:32 2020 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Jul 25 17:50:15 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fa9c2ca6
sys-devel/binutils: Version bump, untested, no keywords
Package-Manager: Portage-2.3.103, Repoman-2.3.23
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 ++
sys-devel/binutils/{binutils-9999.ebuild => binutils-2.35.ebuild} | 8 ++++----
sys-devel/binutils/binutils-9999.ebuild | 8 ++++----
3 files changed, 10 insertions(+), 8 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 40e2426a73b..c44a89fa393 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -5,3 +5,5 @@ DIST binutils-2.33.1-patches-2.tar.xz 18636 BLAKE2B 0e0757329b6a83aeff4f4c450c95
DIST binutils-2.33.1.tar.xz 21490848 BLAKE2B c336a8412938dc8c224f40a763a8bea9937cca0462a8fb80e62f14aabe590107fc061a3f4b9327e1f4652cb026384d36a91b4766d4d469d2d0680932874b638c SHA512 b7a6767c6c7ca6b5cafa7080e6820b7bb3a53b7148348c438d99905defbdf0d30c9744a484ee01c9441a8153901808513366b15ba9533e20c9673c262ade36ac
DIST binutils-2.34-patches-5.tar.xz 96256 BLAKE2B 3bf83ff3217e993de70697f5c8ead2da35482f4800fa1f3fafb3957a3ab68532ec78e00490263be1850914dc0c18657c94527eb8738a7a9c3233331b147ac8b9 SHA512 e10f07c677abd17063e1bac440e8624bbbb0323d9ec32a493600f4400c9401709bec05a8fc8877dc7d8705a8416d72c2d2b1f5e5c069876f7cffa743b494a01e
DIST binutils-2.34.tar.xz 21637796 BLAKE2B 07dd23916a7d27f71c3f160c8c16abe2bd4fce294c738c665a012a3be6a87dbe8160d0c38740524f9025e01d438e99b2a94bcf9f9f79ee214f5dd033de8aad3d SHA512 2c7976939dcf5e8c5b7374cccd39bfe803b1bec73c6abfa0eb17c24e1942574c6bdb874c66a092a82adc443182eacd8a5a8001c19a76101f0c7ba40c27de0bbd
+DIST binutils-2.35-patches-1.tar.xz 12216 BLAKE2B a811449da684e3501a7520a26639e04dda2f2d2fc8610974293eff3e4a1e23c4abeb97f52fe3b796679452bd6e3a5330fef4beb6f64b9ce2a1162076803390a0 SHA512 b8da16a4d97b264da925cc939b54bedbc148eb72a8d60f79d7ed222e9e299dca2a4f1fad4a6d60448d9d196c11331443eca0508dcbb85cb4c2da6c67bfaf4cd2
+DIST binutils-2.35.tar.xz 22042160 BLAKE2B 72ea79edf3a77aa93dcf38274123abbae5ce8f800a95e6379b4c8807050b05c2dfec314f06c027b1343c5570f369324fa3e195d7e0db5f8a57c0579937c49d3f SHA512 9f222e4ab6720036402d03904fb11b73ab87714b85cd84997f7d357f405c7e10581d70202f9165a1ee0c70538632db27ecc9dfe627dddb1e6bc7edb1537cf786
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-2.35.ebuild
similarity index 98%
copy from sys-devel/binutils/binutils-9999.ebuild
copy to sys-devel/binutils/binutils-2.35.ebuild
index 32c72483db8..fb041ee7e6b 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-2.35.ebuild
@@ -19,8 +19,8 @@ REQUIRED_USE="default-gold? ( gold )"
# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
# for the patchsets
-PATCH_VER=5
-PATCH_BINUTILS_VER=2.34
+PATCH_VER=1
+PATCH_DEV=dilfridge
if [[ ${PV} == 9999* ]]; then
inherit git-r3
@@ -82,7 +82,7 @@ src_unpack() {
unpack ${P}.tar.xz
cd "${WORKDIR}" || die
- unpack glibc-${RELEASE_VER}-patches-${PATCH_VER}.tar.xz
+ unpack binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz
fi
cd "${WORKDIR}" || die
@@ -94,7 +94,7 @@ src_prepare() {
if [[ ${PV} == 9999* ]] ; then
patchsetname="from git master"
else
- patchsetname="${RELEASE_VER}-${PATCH_VER}"
+ patchsetname="${PATCH_BINUTILS_VER}-${PATCH_VER}"
fi
if [[ ! -z ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 32c72483db8..fb041ee7e6b 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -19,8 +19,8 @@ REQUIRED_USE="default-gold? ( gold )"
# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
# for the patchsets
-PATCH_VER=5
-PATCH_BINUTILS_VER=2.34
+PATCH_VER=1
+PATCH_DEV=dilfridge
if [[ ${PV} == 9999* ]]; then
inherit git-r3
@@ -82,7 +82,7 @@ src_unpack() {
unpack ${P}.tar.xz
cd "${WORKDIR}" || die
- unpack glibc-${RELEASE_VER}-patches-${PATCH_VER}.tar.xz
+ unpack binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz
fi
cd "${WORKDIR}" || die
@@ -94,7 +94,7 @@ src_prepare() {
if [[ ${PV} == 9999* ]] ; then
patchsetname="from git master"
else
- patchsetname="${RELEASE_VER}-${PATCH_VER}"
+ patchsetname="${PATCH_BINUTILS_VER}-${PATCH_VER}"
fi
if [[ ! -z ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-07-31 16:06 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2020-07-31 16:06 UTC (permalink / raw
To: gentoo-commits
commit: aba666c6928c7c4a75613c1ede76b8c156ec1f58
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 31 15:49:35 2020 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Jul 31 16:05:51 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=aba666c6
sys-devel/binutils: Bump to 2.34 patchset 6
Package-Manager: Portage-2.3.103, Repoman-2.3.23
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.34-r2.ebuild | 434 +++++++++++++++++++++++++++++
2 files changed, 435 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index c44a89fa393..c2a4006437e 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -4,6 +4,7 @@ DIST binutils-2.32.tar.xz 20774880 BLAKE2B d1bdbd9c8487c091665c197974ce4bdf520b7
DIST binutils-2.33.1-patches-2.tar.xz 18636 BLAKE2B 0e0757329b6a83aeff4f4c450c95e73fd48fcc89f83e63f294568632bee0972552cf2f57494352c5d9a7c16a51cdbc4108b38fa6028d4388c8e76046b3da9212 SHA512 d982f68d1f5fdb384309a2a1b7426bf840a90e7a85b37229b4223b62c36cab9dd9ec0c08382c85c68adf996dec21133df3180a2fc649363adae8645f8282f71d
DIST binutils-2.33.1.tar.xz 21490848 BLAKE2B c336a8412938dc8c224f40a763a8bea9937cca0462a8fb80e62f14aabe590107fc061a3f4b9327e1f4652cb026384d36a91b4766d4d469d2d0680932874b638c SHA512 b7a6767c6c7ca6b5cafa7080e6820b7bb3a53b7148348c438d99905defbdf0d30c9744a484ee01c9441a8153901808513366b15ba9533e20c9673c262ade36ac
DIST binutils-2.34-patches-5.tar.xz 96256 BLAKE2B 3bf83ff3217e993de70697f5c8ead2da35482f4800fa1f3fafb3957a3ab68532ec78e00490263be1850914dc0c18657c94527eb8738a7a9c3233331b147ac8b9 SHA512 e10f07c677abd17063e1bac440e8624bbbb0323d9ec32a493600f4400c9401709bec05a8fc8877dc7d8705a8416d72c2d2b1f5e5c069876f7cffa743b494a01e
+DIST binutils-2.34-patches-6.tar.xz 103028 BLAKE2B d0e866d0941d2b550c7d7f23530c6ee393fa13b4f2f27832f07790989476f11d1beddb5ad5a9be5c65c1d4dff9d4598d21adcb00c1d0490f69a99127f4527447 SHA512 e05ed8886acb5cb95a3e97c5bc0564215f7d44b604610f5c4545997fd9625d6de909c37063127e819926cd1548a48d3529dd3e82e98ee6a5dbaced028c57355d
DIST binutils-2.34.tar.xz 21637796 BLAKE2B 07dd23916a7d27f71c3f160c8c16abe2bd4fce294c738c665a012a3be6a87dbe8160d0c38740524f9025e01d438e99b2a94bcf9f9f79ee214f5dd033de8aad3d SHA512 2c7976939dcf5e8c5b7374cccd39bfe803b1bec73c6abfa0eb17c24e1942574c6bdb874c66a092a82adc443182eacd8a5a8001c19a76101f0c7ba40c27de0bbd
DIST binutils-2.35-patches-1.tar.xz 12216 BLAKE2B a811449da684e3501a7520a26639e04dda2f2d2fc8610974293eff3e4a1e23c4abeb97f52fe3b796679452bd6e3a5330fef4beb6f64b9ce2a1162076803390a0 SHA512 b8da16a4d97b264da925cc939b54bedbc148eb72a8d60f79d7ed222e9e299dca2a4f1fad4a6d60448d9d196c11331443eca0508dcbb85cb4c2da6c67bfaf4cd2
DIST binutils-2.35.tar.xz 22042160 BLAKE2B 72ea79edf3a77aa93dcf38274123abbae5ce8f800a95e6379b4c8807050b05c2dfec314f06c027b1343c5570f369324fa3e195d7e0db5f8a57c0579937c49d3f SHA512 9f222e4ab6720036402d03904fb11b73ab87714b85cd84997f7d357f405c7e10581d70202f9165a1ee0c70538632db27ecc9dfe627dddb1e6bc7edb1537cf786
diff --git a/sys-devel/binutils/binutils-2.34-r2.ebuild b/sys-devel/binutils/binutils-2.34-r2.ebuild
new file mode 100644
index 00000000000..d1a67675d8b
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.34-r2.ebuild
@@ -0,0 +1,434 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
+
+DESCRIPTION="Tools necessary to build programs"
+HOMEPAGE="https://sourceware.org/binutils/"
+LICENSE="GPL-3+"
+IUSE="default-gold doc +gold multitarget +nls +plugins static-libs test"
+REQUIRED_USE="default-gold? ( gold )"
+
+# Variables that can be set here:
+# 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=6
+PATCH_DEV=dilfridge
+
+case ${PV} in
+ 9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ SLOT=${PV}
+ ;;
+ *.9999)
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
+ inherit git-r3
+ S=${WORKDIR}/binutils
+ EGIT_CHECKOUT_DIR=${S}
+ EGIT_BRANCH=$(ver_cut 1-2)
+ EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
+ SLOT=$(ver_cut 1-2)
+ ;;
+ *)
+ SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
+ SLOT=$(ver_cut 1-2)
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ ;;
+esac
+
+#
+# The Gentoo patchset
+#
+PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
+PATCH_DEV=${PATCH_DEV:-slyfox}
+
+[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
+ https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
+
+#
+# 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 )
+ nls? ( sys-devel/gettext )
+ sys-devel/flex
+ virtual/yacc
+"
+
+RESTRICT="!test? ( test )"
+
+MY_BUILDDIR=${WORKDIR}/build
+
+src_unpack() {
+ case ${PV} in
+ *9999)
+ git-r3_src_unpack
+ ;;
+ *)
+ ;;
+ esac
+ default
+ mkdir -p "${MY_BUILDDIR}"
+}
+
+src_prepare() {
+ if [[ ! -z ${PATCH_VER} ]] ; then
+ einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
+ eapply "${WORKDIR}/patch"/*.patch
+ fi
+
+ # This check should probably go somewhere else, like pkg_pretend.
+ if [[ ${CTARGET} == *-uclibc* ]] ; then
+ if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
+ die "sorry, but this binutils doesn't yet support uClibc :("
+ fi
+ fi
+
+ # Make sure our explicit libdir paths don't get clobbered. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ 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() {
+ # 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 #42033
+ strip-linguas -u */po
+
+ # Keep things sane
+ strip-flags
+
+ local x
+ echo
+ for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
+ einfo "$(printf '%10s' ${x}:) ${!x}"
+ done
+ echo
+
+ cd "${MY_BUILDDIR}"
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && 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. #497268
+ --enable-install-libiberty
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #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. #666100
+ --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
+ )
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${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}"
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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}"
+
+ # bug 637066
+ filter-flags -Wall -Wreturn-type
+
+ emake -k check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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}/
+ 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}"
+ 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-09-15 17:22 Thomas Deutschmann
0 siblings, 0 replies; 477+ messages in thread
From: Thomas Deutschmann @ 2020-09-15 17:22 UTC (permalink / raw
To: gentoo-commits
commit: 2fc8e1f51f94a04656def17e209e446805070e68
Author: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Tue Sep 15 17:19:53 2020 +0000
Commit: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Tue Sep 15 17:22:40 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2fc8e1f5
sys-devel/binutils: x86 stable (bug #734598)
Package-Manager: Portage-3.0.6, Repoman-3.0.1
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>
sys-devel/binutils/binutils-2.34-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.34-r2.ebuild b/sys-devel/binutils/binutils-2.34-r2.ebuild
index d1a67675d8b..230f28917e5 100644
--- a/sys-devel/binutils/binutils-2.34-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.34-r2.ebuild
@@ -42,7 +42,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(ver_cut 1-2)
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-09-17 20:08 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2020-09-17 20:08 UTC (permalink / raw
To: gentoo-commits
commit: 4582f809f085aa0eb60f03116ac1ae30e5d678f7
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Thu Sep 17 20:06:08 2020 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Thu Sep 17 20:06:08 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4582f809
sys-devel/binutils: Remove old
Package-Manager: Portage-3.0.4, Repoman-3.0.1
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 -
sys-devel/binutils/binutils-2.34-r1.ebuild | 437 -----------------------------
2 files changed, 438 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index c2a4006437e..05172151100 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -3,7 +3,6 @@ DIST binutils-2.32-patches-3.tar.xz 151372 BLAKE2B 70d5f78d9f3e3bf9ff096b6f24bab
DIST binutils-2.32.tar.xz 20774880 BLAKE2B d1bdbd9c8487c091665c197974ce4bdf520b7a67ed6997a81b87e6a0af9514a091458244f583acec5ae580ac2ee5e908f67f483b8e5263cd18ced794cb235da6 SHA512 d326408f12a03d9a61a9de56584c2af12f81c2e50d2d7e835d51565df8314df01575724afa1e43bd0db45cfc9916b41519b67dfce03232aa4978704492a6994a
DIST binutils-2.33.1-patches-2.tar.xz 18636 BLAKE2B 0e0757329b6a83aeff4f4c450c95e73fd48fcc89f83e63f294568632bee0972552cf2f57494352c5d9a7c16a51cdbc4108b38fa6028d4388c8e76046b3da9212 SHA512 d982f68d1f5fdb384309a2a1b7426bf840a90e7a85b37229b4223b62c36cab9dd9ec0c08382c85c68adf996dec21133df3180a2fc649363adae8645f8282f71d
DIST binutils-2.33.1.tar.xz 21490848 BLAKE2B c336a8412938dc8c224f40a763a8bea9937cca0462a8fb80e62f14aabe590107fc061a3f4b9327e1f4652cb026384d36a91b4766d4d469d2d0680932874b638c SHA512 b7a6767c6c7ca6b5cafa7080e6820b7bb3a53b7148348c438d99905defbdf0d30c9744a484ee01c9441a8153901808513366b15ba9533e20c9673c262ade36ac
-DIST binutils-2.34-patches-5.tar.xz 96256 BLAKE2B 3bf83ff3217e993de70697f5c8ead2da35482f4800fa1f3fafb3957a3ab68532ec78e00490263be1850914dc0c18657c94527eb8738a7a9c3233331b147ac8b9 SHA512 e10f07c677abd17063e1bac440e8624bbbb0323d9ec32a493600f4400c9401709bec05a8fc8877dc7d8705a8416d72c2d2b1f5e5c069876f7cffa743b494a01e
DIST binutils-2.34-patches-6.tar.xz 103028 BLAKE2B d0e866d0941d2b550c7d7f23530c6ee393fa13b4f2f27832f07790989476f11d1beddb5ad5a9be5c65c1d4dff9d4598d21adcb00c1d0490f69a99127f4527447 SHA512 e05ed8886acb5cb95a3e97c5bc0564215f7d44b604610f5c4545997fd9625d6de909c37063127e819926cd1548a48d3529dd3e82e98ee6a5dbaced028c57355d
DIST binutils-2.34.tar.xz 21637796 BLAKE2B 07dd23916a7d27f71c3f160c8c16abe2bd4fce294c738c665a012a3be6a87dbe8160d0c38740524f9025e01d438e99b2a94bcf9f9f79ee214f5dd033de8aad3d SHA512 2c7976939dcf5e8c5b7374cccd39bfe803b1bec73c6abfa0eb17c24e1942574c6bdb874c66a092a82adc443182eacd8a5a8001c19a76101f0c7ba40c27de0bbd
DIST binutils-2.35-patches-1.tar.xz 12216 BLAKE2B a811449da684e3501a7520a26639e04dda2f2d2fc8610974293eff3e4a1e23c4abeb97f52fe3b796679452bd6e3a5330fef4beb6f64b9ce2a1162076803390a0 SHA512 b8da16a4d97b264da925cc939b54bedbc148eb72a8d60f79d7ed222e9e299dca2a4f1fad4a6d60448d9d196c11331443eca0508dcbb85cb4c2da6c67bfaf4cd2
diff --git a/sys-devel/binutils/binutils-2.34-r1.ebuild b/sys-devel/binutils/binutils-2.34-r1.ebuild
deleted file mode 100644
index 4623a16515c..00000000000
--- a/sys-devel/binutils/binutils-2.34-r1.ebuild
+++ /dev/null
@@ -1,437 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="https://sourceware.org/binutils/"
-LICENSE="GPL-3+"
-IUSE="default-gold doc +gold multitarget +nls +plugins static-libs test"
-REQUIRED_USE="default-gold? ( gold )"
-
-# Variables that can be set here:
-# 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
-
-case ${PV} in
- 9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- SLOT=${PV}
- ;;
- *.9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- EGIT_BRANCH=$(ver_cut 1-2)
- EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
- SLOT=$(ver_cut 1-2)
- ;;
- *)
- SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
- SLOT=$(ver_cut 1-2)
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
- ;;
-esac
-
-#
-# The Gentoo patchset
-#
-PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
-PATCH_DEV=${PATCH_DEV:-slyfox}
-
-[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
- https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
-
-#
-# 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 )
- nls? ( sys-devel/gettext )
- sys-devel/flex
- virtual/yacc
-"
-
-RESTRICT="!test? ( test )"
-
-MY_BUILDDIR=${WORKDIR}/build
-
-src_unpack() {
- case ${PV} in
- *9999)
- git-r3_src_unpack
- ;;
- *)
- ;;
- esac
- default
- mkdir -p "${MY_BUILDDIR}"
-}
-
-src_prepare() {
- if [[ ! -z ${PATCH_VER} ]] ; then
- # Use upstream patch to enable development mode
- rm -v "${WORKDIR}/patch"/0000-Gentoo-Git-is-development.patch || die
-
- einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
- eapply "${WORKDIR}/patch"/*.patch
- fi
-
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
- # Make sure our explicit libdir paths don't get clobbered. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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() {
- # 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 #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}"
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #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. #666100
- --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
- )
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
-
- # bug 637066
- filter-flags -Wall -Wreturn-type
-
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- # see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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}/
- 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}"
- 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-09-19 20:08 Mikle Kolyada
0 siblings, 0 replies; 477+ messages in thread
From: Mikle Kolyada @ 2020-09-19 20:08 UTC (permalink / raw
To: gentoo-commits
commit: 3f09fbf3bbf9c903ea9801eb72edba0382c8813a
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sat Sep 19 20:07:50 2020 +0000
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sat Sep 19 20:08:02 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3f09fbf3
sys-devel/binutils: Stabilize 2.34-r2 amd64, #734598
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>
sys-devel/binutils/binutils-2.34-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.34-r2.ebuild b/sys-devel/binutils/binutils-2.34-r2.ebuild
index 230f28917e5..fe9a0332065 100644
--- a/sys-devel/binutils/binutils-2.34-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.34-r2.ebuild
@@ -42,7 +42,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(ver_cut 1-2)
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-09-20 18:31 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2020-09-20 18:31 UTC (permalink / raw
To: gentoo-commits
commit: f8435e1a910c237bed60bfd413732ce1512cccb9
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Sep 20 18:30:39 2020 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Sep 20 18:30:39 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f8435e1a
sys-devel/binutils: Stabilize 2.34-r2 arm64, #734598
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.34-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.34-r2.ebuild b/sys-devel/binutils/binutils-2.34-r2.ebuild
index fe9a0332065..0f8c0bacf0e 100644
--- a/sys-devel/binutils/binutils-2.34-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.34-r2.ebuild
@@ -42,7 +42,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(ver_cut 1-2)
- KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86"
+ KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-09-23 9:10 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2020-09-23 9:10 UTC (permalink / raw
To: gentoo-commits
commit: 31a460bf2895e20df8a2d1803b25920816c8a700
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Wed Sep 23 09:02:36 2020 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Wed Sep 23 09:10:19 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=31a460bf
sys-devel/binutils: Version bump 2.35.1
Package-Manager: Portage-3.0.4, Repoman-3.0.1
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 +
sys-devel/binutils/binutils-2.35.1.ebuild | 437 ++++++++++++++++++++++++++++++
2 files changed, 439 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 05172151100..2dff0ea6ec9 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -6,4 +6,6 @@ DIST binutils-2.33.1.tar.xz 21490848 BLAKE2B c336a8412938dc8c224f40a763a8bea9937
DIST binutils-2.34-patches-6.tar.xz 103028 BLAKE2B d0e866d0941d2b550c7d7f23530c6ee393fa13b4f2f27832f07790989476f11d1beddb5ad5a9be5c65c1d4dff9d4598d21adcb00c1d0490f69a99127f4527447 SHA512 e05ed8886acb5cb95a3e97c5bc0564215f7d44b604610f5c4545997fd9625d6de909c37063127e819926cd1548a48d3529dd3e82e98ee6a5dbaced028c57355d
DIST binutils-2.34.tar.xz 21637796 BLAKE2B 07dd23916a7d27f71c3f160c8c16abe2bd4fce294c738c665a012a3be6a87dbe8160d0c38740524f9025e01d438e99b2a94bcf9f9f79ee214f5dd033de8aad3d SHA512 2c7976939dcf5e8c5b7374cccd39bfe803b1bec73c6abfa0eb17c24e1942574c6bdb874c66a092a82adc443182eacd8a5a8001c19a76101f0c7ba40c27de0bbd
DIST binutils-2.35-patches-1.tar.xz 12216 BLAKE2B a811449da684e3501a7520a26639e04dda2f2d2fc8610974293eff3e4a1e23c4abeb97f52fe3b796679452bd6e3a5330fef4beb6f64b9ce2a1162076803390a0 SHA512 b8da16a4d97b264da925cc939b54bedbc148eb72a8d60f79d7ed222e9e299dca2a4f1fad4a6d60448d9d196c11331443eca0508dcbb85cb4c2da6c67bfaf4cd2
+DIST binutils-2.35.1-patches-1.tar.xz 10088 BLAKE2B fa4b0c417b6452757f90243921c60b2406c9bf60d1aaa393654fb23ce52e32fb3e7ed90f6d59286786dd95398a10d008c75bfdca065d704025cc828ff65b225f SHA512 dccb4407f4f2a8b38488f9f42638c10777ee344239cf5d4fcc8f580df3e8ff15d03211dc51ef18d905c326a71771da4b38f47381d6d549422a8353b5da0e7b0b
+DIST binutils-2.35.1.tar.xz 22031720 BLAKE2B d3468da90b75e9b5fa7fbd64d3fdb0a4bc445e4cb7da5ae058f73a1e9d948b3e9438bc9f1b5b351db369b76a25960c9c1f58f828fd2c7646f555de45fa3c052b SHA512 94ff72708403413b70b247f3af4099ebaa882b6659249869f1ed9941a0f1912e313f08357d470f9fd2359e7f5e5b0eb86285e5eaf883fa8187789d6b1bd304eb
DIST binutils-2.35.tar.xz 22042160 BLAKE2B 72ea79edf3a77aa93dcf38274123abbae5ce8f800a95e6379b4c8807050b05c2dfec314f06c027b1343c5570f369324fa3e195d7e0db5f8a57c0579937c49d3f SHA512 9f222e4ab6720036402d03904fb11b73ab87714b85cd84997f7d357f405c7e10581d70202f9165a1ee0c70538632db27ecc9dfe627dddb1e6bc7edb1537cf786
diff --git a/sys-devel/binutils/binutils-2.35.1.ebuild b/sys-devel/binutils/binutils-2.35.1.ebuild
new file mode 100644
index 00000000000..fb041ee7e6b
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.35.1.ebuild
@@ -0,0 +1,437 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
+
+DESCRIPTION="Tools necessary to build programs"
+HOMEPAGE="https://sourceware.org/binutils/"
+LICENSE="GPL-3+"
+IUSE="default-gold doc +gold multitarget +nls +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=1
+PATCH_DEV=dilfridge
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+ SLOT=${PV}
+else
+ PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
+ PATCH_DEV=${PATCH_DEV:-slyfox}
+ SRC_URI="mirror://gnu/binutils/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)
+ # live ebuild
+ #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~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 )
+ 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}.tar.xz
+
+ cd "${WORKDIR}" || die
+ unpack binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz
+ 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 [[ ! -z ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
+ if ! use vanilla; then
+ einfo "Applying binutils patchset ${patchsetname}"
+ eapply "${WORKDIR}/patch"
+ einfo "Done."
+ fi
+ fi
+
+ # This check should probably go somewhere else, like pkg_pretend.
+ if [[ ${CTARGET} == *-uclibc* ]] ; then
+ if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
+ die "sorry, but this binutils doesn't yet support uClibc :("
+ fi
+ fi
+
+ # Make sure our explicit libdir paths don't get clobbered. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ 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() {
+ # 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 #42033
+ strip-linguas -u */po
+
+ # Keep things sane
+ strip-flags
+
+ local x
+ echo
+ for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
+ einfo "$(printf '%10s' ${x}:) ${!x}"
+ done
+ echo
+
+ cd "${MY_BUILDDIR}"
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && 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. #497268
+ --enable-install-libiberty
+ # Available from 2.35 on
+ --enable-textrel-check=warning
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #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. #666100
+ --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
+ )
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${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}"
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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}"
+
+ # bug 637066
+ filter-flags -Wall -Wreturn-type
+
+ emake -k check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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}/
+ 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}"
+ 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-09-25 14:20 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2020-09-25 14:20 UTC (permalink / raw
To: gentoo-commits
commit: 3a7b39fe3f2587bbe01626451f1126eb966e82bc
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 25 14:11:07 2020 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Sep 25 14:19:36 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3a7b39fe
sys-devel/binutils: Remove old
Package-Manager: Portage-3.0.4, Repoman-3.0.1
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 -
sys-devel/binutils/binutils-2.35.ebuild | 437 --------------------------------
2 files changed, 439 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 2dff0ea6ec9..3d995073da3 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -5,7 +5,5 @@ DIST binutils-2.33.1-patches-2.tar.xz 18636 BLAKE2B 0e0757329b6a83aeff4f4c450c95
DIST binutils-2.33.1.tar.xz 21490848 BLAKE2B c336a8412938dc8c224f40a763a8bea9937cca0462a8fb80e62f14aabe590107fc061a3f4b9327e1f4652cb026384d36a91b4766d4d469d2d0680932874b638c SHA512 b7a6767c6c7ca6b5cafa7080e6820b7bb3a53b7148348c438d99905defbdf0d30c9744a484ee01c9441a8153901808513366b15ba9533e20c9673c262ade36ac
DIST binutils-2.34-patches-6.tar.xz 103028 BLAKE2B d0e866d0941d2b550c7d7f23530c6ee393fa13b4f2f27832f07790989476f11d1beddb5ad5a9be5c65c1d4dff9d4598d21adcb00c1d0490f69a99127f4527447 SHA512 e05ed8886acb5cb95a3e97c5bc0564215f7d44b604610f5c4545997fd9625d6de909c37063127e819926cd1548a48d3529dd3e82e98ee6a5dbaced028c57355d
DIST binutils-2.34.tar.xz 21637796 BLAKE2B 07dd23916a7d27f71c3f160c8c16abe2bd4fce294c738c665a012a3be6a87dbe8160d0c38740524f9025e01d438e99b2a94bcf9f9f79ee214f5dd033de8aad3d SHA512 2c7976939dcf5e8c5b7374cccd39bfe803b1bec73c6abfa0eb17c24e1942574c6bdb874c66a092a82adc443182eacd8a5a8001c19a76101f0c7ba40c27de0bbd
-DIST binutils-2.35-patches-1.tar.xz 12216 BLAKE2B a811449da684e3501a7520a26639e04dda2f2d2fc8610974293eff3e4a1e23c4abeb97f52fe3b796679452bd6e3a5330fef4beb6f64b9ce2a1162076803390a0 SHA512 b8da16a4d97b264da925cc939b54bedbc148eb72a8d60f79d7ed222e9e299dca2a4f1fad4a6d60448d9d196c11331443eca0508dcbb85cb4c2da6c67bfaf4cd2
DIST binutils-2.35.1-patches-1.tar.xz 10088 BLAKE2B fa4b0c417b6452757f90243921c60b2406c9bf60d1aaa393654fb23ce52e32fb3e7ed90f6d59286786dd95398a10d008c75bfdca065d704025cc828ff65b225f SHA512 dccb4407f4f2a8b38488f9f42638c10777ee344239cf5d4fcc8f580df3e8ff15d03211dc51ef18d905c326a71771da4b38f47381d6d549422a8353b5da0e7b0b
DIST binutils-2.35.1.tar.xz 22031720 BLAKE2B d3468da90b75e9b5fa7fbd64d3fdb0a4bc445e4cb7da5ae058f73a1e9d948b3e9438bc9f1b5b351db369b76a25960c9c1f58f828fd2c7646f555de45fa3c052b SHA512 94ff72708403413b70b247f3af4099ebaa882b6659249869f1ed9941a0f1912e313f08357d470f9fd2359e7f5e5b0eb86285e5eaf883fa8187789d6b1bd304eb
-DIST binutils-2.35.tar.xz 22042160 BLAKE2B 72ea79edf3a77aa93dcf38274123abbae5ce8f800a95e6379b4c8807050b05c2dfec314f06c027b1343c5570f369324fa3e195d7e0db5f8a57c0579937c49d3f SHA512 9f222e4ab6720036402d03904fb11b73ab87714b85cd84997f7d357f405c7e10581d70202f9165a1ee0c70538632db27ecc9dfe627dddb1e6bc7edb1537cf786
diff --git a/sys-devel/binutils/binutils-2.35.ebuild b/sys-devel/binutils/binutils-2.35.ebuild
deleted file mode 100644
index fb041ee7e6b..00000000000
--- a/sys-devel/binutils/binutils-2.35.ebuild
+++ /dev/null
@@ -1,437 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="https://sourceware.org/binutils/"
-LICENSE="GPL-3+"
-IUSE="default-gold doc +gold multitarget +nls +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=1
-PATCH_DEV=dilfridge
-
-if [[ ${PV} == 9999* ]]; then
- inherit git-r3
- SLOT=${PV}
-else
- PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
- PATCH_DEV=${PATCH_DEV:-slyfox}
- SRC_URI="mirror://gnu/binutils/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)
- # live ebuild
- #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~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 )
- 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}.tar.xz
-
- cd "${WORKDIR}" || die
- unpack binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz
- 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 [[ ! -z ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
- if ! use vanilla; then
- einfo "Applying binutils patchset ${patchsetname}"
- eapply "${WORKDIR}/patch"
- einfo "Done."
- fi
- fi
-
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
- # Make sure our explicit libdir paths don't get clobbered. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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() {
- # 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 #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}"
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- # Available from 2.35 on
- --enable-textrel-check=warning
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #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. #666100
- --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
- )
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
-
- # bug 637066
- filter-flags -Wall -Wreturn-type
-
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- # see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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}/
- 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}"
- 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-09-25 14:20 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2020-09-25 14:20 UTC (permalink / raw
To: gentoo-commits
commit: 68300a250ec9cec7a93025fbd9b0c60e19f01e04
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 25 14:10:35 2020 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Sep 25 14:19:32 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=68300a25
sys-devel/binutils: Re-add keywords to 2.35.1
Package-Manager: Portage-3.0.4, Repoman-3.0.1
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.35.1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.35.1.ebuild b/sys-devel/binutils/binutils-2.35.1.ebuild
index fb041ee7e6b..2f8b80c52ee 100644
--- a/sys-devel/binutils/binutils-2.35.1.ebuild
+++ b/sys-devel/binutils/binutils-2.35.1.ebuild
@@ -33,7 +33,7 @@ else
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
SLOT=$(ver_cut 1-2)
# live ebuild
- #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-09-25 14:20 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2020-09-25 14:20 UTC (permalink / raw
To: gentoo-commits
commit: b184945ad834119a420c2c40ca6c34215157ec85
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 25 14:11:49 2020 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Sep 25 14:19:39 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b184945a
sys-devel/binutils: Remove ~sh from keywords template
Package-Manager: Portage-3.0.4, Repoman-3.0.1
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-9999.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index fb041ee7e6b..25e45ab6c6a 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -33,7 +33,7 @@ else
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
SLOT=$(ver_cut 1-2)
# live ebuild
- #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
+ #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-09-28 17:41 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2020-09-28 17:41 UTC (permalink / raw
To: gentoo-commits
commit: 159b0280aa4efb2fc5addf16efd365f0c5d90811
Author: Rolf Eike Beer <eike <AT> sf-mail <DOT> de>
AuthorDate: Mon Sep 28 16:39:11 2020 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Mon Sep 28 17:40:44 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=159b0280
sys-devel/binutils: stable 2.34-r2 for sparc, bug #734598
Package-Manager: Portage-3.0.4, Repoman-3.0.1
RepoMan-Options: --include-arches="sparc"
Signed-off-by: Rolf Eike Beer <eike <AT> sf-mail.de>
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-2.34-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.34-r2.ebuild b/sys-devel/binutils/binutils-2.34-r2.ebuild
index 0f8c0bacf0e..672f3cc3c5a 100644
--- a/sys-devel/binutils/binutils-2.34-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.34-r2.ebuild
@@ -42,7 +42,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(ver_cut 1-2)
- KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86"
+ KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-10-03 9:25 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2020-10-03 9:25 UTC (permalink / raw
To: gentoo-commits
commit: 38ee5fe0bcbca822c3c9f3c654968c33d48e8a8e
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Oct 3 09:24:41 2020 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Oct 3 09:24:41 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=38ee5fe0
sys-devel/binutils: drop support for live release branches
Package-Manager: Portage-3.0.8, Repoman-3.0.1
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-2.32-r1.ebuild | 9 ---------
sys-devel/binutils/binutils-2.32-r2.ebuild | 9 ---------
sys-devel/binutils/binutils-2.33.1-r1.ebuild | 9 ---------
sys-devel/binutils/binutils-2.34-r2.ebuild | 9 ---------
4 files changed, 36 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.32-r1.ebuild b/sys-devel/binutils/binutils-2.32-r1.ebuild
index 1ae297d7ea1..3daa17a457b 100644
--- a/sys-devel/binutils/binutils-2.32-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r1.ebuild
@@ -33,15 +33,6 @@ case ${PV} in
EGIT_CHECKOUT_DIR=${S}
SLOT=${PV}
;;
- *.9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- EGIT_BRANCH=$(get_version_component_range 1-2)
- EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
- SLOT=$(get_version_component_range 1-2)
- ;;
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(get_version_component_range 1-2)
diff --git a/sys-devel/binutils/binutils-2.32-r2.ebuild b/sys-devel/binutils/binutils-2.32-r2.ebuild
index ef860c0fe8c..d4de5f2ce4b 100644
--- a/sys-devel/binutils/binutils-2.32-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r2.ebuild
@@ -30,15 +30,6 @@ case ${PV} in
EGIT_CHECKOUT_DIR=${S}
SLOT=${PV}
;;
- *.9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- EGIT_BRANCH=$(ver_cut 1-2)
- EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
- SLOT=$(ver_cut 1-2)
- ;;
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(ver_cut 1-2)
diff --git a/sys-devel/binutils/binutils-2.33.1-r1.ebuild b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
index c0f31907a70..fe16e589ba7 100644
--- a/sys-devel/binutils/binutils-2.33.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
@@ -30,15 +30,6 @@ case ${PV} in
EGIT_CHECKOUT_DIR=${S}
SLOT=${PV}
;;
- *.9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- EGIT_BRANCH=$(ver_cut 1-2)
- EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
- SLOT=$(ver_cut 1-2)
- ;;
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(ver_cut 1-2)
diff --git a/sys-devel/binutils/binutils-2.34-r2.ebuild b/sys-devel/binutils/binutils-2.34-r2.ebuild
index 672f3cc3c5a..cc16ef90d89 100644
--- a/sys-devel/binutils/binutils-2.34-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.34-r2.ebuild
@@ -30,15 +30,6 @@ case ${PV} in
EGIT_CHECKOUT_DIR=${S}
SLOT=${PV}
;;
- *.9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- EGIT_BRANCH=$(ver_cut 1-2)
- EGIT_BRANCH="binutils-${EGIT_BRANCH/./_}-branch"
- SLOT=$(ver_cut 1-2)
- ;;
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(ver_cut 1-2)
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-10-06 4:23 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2020-10-06 4:23 UTC (permalink / raw
To: gentoo-commits
commit: 35b9ce21bfb609cd8e8aafa6c39cbbf9055a4afb
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 6 04:22:09 2020 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Oct 6 04:22:09 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=35b9ce21
sys-devel/binutils: Stabilize 2.34-r2 arm, #734598
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.34-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.34-r2.ebuild b/sys-devel/binutils/binutils-2.34-r2.ebuild
index cc16ef90d89..2e8c3db8da3 100644
--- a/sys-devel/binutils/binutils-2.34-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.34-r2.ebuild
@@ -33,7 +33,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(ver_cut 1-2)
- KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-10-30 21:45 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2020-10-30 21:45 UTC (permalink / raw
To: gentoo-commits
commit: a7067c3c19ddc3b38b69195cf06dc4de5ef855ab
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Oct 30 21:42:08 2020 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Oct 30 21:45:20 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a7067c3c
sys-devel/binutils: 2.35.1 patchset bump
Package-Manager: Portage-3.0.8, Repoman-3.0.2
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.35.1-r1.ebuild | 437 +++++++++++++++++++++++++++
2 files changed, 438 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 3d995073da3..1c4e8ce1c45 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -6,4 +6,5 @@ DIST binutils-2.33.1.tar.xz 21490848 BLAKE2B c336a8412938dc8c224f40a763a8bea9937
DIST binutils-2.34-patches-6.tar.xz 103028 BLAKE2B d0e866d0941d2b550c7d7f23530c6ee393fa13b4f2f27832f07790989476f11d1beddb5ad5a9be5c65c1d4dff9d4598d21adcb00c1d0490f69a99127f4527447 SHA512 e05ed8886acb5cb95a3e97c5bc0564215f7d44b604610f5c4545997fd9625d6de909c37063127e819926cd1548a48d3529dd3e82e98ee6a5dbaced028c57355d
DIST binutils-2.34.tar.xz 21637796 BLAKE2B 07dd23916a7d27f71c3f160c8c16abe2bd4fce294c738c665a012a3be6a87dbe8160d0c38740524f9025e01d438e99b2a94bcf9f9f79ee214f5dd033de8aad3d SHA512 2c7976939dcf5e8c5b7374cccd39bfe803b1bec73c6abfa0eb17c24e1942574c6bdb874c66a092a82adc443182eacd8a5a8001c19a76101f0c7ba40c27de0bbd
DIST binutils-2.35.1-patches-1.tar.xz 10088 BLAKE2B fa4b0c417b6452757f90243921c60b2406c9bf60d1aaa393654fb23ce52e32fb3e7ed90f6d59286786dd95398a10d008c75bfdca065d704025cc828ff65b225f SHA512 dccb4407f4f2a8b38488f9f42638c10777ee344239cf5d4fcc8f580df3e8ff15d03211dc51ef18d905c326a71771da4b38f47381d6d549422a8353b5da0e7b0b
+DIST binutils-2.35.1-patches-2.tar.xz 72236 BLAKE2B 584cb3edbda28c69171ed64e941535f992150d86f25201cadd07b63daaa36bf76b07dc0aa8a4837da17d1672feb47a7b15f83efdeec5409e695965a10142147a SHA512 b704ebe82c4402f058f9c96991a89256a6b369d28f844bf020ed2c77766894d9a2ca0596cd609de7b389fa8cd52bfab674b6deb10ea2096e50aa57921be2083e
DIST binutils-2.35.1.tar.xz 22031720 BLAKE2B d3468da90b75e9b5fa7fbd64d3fdb0a4bc445e4cb7da5ae058f73a1e9d948b3e9438bc9f1b5b351db369b76a25960c9c1f58f828fd2c7646f555de45fa3c052b SHA512 94ff72708403413b70b247f3af4099ebaa882b6659249869f1ed9941a0f1912e313f08357d470f9fd2359e7f5e5b0eb86285e5eaf883fa8187789d6b1bd304eb
diff --git a/sys-devel/binutils/binutils-2.35.1-r1.ebuild b/sys-devel/binutils/binutils-2.35.1-r1.ebuild
new file mode 100644
index 00000000000..03297128b67
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.35.1-r1.ebuild
@@ -0,0 +1,437 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
+
+DESCRIPTION="Tools necessary to build programs"
+HOMEPAGE="https://sourceware.org/binutils/"
+LICENSE="GPL-3+"
+IUSE="default-gold doc +gold multitarget +nls +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=2
+PATCH_DEV=dilfridge
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+ SLOT=${PV}
+else
+ PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
+ PATCH_DEV=${PATCH_DEV:-slyfox}
+ SRC_URI="mirror://gnu/binutils/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)
+ # live ebuild
+ #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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 )
+ 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}.tar.xz
+
+ cd "${WORKDIR}" || die
+ unpack binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz
+ 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 [[ ! -z ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
+ if ! use vanilla; then
+ einfo "Applying binutils patchset ${patchsetname}"
+ eapply "${WORKDIR}/patch"
+ einfo "Done."
+ fi
+ fi
+
+ # This check should probably go somewhere else, like pkg_pretend.
+ if [[ ${CTARGET} == *-uclibc* ]] ; then
+ if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
+ die "sorry, but this binutils doesn't yet support uClibc :("
+ fi
+ fi
+
+ # Make sure our explicit libdir paths don't get clobbered. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ 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() {
+ # 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 #42033
+ strip-linguas -u */po
+
+ # Keep things sane
+ strip-flags
+
+ local x
+ echo
+ for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
+ einfo "$(printf '%10s' ${x}:) ${!x}"
+ done
+ echo
+
+ cd "${MY_BUILDDIR}"
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && 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. #497268
+ --enable-install-libiberty
+ # Available from 2.35 on
+ --enable-textrel-check=warning
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #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. #666100
+ --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
+ )
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${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}"
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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}"
+
+ # bug 637066
+ filter-flags -Wall -Wreturn-type
+
+ emake -k check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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}/
+ 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}"
+ 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-11-03 22:47 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2020-11-03 22:47 UTC (permalink / raw
To: gentoo-commits
commit: 41cb620942cbdf3b2f983210fa5d9391b0520028
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Tue Nov 3 22:45:19 2020 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Tue Nov 3 22:45:19 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=41cb6209
sys-devel/binutils: stable 2.34-r2 for hppa
stable wrt bug #734598
Package-Manager: Portage-3.0.9, Repoman-3.0.2
RepoMan-Options: --include-arches="hppa"
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-2.34-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.34-r2.ebuild b/sys-devel/binutils/binutils-2.34-r2.ebuild
index 2e8c3db8da3..a9d1db8faad 100644
--- a/sys-devel/binutils/binutils-2.34-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.34-r2.ebuild
@@ -33,7 +33,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(ver_cut 1-2)
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-11-14 9:24 Mikle Kolyada
0 siblings, 0 replies; 477+ messages in thread
From: Mikle Kolyada @ 2020-11-14 9:24 UTC (permalink / raw
To: gentoo-commits
commit: 26e39c7c3b0015c82e0c921f230646793349511e
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 14 09:20:45 2020 +0000
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sat Nov 14 09:24:24 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=26e39c7c
sys-devel/binutils: Stabilize 2.34-r2 s390, #734598
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>
sys-devel/binutils/binutils-2.34-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.34-r2.ebuild b/sys-devel/binutils/binutils-2.34-r2.ebuild
index a9d1db8faad..517ec9a28be 100644
--- a/sys-devel/binutils/binutils-2.34-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.34-r2.ebuild
@@ -33,7 +33,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(ver_cut 1-2)
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv s390 sparc x86"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-11-16 16:49 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2020-11-16 16:49 UTC (permalink / raw
To: gentoo-commits
commit: fa21dbf224bbe7c689d37229ab964923f1d3ee25
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Mon Nov 16 16:47:50 2020 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Mon Nov 16 16:47:50 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fa21dbf2
sys-devel/binutils: Re-add keywords to 2.35.1-r1
Package-Manager: Portage-3.0.8, Repoman-3.0.2
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.35.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.35.1-r1.ebuild b/sys-devel/binutils/binutils-2.35.1-r1.ebuild
index 03297128b67..57dc7a307c1 100644
--- a/sys-devel/binutils/binutils-2.35.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.35.1-r1.ebuild
@@ -33,7 +33,7 @@ else
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
SLOT=$(ver_cut 1-2)
# live ebuild
- #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-12-23 2:16 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2020-12-23 2:16 UTC (permalink / raw
To: gentoo-commits
commit: 0a1ba56c1fa08345140473cd948012a72d72e7ff
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Dec 23 02:16:18 2020 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Dec 23 02:16:18 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0a1ba56c
sys-devel/binutils: Stabilize 2.34-r2 ppc, #734598
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.34-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.34-r2.ebuild b/sys-devel/binutils/binutils-2.34-r2.ebuild
index 517ec9a28be..b88c8281b45 100644
--- a/sys-devel/binutils/binutils-2.34-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.34-r2.ebuild
@@ -33,7 +33,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(ver_cut 1-2)
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv s390 sparc x86"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ~ppc64 ~riscv s390 sparc x86"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2020-12-23 2:17 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2020-12-23 2:17 UTC (permalink / raw
To: gentoo-commits
commit: 97b38248e81824e94193d146596e580ef9af3a1b
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Dec 23 02:17:01 2020 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Dec 23 02:17:01 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=97b38248
sys-devel/binutils: Stabilize 2.34-r2 ppc64, #734598
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.34-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.34-r2.ebuild b/sys-devel/binutils/binutils-2.34-r2.ebuild
index b88c8281b45..b18c16bc3c9 100644
--- a/sys-devel/binutils/binutils-2.34-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.34-r2.ebuild
@@ -33,7 +33,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
SLOT=$(ver_cut 1-2)
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ~ppc64 ~riscv s390 sparc x86"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
;;
esac
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-01-03 13:23 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2021-01-03 13:23 UTC (permalink / raw
To: gentoo-commits
commit: fee7ec7b350ff17e64fd136c84cf6279c93255c9
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 3 13:14:34 2021 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sun Jan 3 13:19:38 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fee7ec7b
sys-devel/binutils: expliictly disable debuginfod
Fixed-by: Fabian Groffen
Reported-by: Jason Cooper
Closes: https://bugs.gentoo.org/754753
Package-Manager: Portage-3.0.12, Repoman-3.0.2
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-2.34-r2.ebuild | 6 +++++-
sys-devel/binutils/binutils-2.35.1-r1.ebuild | 6 +++++-
sys-devel/binutils/binutils-2.35.1.ebuild | 6 +++++-
sys-devel/binutils/binutils-9999.ebuild | 6 +++++-
4 files changed, 20 insertions(+), 4 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.34-r2.ebuild b/sys-devel/binutils/binutils-2.34-r2.ebuild
index b18c16bc3c9..21e6befdb77 100644
--- a/sys-devel/binutils/binutils-2.34-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.34-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -246,6 +246,10 @@ src_configure() {
# Change SONAME to avoid conflict across
# {native,cross}/binutils, binutils-libs. #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
)
echo ./configure "${myconf[@]}"
"${S}"/configure "${myconf[@]}" || die
diff --git a/sys-devel/binutils/binutils-2.35.1-r1.ebuild b/sys-devel/binutils/binutils-2.35.1-r1.ebuild
index 57dc7a307c1..c64b6d48e49 100644
--- a/sys-devel/binutils/binutils-2.35.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.35.1-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -258,6 +258,10 @@ src_configure() {
# Change SONAME to avoid conflict across
# {native,cross}/binutils, binutils-libs. #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
)
echo ./configure "${myconf[@]}"
"${S}"/configure "${myconf[@]}" || die
diff --git a/sys-devel/binutils/binutils-2.35.1.ebuild b/sys-devel/binutils/binutils-2.35.1.ebuild
index 2f8b80c52ee..cb86407d9c8 100644
--- a/sys-devel/binutils/binutils-2.35.1.ebuild
+++ b/sys-devel/binutils/binutils-2.35.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -258,6 +258,10 @@ src_configure() {
# Change SONAME to avoid conflict across
# {native,cross}/binutils, binutils-libs. #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
)
echo ./configure "${myconf[@]}"
"${S}"/configure "${myconf[@]}" || die
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 25e45ab6c6a..40f21fb0628 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -258,6 +258,10 @@ src_configure() {
# Change SONAME to avoid conflict across
# {native,cross}/binutils, binutils-libs. #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
)
echo ./configure "${myconf[@]}"
"${S}"/configure "${myconf[@]}" || die
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-01-23 19:28 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2021-01-23 19:28 UTC (permalink / raw
To: gentoo-commits
commit: b97a508853ded504ff0b036fccc7ec71a743ab8e
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 23 19:25:58 2021 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Jan 23 19:28:09 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b97a5088
sys-devel/binutils: Remove old
Package-Manager: Portage-3.0.12, Repoman-3.0.2
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 -
sys-devel/binutils/binutils-2.35.1.ebuild | 441 ------------------------------
2 files changed, 442 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 1c4e8ce1c45..1f389a19dd3 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -5,6 +5,5 @@ DIST binutils-2.33.1-patches-2.tar.xz 18636 BLAKE2B 0e0757329b6a83aeff4f4c450c95
DIST binutils-2.33.1.tar.xz 21490848 BLAKE2B c336a8412938dc8c224f40a763a8bea9937cca0462a8fb80e62f14aabe590107fc061a3f4b9327e1f4652cb026384d36a91b4766d4d469d2d0680932874b638c SHA512 b7a6767c6c7ca6b5cafa7080e6820b7bb3a53b7148348c438d99905defbdf0d30c9744a484ee01c9441a8153901808513366b15ba9533e20c9673c262ade36ac
DIST binutils-2.34-patches-6.tar.xz 103028 BLAKE2B d0e866d0941d2b550c7d7f23530c6ee393fa13b4f2f27832f07790989476f11d1beddb5ad5a9be5c65c1d4dff9d4598d21adcb00c1d0490f69a99127f4527447 SHA512 e05ed8886acb5cb95a3e97c5bc0564215f7d44b604610f5c4545997fd9625d6de909c37063127e819926cd1548a48d3529dd3e82e98ee6a5dbaced028c57355d
DIST binutils-2.34.tar.xz 21637796 BLAKE2B 07dd23916a7d27f71c3f160c8c16abe2bd4fce294c738c665a012a3be6a87dbe8160d0c38740524f9025e01d438e99b2a94bcf9f9f79ee214f5dd033de8aad3d SHA512 2c7976939dcf5e8c5b7374cccd39bfe803b1bec73c6abfa0eb17c24e1942574c6bdb874c66a092a82adc443182eacd8a5a8001c19a76101f0c7ba40c27de0bbd
-DIST binutils-2.35.1-patches-1.tar.xz 10088 BLAKE2B fa4b0c417b6452757f90243921c60b2406c9bf60d1aaa393654fb23ce52e32fb3e7ed90f6d59286786dd95398a10d008c75bfdca065d704025cc828ff65b225f SHA512 dccb4407f4f2a8b38488f9f42638c10777ee344239cf5d4fcc8f580df3e8ff15d03211dc51ef18d905c326a71771da4b38f47381d6d549422a8353b5da0e7b0b
DIST binutils-2.35.1-patches-2.tar.xz 72236 BLAKE2B 584cb3edbda28c69171ed64e941535f992150d86f25201cadd07b63daaa36bf76b07dc0aa8a4837da17d1672feb47a7b15f83efdeec5409e695965a10142147a SHA512 b704ebe82c4402f058f9c96991a89256a6b369d28f844bf020ed2c77766894d9a2ca0596cd609de7b389fa8cd52bfab674b6deb10ea2096e50aa57921be2083e
DIST binutils-2.35.1.tar.xz 22031720 BLAKE2B d3468da90b75e9b5fa7fbd64d3fdb0a4bc445e4cb7da5ae058f73a1e9d948b3e9438bc9f1b5b351db369b76a25960c9c1f58f828fd2c7646f555de45fa3c052b SHA512 94ff72708403413b70b247f3af4099ebaa882b6659249869f1ed9941a0f1912e313f08357d470f9fd2359e7f5e5b0eb86285e5eaf883fa8187789d6b1bd304eb
diff --git a/sys-devel/binutils/binutils-2.35.1.ebuild b/sys-devel/binutils/binutils-2.35.1.ebuild
deleted file mode 100644
index cb86407d9c8..00000000000
--- a/sys-devel/binutils/binutils-2.35.1.ebuild
+++ /dev/null
@@ -1,441 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="https://sourceware.org/binutils/"
-LICENSE="GPL-3+"
-IUSE="default-gold doc +gold multitarget +nls +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=1
-PATCH_DEV=dilfridge
-
-if [[ ${PV} == 9999* ]]; then
- inherit git-r3
- SLOT=${PV}
-else
- PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
- PATCH_DEV=${PATCH_DEV:-slyfox}
- SRC_URI="mirror://gnu/binutils/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)
- # live ebuild
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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 )
- 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}.tar.xz
-
- cd "${WORKDIR}" || die
- unpack binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz
- 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 [[ ! -z ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
- if ! use vanilla; then
- einfo "Applying binutils patchset ${patchsetname}"
- eapply "${WORKDIR}/patch"
- einfo "Done."
- fi
- fi
-
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
- # Make sure our explicit libdir paths don't get clobbered. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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() {
- # 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 #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}"
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- # Available from 2.35 on
- --enable-textrel-check=warning
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #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. #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
- )
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
-
- # bug 637066
- filter-flags -Wall -Wreturn-type
-
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- # see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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}/
- 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}"
- 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-01-24 15:34 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2021-01-24 15:34 UTC (permalink / raw
To: gentoo-commits
commit: 488a19842277984af8c2ec22bb0f56ae54d40d79
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 24 15:31:36 2021 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Jan 24 15:33:48 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=488a1984
sys-devel/binutils: Version bump (unkeyworded)
Package-Manager: Portage-3.0.12, Repoman-3.0.2
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 +
sys-devel/binutils/binutils-2.36.ebuild | 440 ++++++++++++++++++++++++++++++++
2 files changed, 442 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 1f389a19dd3..f96cbe5beda 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -7,3 +7,5 @@ DIST binutils-2.34-patches-6.tar.xz 103028 BLAKE2B d0e866d0941d2b550c7d7f23530c6
DIST binutils-2.34.tar.xz 21637796 BLAKE2B 07dd23916a7d27f71c3f160c8c16abe2bd4fce294c738c665a012a3be6a87dbe8160d0c38740524f9025e01d438e99b2a94bcf9f9f79ee214f5dd033de8aad3d SHA512 2c7976939dcf5e8c5b7374cccd39bfe803b1bec73c6abfa0eb17c24e1942574c6bdb874c66a092a82adc443182eacd8a5a8001c19a76101f0c7ba40c27de0bbd
DIST binutils-2.35.1-patches-2.tar.xz 72236 BLAKE2B 584cb3edbda28c69171ed64e941535f992150d86f25201cadd07b63daaa36bf76b07dc0aa8a4837da17d1672feb47a7b15f83efdeec5409e695965a10142147a SHA512 b704ebe82c4402f058f9c96991a89256a6b369d28f844bf020ed2c77766894d9a2ca0596cd609de7b389fa8cd52bfab674b6deb10ea2096e50aa57921be2083e
DIST binutils-2.35.1.tar.xz 22031720 BLAKE2B d3468da90b75e9b5fa7fbd64d3fdb0a4bc445e4cb7da5ae058f73a1e9d948b3e9438bc9f1b5b351db369b76a25960c9c1f58f828fd2c7646f555de45fa3c052b SHA512 94ff72708403413b70b247f3af4099ebaa882b6659249869f1ed9941a0f1912e313f08357d470f9fd2359e7f5e5b0eb86285e5eaf883fa8187789d6b1bd304eb
+DIST binutils-2.36-patches-1.tar.xz 13200 BLAKE2B 82e8ef3c51984d4418466d7b838fa5c0a5a72c3bbe3e631b8aeb28503fd8b81e2b187908a2a4e1b286eba8af0db25eafadc5ffe42dd07677e6bd659cf5483b07 SHA512 88c5ac42d25d131c1507d94992fdd11a15700a0304da10cedd3b0db9bc689d3387189d6d97f847d77e8a5d053619b174695a0a6b3c6c1bb66ea8f122f0b38d63
+DIST binutils-2.36.tar.xz 22760136 BLAKE2B 6666841e26c89a07b7e6c1144d893bab112278906d7917f3ca6273aa78094951686f0d5893857cae1edde1e1ecd7c6798bc14eac88d03c5a1e6e3e480a788f9c SHA512 0b89b70d4ad5cfe5bd0011dc7e342ae9de96efdbfc3442a0d6b5f7660e38bbcad36f2c72ba8f074323f02bde022ff1cd723ae99f0ea55cf94ee2dbbc0e4efdb2
diff --git a/sys-devel/binutils/binutils-2.36.ebuild b/sys-devel/binutils/binutils-2.36.ebuild
new file mode 100644
index 00000000000..afa2a08fc1c
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.36.ebuild
@@ -0,0 +1,440 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
+
+DESCRIPTION="Tools necessary to build programs"
+HOMEPAGE="https://sourceware.org/binutils/"
+LICENSE="GPL-3+"
+IUSE="default-gold doc +gold multitarget +nls +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=1
+PATCH_DEV=dilfridge
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+ SLOT=${PV}
+else
+ PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
+ PATCH_DEV=${PATCH_DEV:-slyfox}
+ SRC_URI="mirror://gnu/binutils/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 ~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 )
+ 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}.tar.xz
+
+ cd "${WORKDIR}" || die
+ unpack binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz
+ 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 [[ ! -z ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
+ if ! use vanilla; then
+ einfo "Applying binutils patchset ${patchsetname}"
+ eapply "${WORKDIR}/patch"
+ einfo "Done."
+ fi
+ fi
+
+ # This check should probably go somewhere else, like pkg_pretend.
+ if [[ ${CTARGET} == *-uclibc* ]] ; then
+ if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
+ die "sorry, but this binutils doesn't yet support uClibc :("
+ fi
+ fi
+
+ # Make sure our explicit libdir paths don't get clobbered. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ 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() {
+ # 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 #42033
+ strip-linguas -u */po
+
+ # Keep things sane
+ strip-flags
+
+ local x
+ echo
+ for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
+ einfo "$(printf '%10s' ${x}:) ${!x}"
+ done
+ echo
+
+ cd "${MY_BUILDDIR}"
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && 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. #497268
+ --enable-install-libiberty
+ # Available from 2.35 on
+ --enable-textrel-check=warning
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #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. #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
+ )
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${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}"
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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}"
+
+ # bug 637066
+ filter-flags -Wall -Wreturn-type
+
+ emake -k check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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}/
+ 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}"
+ 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-01-26 17:42 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2021-01-26 17:42 UTC (permalink / raw
To: gentoo-commits
commit: 311e154a63b034e001e0c35cd18cb1b5ccf3b3dc
Author: Rolf Eike Beer <eike <AT> sf-mail <DOT> de>
AuthorDate: Tue Jan 26 17:29:18 2021 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Tue Jan 26 17:42:40 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=311e154a
sys-devel/binutils: stable 2.35.1-r1 for sparc, bug #766734
Package-Manager: Portage-3.0.13, Repoman-3.0.2
RepoMan-Options: --include-arches="sparc"
Signed-off-by: Rolf Eike Beer <eike <AT> sf-mail.de>
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-2.35.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.35.1-r1.ebuild b/sys-devel/binutils/binutils-2.35.1-r1.ebuild
index c64b6d48e49..e1ade467c03 100644
--- a/sys-devel/binutils/binutils-2.35.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.35.1-r1.ebuild
@@ -33,7 +33,7 @@ else
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
SLOT=$(ver_cut 1-2)
# live ebuild
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-01-28 17:38 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2021-01-28 17:38 UTC (permalink / raw
To: gentoo-commits
commit: c859344de46a79d954d4d976d46c7d5936499e8e
Author: Rolf Eike Beer <eike <AT> sf-mail <DOT> de>
AuthorDate: Thu Jan 28 17:11:08 2021 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Thu Jan 28 17:38:07 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c859344d
sys-devel/binutils: stable 2.35.1-r1 for hppa, bug #766734
Package-Manager: Portage-3.0.13, Repoman-3.0.2
RepoMan-Options: --include-arches="hppa"
Signed-off-by: Rolf Eike Beer <eike <AT> sf-mail.de>
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-2.35.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.35.1-r1.ebuild b/sys-devel/binutils/binutils-2.35.1-r1.ebuild
index e1ade467c03..5a1d57df8a2 100644
--- a/sys-devel/binutils/binutils-2.35.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.35.1-r1.ebuild
@@ -33,7 +33,7 @@ else
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
SLOT=$(ver_cut 1-2)
# live ebuild
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-01-28 19:55 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2021-01-28 19:55 UTC (permalink / raw
To: gentoo-commits
commit: c20554c233135ab7943147c88d59fc6a7a1363a6
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Jan 28 19:54:57 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Jan 28 19:54:57 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c20554c2
sys-devel/binutils: Stabilize 2.35.1-r1 x86, #766734
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.35.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.35.1-r1.ebuild b/sys-devel/binutils/binutils-2.35.1-r1.ebuild
index 5a1d57df8a2..7a0e01d5767 100644
--- a/sys-devel/binutils/binutils-2.35.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.35.1-r1.ebuild
@@ -33,7 +33,7 @@ else
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
SLOT=$(ver_cut 1-2)
# live ebuild
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-01-30 4:31 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2021-01-30 4:31 UTC (permalink / raw
To: gentoo-commits
commit: 4d1aa40c0de2695efd490673726d7b324d93e6c8
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 30 04:29:57 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Jan 30 04:31:03 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4d1aa40c
sys-devel/binutils: Stabilize 2.35.1-r1 amd64, #766734
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.35.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.35.1-r1.ebuild b/sys-devel/binutils/binutils-2.35.1-r1.ebuild
index 7a0e01d5767..6b4aa77eb2c 100644
--- a/sys-devel/binutils/binutils-2.35.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.35.1-r1.ebuild
@@ -33,7 +33,7 @@ else
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
SLOT=$(ver_cut 1-2)
# live ebuild
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-01-31 13:26 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2021-01-31 13:26 UTC (permalink / raw
To: gentoo-commits
commit: b6765872ece6b587e3ba853669c4fdbb16e29d80
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 31 12:37:34 2021 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sun Jan 31 13:26:23 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b6765872
sys-devel/binutils: add 'bc' to test depends
Fixes one test: relro_test.sh
Reported-by: Toralf Förster
Bug: https://bugs.gentoo.org/684046
Package-Manager: Portage-3.0.14, Repoman-3.0.2
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-2.35.1-r1.ebuild | 5 ++++-
sys-devel/binutils/binutils-2.36.ebuild | 5 ++++-
sys-devel/binutils/binutils-9999.ebuild | 5 ++++-
3 files changed, 12 insertions(+), 3 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.35.1-r1.ebuild b/sys-devel/binutils/binutils-2.35.1-r1.ebuild
index 6b4aa77eb2c..a98e259e36a 100644
--- a/sys-devel/binutils/binutils-2.35.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.35.1-r1.ebuild
@@ -57,7 +57,10 @@ RDEPEND="
DEPEND="${RDEPEND}"
BDEPEND="
doc? ( sys-apps/texinfo )
- test? ( dev-util/dejagnu )
+ test? (
+ dev-util/dejagnu
+ sys-devel/bc
+ )
nls? ( sys-devel/gettext )
sys-devel/flex
virtual/yacc
diff --git a/sys-devel/binutils/binutils-2.36.ebuild b/sys-devel/binutils/binutils-2.36.ebuild
index afa2a08fc1c..209b2daf9db 100644
--- a/sys-devel/binutils/binutils-2.36.ebuild
+++ b/sys-devel/binutils/binutils-2.36.ebuild
@@ -56,7 +56,10 @@ RDEPEND="
DEPEND="${RDEPEND}"
BDEPEND="
doc? ( sys-apps/texinfo )
- test? ( dev-util/dejagnu )
+ test? (
+ dev-util/dejagnu
+ sys-devel/bc
+ )
nls? ( sys-devel/gettext )
sys-devel/flex
virtual/yacc
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 40f21fb0628..50d528443d7 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -57,7 +57,10 @@ RDEPEND="
DEPEND="${RDEPEND}"
BDEPEND="
doc? ( sys-apps/texinfo )
- test? ( dev-util/dejagnu )
+ test? (
+ dev-util/dejagnu
+ sys-devel/bc
+ )
nls? ( sys-devel/gettext )
sys-devel/flex
virtual/yacc
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-02-08 21:21 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2021-02-08 21:21 UTC (permalink / raw
To: gentoo-commits
commit: 3e4672e30401d42142310400ce14a51611879227
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Mon Feb 8 21:18:30 2021 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Mon Feb 8 21:21:21 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3e4672e3
sys-devel/binutils: Version bump
Package-Manager: Portage-3.0.13, Repoman-3.0.2
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 +
sys-devel/binutils/binutils-2.35.2.ebuild | 444 ++++++++++++++++++++++++++++++
2 files changed, 446 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index f96cbe5beda..94d4705b6b9 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -7,5 +7,7 @@ DIST binutils-2.34-patches-6.tar.xz 103028 BLAKE2B d0e866d0941d2b550c7d7f23530c6
DIST binutils-2.34.tar.xz 21637796 BLAKE2B 07dd23916a7d27f71c3f160c8c16abe2bd4fce294c738c665a012a3be6a87dbe8160d0c38740524f9025e01d438e99b2a94bcf9f9f79ee214f5dd033de8aad3d SHA512 2c7976939dcf5e8c5b7374cccd39bfe803b1bec73c6abfa0eb17c24e1942574c6bdb874c66a092a82adc443182eacd8a5a8001c19a76101f0c7ba40c27de0bbd
DIST binutils-2.35.1-patches-2.tar.xz 72236 BLAKE2B 584cb3edbda28c69171ed64e941535f992150d86f25201cadd07b63daaa36bf76b07dc0aa8a4837da17d1672feb47a7b15f83efdeec5409e695965a10142147a SHA512 b704ebe82c4402f058f9c96991a89256a6b369d28f844bf020ed2c77766894d9a2ca0596cd609de7b389fa8cd52bfab674b6deb10ea2096e50aa57921be2083e
DIST binutils-2.35.1.tar.xz 22031720 BLAKE2B d3468da90b75e9b5fa7fbd64d3fdb0a4bc445e4cb7da5ae058f73a1e9d948b3e9438bc9f1b5b351db369b76a25960c9c1f58f828fd2c7646f555de45fa3c052b SHA512 94ff72708403413b70b247f3af4099ebaa882b6659249869f1ed9941a0f1912e313f08357d470f9fd2359e7f5e5b0eb86285e5eaf883fa8187789d6b1bd304eb
+DIST binutils-2.35.2-patches-1.tar.xz 11836 BLAKE2B 0141349c9618992d1ab1e0309f7ed8fbc43b60a58be1dfed05eae8a8fee857241d9e112ae673da6fc9778767675f536ece818cb85567367bb1c8f87a0693623f SHA512 35de5f227c745c5fb800784fe657b2a6216faf43e2498e8481e7b0dc79b0d2f86b3b6a10b896e060319a77a51c61d2e1b7a951ae962b3a6ef8c1a2a261d9bb6c
+DIST binutils-2.35.2.tar.xz 22056908 BLAKE2B 9c392e0db2b482442f9476f30bd80cf2796321cbf7be79cf21af7bef167b6074c4ae009dcf9b438d2f2f4a23381c935176b2cfa85de1a526ab46e0fd844a7ca5 SHA512 9974ede5978d32e0d68fef23da48fa00bd06b0bff7ec45b00ca075c126d6bbe0cf2defc03ecc3f17bc6cc85b64271a13009c4049d7ba17de26e84e3a6e2c0348
DIST binutils-2.36-patches-1.tar.xz 13200 BLAKE2B 82e8ef3c51984d4418466d7b838fa5c0a5a72c3bbe3e631b8aeb28503fd8b81e2b187908a2a4e1b286eba8af0db25eafadc5ffe42dd07677e6bd659cf5483b07 SHA512 88c5ac42d25d131c1507d94992fdd11a15700a0304da10cedd3b0db9bc689d3387189d6d97f847d77e8a5d053619b174695a0a6b3c6c1bb66ea8f122f0b38d63
DIST binutils-2.36.tar.xz 22760136 BLAKE2B 6666841e26c89a07b7e6c1144d893bab112278906d7917f3ca6273aa78094951686f0d5893857cae1edde1e1ecd7c6798bc14eac88d03c5a1e6e3e480a788f9c SHA512 0b89b70d4ad5cfe5bd0011dc7e342ae9de96efdbfc3442a0d6b5f7660e38bbcad36f2c72ba8f074323f02bde022ff1cd723ae99f0ea55cf94ee2dbbc0e4efdb2
diff --git a/sys-devel/binutils/binutils-2.35.2.ebuild b/sys-devel/binutils/binutils-2.35.2.ebuild
new file mode 100644
index 00000000000..6405e867359
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.35.2.ebuild
@@ -0,0 +1,444 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
+
+DESCRIPTION="Tools necessary to build programs"
+HOMEPAGE="https://sourceware.org/binutils/"
+LICENSE="GPL-3+"
+IUSE="default-gold doc +gold multitarget +nls +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=1
+PATCH_DEV=dilfridge
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+ SLOT=${PV}
+else
+ PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
+ PATCH_DEV=${PATCH_DEV:-slyfox}
+ SRC_URI="mirror://gnu/binutils/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)
+ # live ebuild
+ # KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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}.tar.xz
+
+ cd "${WORKDIR}" || die
+ unpack binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz
+ 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 [[ ! -z ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
+ if ! use vanilla; then
+ einfo "Applying binutils patchset ${patchsetname}"
+ eapply "${WORKDIR}/patch"
+ einfo "Done."
+ fi
+ fi
+
+ # This check should probably go somewhere else, like pkg_pretend.
+ if [[ ${CTARGET} == *-uclibc* ]] ; then
+ if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
+ die "sorry, but this binutils doesn't yet support uClibc :("
+ fi
+ fi
+
+ # Make sure our explicit libdir paths don't get clobbered. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ 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() {
+ # 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 #42033
+ strip-linguas -u */po
+
+ # Keep things sane
+ strip-flags
+
+ local x
+ echo
+ for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
+ einfo "$(printf '%10s' ${x}:) ${!x}"
+ done
+ echo
+
+ cd "${MY_BUILDDIR}"
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && 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. #497268
+ --enable-install-libiberty
+ # Available from 2.35 on
+ --enable-textrel-check=warning
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #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. #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
+ )
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${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}"
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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}"
+
+ # bug 637066
+ filter-flags -Wall -Wreturn-type
+
+ emake -k check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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}/
+ 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}"
+ 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-02-08 22:17 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2021-02-08 22:17 UTC (permalink / raw
To: gentoo-commits
commit: a9bd0b4d2abb8f4212d4510479a04c1e709c6ec1
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Mon Feb 8 22:15:07 2021 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Mon Feb 8 22:17:13 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a9bd0b4d
sys-devel/binutils: Version bump
Package-Manager: Portage-3.0.13, Repoman-3.0.2
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 +
sys-devel/binutils/binutils-2.36.1.ebuild | 443 ++++++++++++++++++++++++++++++
2 files changed, 445 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 94d4705b6b9..6636e216b7e 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -10,4 +10,6 @@ DIST binutils-2.35.1.tar.xz 22031720 BLAKE2B d3468da90b75e9b5fa7fbd64d3fdb0a4bc4
DIST binutils-2.35.2-patches-1.tar.xz 11836 BLAKE2B 0141349c9618992d1ab1e0309f7ed8fbc43b60a58be1dfed05eae8a8fee857241d9e112ae673da6fc9778767675f536ece818cb85567367bb1c8f87a0693623f SHA512 35de5f227c745c5fb800784fe657b2a6216faf43e2498e8481e7b0dc79b0d2f86b3b6a10b896e060319a77a51c61d2e1b7a951ae962b3a6ef8c1a2a261d9bb6c
DIST binutils-2.35.2.tar.xz 22056908 BLAKE2B 9c392e0db2b482442f9476f30bd80cf2796321cbf7be79cf21af7bef167b6074c4ae009dcf9b438d2f2f4a23381c935176b2cfa85de1a526ab46e0fd844a7ca5 SHA512 9974ede5978d32e0d68fef23da48fa00bd06b0bff7ec45b00ca075c126d6bbe0cf2defc03ecc3f17bc6cc85b64271a13009c4049d7ba17de26e84e3a6e2c0348
DIST binutils-2.36-patches-1.tar.xz 13200 BLAKE2B 82e8ef3c51984d4418466d7b838fa5c0a5a72c3bbe3e631b8aeb28503fd8b81e2b187908a2a4e1b286eba8af0db25eafadc5ffe42dd07677e6bd659cf5483b07 SHA512 88c5ac42d25d131c1507d94992fdd11a15700a0304da10cedd3b0db9bc689d3387189d6d97f847d77e8a5d053619b174695a0a6b3c6c1bb66ea8f122f0b38d63
+DIST binutils-2.36.1-patches-1.tar.xz 11392 BLAKE2B 8112dda3f000d29952cbf58101f842ca519054bf9de6e22908881fe4d46cc1ea9a26db74ab00c64aedd3746eb058c19a978b8dc025ad8de07b6365c70a1803b2 SHA512 c6f5645b09d0c149f2eef8e992ff7181716dfb961f1155207a1349168f2d2fb76857cc224c27b4d764cfbc4ddec0630ef8c0a91d7bac489896f28de64651b367
+DIST binutils-2.36.1.tar.xz 22772248 BLAKE2B 03fbfbedd6dba2beaa836b1ed254eddd7a54a163d3061fd93edd2b9591cae24ba049b26658c524b5ccecc2f22d431dfa168218d2531aa356945c994fbbe896fa SHA512 cc24590bcead10b90763386b6f96bb027d7594c659c2d95174a6352e8b98465a50ec3e4088d0da038428abe059bbc4ae5f37b269f31a40fc048072c8a234f4e9
DIST binutils-2.36.tar.xz 22760136 BLAKE2B 6666841e26c89a07b7e6c1144d893bab112278906d7917f3ca6273aa78094951686f0d5893857cae1edde1e1ecd7c6798bc14eac88d03c5a1e6e3e480a788f9c SHA512 0b89b70d4ad5cfe5bd0011dc7e342ae9de96efdbfc3442a0d6b5f7660e38bbcad36f2c72ba8f074323f02bde022ff1cd723ae99f0ea55cf94ee2dbbc0e4efdb2
diff --git a/sys-devel/binutils/binutils-2.36.1.ebuild b/sys-devel/binutils/binutils-2.36.1.ebuild
new file mode 100644
index 00000000000..209b2daf9db
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.36.1.ebuild
@@ -0,0 +1,443 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
+
+DESCRIPTION="Tools necessary to build programs"
+HOMEPAGE="https://sourceware.org/binutils/"
+LICENSE="GPL-3+"
+IUSE="default-gold doc +gold multitarget +nls +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=1
+PATCH_DEV=dilfridge
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+ SLOT=${PV}
+else
+ PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
+ PATCH_DEV=${PATCH_DEV:-slyfox}
+ SRC_URI="mirror://gnu/binutils/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 ~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}.tar.xz
+
+ cd "${WORKDIR}" || die
+ unpack binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz
+ 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 [[ ! -z ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
+ if ! use vanilla; then
+ einfo "Applying binutils patchset ${patchsetname}"
+ eapply "${WORKDIR}/patch"
+ einfo "Done."
+ fi
+ fi
+
+ # This check should probably go somewhere else, like pkg_pretend.
+ if [[ ${CTARGET} == *-uclibc* ]] ; then
+ if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
+ die "sorry, but this binutils doesn't yet support uClibc :("
+ fi
+ fi
+
+ # Make sure our explicit libdir paths don't get clobbered. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ 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() {
+ # 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 #42033
+ strip-linguas -u */po
+
+ # Keep things sane
+ strip-flags
+
+ local x
+ echo
+ for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
+ einfo "$(printf '%10s' ${x}:) ${!x}"
+ done
+ echo
+
+ cd "${MY_BUILDDIR}"
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && 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. #497268
+ --enable-install-libiberty
+ # Available from 2.35 on
+ --enable-textrel-check=warning
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #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. #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
+ )
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${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}"
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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}"
+
+ # bug 637066
+ filter-flags -Wall -Wreturn-type
+
+ emake -k check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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}/
+ 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}"
+ 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-02-09 21:46 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2021-02-09 21:46 UTC (permalink / raw
To: gentoo-commits
commit: d4d4ef98c4d55b65a3acfbc4452a6e76f3fb9af4
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Tue Feb 9 21:43:20 2021 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Tue Feb 9 21:46:11 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d4d4ef98
sys-devel/binutils: Remove old
Package-Manager: Portage-3.0.13, Repoman-3.0.2
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 -
sys-devel/binutils/binutils-2.36.ebuild | 443 --------------------------------
2 files changed, 445 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 6636e216b7e..2888b483846 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -9,7 +9,5 @@ DIST binutils-2.35.1-patches-2.tar.xz 72236 BLAKE2B 584cb3edbda28c69171ed64e9415
DIST binutils-2.35.1.tar.xz 22031720 BLAKE2B d3468da90b75e9b5fa7fbd64d3fdb0a4bc445e4cb7da5ae058f73a1e9d948b3e9438bc9f1b5b351db369b76a25960c9c1f58f828fd2c7646f555de45fa3c052b SHA512 94ff72708403413b70b247f3af4099ebaa882b6659249869f1ed9941a0f1912e313f08357d470f9fd2359e7f5e5b0eb86285e5eaf883fa8187789d6b1bd304eb
DIST binutils-2.35.2-patches-1.tar.xz 11836 BLAKE2B 0141349c9618992d1ab1e0309f7ed8fbc43b60a58be1dfed05eae8a8fee857241d9e112ae673da6fc9778767675f536ece818cb85567367bb1c8f87a0693623f SHA512 35de5f227c745c5fb800784fe657b2a6216faf43e2498e8481e7b0dc79b0d2f86b3b6a10b896e060319a77a51c61d2e1b7a951ae962b3a6ef8c1a2a261d9bb6c
DIST binutils-2.35.2.tar.xz 22056908 BLAKE2B 9c392e0db2b482442f9476f30bd80cf2796321cbf7be79cf21af7bef167b6074c4ae009dcf9b438d2f2f4a23381c935176b2cfa85de1a526ab46e0fd844a7ca5 SHA512 9974ede5978d32e0d68fef23da48fa00bd06b0bff7ec45b00ca075c126d6bbe0cf2defc03ecc3f17bc6cc85b64271a13009c4049d7ba17de26e84e3a6e2c0348
-DIST binutils-2.36-patches-1.tar.xz 13200 BLAKE2B 82e8ef3c51984d4418466d7b838fa5c0a5a72c3bbe3e631b8aeb28503fd8b81e2b187908a2a4e1b286eba8af0db25eafadc5ffe42dd07677e6bd659cf5483b07 SHA512 88c5ac42d25d131c1507d94992fdd11a15700a0304da10cedd3b0db9bc689d3387189d6d97f847d77e8a5d053619b174695a0a6b3c6c1bb66ea8f122f0b38d63
DIST binutils-2.36.1-patches-1.tar.xz 11392 BLAKE2B 8112dda3f000d29952cbf58101f842ca519054bf9de6e22908881fe4d46cc1ea9a26db74ab00c64aedd3746eb058c19a978b8dc025ad8de07b6365c70a1803b2 SHA512 c6f5645b09d0c149f2eef8e992ff7181716dfb961f1155207a1349168f2d2fb76857cc224c27b4d764cfbc4ddec0630ef8c0a91d7bac489896f28de64651b367
DIST binutils-2.36.1.tar.xz 22772248 BLAKE2B 03fbfbedd6dba2beaa836b1ed254eddd7a54a163d3061fd93edd2b9591cae24ba049b26658c524b5ccecc2f22d431dfa168218d2531aa356945c994fbbe896fa SHA512 cc24590bcead10b90763386b6f96bb027d7594c659c2d95174a6352e8b98465a50ec3e4088d0da038428abe059bbc4ae5f37b269f31a40fc048072c8a234f4e9
-DIST binutils-2.36.tar.xz 22760136 BLAKE2B 6666841e26c89a07b7e6c1144d893bab112278906d7917f3ca6273aa78094951686f0d5893857cae1edde1e1ecd7c6798bc14eac88d03c5a1e6e3e480a788f9c SHA512 0b89b70d4ad5cfe5bd0011dc7e342ae9de96efdbfc3442a0d6b5f7660e38bbcad36f2c72ba8f074323f02bde022ff1cd723ae99f0ea55cf94ee2dbbc0e4efdb2
diff --git a/sys-devel/binutils/binutils-2.36.ebuild b/sys-devel/binutils/binutils-2.36.ebuild
deleted file mode 100644
index 209b2daf9db..00000000000
--- a/sys-devel/binutils/binutils-2.36.ebuild
+++ /dev/null
@@ -1,443 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="https://sourceware.org/binutils/"
-LICENSE="GPL-3+"
-IUSE="default-gold doc +gold multitarget +nls +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=1
-PATCH_DEV=dilfridge
-
-if [[ ${PV} == 9999* ]]; then
- inherit git-r3
- SLOT=${PV}
-else
- PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
- PATCH_DEV=${PATCH_DEV:-slyfox}
- SRC_URI="mirror://gnu/binutils/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 ~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}.tar.xz
-
- cd "${WORKDIR}" || die
- unpack binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz
- 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 [[ ! -z ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
- if ! use vanilla; then
- einfo "Applying binutils patchset ${patchsetname}"
- eapply "${WORKDIR}/patch"
- einfo "Done."
- fi
- fi
-
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
- # Make sure our explicit libdir paths don't get clobbered. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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() {
- # 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 #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}"
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- # Available from 2.35 on
- --enable-textrel-check=warning
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #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. #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
- )
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
-
- # bug 637066
- filter-flags -Wall -Wreturn-type
-
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- # see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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}/
- 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}"
- 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-02-09 21:46 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2021-02-09 21:46 UTC (permalink / raw
To: gentoo-commits
commit: 618334b1dd943c1246dbab62c249756c661f9355
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Tue Feb 9 21:42:47 2021 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Tue Feb 9 21:46:08 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=618334b1
sys-devel/binutils: Re-keyword 2.35.2
Package-Manager: Portage-3.0.13, Repoman-3.0.2
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.35.2.ebuild | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.35.2.ebuild b/sys-devel/binutils/binutils-2.35.2.ebuild
index 6405e867359..dae533747ec 100644
--- a/sys-devel/binutils/binutils-2.35.2.ebuild
+++ b/sys-devel/binutils/binutils-2.35.2.ebuild
@@ -32,8 +32,7 @@ else
[[ -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)
- # live ebuild
- # KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-02-11 20:22 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2021-02-11 20:22 UTC (permalink / raw
To: gentoo-commits
commit: cd833222cbaef1cd344f3b06c528b858c06dc04a
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Thu Feb 11 20:17:33 2021 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Thu Feb 11 20:21:56 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cd833222
sys-devel/binutils: make CET optional (and disabled by default)
Reported-by: subzero_ro <AT> yahoo.com
Bug: https://bugs.gentoo.org/770061
Package-Manager: Portage-3.0.14, Repoman-3.0.2
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-2.35.1-r1.ebuild | 7 ++++++-
sys-devel/binutils/binutils-2.35.2.ebuild | 7 ++++++-
sys-devel/binutils/binutils-2.36.1.ebuild | 7 ++++++-
sys-devel/binutils/binutils-9999.ebuild | 7 ++++++-
sys-devel/binutils/metadata.xml | 1 +
5 files changed, 25 insertions(+), 4 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.35.1-r1.ebuild b/sys-devel/binutils/binutils-2.35.1-r1.ebuild
index a98e259e36a..516f5642244 100644
--- a/sys-devel/binutils/binutils-2.35.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.35.1-r1.ebuild
@@ -8,7 +8,7 @@ inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
LICENSE="GPL-3+"
-IUSE="default-gold doc +gold multitarget +nls +plugins static-libs test vanilla"
+IUSE="cet default-gold doc +gold multitarget +nls +plugins static-libs test vanilla"
REQUIRED_USE="default-gold? ( gold )"
# Variables that can be set here (ignored for live ebuilds)
@@ -265,6 +265,11 @@ src_configure() {
# 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)
)
echo ./configure "${myconf[@]}"
"${S}"/configure "${myconf[@]}" || die
diff --git a/sys-devel/binutils/binutils-2.35.2.ebuild b/sys-devel/binutils/binutils-2.35.2.ebuild
index dae533747ec..2aff2770014 100644
--- a/sys-devel/binutils/binutils-2.35.2.ebuild
+++ b/sys-devel/binutils/binutils-2.35.2.ebuild
@@ -8,7 +8,7 @@ inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
LICENSE="GPL-3+"
-IUSE="default-gold doc +gold multitarget +nls +plugins static-libs test vanilla"
+IUSE="cet default-gold doc +gold multitarget +nls +plugins static-libs test vanilla"
REQUIRED_USE="default-gold? ( gold )"
# Variables that can be set here (ignored for live ebuilds)
@@ -264,6 +264,11 @@ src_configure() {
# 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)
)
echo ./configure "${myconf[@]}"
"${S}"/configure "${myconf[@]}" || die
diff --git a/sys-devel/binutils/binutils-2.36.1.ebuild b/sys-devel/binutils/binutils-2.36.1.ebuild
index 209b2daf9db..3d820fcc6f8 100644
--- a/sys-devel/binutils/binutils-2.36.1.ebuild
+++ b/sys-devel/binutils/binutils-2.36.1.ebuild
@@ -8,7 +8,7 @@ inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
LICENSE="GPL-3+"
-IUSE="default-gold doc +gold multitarget +nls +plugins static-libs test vanilla"
+IUSE="cet default-gold doc +gold multitarget +nls +plugins static-libs test vanilla"
REQUIRED_USE="default-gold? ( gold )"
# Variables that can be set here (ignored for live ebuilds)
@@ -264,6 +264,11 @@ src_configure() {
# 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)
)
echo ./configure "${myconf[@]}"
"${S}"/configure "${myconf[@]}" || die
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 50d528443d7..014a2d71612 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -8,7 +8,7 @@ inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
LICENSE="GPL-3+"
-IUSE="default-gold doc +gold multitarget +nls +plugins static-libs test vanilla"
+IUSE="cet default-gold doc +gold multitarget +nls +plugins static-libs test vanilla"
REQUIRED_USE="default-gold? ( gold )"
# Variables that can be set here (ignored for live ebuilds)
@@ -265,6 +265,11 @@ src_configure() {
# 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)
)
echo ./configure "${myconf[@]}"
"${S}"/configure "${myconf[@]}" || die
diff --git a/sys-devel/binutils/metadata.xml b/sys-devel/binutils/metadata.xml
index 66f4f23df42..165a135caf6 100644
--- a/sys-devel/binutils/metadata.xml
+++ b/sys-devel/binutils/metadata.xml
@@ -6,6 +6,7 @@
<name>Gentoo Toolchain Project</name>
</maintainer>
<use>
+ <flag name="cet">Enable Intel Control-flow Enforcement Technology.</flag>
<flag name="default-gold">Set ld to point to ld.gold instead of ld.bfd</flag>
<flag name="gold">Build ld.gold linker</flag>
<flag name="plugins">Enable plugin support in tools</flag>
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-02-25 2:10 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2021-02-25 2:10 UTC (permalink / raw
To: gentoo-commits
commit: 09778a0093be36854c7856c47610bfd2f7d2b266
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Feb 25 02:10:37 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Feb 25 02:10:37 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=09778a00
sys-devel/binutils: Stabilize 2.35.1-r1 s390, #766734
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.35.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.35.1-r1.ebuild b/sys-devel/binutils/binutils-2.35.1-r1.ebuild
index 516f5642244..4d5bab9666f 100644
--- a/sys-devel/binutils/binutils-2.35.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.35.1-r1.ebuild
@@ -33,7 +33,7 @@ else
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
SLOT=$(ver_cut 1-2)
# live ebuild
- KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv s390 sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-02-25 5:18 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2021-02-25 5:18 UTC (permalink / raw
To: gentoo-commits
commit: 9e70b7eddf12fdcafd0bbcf2648d2cddeb7b72b6
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Feb 25 05:18:24 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Feb 25 05:18:24 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9e70b7ed
sys-devel/binutils: Stabilize 2.35.1-r1 arm64, #766734
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.35.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.35.1-r1.ebuild b/sys-devel/binutils/binutils-2.35.1-r1.ebuild
index 4d5bab9666f..7fcd7a7b2ff 100644
--- a/sys-devel/binutils/binutils-2.35.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.35.1-r1.ebuild
@@ -33,7 +33,7 @@ else
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
SLOT=$(ver_cut 1-2)
# live ebuild
- KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv s390 sparc x86"
+ KEYWORDS="~alpha amd64 ~arm arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv s390 sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-02-25 11:13 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2021-02-25 11:13 UTC (permalink / raw
To: gentoo-commits
commit: 79ddec28437c65920dc296372abfca37352e0d29
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Feb 25 11:11:44 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Feb 25 11:12:52 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=79ddec28
sys-devel/binutils: Stabilize 2.35.1-r1 arm, #766734
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.35.1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.35.1-r1.ebuild b/sys-devel/binutils/binutils-2.35.1-r1.ebuild
index 7fcd7a7b2ff..feee11a5ded 100644
--- a/sys-devel/binutils/binutils-2.35.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.35.1-r1.ebuild
@@ -33,7 +33,7 @@ else
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
SLOT=$(ver_cut 1-2)
# live ebuild
- KEYWORDS="~alpha amd64 ~arm arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv s390 sparc x86"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv s390 sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-04-04 16:03 Thomas Deutschmann
0 siblings, 0 replies; 477+ messages in thread
From: Thomas Deutschmann @ 2021-04-04 16:03 UTC (permalink / raw
To: gentoo-commits
commit: 7435dcdd59816487ff68640242a71499502f498c
Author: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 4 16:00:23 2021 +0000
Commit: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Sun Apr 4 16:00:23 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7435dcdd
sys-devel/binutils: x86 stable (bug #779805)
Package-Manager: Portage-3.0.18, Repoman-3.0.3
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>
sys-devel/binutils/binutils-2.35.2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.35.2.ebuild b/sys-devel/binutils/binutils-2.35.2.ebuild
index 215e42f2c73..74af3f39632 100644
--- a/sys-devel/binutils/binutils-2.35.2.ebuild
+++ b/sys-devel/binutils/binutils-2.35.2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-04-05 8:53 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2021-04-05 8:53 UTC (permalink / raw
To: gentoo-commits
commit: 0938d5e845efafee3b9eb22c814bfc0371fd6871
Author: Rolf Eike Beer <eike <AT> sf-mail <DOT> de>
AuthorDate: Mon Apr 5 08:33:03 2021 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Mon Apr 5 08:53:11 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0938d5e8
sys-devel/binutils: stable 2.35.2 for sparc, bug #779805
Package-Manager: Portage-3.0.17, Repoman-3.0.2
RepoMan-Options: --include-arches="sparc"
Signed-off-by: Rolf Eike Beer <eike <AT> sf-mail.de>
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-2.35.2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.35.2.ebuild b/sys-devel/binutils/binutils-2.35.2.ebuild
index 74af3f39632..497c2c77266 100644
--- a/sys-devel/binutils/binutils-2.35.2.ebuild
+++ b/sys-devel/binutils/binutils-2.35.2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-04-11 12:31 Mikle Kolyada
0 siblings, 0 replies; 477+ messages in thread
From: Mikle Kolyada @ 2021-04-11 12:31 UTC (permalink / raw
To: gentoo-commits
commit: 30bd96f2e7dd58e3e2654374f249cacef7acf3ec
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 11 12:31:00 2021 +0000
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sun Apr 11 12:31:00 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=30bd96f2
sys-devel/binutils: Stabilize 2.35.2 amd64, #779805
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>
sys-devel/binutils/binutils-2.35.2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.35.2.ebuild b/sys-devel/binutils/binutils-2.35.2.ebuild
index 497c2c77266..2c811edf8d3 100644
--- a/sys-devel/binutils/binutils-2.35.2.ebuild
+++ b/sys-devel/binutils/binutils-2.35.2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-04-11 18:41 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2021-04-11 18:41 UTC (permalink / raw
To: gentoo-commits
commit: c77cc173ce9b0cb182c1bd0574f9a91e56bfa924
Author: Rolf Eike Beer <eike <AT> sf-mail <DOT> de>
AuthorDate: Sun Apr 11 17:25:07 2021 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sun Apr 11 18:41:12 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c77cc173
sys-devel/binutils: stable 2.35.2 for hppa, bug #779805
Package-Manager: Portage-3.0.17, Repoman-3.0.2
RepoMan-Options: --include-arches="hppa"
Signed-off-by: Rolf Eike Beer <eike <AT> sf-mail.de>
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/binutils-2.35.2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.35.2.ebuild b/sys-devel/binutils/binutils-2.35.2.ebuild
index 2c811edf8d3..87bd5f679bf 100644
--- a/sys-devel/binutils/binutils-2.35.2.ebuild
+++ b/sys-devel/binutils/binutils-2.35.2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-04-12 23:33 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2021-04-12 23:33 UTC (permalink / raw
To: gentoo-commits
commit: ec778d719c667cf62b36415ef1131277ba8bf48a
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Apr 12 23:28:19 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Apr 12 23:32:48 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ec778d71
sys-devel/binutils: Stabilize 2.35.2 arm64, #779805
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.35.2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.35.2.ebuild b/sys-devel/binutils/binutils-2.35.2.ebuild
index 87bd5f679bf..a51ca62596b 100644
--- a/sys-devel/binutils/binutils-2.35.2.ebuild
+++ b/sys-devel/binutils/binutils-2.35.2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86"
+ KEYWORDS="~alpha amd64 ~arm arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-04-13 0:13 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2021-04-13 0:13 UTC (permalink / raw
To: gentoo-commits
commit: 987df7c29fea5e924826b46a823e4380d5d77c59
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 13 00:05:20 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Apr 13 00:10:12 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=987df7c2
sys-devel/binutils: Stabilize 2.35.2 arm, #779805
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.35.2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.35.2.ebuild b/sys-devel/binutils/binutils-2.35.2.ebuild
index a51ca62596b..63ef9e389bb 100644
--- a/sys-devel/binutils/binutils-2.35.2.ebuild
+++ b/sys-devel/binutils/binutils-2.35.2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-04-18 9:48 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2021-04-18 9:48 UTC (permalink / raw
To: gentoo-commits
commit: ee71a9eeb1562f5305fe579024b11d74f817db33
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 18 09:46:03 2021 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Apr 18 09:48:23 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ee71a9ee
sys-devel/binutils: Remove old
Package-Manager: Portage-3.0.17, Repoman-3.0.2
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 -
sys-devel/binutils/binutils-2.35.1-r1.ebuild | 451 ---------------------------
2 files changed, 453 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 2888b483846..4e3d5bf7cbe 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -5,8 +5,6 @@ DIST binutils-2.33.1-patches-2.tar.xz 18636 BLAKE2B 0e0757329b6a83aeff4f4c450c95
DIST binutils-2.33.1.tar.xz 21490848 BLAKE2B c336a8412938dc8c224f40a763a8bea9937cca0462a8fb80e62f14aabe590107fc061a3f4b9327e1f4652cb026384d36a91b4766d4d469d2d0680932874b638c SHA512 b7a6767c6c7ca6b5cafa7080e6820b7bb3a53b7148348c438d99905defbdf0d30c9744a484ee01c9441a8153901808513366b15ba9533e20c9673c262ade36ac
DIST binutils-2.34-patches-6.tar.xz 103028 BLAKE2B d0e866d0941d2b550c7d7f23530c6ee393fa13b4f2f27832f07790989476f11d1beddb5ad5a9be5c65c1d4dff9d4598d21adcb00c1d0490f69a99127f4527447 SHA512 e05ed8886acb5cb95a3e97c5bc0564215f7d44b604610f5c4545997fd9625d6de909c37063127e819926cd1548a48d3529dd3e82e98ee6a5dbaced028c57355d
DIST binutils-2.34.tar.xz 21637796 BLAKE2B 07dd23916a7d27f71c3f160c8c16abe2bd4fce294c738c665a012a3be6a87dbe8160d0c38740524f9025e01d438e99b2a94bcf9f9f79ee214f5dd033de8aad3d SHA512 2c7976939dcf5e8c5b7374cccd39bfe803b1bec73c6abfa0eb17c24e1942574c6bdb874c66a092a82adc443182eacd8a5a8001c19a76101f0c7ba40c27de0bbd
-DIST binutils-2.35.1-patches-2.tar.xz 72236 BLAKE2B 584cb3edbda28c69171ed64e941535f992150d86f25201cadd07b63daaa36bf76b07dc0aa8a4837da17d1672feb47a7b15f83efdeec5409e695965a10142147a SHA512 b704ebe82c4402f058f9c96991a89256a6b369d28f844bf020ed2c77766894d9a2ca0596cd609de7b389fa8cd52bfab674b6deb10ea2096e50aa57921be2083e
-DIST binutils-2.35.1.tar.xz 22031720 BLAKE2B d3468da90b75e9b5fa7fbd64d3fdb0a4bc445e4cb7da5ae058f73a1e9d948b3e9438bc9f1b5b351db369b76a25960c9c1f58f828fd2c7646f555de45fa3c052b SHA512 94ff72708403413b70b247f3af4099ebaa882b6659249869f1ed9941a0f1912e313f08357d470f9fd2359e7f5e5b0eb86285e5eaf883fa8187789d6b1bd304eb
DIST binutils-2.35.2-patches-1.tar.xz 11836 BLAKE2B 0141349c9618992d1ab1e0309f7ed8fbc43b60a58be1dfed05eae8a8fee857241d9e112ae673da6fc9778767675f536ece818cb85567367bb1c8f87a0693623f SHA512 35de5f227c745c5fb800784fe657b2a6216faf43e2498e8481e7b0dc79b0d2f86b3b6a10b896e060319a77a51c61d2e1b7a951ae962b3a6ef8c1a2a261d9bb6c
DIST binutils-2.35.2.tar.xz 22056908 BLAKE2B 9c392e0db2b482442f9476f30bd80cf2796321cbf7be79cf21af7bef167b6074c4ae009dcf9b438d2f2f4a23381c935176b2cfa85de1a526ab46e0fd844a7ca5 SHA512 9974ede5978d32e0d68fef23da48fa00bd06b0bff7ec45b00ca075c126d6bbe0cf2defc03ecc3f17bc6cc85b64271a13009c4049d7ba17de26e84e3a6e2c0348
DIST binutils-2.36.1-patches-1.tar.xz 11392 BLAKE2B 8112dda3f000d29952cbf58101f842ca519054bf9de6e22908881fe4d46cc1ea9a26db74ab00c64aedd3746eb058c19a978b8dc025ad8de07b6365c70a1803b2 SHA512 c6f5645b09d0c149f2eef8e992ff7181716dfb961f1155207a1349168f2d2fb76857cc224c27b4d764cfbc4ddec0630ef8c0a91d7bac489896f28de64651b367
diff --git a/sys-devel/binutils/binutils-2.35.1-r1.ebuild b/sys-devel/binutils/binutils-2.35.1-r1.ebuild
deleted file mode 100644
index dd45dd4daf5..00000000000
--- a/sys-devel/binutils/binutils-2.35.1-r1.ebuild
+++ /dev/null
@@ -1,451 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="https://sourceware.org/binutils/"
-LICENSE="GPL-3+"
-IUSE="cet default-gold doc +gold multitarget +nls +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=2
-PATCH_DEV=dilfridge
-
-if [[ ${PV} == 9999* ]]; then
- inherit git-r3
- SLOT=${PV}
-else
- PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
- PATCH_DEV=${PATCH_DEV:-slyfox}
- SRC_URI="mirror://gnu/binutils/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)
- # live ebuild
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~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 )"
-
-PATCHES=("${FILESDIR}"/${PN}-2.35.1-cet.patch)
-
-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}.tar.xz
-
- cd "${WORKDIR}" || die
- unpack binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz
- 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 [[ ! -z ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
- if ! use vanilla; then
- einfo "Applying binutils patchset ${patchsetname}"
- eapply "${WORKDIR}/patch"
- einfo "Done."
- fi
- fi
-
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
- # Make sure our explicit libdir paths don't get clobbered. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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() {
- # 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 #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}"
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- # Available from 2.35 on
- --enable-textrel-check=warning
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #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. #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)
- )
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
-
- # bug 637066
- filter-flags -Wall -Wreturn-type
-
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- # see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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}/
- 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}"
- 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-04-18 9:48 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2021-04-18 9:48 UTC (permalink / raw
To: gentoo-commits
commit: ee1d7093dfa7678da2941e3f2a7cf42c38cbc46c
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 18 09:45:29 2021 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Apr 18 09:48:19 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ee1d7093
sys-devel/binutils: Re-keyword 2.36
Package-Manager: Portage-3.0.17, Repoman-3.0.2
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.36.1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.36.1.ebuild b/sys-devel/binutils/binutils-2.36.1.ebuild
index 95875f24d78..215e42f2c73 100644
--- a/sys-devel/binutils/binutils-2.36.1.ebuild
+++ b/sys-devel/binutils/binutils-2.36.1.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-04-20 17:06 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2021-04-20 17:06 UTC (permalink / raw
To: gentoo-commits
commit: 801359e24122d9922df0bf229684c704202c0b8b
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 20 17:02:16 2021 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Tue Apr 20 17:06:30 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=801359e2
sys-devel/binutils: patchlevel bump 2.31.1-r1 pl 3
Package-Manager: Portage-3.0.17, Repoman-3.0.2
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.36.1-r1.ebuild | 8 +-------
2 files changed, 2 insertions(+), 7 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 4e3d5bf7cbe..c54f502fda4 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -8,4 +8,5 @@ DIST binutils-2.34.tar.xz 21637796 BLAKE2B 07dd23916a7d27f71c3f160c8c16abe2bd4fc
DIST binutils-2.35.2-patches-1.tar.xz 11836 BLAKE2B 0141349c9618992d1ab1e0309f7ed8fbc43b60a58be1dfed05eae8a8fee857241d9e112ae673da6fc9778767675f536ece818cb85567367bb1c8f87a0693623f SHA512 35de5f227c745c5fb800784fe657b2a6216faf43e2498e8481e7b0dc79b0d2f86b3b6a10b896e060319a77a51c61d2e1b7a951ae962b3a6ef8c1a2a261d9bb6c
DIST binutils-2.35.2.tar.xz 22056908 BLAKE2B 9c392e0db2b482442f9476f30bd80cf2796321cbf7be79cf21af7bef167b6074c4ae009dcf9b438d2f2f4a23381c935176b2cfa85de1a526ab46e0fd844a7ca5 SHA512 9974ede5978d32e0d68fef23da48fa00bd06b0bff7ec45b00ca075c126d6bbe0cf2defc03ecc3f17bc6cc85b64271a13009c4049d7ba17de26e84e3a6e2c0348
DIST binutils-2.36.1-patches-1.tar.xz 11392 BLAKE2B 8112dda3f000d29952cbf58101f842ca519054bf9de6e22908881fe4d46cc1ea9a26db74ab00c64aedd3746eb058c19a978b8dc025ad8de07b6365c70a1803b2 SHA512 c6f5645b09d0c149f2eef8e992ff7181716dfb961f1155207a1349168f2d2fb76857cc224c27b4d764cfbc4ddec0630ef8c0a91d7bac489896f28de64651b367
+DIST binutils-2.36.1-patches-3.tar.xz 32720 BLAKE2B 2a5a60168ec5ff612e7e58530092f306460cdb4a963320978dffcc22d73684486a14a5981f6eab2f7fc270def22cdc9954de455d680b2de4befc1ad4916347ba SHA512 e429cc82451675f14715d4e7640fe7b995495c8759a8e919c4291f8ca8358a663012f05c1ec6e60b1261114848379fefc9df723929770462dd676fa04fc7aa54
DIST binutils-2.36.1.tar.xz 22772248 BLAKE2B 03fbfbedd6dba2beaa836b1ed254eddd7a54a163d3061fd93edd2b9591cae24ba049b26658c524b5ccecc2f22d431dfa168218d2531aa356945c994fbbe896fa SHA512 cc24590bcead10b90763386b6f96bb027d7594c659c2d95174a6352e8b98465a50ec3e4088d0da038428abe059bbc4ae5f37b269f31a40fc048072c8a234f4e9
diff --git a/sys-devel/binutils/binutils-2.36.1-r1.ebuild b/sys-devel/binutils/binutils-2.36.1-r1.ebuild
index 9377abfc944..15efa169b38 100644
--- a/sys-devel/binutils/binutils-2.36.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.36.1-r1.ebuild
@@ -19,7 +19,7 @@ REQUIRED_USE="default-gold? ( gold )"
# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
# for the patchsets
-PATCH_VER=1
+PATCH_VER=3
PATCH_DEV=dilfridge
if [[ ${PV} == 9999* ]]; then
@@ -67,12 +67,6 @@ BDEPEND="
RESTRICT="!test? ( test )"
-PATCHES=(
- "${FILESDIR}"/${PN}-2.35.1-cet.patch
- "${FILESDIR}"/${PN}-2.36.1-bfd-ctf.patch
- "${FILESDIR}"/${PN}-2.36.1-ld-ctf.patch
-)
-
MY_BUILDDIR=${WORKDIR}/build
src_unpack() {
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-04-20 18:39 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2021-04-20 18:39 UTC (permalink / raw
To: gentoo-commits
commit: b1dc606b720fdf2ae0c0f1eab93db77704a34ef4
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 20 18:32:35 2021 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Tue Apr 20 18:39:26 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b1dc606b
sys-devel/binutils: remove old
Package-Manager: Portage-3.0.17, Repoman-3.0.2
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 -
sys-devel/binutils/binutils-2.36.1.ebuild | 450 ------------------------------
2 files changed, 451 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index c54f502fda4..6db5ab7b318 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -7,6 +7,5 @@ DIST binutils-2.34-patches-6.tar.xz 103028 BLAKE2B d0e866d0941d2b550c7d7f23530c6
DIST binutils-2.34.tar.xz 21637796 BLAKE2B 07dd23916a7d27f71c3f160c8c16abe2bd4fce294c738c665a012a3be6a87dbe8160d0c38740524f9025e01d438e99b2a94bcf9f9f79ee214f5dd033de8aad3d SHA512 2c7976939dcf5e8c5b7374cccd39bfe803b1bec73c6abfa0eb17c24e1942574c6bdb874c66a092a82adc443182eacd8a5a8001c19a76101f0c7ba40c27de0bbd
DIST binutils-2.35.2-patches-1.tar.xz 11836 BLAKE2B 0141349c9618992d1ab1e0309f7ed8fbc43b60a58be1dfed05eae8a8fee857241d9e112ae673da6fc9778767675f536ece818cb85567367bb1c8f87a0693623f SHA512 35de5f227c745c5fb800784fe657b2a6216faf43e2498e8481e7b0dc79b0d2f86b3b6a10b896e060319a77a51c61d2e1b7a951ae962b3a6ef8c1a2a261d9bb6c
DIST binutils-2.35.2.tar.xz 22056908 BLAKE2B 9c392e0db2b482442f9476f30bd80cf2796321cbf7be79cf21af7bef167b6074c4ae009dcf9b438d2f2f4a23381c935176b2cfa85de1a526ab46e0fd844a7ca5 SHA512 9974ede5978d32e0d68fef23da48fa00bd06b0bff7ec45b00ca075c126d6bbe0cf2defc03ecc3f17bc6cc85b64271a13009c4049d7ba17de26e84e3a6e2c0348
-DIST binutils-2.36.1-patches-1.tar.xz 11392 BLAKE2B 8112dda3f000d29952cbf58101f842ca519054bf9de6e22908881fe4d46cc1ea9a26db74ab00c64aedd3746eb058c19a978b8dc025ad8de07b6365c70a1803b2 SHA512 c6f5645b09d0c149f2eef8e992ff7181716dfb961f1155207a1349168f2d2fb76857cc224c27b4d764cfbc4ddec0630ef8c0a91d7bac489896f28de64651b367
DIST binutils-2.36.1-patches-3.tar.xz 32720 BLAKE2B 2a5a60168ec5ff612e7e58530092f306460cdb4a963320978dffcc22d73684486a14a5981f6eab2f7fc270def22cdc9954de455d680b2de4befc1ad4916347ba SHA512 e429cc82451675f14715d4e7640fe7b995495c8759a8e919c4291f8ca8358a663012f05c1ec6e60b1261114848379fefc9df723929770462dd676fa04fc7aa54
DIST binutils-2.36.1.tar.xz 22772248 BLAKE2B 03fbfbedd6dba2beaa836b1ed254eddd7a54a163d3061fd93edd2b9591cae24ba049b26658c524b5ccecc2f22d431dfa168218d2531aa356945c994fbbe896fa SHA512 cc24590bcead10b90763386b6f96bb027d7594c659c2d95174a6352e8b98465a50ec3e4088d0da038428abe059bbc4ae5f37b269f31a40fc048072c8a234f4e9
diff --git a/sys-devel/binutils/binutils-2.36.1.ebuild b/sys-devel/binutils/binutils-2.36.1.ebuild
deleted file mode 100644
index 215e42f2c73..00000000000
--- a/sys-devel/binutils/binutils-2.36.1.ebuild
+++ /dev/null
@@ -1,450 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="https://sourceware.org/binutils/"
-LICENSE="GPL-3+"
-IUSE="cet default-gold doc +gold multitarget +nls +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=1
-PATCH_DEV=dilfridge
-
-if [[ ${PV} == 9999* ]]; then
- inherit git-r3
- SLOT=${PV}
-else
- PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
- PATCH_DEV=${PATCH_DEV:-slyfox}
- SRC_URI="mirror://gnu/binutils/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 ~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 )"
-
-PATCHES=("${FILESDIR}"/${PN}-2.35.1-cet.patch)
-
-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}.tar.xz
-
- cd "${WORKDIR}" || die
- unpack binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz
- 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 [[ ! -z ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
- if ! use vanilla; then
- einfo "Applying binutils patchset ${patchsetname}"
- eapply "${WORKDIR}/patch"
- einfo "Done."
- fi
- fi
-
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
- # Make sure our explicit libdir paths don't get clobbered. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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() {
- # 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 #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}"
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- # Available from 2.35 on
- --enable-textrel-check=warning
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #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. #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)
- )
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
-
- # bug 637066
- filter-flags -Wall -Wreturn-type
-
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- # see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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}/
- 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}"
- 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-05-15 22:04 Georgy Yakovlev
0 siblings, 0 replies; 477+ messages in thread
From: Georgy Yakovlev @ 2021-05-15 22:04 UTC (permalink / raw
To: gentoo-commits
commit: ad61f9bcd93ef865906a07440084e3788f552c28
Author: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
AuthorDate: Sat May 15 22:03:12 2021 +0000
Commit: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
CommitDate: Sat May 15 22:03:28 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ad61f9bc
sys-devel/binutils: 2.35.2 ppc64 stable, bug #779805
Package-Manager: Portage-3.0.18, Repoman-3.0.3
Signed-off-by: Georgy Yakovlev <gyakovlev <AT> gentoo.org>
sys-devel/binutils/binutils-2.35.2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.35.2.ebuild b/sys-devel/binutils/binutils-2.35.2.ebuild
index 63ef9e389bb..051e68de5e7 100644
--- a/sys-devel/binutils/binutils-2.35.2.ebuild
+++ b/sys-devel/binutils/binutils-2.35.2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-05-15 23:13 Georgy Yakovlev
0 siblings, 0 replies; 477+ messages in thread
From: Georgy Yakovlev @ 2021-05-15 23:13 UTC (permalink / raw
To: gentoo-commits
commit: 71e8724ed1ee886fd89f51448e60f3c2173ed9ae
Author: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
AuthorDate: Sat May 15 23:12:10 2021 +0000
Commit: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
CommitDate: Sat May 15 23:13:29 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=71e8724e
sys-devel/binutils: 2.35.2 ppc stable, bug #779805
Package-Manager: Portage-3.0.18, Repoman-3.0.3
Signed-off-by: Georgy Yakovlev <gyakovlev <AT> gentoo.org>
sys-devel/binutils/binutils-2.35.2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.35.2.ebuild b/sys-devel/binutils/binutils-2.35.2.ebuild
index 9b2a1db7bbf..cf54ddd0234 100644
--- a/sys-devel/binutils/binutils-2.35.2.ebuild
+++ b/sys-devel/binutils/binutils-2.35.2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc x86"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-07-17 11:22 Sergei Trofimovich
0 siblings, 0 replies; 477+ messages in thread
From: Sergei Trofimovich @ 2021-07-17 11:22 UTC (permalink / raw
To: gentoo-commits
commit: b0a39e54065f7eda2dfc719ec05e270fa7e23e38
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Jul 17 10:58:55 2021 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Jul 17 11:22:28 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b0a39e54
sys-devel/binutils: drop old
Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 -
sys-devel/binutils/binutils-2.32-r1.ebuild | 434 -----------------------------
2 files changed, 435 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 6db5ab7b318..4c5f886c557 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -1,4 +1,3 @@
-DIST binutils-2.32-patches-2.tar.xz 145672 BLAKE2B 8218e621f99cb4bcd1638c3011449b94480d207eaeb79cf75c0072e0f1a86bfd1603fc4515bc40d3ac1921a18b9a211b20568f59b11b13eb44e6cff1329c5af9 SHA512 55c25a603f6175af3ade6848e5c1faba06a147d72e9a4f53d44502d97db76499485a67b278a654d18884714a7bf7b360c77c9e42dba3cdc188f805bfe461f09f
DIST binutils-2.32-patches-3.tar.xz 151372 BLAKE2B 70d5f78d9f3e3bf9ff096b6f24babcc35c63395a5e1155a981a5ceb4b7a5706ad2ee0c77c74e910fc0eefeaed19763113186deb9665eed538dc3b8e227bef12d SHA512 5e91eff63332c2aca86a82a287ca4959a6098065ed88078265a3d79a2c851abd113e9736b75d8102a208996ed1191b0e23569921217ece975f1d9005a55afd0d
DIST binutils-2.32.tar.xz 20774880 BLAKE2B d1bdbd9c8487c091665c197974ce4bdf520b7a67ed6997a81b87e6a0af9514a091458244f583acec5ae580ac2ee5e908f67f483b8e5263cd18ced794cb235da6 SHA512 d326408f12a03d9a61a9de56584c2af12f81c2e50d2d7e835d51565df8314df01575724afa1e43bd0db45cfc9916b41519b67dfce03232aa4978704492a6994a
DIST binutils-2.33.1-patches-2.tar.xz 18636 BLAKE2B 0e0757329b6a83aeff4f4c450c95e73fd48fcc89f83e63f294568632bee0972552cf2f57494352c5d9a7c16a51cdbc4108b38fa6028d4388c8e76046b3da9212 SHA512 d982f68d1f5fdb384309a2a1b7426bf840a90e7a85b37229b4223b62c36cab9dd9ec0c08382c85c68adf996dec21133df3180a2fc649363adae8645f8282f71d
diff --git a/sys-devel/binutils/binutils-2.32-r1.ebuild b/sys-devel/binutils/binutils-2.32-r1.ebuild
deleted file mode 100644
index 7bd6b4fbdc0..00000000000
--- a/sys-devel/binutils/binutils-2.32-r1.ebuild
+++ /dev/null
@@ -1,434 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs versionator
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="https://sourceware.org/binutils/"
-LICENSE="GPL-3+"
-# USE="+cxx" is a transitional flag until llvm migrates to new flags:
-# bug #677888
-IUSE="+cxx default-gold doc +gold multitarget +nls +plugins static-libs test"
-REQUIRED_USE="cxx? ( gold plugins ) default-gold? ( gold )"
-
-# Variables that can be set here:
-# 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
-# Default: dilfridge :)
-
-PATCH_VER=2
-PATCH_DEV=dilfridge
-
-case ${PV} in
- 9999)
- EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- S=${WORKDIR}/binutils
- EGIT_CHECKOUT_DIR=${S}
- SLOT=${PV}
- ;;
- *)
- SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
- SLOT=$(get_version_component_range 1-2)
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
- ;;
-esac
-
-#
-# The Gentoo patchset
-#
-PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
-PATCH_DEV=${PATCH_DEV:-slyfox}
-
-[[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI}
- https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
-
-# Disable gold testsuite since it always fails.
-PATCHES=( "${FILESDIR}/${PN}-2.29.1-nogoldtest.patch" )
-
-#
-# 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}
- doc? ( sys-apps/texinfo )
- test? ( dev-util/dejagnu )
- nls? ( sys-devel/gettext )
- sys-devel/flex
- virtual/yacc
-"
-
-RESTRICT="!test? ( test )"
-
-MY_BUILDDIR=${WORKDIR}/build
-
-src_unpack() {
- case ${PV} in
- *9999)
- git-r3_src_unpack
- ;;
- *)
- ;;
- esac
- default
- mkdir -p "${MY_BUILDDIR}"
-}
-
-src_prepare() {
- if [[ ! -z ${PATCH_VER} ]] ; then
- # Use upstream patch to enable development mode
- rm -v "${WORKDIR}/patch"/0000-Gentoo-Git-is-development.patch || die
-
- einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
- eapply "${WORKDIR}/patch"/*.patch
- fi
-
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
- # Make sure our explicit libdir paths don't get clobbered. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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() {
- # 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 #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}"
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #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. #666100
- --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
- )
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
-
- # bug 637066
- filter-flags -Wall -Wreturn-type
-
- # enable verbose test run and result logging
- emake -k check RUNTESTFLAGS='-a -v' VERBOSE=1
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- # see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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}/
- 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}"
- 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-07-20 21:52 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2021-07-20 21:52 UTC (permalink / raw
To: gentoo-commits
commit: e60538b61180e4c85cf4cebe964c1da14dc1782f
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Tue Jul 20 21:49:25 2021 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Tue Jul 20 21:51:56 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e60538b6
sys-devel/binutils: version bump 2.37, unkeyworded
Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 +
sys-devel/binutils/binutils-2.37.ebuild | 449 ++++++++++++++++++++++++++++++++
2 files changed, 451 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 4c5f886c557..32767475a17 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -8,3 +8,5 @@ DIST binutils-2.35.2-patches-1.tar.xz 11836 BLAKE2B 0141349c9618992d1ab1e0309f7e
DIST binutils-2.35.2.tar.xz 22056908 BLAKE2B 9c392e0db2b482442f9476f30bd80cf2796321cbf7be79cf21af7bef167b6074c4ae009dcf9b438d2f2f4a23381c935176b2cfa85de1a526ab46e0fd844a7ca5 SHA512 9974ede5978d32e0d68fef23da48fa00bd06b0bff7ec45b00ca075c126d6bbe0cf2defc03ecc3f17bc6cc85b64271a13009c4049d7ba17de26e84e3a6e2c0348
DIST binutils-2.36.1-patches-3.tar.xz 32720 BLAKE2B 2a5a60168ec5ff612e7e58530092f306460cdb4a963320978dffcc22d73684486a14a5981f6eab2f7fc270def22cdc9954de455d680b2de4befc1ad4916347ba SHA512 e429cc82451675f14715d4e7640fe7b995495c8759a8e919c4291f8ca8358a663012f05c1ec6e60b1261114848379fefc9df723929770462dd676fa04fc7aa54
DIST binutils-2.36.1.tar.xz 22772248 BLAKE2B 03fbfbedd6dba2beaa836b1ed254eddd7a54a163d3061fd93edd2b9591cae24ba049b26658c524b5ccecc2f22d431dfa168218d2531aa356945c994fbbe896fa SHA512 cc24590bcead10b90763386b6f96bb027d7594c659c2d95174a6352e8b98465a50ec3e4088d0da038428abe059bbc4ae5f37b269f31a40fc048072c8a234f4e9
+DIST binutils-2.37-patches-1.tar.xz 11960 BLAKE2B ea60d0db3b61d350a00626ab3ec76e919f15afcc52411c70cab4c5fda80bc0d250ef098847893724365b6c3e789f3f76fd84eda9d31d60295719da622533127f SHA512 608a600d977b9558054ed2278901f50d9d23c5786c271d7849ff884b4e268e1821db26b7c6f5e6cf0f57a7e44e88e4ce0f2441975f7d8401ada0d5451bdefc5f
+DIST binutils-2.37.tar.xz 22916924 BLAKE2B f5a374fdf0300f7734d1e462333296b16c9d5ed6eba167e1742a4da7082f4388c929e286bf76c3933b3e434937380340732a31790723654b491ea0c8ab5b9ba5 SHA512 5c11aeef6935860a6819ed3a3c93371f052e52b4bdc5033da36037c1544d013b7f12cb8d561ec954fe7469a68f1b66f1a3cd53d5a3af7293635a90d69edd15e7
diff --git a/sys-devel/binutils/binutils-2.37.ebuild b/sys-devel/binutils/binutils-2.37.ebuild
new file mode 100644
index 00000000000..014a2d71612
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.37.ebuild
@@ -0,0 +1,449 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
+
+DESCRIPTION="Tools necessary to build programs"
+HOMEPAGE="https://sourceware.org/binutils/"
+LICENSE="GPL-3+"
+IUSE="cet default-gold doc +gold multitarget +nls +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=1
+PATCH_DEV=dilfridge
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+ SLOT=${PV}
+else
+ PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
+ PATCH_DEV=${PATCH_DEV:-slyfox}
+ SRC_URI="mirror://gnu/binutils/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)
+ # live ebuild
+ #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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}.tar.xz
+
+ cd "${WORKDIR}" || die
+ unpack binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz
+ 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 [[ ! -z ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
+ if ! use vanilla; then
+ einfo "Applying binutils patchset ${patchsetname}"
+ eapply "${WORKDIR}/patch"
+ einfo "Done."
+ fi
+ fi
+
+ # This check should probably go somewhere else, like pkg_pretend.
+ if [[ ${CTARGET} == *-uclibc* ]] ; then
+ if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
+ die "sorry, but this binutils doesn't yet support uClibc :("
+ fi
+ fi
+
+ # Make sure our explicit libdir paths don't get clobbered. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ 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() {
+ # 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 #42033
+ strip-linguas -u */po
+
+ # Keep things sane
+ strip-flags
+
+ local x
+ echo
+ for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
+ einfo "$(printf '%10s' ${x}:) ${!x}"
+ done
+ echo
+
+ cd "${MY_BUILDDIR}"
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && 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. #497268
+ --enable-install-libiberty
+ # Available from 2.35 on
+ --enable-textrel-check=warning
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #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. #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)
+ )
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${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}"
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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}"
+
+ # bug 637066
+ filter-flags -Wall -Wreturn-type
+
+ emake -k check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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}/
+ 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}"
+ 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-07-24 21:15 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2021-07-24 21:15 UTC (permalink / raw
To: gentoo-commits
commit: 6d0190c2229052c9bcc4c93d9729faf831f9e4e0
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Jul 24 21:13:57 2021 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Jul 24 21:15:28 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6d0190c2
sys-devel/binutils: Bump 2.37 patchset to 2
Includes libctf soname fixes
Bug: https://bugs.gentoo.org/803017
Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 +-
sys-devel/binutils/binutils-2.37.ebuild | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 32767475a17..faaff7affed 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -8,5 +8,5 @@ DIST binutils-2.35.2-patches-1.tar.xz 11836 BLAKE2B 0141349c9618992d1ab1e0309f7e
DIST binutils-2.35.2.tar.xz 22056908 BLAKE2B 9c392e0db2b482442f9476f30bd80cf2796321cbf7be79cf21af7bef167b6074c4ae009dcf9b438d2f2f4a23381c935176b2cfa85de1a526ab46e0fd844a7ca5 SHA512 9974ede5978d32e0d68fef23da48fa00bd06b0bff7ec45b00ca075c126d6bbe0cf2defc03ecc3f17bc6cc85b64271a13009c4049d7ba17de26e84e3a6e2c0348
DIST binutils-2.36.1-patches-3.tar.xz 32720 BLAKE2B 2a5a60168ec5ff612e7e58530092f306460cdb4a963320978dffcc22d73684486a14a5981f6eab2f7fc270def22cdc9954de455d680b2de4befc1ad4916347ba SHA512 e429cc82451675f14715d4e7640fe7b995495c8759a8e919c4291f8ca8358a663012f05c1ec6e60b1261114848379fefc9df723929770462dd676fa04fc7aa54
DIST binutils-2.36.1.tar.xz 22772248 BLAKE2B 03fbfbedd6dba2beaa836b1ed254eddd7a54a163d3061fd93edd2b9591cae24ba049b26658c524b5ccecc2f22d431dfa168218d2531aa356945c994fbbe896fa SHA512 cc24590bcead10b90763386b6f96bb027d7594c659c2d95174a6352e8b98465a50ec3e4088d0da038428abe059bbc4ae5f37b269f31a40fc048072c8a234f4e9
-DIST binutils-2.37-patches-1.tar.xz 11960 BLAKE2B ea60d0db3b61d350a00626ab3ec76e919f15afcc52411c70cab4c5fda80bc0d250ef098847893724365b6c3e789f3f76fd84eda9d31d60295719da622533127f SHA512 608a600d977b9558054ed2278901f50d9d23c5786c271d7849ff884b4e268e1821db26b7c6f5e6cf0f57a7e44e88e4ce0f2441975f7d8401ada0d5451bdefc5f
+DIST binutils-2.37-patches-2.tar.xz 79304 BLAKE2B bdcbe29efba3582f2d1be9057a39aedb655cbc225abe8ea656c1bcf090a53930c74197505c8de2dcfd9a105f1b1cc8fa84a0d532547221d2df34a77b06e7fa15 SHA512 5cea876cfbdcd1409f5ef8ee138a8c29ad5b3d38b5d72ce312f2eb94fb8b2165e9a10018c46bdc36bc59ade2e2764e5da4ac653d15690bfc0bc9784202cc0164
DIST binutils-2.37.tar.xz 22916924 BLAKE2B f5a374fdf0300f7734d1e462333296b16c9d5ed6eba167e1742a4da7082f4388c929e286bf76c3933b3e434937380340732a31790723654b491ea0c8ab5b9ba5 SHA512 5c11aeef6935860a6819ed3a3c93371f052e52b4bdc5033da36037c1544d013b7f12cb8d561ec954fe7469a68f1b66f1a3cd53d5a3af7293635a90d69edd15e7
diff --git a/sys-devel/binutils/binutils-2.37.ebuild b/sys-devel/binutils/binutils-2.37.ebuild
index 014a2d71612..f068b12240f 100644
--- a/sys-devel/binutils/binutils-2.37.ebuild
+++ b/sys-devel/binutils/binutils-2.37.ebuild
@@ -19,7 +19,7 @@ REQUIRED_USE="default-gold? ( gold )"
# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
# for the patchsets
-PATCH_VER=1
+PATCH_VER=2
PATCH_DEV=dilfridge
if [[ ${PV} == 9999* ]]; then
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-07-24 22:54 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2021-07-24 22:54 UTC (permalink / raw
To: gentoo-commits
commit: 3d2676fe8169c7ca26e4bf7c608ed5ca21767c2c
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Jul 24 22:49:33 2021 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Jul 24 22:53:42 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3d2676fe
sys-devel/binutils: Bump 2.36.1 patchset to 4
Includes libctf soname fixes
Bug: https://bugs.gentoo.org/803017
Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.36.1-r2.ebuild | 448 +++++++++++++++++++++++++++
2 files changed, 449 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index faaff7affed..311ff2d87b4 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -7,6 +7,7 @@ DIST binutils-2.34.tar.xz 21637796 BLAKE2B 07dd23916a7d27f71c3f160c8c16abe2bd4fc
DIST binutils-2.35.2-patches-1.tar.xz 11836 BLAKE2B 0141349c9618992d1ab1e0309f7ed8fbc43b60a58be1dfed05eae8a8fee857241d9e112ae673da6fc9778767675f536ece818cb85567367bb1c8f87a0693623f SHA512 35de5f227c745c5fb800784fe657b2a6216faf43e2498e8481e7b0dc79b0d2f86b3b6a10b896e060319a77a51c61d2e1b7a951ae962b3a6ef8c1a2a261d9bb6c
DIST binutils-2.35.2.tar.xz 22056908 BLAKE2B 9c392e0db2b482442f9476f30bd80cf2796321cbf7be79cf21af7bef167b6074c4ae009dcf9b438d2f2f4a23381c935176b2cfa85de1a526ab46e0fd844a7ca5 SHA512 9974ede5978d32e0d68fef23da48fa00bd06b0bff7ec45b00ca075c126d6bbe0cf2defc03ecc3f17bc6cc85b64271a13009c4049d7ba17de26e84e3a6e2c0348
DIST binutils-2.36.1-patches-3.tar.xz 32720 BLAKE2B 2a5a60168ec5ff612e7e58530092f306460cdb4a963320978dffcc22d73684486a14a5981f6eab2f7fc270def22cdc9954de455d680b2de4befc1ad4916347ba SHA512 e429cc82451675f14715d4e7640fe7b995495c8759a8e919c4291f8ca8358a663012f05c1ec6e60b1261114848379fefc9df723929770462dd676fa04fc7aa54
+DIST binutils-2.36.1-patches-4.tar.xz 43508 BLAKE2B 116cefcbf4641f1ab649bb0345b80a23c29d1d3340d16f87068a1cffb911e4633f3e6da235534cd79c601cb4168bc78f9b7115185a49cdec78b6e7de7856b344 SHA512 3de95f1bb3787eeb7e942e2a9cf4a2bf967c5758158c3daf76b81a62ccefe5569b0a300cdc02e2e702c61a0cfc63d4209a7d306179cdddc3bc544d21b744eb82
DIST binutils-2.36.1.tar.xz 22772248 BLAKE2B 03fbfbedd6dba2beaa836b1ed254eddd7a54a163d3061fd93edd2b9591cae24ba049b26658c524b5ccecc2f22d431dfa168218d2531aa356945c994fbbe896fa SHA512 cc24590bcead10b90763386b6f96bb027d7594c659c2d95174a6352e8b98465a50ec3e4088d0da038428abe059bbc4ae5f37b269f31a40fc048072c8a234f4e9
DIST binutils-2.37-patches-2.tar.xz 79304 BLAKE2B bdcbe29efba3582f2d1be9057a39aedb655cbc225abe8ea656c1bcf090a53930c74197505c8de2dcfd9a105f1b1cc8fa84a0d532547221d2df34a77b06e7fa15 SHA512 5cea876cfbdcd1409f5ef8ee138a8c29ad5b3d38b5d72ce312f2eb94fb8b2165e9a10018c46bdc36bc59ade2e2764e5da4ac653d15690bfc0bc9784202cc0164
DIST binutils-2.37.tar.xz 22916924 BLAKE2B f5a374fdf0300f7734d1e462333296b16c9d5ed6eba167e1742a4da7082f4388c929e286bf76c3933b3e434937380340732a31790723654b491ea0c8ab5b9ba5 SHA512 5c11aeef6935860a6819ed3a3c93371f052e52b4bdc5033da36037c1544d013b7f12cb8d561ec954fe7469a68f1b66f1a3cd53d5a3af7293635a90d69edd15e7
diff --git a/sys-devel/binutils/binutils-2.36.1-r2.ebuild b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
new file mode 100644
index 00000000000..10a61fda078
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
@@ -0,0 +1,448 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
+
+DESCRIPTION="Tools necessary to build programs"
+HOMEPAGE="https://sourceware.org/binutils/"
+LICENSE="GPL-3+"
+IUSE="cet default-gold doc +gold multitarget +nls +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:-slyfox}
+ SRC_URI="mirror://gnu/binutils/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 ~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}.tar.xz
+
+ cd "${WORKDIR}" || die
+ unpack binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz
+ 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 [[ ! -z ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
+ if ! use vanilla; then
+ einfo "Applying binutils patchset ${patchsetname}"
+ eapply "${WORKDIR}/patch"
+ einfo "Done."
+ fi
+ fi
+
+ # This check should probably go somewhere else, like pkg_pretend.
+ if [[ ${CTARGET} == *-uclibc* ]] ; then
+ if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
+ die "sorry, but this binutils doesn't yet support uClibc :("
+ fi
+ fi
+
+ # Make sure our explicit libdir paths don't get clobbered. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ 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() {
+ # 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 #42033
+ strip-linguas -u */po
+
+ # Keep things sane
+ strip-flags
+
+ local x
+ echo
+ for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
+ einfo "$(printf '%10s' ${x}:) ${!x}"
+ done
+ echo
+
+ cd "${MY_BUILDDIR}"
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && 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. #497268
+ --enable-install-libiberty
+ # Available from 2.35 on
+ --enable-textrel-check=warning
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #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. #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)
+ )
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${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}"
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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}"
+
+ # bug 637066
+ filter-flags -Wall -Wreturn-type
+
+ emake -k check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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}/
+ 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}"
+ 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-07-25 11:16 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2021-07-25 11:16 UTC (permalink / raw
To: gentoo-commits
commit: 64aa13f1884d9f9f45723c5277cf0e1eb5aec96d
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 25 10:45:04 2021 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Jul 25 11:15:48 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=64aa13f1
sys-devel/binutils: Rekeyword 2.36.1-r2
Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.36.1-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.36.1-r2.ebuild b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
index 10a61fda078..aa618899414 100644
--- a/sys-devel/binutils/binutils-2.36.1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-07-31 10:03 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2021-07-31 10:03 UTC (permalink / raw
To: gentoo-commits
commit: 1512ef282e7e104dd61026ce90b7006a34fd60c0
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Jul 31 09:53:39 2021 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Jul 31 10:03:07 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1512ef28
sys-devel/binutils: Bump to patchset 5, XFAIL gold tests only
Bug: https://bugs.gentoo.org/684046
Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 +-
sys-devel/binutils/binutils-2.36.1-r2.ebuild | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 311ff2d87b4..2c4cbf6f099 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -7,7 +7,7 @@ DIST binutils-2.34.tar.xz 21637796 BLAKE2B 07dd23916a7d27f71c3f160c8c16abe2bd4fc
DIST binutils-2.35.2-patches-1.tar.xz 11836 BLAKE2B 0141349c9618992d1ab1e0309f7ed8fbc43b60a58be1dfed05eae8a8fee857241d9e112ae673da6fc9778767675f536ece818cb85567367bb1c8f87a0693623f SHA512 35de5f227c745c5fb800784fe657b2a6216faf43e2498e8481e7b0dc79b0d2f86b3b6a10b896e060319a77a51c61d2e1b7a951ae962b3a6ef8c1a2a261d9bb6c
DIST binutils-2.35.2.tar.xz 22056908 BLAKE2B 9c392e0db2b482442f9476f30bd80cf2796321cbf7be79cf21af7bef167b6074c4ae009dcf9b438d2f2f4a23381c935176b2cfa85de1a526ab46e0fd844a7ca5 SHA512 9974ede5978d32e0d68fef23da48fa00bd06b0bff7ec45b00ca075c126d6bbe0cf2defc03ecc3f17bc6cc85b64271a13009c4049d7ba17de26e84e3a6e2c0348
DIST binutils-2.36.1-patches-3.tar.xz 32720 BLAKE2B 2a5a60168ec5ff612e7e58530092f306460cdb4a963320978dffcc22d73684486a14a5981f6eab2f7fc270def22cdc9954de455d680b2de4befc1ad4916347ba SHA512 e429cc82451675f14715d4e7640fe7b995495c8759a8e919c4291f8ca8358a663012f05c1ec6e60b1261114848379fefc9df723929770462dd676fa04fc7aa54
-DIST binutils-2.36.1-patches-4.tar.xz 43508 BLAKE2B 116cefcbf4641f1ab649bb0345b80a23c29d1d3340d16f87068a1cffb911e4633f3e6da235534cd79c601cb4168bc78f9b7115185a49cdec78b6e7de7856b344 SHA512 3de95f1bb3787eeb7e942e2a9cf4a2bf967c5758158c3daf76b81a62ccefe5569b0a300cdc02e2e702c61a0cfc63d4209a7d306179cdddc3bc544d21b744eb82
+DIST binutils-2.36.1-patches-5.tar.xz 44388 BLAKE2B 1dadb012fe35ec5fb0c5a15d348ab535bc5e3765375c97a3768c6b9f7126e0fda15d35163c9f9c33a4be98662dd120d7c1b21930a20c18dbb5345f56ecd9ecc1 SHA512 a2ce3388f1f1a77ff865481ff4b625121fd55f5234fed0a885312744f2f9c504717de1499b68252c6de64fa45866db7692df91c5838b43fbeb178938811cbe84
DIST binutils-2.36.1.tar.xz 22772248 BLAKE2B 03fbfbedd6dba2beaa836b1ed254eddd7a54a163d3061fd93edd2b9591cae24ba049b26658c524b5ccecc2f22d431dfa168218d2531aa356945c994fbbe896fa SHA512 cc24590bcead10b90763386b6f96bb027d7594c659c2d95174a6352e8b98465a50ec3e4088d0da038428abe059bbc4ae5f37b269f31a40fc048072c8a234f4e9
DIST binutils-2.37-patches-2.tar.xz 79304 BLAKE2B bdcbe29efba3582f2d1be9057a39aedb655cbc225abe8ea656c1bcf090a53930c74197505c8de2dcfd9a105f1b1cc8fa84a0d532547221d2df34a77b06e7fa15 SHA512 5cea876cfbdcd1409f5ef8ee138a8c29ad5b3d38b5d72ce312f2eb94fb8b2165e9a10018c46bdc36bc59ade2e2764e5da4ac653d15690bfc0bc9784202cc0164
DIST binutils-2.37.tar.xz 22916924 BLAKE2B f5a374fdf0300f7734d1e462333296b16c9d5ed6eba167e1742a4da7082f4388c929e286bf76c3933b3e434937380340732a31790723654b491ea0c8ab5b9ba5 SHA512 5c11aeef6935860a6819ed3a3c93371f052e52b4bdc5033da36037c1544d013b7f12cb8d561ec954fe7469a68f1b66f1a3cd53d5a3af7293635a90d69edd15e7
diff --git a/sys-devel/binutils/binutils-2.36.1-r2.ebuild b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
index aa618899414..76bc10bd799 100644
--- a/sys-devel/binutils/binutils-2.36.1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
@@ -19,7 +19,7 @@ REQUIRED_USE="default-gold? ( gold )"
# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
# for the patchsets
-PATCH_VER=4
+PATCH_VER=5
PATCH_DEV=dilfridge
if [[ ${PV} == 9999* ]]; then
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-08-13 21:40 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2021-08-13 21:40 UTC (permalink / raw
To: gentoo-commits
commit: bcbb1136abfeba51aab78947f5b8efb84c634297
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 13 21:39:14 2021 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Aug 13 21:40:21 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bcbb1136
sys-devel/binutils: Remove old
Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 -
sys-devel/binutils/binutils-2.36.1-r1.ebuild | 448 ---------------------------
2 files changed, 449 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 2c4cbf6f099..08857d4ea06 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -6,7 +6,6 @@ DIST binutils-2.34-patches-6.tar.xz 103028 BLAKE2B d0e866d0941d2b550c7d7f23530c6
DIST binutils-2.34.tar.xz 21637796 BLAKE2B 07dd23916a7d27f71c3f160c8c16abe2bd4fce294c738c665a012a3be6a87dbe8160d0c38740524f9025e01d438e99b2a94bcf9f9f79ee214f5dd033de8aad3d SHA512 2c7976939dcf5e8c5b7374cccd39bfe803b1bec73c6abfa0eb17c24e1942574c6bdb874c66a092a82adc443182eacd8a5a8001c19a76101f0c7ba40c27de0bbd
DIST binutils-2.35.2-patches-1.tar.xz 11836 BLAKE2B 0141349c9618992d1ab1e0309f7ed8fbc43b60a58be1dfed05eae8a8fee857241d9e112ae673da6fc9778767675f536ece818cb85567367bb1c8f87a0693623f SHA512 35de5f227c745c5fb800784fe657b2a6216faf43e2498e8481e7b0dc79b0d2f86b3b6a10b896e060319a77a51c61d2e1b7a951ae962b3a6ef8c1a2a261d9bb6c
DIST binutils-2.35.2.tar.xz 22056908 BLAKE2B 9c392e0db2b482442f9476f30bd80cf2796321cbf7be79cf21af7bef167b6074c4ae009dcf9b438d2f2f4a23381c935176b2cfa85de1a526ab46e0fd844a7ca5 SHA512 9974ede5978d32e0d68fef23da48fa00bd06b0bff7ec45b00ca075c126d6bbe0cf2defc03ecc3f17bc6cc85b64271a13009c4049d7ba17de26e84e3a6e2c0348
-DIST binutils-2.36.1-patches-3.tar.xz 32720 BLAKE2B 2a5a60168ec5ff612e7e58530092f306460cdb4a963320978dffcc22d73684486a14a5981f6eab2f7fc270def22cdc9954de455d680b2de4befc1ad4916347ba SHA512 e429cc82451675f14715d4e7640fe7b995495c8759a8e919c4291f8ca8358a663012f05c1ec6e60b1261114848379fefc9df723929770462dd676fa04fc7aa54
DIST binutils-2.36.1-patches-5.tar.xz 44388 BLAKE2B 1dadb012fe35ec5fb0c5a15d348ab535bc5e3765375c97a3768c6b9f7126e0fda15d35163c9f9c33a4be98662dd120d7c1b21930a20c18dbb5345f56ecd9ecc1 SHA512 a2ce3388f1f1a77ff865481ff4b625121fd55f5234fed0a885312744f2f9c504717de1499b68252c6de64fa45866db7692df91c5838b43fbeb178938811cbe84
DIST binutils-2.36.1.tar.xz 22772248 BLAKE2B 03fbfbedd6dba2beaa836b1ed254eddd7a54a163d3061fd93edd2b9591cae24ba049b26658c524b5ccecc2f22d431dfa168218d2531aa356945c994fbbe896fa SHA512 cc24590bcead10b90763386b6f96bb027d7594c659c2d95174a6352e8b98465a50ec3e4088d0da038428abe059bbc4ae5f37b269f31a40fc048072c8a234f4e9
DIST binutils-2.37-patches-2.tar.xz 79304 BLAKE2B bdcbe29efba3582f2d1be9057a39aedb655cbc225abe8ea656c1bcf090a53930c74197505c8de2dcfd9a105f1b1cc8fa84a0d532547221d2df34a77b06e7fa15 SHA512 5cea876cfbdcd1409f5ef8ee138a8c29ad5b3d38b5d72ce312f2eb94fb8b2165e9a10018c46bdc36bc59ade2e2764e5da4ac653d15690bfc0bc9784202cc0164
diff --git a/sys-devel/binutils/binutils-2.36.1-r1.ebuild b/sys-devel/binutils/binutils-2.36.1-r1.ebuild
deleted file mode 100644
index 15efa169b38..00000000000
--- a/sys-devel/binutils/binutils-2.36.1-r1.ebuild
+++ /dev/null
@@ -1,448 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="https://sourceware.org/binutils/"
-LICENSE="GPL-3+"
-IUSE="cet default-gold doc +gold multitarget +nls +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=3
-PATCH_DEV=dilfridge
-
-if [[ ${PV} == 9999* ]]; then
- inherit git-r3
- SLOT=${PV}
-else
- PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
- PATCH_DEV=${PATCH_DEV:-slyfox}
- SRC_URI="mirror://gnu/binutils/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 ~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}.tar.xz
-
- cd "${WORKDIR}" || die
- unpack binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz
- 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 [[ ! -z ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
- if ! use vanilla; then
- einfo "Applying binutils patchset ${patchsetname}"
- eapply "${WORKDIR}/patch"
- einfo "Done."
- fi
- fi
-
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
- # Make sure our explicit libdir paths don't get clobbered. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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() {
- # 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 #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}"
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- # Available from 2.35 on
- --enable-textrel-check=warning
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #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. #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)
- )
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
-
- # bug 637066
- filter-flags -Wall -Wreturn-type
-
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- # see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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}/
- 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}"
- 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-08-17 20:07 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2021-08-17 20:07 UTC (permalink / raw
To: gentoo-commits
commit: b87a28ed9cc331f51b67eb723f6931b34c7e9d25
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 17 20:01:09 2021 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Tue Aug 17 20:07:45 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b87a28ed
sys-devel/binutils: Enable new dtags via configure, not broken patch
Bug: https://bugs.gentoo.org/808787
Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-9999.ebuild | 2 ++
1 file changed, 2 insertions(+)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 014a2d71612..d6c4c64f815 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -248,6 +248,8 @@ src_configure() {
--enable-install-libiberty
# Available from 2.35 on
--enable-textrel-check=warning
+ # Works better than vapier's patch... #808787
+ --enable-new-dtags
--disable-werror
--with-bugurl="$(toolchain-binutils_bugurl)"
--with-pkgversion="$(toolchain-binutils_pkgversion)"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-08-17 21:42 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2021-08-17 21:42 UTC (permalink / raw
To: gentoo-commits
commit: 6b9cdfbb7ca36a1295db5e18ce5a05d76499645a
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 17 21:29:17 2021 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Tue Aug 17 21:42:40 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6b9cdfbb
sys-devel/binutils: 2.37 patchset bump
Needs pseudo-version since sources of generated files were changed
Bug: https://bugs.gentoo.org/808787
Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 ++
.../binutils/{binutils-9999.ebuild => binutils-2.37_p1.ebuild} | 9 ++++++---
sys-devel/binutils/binutils-9999.ebuild | 7 +++++--
3 files changed, 13 insertions(+), 5 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 08857d4ea06..d74768cfe3c 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -10,3 +10,5 @@ DIST binutils-2.36.1-patches-5.tar.xz 44388 BLAKE2B 1dadb012fe35ec5fb0c5a15d348a
DIST binutils-2.36.1.tar.xz 22772248 BLAKE2B 03fbfbedd6dba2beaa836b1ed254eddd7a54a163d3061fd93edd2b9591cae24ba049b26658c524b5ccecc2f22d431dfa168218d2531aa356945c994fbbe896fa SHA512 cc24590bcead10b90763386b6f96bb027d7594c659c2d95174a6352e8b98465a50ec3e4088d0da038428abe059bbc4ae5f37b269f31a40fc048072c8a234f4e9
DIST binutils-2.37-patches-2.tar.xz 79304 BLAKE2B bdcbe29efba3582f2d1be9057a39aedb655cbc225abe8ea656c1bcf090a53930c74197505c8de2dcfd9a105f1b1cc8fa84a0d532547221d2df34a77b06e7fa15 SHA512 5cea876cfbdcd1409f5ef8ee138a8c29ad5b3d38b5d72ce312f2eb94fb8b2165e9a10018c46bdc36bc59ade2e2764e5da4ac653d15690bfc0bc9784202cc0164
DIST binutils-2.37.tar.xz 22916924 BLAKE2B f5a374fdf0300f7734d1e462333296b16c9d5ed6eba167e1742a4da7082f4388c929e286bf76c3933b3e434937380340732a31790723654b491ea0c8ab5b9ba5 SHA512 5c11aeef6935860a6819ed3a3c93371f052e52b4bdc5033da36037c1544d013b7f12cb8d561ec954fe7469a68f1b66f1a3cd53d5a3af7293635a90d69edd15e7
+DIST binutils-2.37_p1-patches-0.tar.xz 1392 BLAKE2B 128930a381022fea5d1fcb0695953e8dada2513b088b8540fe08d4e0da93ec18b6bf9c78acad6ec5a8982ae2c115d143462ef0bb7bfd63cfeb06c10ad472c2f8 SHA512 44666821f96349e96685ffcfd53a80a94659e38fc63eeeb980d0eed13aab03ae3e2d5059b4932cd9018f2f7698cdb5e15b443d60c01b2bd1385eeb0c698e0e24
+DIST binutils-2.37_p1.tar.xz 22992196 BLAKE2B a8aa0f386d03a5b1466166ac7c40989c228351ccf0949a9b462b4d4615d70ab7e1a45351299140a42baf39c317b8007733c253eb547ee1dfadb612addde11621 SHA512 46c297ec2a7a5b81d1c6e3f16486a6dc2860a07520fe2dd8871d1eb5160065bbe2cc6b0415d5352bf12284133e5817a4e429e6077182d615e969bd1a8f52ed28
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-2.37_p1.ebuild
similarity index 98%
copy from sys-devel/binutils/binutils-9999.ebuild
copy to sys-devel/binutils/binutils-2.37_p1.ebuild
index d6c4c64f815..f25257cb214 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1.ebuild
@@ -19,7 +19,7 @@ REQUIRED_USE="default-gold? ( gold )"
# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
# for the patchsets
-PATCH_VER=1
+PATCH_VER=0
PATCH_DEV=dilfridge
if [[ ${PV} == 9999* ]]; then
@@ -27,8 +27,8 @@ if [[ ${PV} == 9999* ]]; then
SLOT=${PV}
else
PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
- PATCH_DEV=${PATCH_DEV:-slyfox}
- SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
+ 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)
@@ -86,6 +86,9 @@ src_unpack() {
cd "${WORKDIR}" || die
unpack binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz
+
+ # _p patch versions are Gentoo specific tarballs ...
+ S=${WORKDIR}/${P%_p?}
fi
cd "${WORKDIR}" || die
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index d6c4c64f815..37d8a9fa13f 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -27,8 +27,8 @@ if [[ ${PV} == 9999* ]]; then
SLOT=${PV}
else
PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
- PATCH_DEV=${PATCH_DEV:-slyfox}
- SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz"
+ 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)
@@ -86,6 +86,9 @@ src_unpack() {
cd "${WORKDIR}" || die
unpack binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz
+
+ # _p patch versions are Gentoo specific tarballs ...
+ S=${WORKDIR}/${P%_p?}
fi
cd "${WORKDIR}" || die
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-08-19 12:57 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2021-08-19 12:57 UTC (permalink / raw
To: gentoo-commits
commit: e85a915f6269ceb7d1c0a4462edd4b27e993628c
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 19 12:57:02 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Aug 19 12:57:02 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e85a915f
sys-devel/binutils: Stabilize 2.36.1-r2 x86, #809059
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.36.1-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.36.1-r2.ebuild b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
index dd7bebd01e3..987dafcf979 100644
--- a/sys-devel/binutils/binutils-2.36.1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-08-19 12:57 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2021-08-19 12:57 UTC (permalink / raw
To: gentoo-commits
commit: 5d98b54010497c3d2ce666431322d5608a60e394
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 19 12:56:58 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Aug 19 12:56:58 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5d98b540
sys-devel/binutils: Stabilize 2.36.1-r2 amd64, #809059
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.36.1-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.36.1-r2.ebuild b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
index 76bc10bd799..dd7bebd01e3 100644
--- a/sys-devel/binutils/binutils-2.36.1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-08-19 13:27 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2021-08-19 13:27 UTC (permalink / raw
To: gentoo-commits
commit: 21396450316b091c9c829f7a60306997ee764df9
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 19 13:27:24 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Aug 19 13:27:24 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=21396450
sys-devel/binutils: Stabilize 2.36.1-r2 ppc, #809059
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.36.1-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.36.1-r2.ebuild b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
index bb489250a05..556ee972562 100644
--- a/sys-devel/binutils/binutils-2.36.1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86"
+ KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ~ppc64 ~riscv ~s390 ~sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-08-19 13:27 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2021-08-19 13:27 UTC (permalink / raw
To: gentoo-commits
commit: e420bedab13e3ace297b8e0b96d70f0c7b108712
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 19 13:27:19 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Aug 19 13:27:19 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e420beda
sys-devel/binutils: Stabilize 2.36.1-r2 arm64, #809059
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.36.1-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.36.1-r2.ebuild b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
index 987dafcf979..bb489250a05 100644
--- a/sys-devel/binutils/binutils-2.36.1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86"
+ KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-08-19 13:27 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2021-08-19 13:27 UTC (permalink / raw
To: gentoo-commits
commit: ea80909d147d44e953dc53948bb6a552f76bfd7b
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 19 13:27:29 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Aug 19 13:27:29 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ea80909d
sys-devel/binutils: Stabilize 2.36.1-r2 ppc64, #809059
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.36.1-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.36.1-r2.ebuild b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
index 556ee972562..a9c6e627c19 100644
--- a/sys-devel/binutils/binutils-2.36.1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~m68k ~mips ppc ~ppc64 ~riscv ~s390 ~sparc x86"
+ KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-08-19 13:40 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2021-08-19 13:40 UTC (permalink / raw
To: gentoo-commits
commit: e32054ab254df1cbf648e7bce48e937768b09bc1
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 19 13:39:50 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Aug 19 13:39:50 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e32054ab
sys-devel/binutils: Stabilize 2.36.1-r2 arm, #809059
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.36.1-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.36.1-r2.ebuild b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
index e8f68880aed..3e9086ca0fa 100644
--- a/sys-devel/binutils/binutils-2.36.1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-08-19 13:40 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2021-08-19 13:40 UTC (permalink / raw
To: gentoo-commits
commit: 82a7c401a83879849dc003615c983fee83a31a24
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 19 13:39:44 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Aug 19 13:39:44 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=82a7c401
sys-devel/binutils: Stabilize 2.36.1-r2 sparc, #809059
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.36.1-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.36.1-r2.ebuild b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
index a9c6e627c19..e8f68880aed 100644
--- a/sys-devel/binutils/binutils-2.36.1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
+ KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-08-20 15:02 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2021-08-20 15:02 UTC (permalink / raw
To: gentoo-commits
commit: 87d0a8e2afc0cb55b8e40b10fa99eef03d7dd52a
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 20 14:58:48 2021 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Aug 20 14:58:48 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=87d0a8e2
sys-devel/binutils: Re-add keywords to 2.37_p1
Package-Manager: Portage-3.0.20, Repoman-3.0.2
Signed-off-by: Andreas K. Huettel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.37_p1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.37_p1.ebuild b/sys-devel/binutils/binutils-2.37_p1.ebuild
index f25257cb214..5d38540bceb 100644
--- a/sys-devel/binutils/binutils-2.37_p1.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1.ebuild
@@ -33,7 +33,7 @@ else
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
SLOT=$(ver_cut 1-2)
# live ebuild
- #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-08-20 15:02 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2021-08-20 15:02 UTC (permalink / raw
To: gentoo-commits
commit: fa41ef13f2ed4703485a78af28da5a6753cdc713
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 20 14:57:54 2021 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Aug 20 14:57:54 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fa41ef13
sys-devel/binutils: Remove old
Package-Manager: Portage-3.0.20, Repoman-3.0.2
Signed-off-by: Andreas K. Huettel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 -
sys-devel/binutils/binutils-2.37.ebuild | 449 --------------------------------
2 files changed, 451 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index d74768cfe3c..af733e6a045 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -8,7 +8,5 @@ DIST binutils-2.35.2-patches-1.tar.xz 11836 BLAKE2B 0141349c9618992d1ab1e0309f7e
DIST binutils-2.35.2.tar.xz 22056908 BLAKE2B 9c392e0db2b482442f9476f30bd80cf2796321cbf7be79cf21af7bef167b6074c4ae009dcf9b438d2f2f4a23381c935176b2cfa85de1a526ab46e0fd844a7ca5 SHA512 9974ede5978d32e0d68fef23da48fa00bd06b0bff7ec45b00ca075c126d6bbe0cf2defc03ecc3f17bc6cc85b64271a13009c4049d7ba17de26e84e3a6e2c0348
DIST binutils-2.36.1-patches-5.tar.xz 44388 BLAKE2B 1dadb012fe35ec5fb0c5a15d348ab535bc5e3765375c97a3768c6b9f7126e0fda15d35163c9f9c33a4be98662dd120d7c1b21930a20c18dbb5345f56ecd9ecc1 SHA512 a2ce3388f1f1a77ff865481ff4b625121fd55f5234fed0a885312744f2f9c504717de1499b68252c6de64fa45866db7692df91c5838b43fbeb178938811cbe84
DIST binutils-2.36.1.tar.xz 22772248 BLAKE2B 03fbfbedd6dba2beaa836b1ed254eddd7a54a163d3061fd93edd2b9591cae24ba049b26658c524b5ccecc2f22d431dfa168218d2531aa356945c994fbbe896fa SHA512 cc24590bcead10b90763386b6f96bb027d7594c659c2d95174a6352e8b98465a50ec3e4088d0da038428abe059bbc4ae5f37b269f31a40fc048072c8a234f4e9
-DIST binutils-2.37-patches-2.tar.xz 79304 BLAKE2B bdcbe29efba3582f2d1be9057a39aedb655cbc225abe8ea656c1bcf090a53930c74197505c8de2dcfd9a105f1b1cc8fa84a0d532547221d2df34a77b06e7fa15 SHA512 5cea876cfbdcd1409f5ef8ee138a8c29ad5b3d38b5d72ce312f2eb94fb8b2165e9a10018c46bdc36bc59ade2e2764e5da4ac653d15690bfc0bc9784202cc0164
-DIST binutils-2.37.tar.xz 22916924 BLAKE2B f5a374fdf0300f7734d1e462333296b16c9d5ed6eba167e1742a4da7082f4388c929e286bf76c3933b3e434937380340732a31790723654b491ea0c8ab5b9ba5 SHA512 5c11aeef6935860a6819ed3a3c93371f052e52b4bdc5033da36037c1544d013b7f12cb8d561ec954fe7469a68f1b66f1a3cd53d5a3af7293635a90d69edd15e7
DIST binutils-2.37_p1-patches-0.tar.xz 1392 BLAKE2B 128930a381022fea5d1fcb0695953e8dada2513b088b8540fe08d4e0da93ec18b6bf9c78acad6ec5a8982ae2c115d143462ef0bb7bfd63cfeb06c10ad472c2f8 SHA512 44666821f96349e96685ffcfd53a80a94659e38fc63eeeb980d0eed13aab03ae3e2d5059b4932cd9018f2f7698cdb5e15b443d60c01b2bd1385eeb0c698e0e24
DIST binutils-2.37_p1.tar.xz 22992196 BLAKE2B a8aa0f386d03a5b1466166ac7c40989c228351ccf0949a9b462b4d4615d70ab7e1a45351299140a42baf39c317b8007733c253eb547ee1dfadb612addde11621 SHA512 46c297ec2a7a5b81d1c6e3f16486a6dc2860a07520fe2dd8871d1eb5160065bbe2cc6b0415d5352bf12284133e5817a4e429e6077182d615e969bd1a8f52ed28
diff --git a/sys-devel/binutils/binutils-2.37.ebuild b/sys-devel/binutils/binutils-2.37.ebuild
deleted file mode 100644
index f068b12240f..00000000000
--- a/sys-devel/binutils/binutils-2.37.ebuild
+++ /dev/null
@@ -1,449 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
-
-DESCRIPTION="Tools necessary to build programs"
-HOMEPAGE="https://sourceware.org/binutils/"
-LICENSE="GPL-3+"
-IUSE="cet default-gold doc +gold multitarget +nls +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=2
-PATCH_DEV=dilfridge
-
-if [[ ${PV} == 9999* ]]; then
- inherit git-r3
- SLOT=${PV}
-else
- PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
- PATCH_DEV=${PATCH_DEV:-slyfox}
- SRC_URI="mirror://gnu/binutils/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)
- # live ebuild
- #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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}.tar.xz
-
- cd "${WORKDIR}" || die
- unpack binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz
- 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 [[ ! -z ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
- if ! use vanilla; then
- einfo "Applying binutils patchset ${patchsetname}"
- eapply "${WORKDIR}/patch"
- einfo "Done."
- fi
- fi
-
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
- # Make sure our explicit libdir paths don't get clobbered. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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() {
- # 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 #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}"
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- # Available from 2.35 on
- --enable-textrel-check=warning
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #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. #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)
- )
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
-
- # bug 637066
- filter-flags -Wall -Wreturn-type
-
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- # see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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}/
- 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}"
- 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-09-16 1:45 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2021-09-16 1:45 UTC (permalink / raw
To: gentoo-commits
commit: 78f470be1ec0d6908f205e3e859f80c15ad157b2
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Sep 16 01:43:36 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Sep 16 01:43:36 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=78f470be
sys-devel/binutils: sync template with -hppa64
See: e2d2448a60d4872646acbe9f1dd389e1f1950231
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.37_p1.ebuild | 7 +++++--
sys-devel/binutils/binutils-9999.ebuild | 9 ++++++---
2 files changed, 11 insertions(+), 5 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.37_p1.ebuild b/sys-devel/binutils/binutils-2.37_p1.ebuild
index 5d38540bceb..5ee7334398a 100644
--- a/sys-devel/binutils/binutils-2.37_p1.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1.ebuild
@@ -82,13 +82,16 @@ src_unpack() {
EGIT_CHECKOUT_DIR=${S}
git-r3_src_unpack
else
- unpack ${P}.tar.xz
+ 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 ...
- S=${WORKDIR}/${P%_p?}
+ local dir=${P%_p?}
+ dir=${dir/-hppa64/}
+
+ S=${WORKDIR}/${dir}
fi
cd "${WORKDIR}" || die
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 37d8a9fa13f..8394f7f945e 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -19,7 +19,7 @@ REQUIRED_USE="default-gold? ( gold )"
# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
# for the patchsets
-PATCH_VER=1
+PATCH_VER=0
PATCH_DEV=dilfridge
if [[ ${PV} == 9999* ]]; then
@@ -82,13 +82,16 @@ src_unpack() {
EGIT_CHECKOUT_DIR=${S}
git-r3_src_unpack
else
- unpack ${P}.tar.xz
+ 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 ...
- S=${WORKDIR}/${P%_p?}
+ local dir=${P%_p?}
+ dir=${dir/-hppa64/}
+
+ S=${WORKDIR}/${dir}
fi
cd "${WORKDIR}" || die
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-09-21 6:35 Agostino Sarubbo
0 siblings, 0 replies; 477+ messages in thread
From: Agostino Sarubbo @ 2021-09-21 6:35 UTC (permalink / raw
To: gentoo-commits
commit: c33c9c481a7b9fc48fd40fc4e0ada8afda6e94ff
Author: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
AuthorDate: Tue Sep 21 06:34:37 2021 +0000
Commit: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
CommitDate: Tue Sep 21 06:35:35 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c33c9c48
sys-devel/binutils: amd64 stable wrt bug #813762
Package-Manager: Portage-3.0.20, Repoman-3.0.3
RepoMan-Options: --include-arches="amd64"
Signed-off-by: Agostino Sarubbo <ago <AT> gentoo.org>
sys-devel/binutils/binutils-2.37_p1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.37_p1.ebuild b/sys-devel/binutils/binutils-2.37_p1.ebuild
index 5ee7334398a..4507be25a2b 100644
--- a/sys-devel/binutils/binutils-2.37_p1.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1.ebuild
@@ -33,7 +33,7 @@ else
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
SLOT=$(ver_cut 1-2)
# live ebuild
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-09-21 17:44 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2021-09-21 17:44 UTC (permalink / raw
To: gentoo-commits
commit: 16d144bf1b0a7f129863e0bf259508c5c3ad95c6
Author: Rolf Eike Beer <eike <AT> sf-mail <DOT> de>
AuthorDate: Tue Sep 21 17:39:23 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Sep 21 17:44:22 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=16d144bf
sys-devel/binutils: stable 2.37_p1 for hppa, bug #813762
Package-Manager: Portage-3.0.20, Repoman-3.0.3
RepoMan-Options: --include-arches="hppa"
Signed-off-by: Rolf Eike Beer <eike <AT> sf-mail.de>
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.37_p1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.37_p1.ebuild b/sys-devel/binutils/binutils-2.37_p1.ebuild
index 4507be25a2b..4e4c5550132 100644
--- a/sys-devel/binutils/binutils-2.37_p1.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1.ebuild
@@ -33,7 +33,7 @@ else
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
SLOT=$(ver_cut 1-2)
# live ebuild
- KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-09-23 22:12 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2021-09-23 22:12 UTC (permalink / raw
To: gentoo-commits
commit: 01c348c58e062cb89d455a97b519767fc779ef02
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Sep 23 22:11:52 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Sep 23 22:11:52 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=01c348c5
sys-devel/binutils: Stabilize 2.37_p1 arm, #813762
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.37_p1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.37_p1.ebuild b/sys-devel/binutils/binutils-2.37_p1.ebuild
index 4e4c5550132..cf65e20b85b 100644
--- a/sys-devel/binutils/binutils-2.37_p1.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1.ebuild
@@ -33,7 +33,7 @@ else
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
SLOT=$(ver_cut 1-2)
# live ebuild
- KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha amd64 arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-09-24 16:14 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2021-09-24 16:14 UTC (permalink / raw
To: gentoo-commits
commit: cba5203ef64248292141c2d0035b6bba13643a57
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 24 16:13:52 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Sep 24 16:14:31 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cba5203e
sys-devel/binutils: Stabilize 2.37_p1 arm64, #813762
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.37_p1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.37_p1.ebuild b/sys-devel/binutils/binutils-2.37_p1.ebuild
index cf65e20b85b..e5e61cf28ee 100644
--- a/sys-devel/binutils/binutils-2.37_p1.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1.ebuild
@@ -33,7 +33,7 @@ else
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
SLOT=$(ver_cut 1-2)
# live ebuild
- KEYWORDS="~alpha amd64 arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-10-03 0:35 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2021-10-03 0:35 UTC (permalink / raw
To: gentoo-commits
commit: b181abd8f6dc2fea5fcaf8d05311e726e401bbda
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Oct 3 00:35:09 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Oct 3 00:35:09 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b181abd8
sys-devel/binutils: Stabilize 2.37_p1 ppc, #813762
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.37_p1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.37_p1.ebuild b/sys-devel/binutils/binutils-2.37_p1.ebuild
index e5e61cf28ee..abf9b064cf4 100644
--- a/sys-devel/binutils/binutils-2.37_p1.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1.ebuild
@@ -33,7 +33,7 @@ else
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
SLOT=$(ver_cut 1-2)
# live ebuild
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-10-04 1:32 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2021-10-04 1:32 UTC (permalink / raw
To: gentoo-commits
commit: 189a4adcac26b421e96f8e90dd52777efd3f33d6
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Oct 4 01:32:15 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Oct 4 01:32:15 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=189a4adc
sys-devel/binutils: Stabilize 2.37_p1 ppc64, #813762
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.37_p1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.37_p1.ebuild b/sys-devel/binutils/binutils-2.37_p1.ebuild
index abf9b064cf4..8d080e23fa0 100644
--- a/sys-devel/binutils/binutils-2.37_p1.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1.ebuild
@@ -33,7 +33,7 @@ else
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
SLOT=$(ver_cut 1-2)
# live ebuild
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-10-05 23:19 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2021-10-05 23:19 UTC (permalink / raw
To: gentoo-commits
commit: 97945a6b19ffa229706b4f5776e7c3d809beb251
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 5 23:18:41 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Oct 5 23:18:41 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=97945a6b
sys-devel/binutils: Stabilize 2.37_p1 sparc, #813762
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.37_p1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.37_p1.ebuild b/sys-devel/binutils/binutils-2.37_p1.ebuild
index 8d080e23fa0..720cc7019c1 100644
--- a/sys-devel/binutils/binutils-2.37_p1.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1.ebuild
@@ -33,7 +33,7 @@ else
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
SLOT=$(ver_cut 1-2)
# live ebuild
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-10-05 23:19 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2021-10-05 23:19 UTC (permalink / raw
To: gentoo-commits
commit: 30c0a3606e9616babcb2f30d0e27e05f4517dae5
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 5 23:18:46 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Oct 5 23:18:46 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=30c0a360
sys-devel/binutils: Stabilize 2.37_p1 x86, #813762
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.37_p1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.37_p1.ebuild b/sys-devel/binutils/binutils-2.37_p1.ebuild
index 720cc7019c1..9820dcad262 100644
--- a/sys-devel/binutils/binutils-2.37_p1.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1.ebuild
@@ -33,7 +33,7 @@ else
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
SLOT=$(ver_cut 1-2)
# live ebuild
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc ~x86"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-10-29 18:33 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2021-10-29 18:33 UTC (permalink / raw
To: gentoo-commits
commit: 90c8ce89b326ff688cbd0f05eef458c530e4e7e8
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Oct 29 18:33:12 2021 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Oct 29 18:33:27 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=90c8ce89
sys-devel/binutils: Patchset / revbump, unkeyworded
ld fails 4 tests:
FAIL: Link with zlib compressed debug output 1
FAIL: Link with zlib compressed debug output 2
FAIL: Link with zlib-gnu compressed debug output 1
FAIL: Link with zlib-gabi compressed debug output 1
Package-Manager: Portage-3.0.28, Repoman-3.0.3
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.37_p1-r1.ebuild | 456 ++++++++++++++++++++++++++
2 files changed, 457 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index af733e6a045..f257b112d8d 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -9,4 +9,5 @@ DIST binutils-2.35.2.tar.xz 22056908 BLAKE2B 9c392e0db2b482442f9476f30bd80cf2796
DIST binutils-2.36.1-patches-5.tar.xz 44388 BLAKE2B 1dadb012fe35ec5fb0c5a15d348ab535bc5e3765375c97a3768c6b9f7126e0fda15d35163c9f9c33a4be98662dd120d7c1b21930a20c18dbb5345f56ecd9ecc1 SHA512 a2ce3388f1f1a77ff865481ff4b625121fd55f5234fed0a885312744f2f9c504717de1499b68252c6de64fa45866db7692df91c5838b43fbeb178938811cbe84
DIST binutils-2.36.1.tar.xz 22772248 BLAKE2B 03fbfbedd6dba2beaa836b1ed254eddd7a54a163d3061fd93edd2b9591cae24ba049b26658c524b5ccecc2f22d431dfa168218d2531aa356945c994fbbe896fa SHA512 cc24590bcead10b90763386b6f96bb027d7594c659c2d95174a6352e8b98465a50ec3e4088d0da038428abe059bbc4ae5f37b269f31a40fc048072c8a234f4e9
DIST binutils-2.37_p1-patches-0.tar.xz 1392 BLAKE2B 128930a381022fea5d1fcb0695953e8dada2513b088b8540fe08d4e0da93ec18b6bf9c78acad6ec5a8982ae2c115d143462ef0bb7bfd63cfeb06c10ad472c2f8 SHA512 44666821f96349e96685ffcfd53a80a94659e38fc63eeeb980d0eed13aab03ae3e2d5059b4932cd9018f2f7698cdb5e15b443d60c01b2bd1385eeb0c698e0e24
+DIST binutils-2.37_p1-patches-1.tar.xz 28956 BLAKE2B 3bc14fcc52a6d11992ad9ed88fa3347ca3d5facd59de094a178a5f720d0eed6297dadf9a8fea7189076eb81274612c0b71c01f15a8f58deeaed8c8f6135ef50d SHA512 f6b2a09bfc692cf90f6cd56be81f424a68831db48054dc150eb6ec28bfa18d35933203c2d3b502f0c80e38771353c373446aec2488469fe2df20d8066033f59e
DIST binutils-2.37_p1.tar.xz 22992196 BLAKE2B a8aa0f386d03a5b1466166ac7c40989c228351ccf0949a9b462b4d4615d70ab7e1a45351299140a42baf39c317b8007733c253eb547ee1dfadb612addde11621 SHA512 46c297ec2a7a5b81d1c6e3f16486a6dc2860a07520fe2dd8871d1eb5160065bbe2cc6b0415d5352bf12284133e5817a4e429e6077182d615e969bd1a8f52ed28
diff --git a/sys-devel/binutils/binutils-2.37_p1-r1.ebuild b/sys-devel/binutils/binutils-2.37_p1-r1.ebuild
new file mode 100644
index 00000000000..4cffaa6516a
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.37_p1-r1.ebuild
@@ -0,0 +1,456 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
+
+DESCRIPTION="Tools necessary to build programs"
+HOMEPAGE="https://sourceware.org/binutils/"
+LICENSE="GPL-3+"
+IUSE="cet default-gold doc +gold multitarget +nls +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=1
+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 ~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 [[ ! -z ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
+ if ! use vanilla; then
+ einfo "Applying binutils patchset ${patchsetname}"
+ eapply "${WORKDIR}/patch"
+ einfo "Done."
+ fi
+ fi
+
+ # This check should probably go somewhere else, like pkg_pretend.
+ if [[ ${CTARGET} == *-uclibc* ]] ; then
+ if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
+ die "sorry, but this binutils doesn't yet support uClibc :("
+ fi
+ fi
+
+ # Make sure our explicit libdir paths don't get clobbered. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ 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() {
+ # 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 #42033
+ strip-linguas -u */po
+
+ # Keep things sane
+ strip-flags
+
+ local x
+ echo
+ for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
+ einfo "$(printf '%10s' ${x}:) ${!x}"
+ done
+ echo
+
+ cd "${MY_BUILDDIR}"
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && 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. #497268
+ --enable-install-libiberty
+ # Available from 2.35 on
+ --enable-textrel-check=warning
+ # Works better than vapier's patch... #808787
+ --enable-new-dtags
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #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. #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)
+ )
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${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}"
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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}"
+
+ # bug 637066
+ filter-flags -Wall -Wreturn-type
+
+ emake -k check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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}/
+ 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}"
+ 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-11-14 22:20 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2021-11-14 22:20 UTC (permalink / raw
To: gentoo-commits
commit: e3eb8fb3cad09aeb574ca35c322f4475eded363d
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 14 22:18:08 2021 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Nov 14 22:20:41 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e3eb8fb3
sys-devel/binutils: re-keyword 2.37_p1-r1
Package-Manager: Portage-3.0.28, Repoman-3.0.3
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.37_p1-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.37_p1-r1.ebuild b/sys-devel/binutils/binutils-2.37_p1-r1.ebuild
index 4cffaa6516a1..dd449cff9164 100644
--- a/sys-devel/binutils/binutils-2.37_p1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1-r1.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2021-12-06 22:43 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2021-12-06 22:43 UTC (permalink / raw
To: gentoo-commits
commit: a43643b92f154070540d0f7b84ca6e5a84ea84b3
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Dec 6 22:42:32 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Dec 6 22:43:13 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a43643b9
sys-devel/binutils: grow stack size for musl
Needed to avoid linker from dying on musl
on larger builds.
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.37_p1-r1.ebuild | 2 ++
sys-devel/binutils/binutils-9999.ebuild | 2 ++
2 files changed, 4 insertions(+)
diff --git a/sys-devel/binutils/binutils-2.37_p1-r1.ebuild b/sys-devel/binutils/binutils-2.37_p1-r1.ebuild
index dd449cff9164..b1c9f93dd000 100644
--- a/sys-devel/binutils/binutils-2.37_p1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1-r1.ebuild
@@ -177,6 +177,8 @@ src_configure() {
# 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
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 8394f7f945ea..530596b9a949 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -178,6 +178,8 @@ src_configure() {
# 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
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-01-01 18:31 David Seifert
0 siblings, 0 replies; 477+ messages in thread
From: David Seifert @ 2022-01-01 18:31 UTC (permalink / raw
To: gentoo-commits
commit: ca07438f881ae6c60c1a3c2d4a6f6edd17255f4e
Author: David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 1 18:31:22 2022 +0000
Commit: David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Sat Jan 1 18:31:22 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ca07438f
sys-devel/binutils: [QA] fix IndirectInherits/UnusedInherits
Signed-off-by: David Seifert <soap <AT> gentoo.org>
sys-devel/binutils/binutils-2.32-r2.ebuild | 4 ++--
sys-devel/binutils/binutils-2.33.1-r1.ebuild | 4 ++--
sys-devel/binutils/binutils-2.34-r2.ebuild | 4 ++--
sys-devel/binutils/binutils-2.35.2.ebuild | 4 ++--
sys-devel/binutils/binutils-2.36.1-r2.ebuild | 4 ++--
sys-devel/binutils/binutils-2.37_p1-r1.ebuild | 4 ++--
sys-devel/binutils/binutils-2.37_p1.ebuild | 4 ++--
sys-devel/binutils/binutils-9999.ebuild | 4 ++--
8 files changed, 16 insertions(+), 16 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.32-r2.ebuild b/sys-devel/binutils/binutils-2.32-r2.ebuild
index d4de5f2ce4b3..e07b7ab6e0d4 100644
--- a/sys-devel/binutils/binutils-2.32-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r2.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
+inherit libtool flag-o-matic gnuconfig strip-linguas toolchain-funcs
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
diff --git a/sys-devel/binutils/binutils-2.33.1-r1.ebuild b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
index 50ec9616243c..490cd9863cb0 100644
--- a/sys-devel/binutils/binutils-2.33.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
+inherit libtool flag-o-matic gnuconfig strip-linguas toolchain-funcs
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
diff --git a/sys-devel/binutils/binutils-2.34-r2.ebuild b/sys-devel/binutils/binutils-2.34-r2.ebuild
index d9683b91ae79..a4ed8238bc47 100644
--- a/sys-devel/binutils/binutils-2.34-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.34-r2.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
+inherit libtool flag-o-matic gnuconfig strip-linguas toolchain-funcs
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
diff --git a/sys-devel/binutils/binutils-2.35.2.ebuild b/sys-devel/binutils/binutils-2.35.2.ebuild
index cf54ddd02346..44fb3dce67fa 100644
--- a/sys-devel/binutils/binutils-2.35.2.ebuild
+++ b/sys-devel/binutils/binutils-2.35.2.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
+inherit libtool flag-o-matic gnuconfig strip-linguas toolchain-funcs
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
diff --git a/sys-devel/binutils/binutils-2.36.1-r2.ebuild b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
index 3e9086ca0fa2..5084a58d52df 100644
--- a/sys-devel/binutils/binutils-2.36.1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
+inherit libtool flag-o-matic gnuconfig strip-linguas toolchain-funcs
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
diff --git a/sys-devel/binutils/binutils-2.37_p1-r1.ebuild b/sys-devel/binutils/binutils-2.37_p1-r1.ebuild
index b1c9f93dd000..a73f8e2b6de9 100644
--- a/sys-devel/binutils/binutils-2.37_p1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1-r1.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
+inherit libtool flag-o-matic gnuconfig strip-linguas toolchain-funcs
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
diff --git a/sys-devel/binutils/binutils-2.37_p1.ebuild b/sys-devel/binutils/binutils-2.37_p1.ebuild
index 9820dcad2625..d4ab3364143f 100644
--- a/sys-devel/binutils/binutils-2.37_p1.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
+inherit libtool flag-o-matic gnuconfig strip-linguas toolchain-funcs
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 530596b9a949..86b18dab9536 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit eutils libtool flag-o-matic gnuconfig multilib toolchain-funcs
+inherit libtool flag-o-matic gnuconfig strip-linguas toolchain-funcs
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-01-01 20:08 David Seifert
0 siblings, 0 replies; 477+ messages in thread
From: David Seifert @ 2022-01-01 20:08 UTC (permalink / raw
To: gentoo-commits
commit: d91ac136b6f63f2fa5a0e4c66508f645a4ba246c
Author: David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 1 20:07:25 2022 +0000
Commit: David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Sat Jan 1 20:07:25 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d91ac136
sys-devel/binutils: remove uclibc
Signed-off-by: David Seifert <soap <AT> gentoo.org>
sys-devel/binutils/binutils-2.32-r2.ebuild | 7 -------
sys-devel/binutils/binutils-2.33.1-r1.ebuild | 7 -------
sys-devel/binutils/binutils-2.34-r2.ebuild | 7 -------
sys-devel/binutils/binutils-2.35.2.ebuild | 7 -------
sys-devel/binutils/binutils-2.36.1-r2.ebuild | 7 -------
sys-devel/binutils/binutils-2.37_p1-r1.ebuild | 7 -------
sys-devel/binutils/binutils-2.37_p1.ebuild | 7 -------
sys-devel/binutils/binutils-9999.ebuild | 7 -------
8 files changed, 56 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.32-r2.ebuild b/sys-devel/binutils/binutils-2.32-r2.ebuild
index e07b7ab6e0d4..0af482adee3a 100644
--- a/sys-devel/binutils/binutils-2.32-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r2.ebuild
@@ -105,13 +105,6 @@ src_prepare() {
eapply "${WORKDIR}/patch"/*.patch
fi
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
# Make sure our explicit libdir paths don't get clobbered. #562460
sed -i \
-e 's:@bfdlibdir@:@libdir@:g' \
diff --git a/sys-devel/binutils/binutils-2.33.1-r1.ebuild b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
index 490cd9863cb0..65720a202f5d 100644
--- a/sys-devel/binutils/binutils-2.33.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
@@ -98,13 +98,6 @@ src_prepare() {
eapply "${WORKDIR}/patch"/*.patch
fi
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
# Make sure our explicit libdir paths don't get clobbered. #562460
sed -i \
-e 's:@bfdlibdir@:@libdir@:g' \
diff --git a/sys-devel/binutils/binutils-2.34-r2.ebuild b/sys-devel/binutils/binutils-2.34-r2.ebuild
index a4ed8238bc47..e6087c134ba8 100644
--- a/sys-devel/binutils/binutils-2.34-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.34-r2.ebuild
@@ -95,13 +95,6 @@ src_prepare() {
eapply "${WORKDIR}/patch"/*.patch
fi
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
# Make sure our explicit libdir paths don't get clobbered. #562460
sed -i \
-e 's:@bfdlibdir@:@libdir@:g' \
diff --git a/sys-devel/binutils/binutils-2.35.2.ebuild b/sys-devel/binutils/binutils-2.35.2.ebuild
index 44fb3dce67fa..f894e07dec7f 100644
--- a/sys-devel/binutils/binutils-2.35.2.ebuild
+++ b/sys-devel/binutils/binutils-2.35.2.ebuild
@@ -112,13 +112,6 @@ src_prepare() {
fi
fi
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
# Make sure our explicit libdir paths don't get clobbered. #562460
sed -i \
-e 's:@bfdlibdir@:@libdir@:g' \
diff --git a/sys-devel/binutils/binutils-2.36.1-r2.ebuild b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
index 5084a58d52df..c1e7c2faf584 100644
--- a/sys-devel/binutils/binutils-2.36.1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
@@ -107,13 +107,6 @@ src_prepare() {
fi
fi
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
# Make sure our explicit libdir paths don't get clobbered. #562460
sed -i \
-e 's:@bfdlibdir@:@libdir@:g' \
diff --git a/sys-devel/binutils/binutils-2.37_p1-r1.ebuild b/sys-devel/binutils/binutils-2.37_p1-r1.ebuild
index a73f8e2b6de9..93c7ccdee616 100644
--- a/sys-devel/binutils/binutils-2.37_p1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1-r1.ebuild
@@ -113,13 +113,6 @@ src_prepare() {
fi
fi
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
# Make sure our explicit libdir paths don't get clobbered. #562460
sed -i \
-e 's:@bfdlibdir@:@libdir@:g' \
diff --git a/sys-devel/binutils/binutils-2.37_p1.ebuild b/sys-devel/binutils/binutils-2.37_p1.ebuild
index d4ab3364143f..d9eb8d68712e 100644
--- a/sys-devel/binutils/binutils-2.37_p1.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1.ebuild
@@ -114,13 +114,6 @@ src_prepare() {
fi
fi
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
# Make sure our explicit libdir paths don't get clobbered. #562460
sed -i \
-e 's:@bfdlibdir@:@libdir@:g' \
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 86b18dab9536..d3789f18d809 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -114,13 +114,6 @@ src_prepare() {
fi
fi
- # This check should probably go somewhere else, like pkg_pretend.
- if [[ ${CTARGET} == *-uclibc* ]] ; then
- if grep -qs 'linux-gnu' "${S}"/ltconfig ; then
- die "sorry, but this binutils doesn't yet support uClibc :("
- fi
- fi
-
# Make sure our explicit libdir paths don't get clobbered. #562460
sed -i \
-e 's:@bfdlibdir@:@libdir@:g' \
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-01-06 19:22 Mike Frysinger
0 siblings, 0 replies; 477+ messages in thread
From: Mike Frysinger @ 2022-01-06 19:22 UTC (permalink / raw
To: gentoo-commits
commit: 7d7571d5d819862e37b48a88bca847a757399398
Author: Mike Frysinger <vapier <AT> chromium <DOT> org>
AuthorDate: Thu Jan 6 19:13:13 2022 +0000
Commit: Mike Frysinger <vapier <AT> gentoo <DOT> org>
CommitDate: Thu Jan 6 19:21:41 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7d7571d5
sys-devel/binutils: use simpler shell test
Signed-off-by: Mike Frysinger <vapier <AT> gentoo.org>
sys-devel/binutils/binutils-2.32-r2.ebuild | 2 +-
sys-devel/binutils/binutils-2.33.1-r1.ebuild | 2 +-
sys-devel/binutils/binutils-2.34-r2.ebuild | 2 +-
sys-devel/binutils/binutils-2.35.2.ebuild | 2 +-
sys-devel/binutils/binutils-2.36.1-r2.ebuild | 2 +-
sys-devel/binutils/binutils-2.37_p1-r1.ebuild | 2 +-
sys-devel/binutils/binutils-2.37_p1.ebuild | 2 +-
sys-devel/binutils/binutils-9999.ebuild | 2 +-
8 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.32-r2.ebuild b/sys-devel/binutils/binutils-2.32-r2.ebuild
index 0af482adee3a..40db4705c2a9 100644
--- a/sys-devel/binutils/binutils-2.32-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r2.ebuild
@@ -97,7 +97,7 @@ src_unpack() {
}
src_prepare() {
- if [[ ! -z ${PATCH_VER} ]] ; then
+ if [[ -n ${PATCH_VER} ]] ; then
# Use upstream patch to enable development mode
rm -v "${WORKDIR}/patch"/0000-Gentoo-Git-is-development.patch || die
diff --git a/sys-devel/binutils/binutils-2.33.1-r1.ebuild b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
index 65720a202f5d..785ea17b6542 100644
--- a/sys-devel/binutils/binutils-2.33.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
@@ -93,7 +93,7 @@ src_unpack() {
}
src_prepare() {
- if [[ ! -z ${PATCH_VER} ]] ; then
+ if [[ -n ${PATCH_VER} ]] ; then
einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
eapply "${WORKDIR}/patch"/*.patch
fi
diff --git a/sys-devel/binutils/binutils-2.34-r2.ebuild b/sys-devel/binutils/binutils-2.34-r2.ebuild
index e6087c134ba8..c61503139101 100644
--- a/sys-devel/binutils/binutils-2.34-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.34-r2.ebuild
@@ -90,7 +90,7 @@ src_unpack() {
}
src_prepare() {
- if [[ ! -z ${PATCH_VER} ]] ; then
+ if [[ -n ${PATCH_VER} ]] ; then
einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
eapply "${WORKDIR}/patch"/*.patch
fi
diff --git a/sys-devel/binutils/binutils-2.35.2.ebuild b/sys-devel/binutils/binutils-2.35.2.ebuild
index f894e07dec7f..cdb4d4b87ec3 100644
--- a/sys-devel/binutils/binutils-2.35.2.ebuild
+++ b/sys-devel/binutils/binutils-2.35.2.ebuild
@@ -104,7 +104,7 @@ src_prepare() {
patchsetname="${PATCH_BINUTILS_VER}-${PATCH_VER}"
fi
- if [[ ! -z ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
+ if [[ -n ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
if ! use vanilla; then
einfo "Applying binutils patchset ${patchsetname}"
eapply "${WORKDIR}/patch"
diff --git a/sys-devel/binutils/binutils-2.36.1-r2.ebuild b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
index c1e7c2faf584..faa27e272c6c 100644
--- a/sys-devel/binutils/binutils-2.36.1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
@@ -99,7 +99,7 @@ src_prepare() {
patchsetname="${PATCH_BINUTILS_VER}-${PATCH_VER}"
fi
- if [[ ! -z ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
+ if [[ -n ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
if ! use vanilla; then
einfo "Applying binutils patchset ${patchsetname}"
eapply "${WORKDIR}/patch"
diff --git a/sys-devel/binutils/binutils-2.37_p1-r1.ebuild b/sys-devel/binutils/binutils-2.37_p1-r1.ebuild
index 93c7ccdee616..2333d6b11deb 100644
--- a/sys-devel/binutils/binutils-2.37_p1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1-r1.ebuild
@@ -105,7 +105,7 @@ src_prepare() {
patchsetname="${PATCH_BINUTILS_VER}-${PATCH_VER}"
fi
- if [[ ! -z ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
+ if [[ -n ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
if ! use vanilla; then
einfo "Applying binutils patchset ${patchsetname}"
eapply "${WORKDIR}/patch"
diff --git a/sys-devel/binutils/binutils-2.37_p1.ebuild b/sys-devel/binutils/binutils-2.37_p1.ebuild
index d9eb8d68712e..7bac92e076f5 100644
--- a/sys-devel/binutils/binutils-2.37_p1.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1.ebuild
@@ -106,7 +106,7 @@ src_prepare() {
patchsetname="${PATCH_BINUTILS_VER}-${PATCH_VER}"
fi
- if [[ ! -z ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
+ if [[ -n ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
if ! use vanilla; then
einfo "Applying binutils patchset ${patchsetname}"
eapply "${WORKDIR}/patch"
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index d3789f18d809..2609713b2a04 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -106,7 +106,7 @@ src_prepare() {
patchsetname="${PATCH_BINUTILS_VER}-${PATCH_VER}"
fi
- if [[ ! -z ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
+ if [[ -n ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
if ! use vanilla; then
einfo "Applying binutils patchset ${patchsetname}"
eapply "${WORKDIR}/patch"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-01-15 21:33 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2022-01-15 21:33 UTC (permalink / raw
To: gentoo-commits
commit: a8ca7dce93d983fe846aab9968f780d7ea17f822
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 15 21:33:14 2022 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Jan 15 21:33:35 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a8ca7dce
sys-devel/binutils: 2.37 patchset bump
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.37_p1-r2.ebuild | 451 ++++++++++++++++++++++++++
2 files changed, 452 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index f257b112d8d0..6e23e4923e4e 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -10,4 +10,5 @@ DIST binutils-2.36.1-patches-5.tar.xz 44388 BLAKE2B 1dadb012fe35ec5fb0c5a15d348a
DIST binutils-2.36.1.tar.xz 22772248 BLAKE2B 03fbfbedd6dba2beaa836b1ed254eddd7a54a163d3061fd93edd2b9591cae24ba049b26658c524b5ccecc2f22d431dfa168218d2531aa356945c994fbbe896fa SHA512 cc24590bcead10b90763386b6f96bb027d7594c659c2d95174a6352e8b98465a50ec3e4088d0da038428abe059bbc4ae5f37b269f31a40fc048072c8a234f4e9
DIST binutils-2.37_p1-patches-0.tar.xz 1392 BLAKE2B 128930a381022fea5d1fcb0695953e8dada2513b088b8540fe08d4e0da93ec18b6bf9c78acad6ec5a8982ae2c115d143462ef0bb7bfd63cfeb06c10ad472c2f8 SHA512 44666821f96349e96685ffcfd53a80a94659e38fc63eeeb980d0eed13aab03ae3e2d5059b4932cd9018f2f7698cdb5e15b443d60c01b2bd1385eeb0c698e0e24
DIST binutils-2.37_p1-patches-1.tar.xz 28956 BLAKE2B 3bc14fcc52a6d11992ad9ed88fa3347ca3d5facd59de094a178a5f720d0eed6297dadf9a8fea7189076eb81274612c0b71c01f15a8f58deeaed8c8f6135ef50d SHA512 f6b2a09bfc692cf90f6cd56be81f424a68831db48054dc150eb6ec28bfa18d35933203c2d3b502f0c80e38771353c373446aec2488469fe2df20d8066033f59e
+DIST binutils-2.37_p1-patches-2.tar.xz 31956 BLAKE2B 39c48628d0e2d7f3a8cf11be391b51dc64c7a534a3e64950fd992907c34fa36bebdf95cc5a184dd5b35e134e0c20376b5883abbf96ae57403c55377e615a6790 SHA512 c927aafa8c87e3b68ad28da5a17edf5647591ec26feeb56c743bc6637ffb10832b50ec6fd8442e80e40628b624e31b2f0f0b5f1193e77dc7e5442df0cb8cc8f1
DIST binutils-2.37_p1.tar.xz 22992196 BLAKE2B a8aa0f386d03a5b1466166ac7c40989c228351ccf0949a9b462b4d4615d70ab7e1a45351299140a42baf39c317b8007733c253eb547ee1dfadb612addde11621 SHA512 46c297ec2a7a5b81d1c6e3f16486a6dc2860a07520fe2dd8871d1eb5160065bbe2cc6b0415d5352bf12284133e5817a4e429e6077182d615e969bd1a8f52ed28
diff --git a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
new file mode 100644
index 000000000000..cfdd2538eefe
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
@@ -0,0 +1,451 @@
+# 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 multitarget +nls +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=2
+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 ~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. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ 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() {
+ # 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 #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}"
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && 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. #497268
+ --enable-install-libiberty
+ # Available from 2.35 on
+ --enable-textrel-check=warning
+ # Works better than vapier's patch... #808787
+ --enable-new-dtags
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #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. #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)
+ )
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${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}"
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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}"
+
+ # bug 637066
+ filter-flags -Wall -Wreturn-type
+
+ emake -k check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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}/
+ 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}"
+ 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-01-21 20:29 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2022-01-21 20:29 UTC (permalink / raw
To: gentoo-commits
commit: 4e030d26df9349efddf8eb97d919911e593aaaa9
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 21 20:19:29 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jan 21 20:29:13 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4e030d26
sys-devel/binutils: add USE=pgo for 2.37_p1-r2
Added upstream in 2.37, actually, but we'd missed it! Realised after seeing
the sync commit for GCC.
Sets --enable-pgo-build=lto if USE=pgo is set.
Throws in LTO for the PGO build too given it's cleaner than
e.g. having a USE=lto which only works when USE=pgo is also set,
REQUIRED_USE, or other nonsense.
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.37_p1-r2.ebuild | 4 +++-
sys-devel/binutils/binutils-9999.ebuild | 4 +++-
sys-devel/binutils/metadata.xml | 1 +
3 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
index cfdd2538eefe..c7c57aefb044 100644
--- a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
@@ -8,7 +8,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 multitarget +nls +plugins static-libs test vanilla"
+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)
@@ -272,6 +272,8 @@ src_configure() {
# Ideally we would like automagic-or-disabled here.
# But the check does not quite work on i686: bug #760926.
$(use_enable cet)
+
+ $(use_enable pgo pgo-build lto)
)
echo ./configure "${myconf[@]}"
"${S}"/configure "${myconf[@]}" || die
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 2609713b2a04..d53c8d446235 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -8,7 +8,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 multitarget +nls +plugins static-libs test vanilla"
+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)
@@ -273,6 +273,8 @@ src_configure() {
# Ideally we would like automagic-or-disabled here.
# But the check does not quite work on i686: bug #760926.
$(use_enable cet)
+
+ $(use_enable pgo pgo-build lto)
)
echo ./configure "${myconf[@]}"
"${S}"/configure "${myconf[@]}" || die
diff --git a/sys-devel/binutils/metadata.xml b/sys-devel/binutils/metadata.xml
index 4f6990c6d6f9..e05bf0bdd552 100644
--- a/sys-devel/binutils/metadata.xml
+++ b/sys-devel/binutils/metadata.xml
@@ -9,6 +9,7 @@
<flag name="cet">Enable Intel Control-flow Enforcement Technology.</flag>
<flag name="default-gold">Set ld to point to ld.gold instead of ld.bfd</flag>
<flag name="gold">Build ld.gold linker</flag>
+ <flag name="pgo">Build binutils with Profile Guided Optimization (PGO) and LTO</flag>
<flag name="plugins">Enable plugin support in tools</flag>
<flag name="multitarget">Adds support to binutils for cross compiling (does not work with gas)</flag>
</use>
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-01-21 23:43 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2022-01-21 23:43 UTC (permalink / raw
To: gentoo-commits
commit: 5bad5a170adc6e83b7943d7469b69535a6aee886
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 21 23:24:31 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jan 21 23:42:59 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5bad5a17
sys-devel/binutils: respect CFLAGS for PGO
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.37_p1-r2.ebuild | 5 +++++
sys-devel/binutils/binutils-9999.ebuild | 5 +++++
2 files changed, 10 insertions(+)
diff --git a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
index c7c57aefb044..bbcd261cef45 100644
--- a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
@@ -275,6 +275,11 @@ src_configure() {
$(use_enable pgo pgo-build lto)
)
+
+ if use pgo ; then
+ export BUILD_CFLAGS="${CFLAGS}"
+ fi
+
echo ./configure "${myconf[@]}"
"${S}"/configure "${myconf[@]}" || die
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index d53c8d446235..d79e91c3cff1 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -276,6 +276,11 @@ src_configure() {
$(use_enable pgo pgo-build lto)
)
+
+ if use pgo ; then
+ export BUILD_CFLAGS="${CFLAGS}"
+ fi
+
echo ./configure "${myconf[@]}"
"${S}"/configure "${myconf[@]}" || die
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-01-25 22:34 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2022-01-25 22:34 UTC (permalink / raw
To: gentoo-commits
commit: 60abbc754743cfd99bee88dd38ffe9ee7ad5ed39
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Tue Jan 25 22:31:41 2022 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Tue Jan 25 22:33:50 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=60abbc75
sys-devel/binutils: Rekeyword 2.37_p1-r2
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.37_p1-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
index bbcd261cef45..5a01301054eb 100644
--- a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-01-27 21:53 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2022-01-27 21:53 UTC (permalink / raw
To: gentoo-commits
commit: 57737c9f2a9ce3e1b2492760e98932b7b9f9eea2
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Jan 27 21:52:34 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Jan 27 21:53:07 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=57737c9f
sys-devel/binutils: disable PGO for cross compiles
It doesn't make sense there as we have to run the tests
(execute cross-compiled binaries).
Closes: https://bugs.gentoo.org/832174
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.37_p1-r2.ebuild | 2 +-
sys-devel/binutils/binutils-9999.ebuild | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
index 5a01301054eb..bea3128e217f 100644
--- a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
@@ -276,7 +276,7 @@ src_configure() {
$(use_enable pgo pgo-build lto)
)
- if use pgo ; then
+ if use pgo && ! is_cross ; then
export BUILD_CFLAGS="${CFLAGS}"
fi
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index d79e91c3cff1..b7af0845fd0a 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -277,7 +277,7 @@ src_configure() {
$(use_enable pgo pgo-build lto)
)
- if use pgo ; then
+ if use pgo && ! is_cross ; then
export BUILD_CFLAGS="${CFLAGS}"
fi
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-01-28 22:10 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2022-01-28 22:10 UTC (permalink / raw
To: gentoo-commits
commit: bc56495544b69df93fd54ea44c5f03841bae027f
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 28 22:07:15 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jan 28 22:07:26 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bc564955
sys-devel/binutils: really fix PGO for cross (disable it)
Closes: https://bugs.gentoo.org/832174
Fixes: 57737c9f2a9ce3e1b2492760e98932b7b9f9eea2
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.37_p1-r2.ebuild | 11 +++++++++--
sys-devel/binutils/binutils-9999.ebuild | 11 +++++++++--
2 files changed, 18 insertions(+), 4 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
index bea3128e217f..5a182867fab3 100644
--- a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
@@ -272,10 +272,17 @@ src_configure() {
# Ideally we would like automagic-or-disabled here.
# But the check does not quite work on i686: bug #760926.
$(use_enable cet)
-
- $(use_enable pgo pgo-build lto)
)
+ if ! is_cross ; then
+ myconf+=( $(use_enable pgo pgo-build lto) )
+
+ if use pgo ; then
+ export BUILD_CFLAGS="${CFLAGS}"
+ fi
+ fi
+
+
if use pgo && ! is_cross ; then
export BUILD_CFLAGS="${CFLAGS}"
fi
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index b7af0845fd0a..3fdfdf479f26 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -273,10 +273,17 @@ src_configure() {
# Ideally we would like automagic-or-disabled here.
# But the check does not quite work on i686: bug #760926.
$(use_enable cet)
-
- $(use_enable pgo pgo-build lto)
)
+ if ! is_cross ; then
+ myconf+=( $(use_enable pgo pgo-build lto) )
+
+ if use pgo ; then
+ export BUILD_CFLAGS="${CFLAGS}"
+ fi
+ fi
+
+
if use pgo && ! is_cross ; then
export BUILD_CFLAGS="${CFLAGS}"
fi
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-01-28 22:13 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2022-01-28 22:13 UTC (permalink / raw
To: gentoo-commits
commit: ee0502af8aa4dc0fd2f9092c17d2393213866c69
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 28 22:13:43 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jan 28 22:13:43 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ee0502af
sys-devel/binutils: fix DoubleEmptyLine
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.37_p1-r2.ebuild | 1 -
sys-devel/binutils/binutils-9999.ebuild | 1 -
2 files changed, 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
index 5a182867fab3..438f371da3b9 100644
--- a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
@@ -282,7 +282,6 @@ src_configure() {
fi
fi
-
if use pgo && ! is_cross ; then
export BUILD_CFLAGS="${CFLAGS}"
fi
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 3fdfdf479f26..9931d3fee518 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -283,7 +283,6 @@ src_configure() {
fi
fi
-
if use pgo && ! is_cross ; then
export BUILD_CFLAGS="${CFLAGS}"
fi
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-02-10 13:11 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2022-02-10 13:11 UTC (permalink / raw
To: gentoo-commits
commit: 8c8a1c88663f1ead8e8210f78dd19034a5d40fbb
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Thu Feb 10 12:19:19 2022 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Thu Feb 10 13:10:45 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8c8a1c88
sys-devel/binutils: Version bump (unkeyworded)
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 +
sys-devel/binutils/binutils-2.38.ebuild | 465 ++++++++++++++++++++++++++++++++
2 files changed, 467 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 6e23e4923e4e..3ec7b3bd145f 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -12,3 +12,5 @@ DIST binutils-2.37_p1-patches-0.tar.xz 1392 BLAKE2B 128930a381022fea5d1fcb069595
DIST binutils-2.37_p1-patches-1.tar.xz 28956 BLAKE2B 3bc14fcc52a6d11992ad9ed88fa3347ca3d5facd59de094a178a5f720d0eed6297dadf9a8fea7189076eb81274612c0b71c01f15a8f58deeaed8c8f6135ef50d SHA512 f6b2a09bfc692cf90f6cd56be81f424a68831db48054dc150eb6ec28bfa18d35933203c2d3b502f0c80e38771353c373446aec2488469fe2df20d8066033f59e
DIST binutils-2.37_p1-patches-2.tar.xz 31956 BLAKE2B 39c48628d0e2d7f3a8cf11be391b51dc64c7a534a3e64950fd992907c34fa36bebdf95cc5a184dd5b35e134e0c20376b5883abbf96ae57403c55377e615a6790 SHA512 c927aafa8c87e3b68ad28da5a17edf5647591ec26feeb56c743bc6637ffb10832b50ec6fd8442e80e40628b624e31b2f0f0b5f1193e77dc7e5442df0cb8cc8f1
DIST binutils-2.37_p1.tar.xz 22992196 BLAKE2B a8aa0f386d03a5b1466166ac7c40989c228351ccf0949a9b462b4d4615d70ab7e1a45351299140a42baf39c317b8007733c253eb547ee1dfadb612addde11621 SHA512 46c297ec2a7a5b81d1c6e3f16486a6dc2860a07520fe2dd8871d1eb5160065bbe2cc6b0415d5352bf12284133e5817a4e429e6077182d615e969bd1a8f52ed28
+DIST binutils-2.38-patches-2.tar.xz 12488 BLAKE2B 971d3893d45a02a0d94d7f905355053e58d1acafc7692e0818af13e897e28977f0e1876a2ce3bab6242ba87ffd42013ad2492022eff8817c9e75687f7da1abfc SHA512 7457ac5004526316ceb034554467f63009f608593eb7eb24907029bb76c2573092b04d438bb886b0781e56af2070883b3c0084e7ded5e7111d53c745ccc7763c
+DIST binutils-2.38.tar.xz 23651408 BLAKE2B 19ede396ec97b88e632aded2f69f4684cc5053109e06c3c4a1934944e3f0ceaa9e4a2604528a440189771f778cb5d75edd510163970eeea31afba87fa256feba SHA512 8bf0b0d193c9c010e0518ee2b2e5a830898af206510992483b427477ed178396cd210235e85fd7bd99a96fc6d5eedbeccbd48317a10f752b7336ada8b2bb826d
diff --git a/sys-devel/binutils/binutils-2.38.ebuild b/sys-devel/binutils/binutils-2.38.ebuild
new file mode 100644
index 000000000000..e77f23929a28
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.38.ebuild
@@ -0,0 +1,465 @@
+# 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 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=2
+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)
+ # live ebuild
+ #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ 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() {
+ # 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 #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}"
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && 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. #497268
+ --enable-install-libiberty
+ # Available from 2.35 on
+ --enable-textrel-check=warning
+ # Works better than vapier's patch... #808787
+ --enable-new-dtags
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #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. #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
+ myconf+=( $(use_enable pgo pgo-build lto) )
+
+ if use pgo ; then
+ export BUILD_CFLAGS="${CFLAGS}"
+ fi
+ fi
+
+ if use pgo && ! is_cross ; then
+ export BUILD_CFLAGS="${CFLAGS}"
+ fi
+
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${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}"
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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}"
+
+ # bug 637066
+ filter-flags -Wall -Wreturn-type
+
+ emake -k check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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}/
+ 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}"
+ 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-02-14 21:32 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2022-02-14 21:32 UTC (permalink / raw
To: gentoo-commits
commit: c7eb64fb96e56d489c7c7f1411b86a4298e0148b
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Feb 14 21:32:32 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Feb 14 21:32:32 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c7eb64fb
sys-devel/binutils: Stabilize 2.37_p1-r2 amd64, #833210
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.37_p1-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
index 438f371da3b9..d30cb2ac1ab2 100644
--- a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-02-14 23:20 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2022-02-14 23:20 UTC (permalink / raw
To: gentoo-commits
commit: dcd4253a7d82574e33f7db98be7a8fe40721c6cd
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Feb 14 23:20:05 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Feb 14 23:20:05 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dcd4253a
sys-devel/binutils: Stabilize 2.37_p1-r2 ppc64, #833210
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.37_p1-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
index e3351429f702..f2975a05e458 100644
--- a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-02-14 23:20 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2022-02-14 23:20 UTC (permalink / raw
To: gentoo-commits
commit: d6fc0a5c1c62d60d919a9d910a490207d957f8d3
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Feb 14 23:19:54 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Feb 14 23:19:54 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d6fc0a5c
sys-devel/binutils: Stabilize 2.37_p1-r2 arm64, #833210
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.37_p1-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
index d30cb2ac1ab2..e3351429f702 100644
--- a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-02-14 23:52 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2022-02-14 23:52 UTC (permalink / raw
To: gentoo-commits
commit: 2c7fa8b549ca7b3998a3d1e758d88f6890413c5c
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Feb 14 23:50:46 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Feb 14 23:50:46 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2c7fa8b5
sys-devel/binutils: Stabilize 2.37_p1-r2 ppc, #833210
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.37_p1-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
index a3818ec2a64e..cdd39a5e97af 100644
--- a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-02-14 23:52 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2022-02-14 23:52 UTC (permalink / raw
To: gentoo-commits
commit: 6d9e9abd90ae917d798f716c1c4f14ec101e3215
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Feb 14 23:43:19 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Feb 14 23:50:39 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6d9e9abd
sys-devel/binutils: simplify PGO logic
Doh.
Reported-by: Arfrever
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.37_p1-r2.ebuild | 4 ----
sys-devel/binutils/binutils-2.38.ebuild | 4 ----
sys-devel/binutils/binutils-9999.ebuild | 4 ----
3 files changed, 12 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
index f2975a05e458..a3818ec2a64e 100644
--- a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
@@ -282,10 +282,6 @@ src_configure() {
fi
fi
- if use pgo && ! is_cross ; then
- export BUILD_CFLAGS="${CFLAGS}"
- fi
-
echo ./configure "${myconf[@]}"
"${S}"/configure "${myconf[@]}" || die
diff --git a/sys-devel/binutils/binutils-2.38.ebuild b/sys-devel/binutils/binutils-2.38.ebuild
index e77f23929a28..587840aa37c5 100644
--- a/sys-devel/binutils/binutils-2.38.ebuild
+++ b/sys-devel/binutils/binutils-2.38.ebuild
@@ -283,10 +283,6 @@ src_configure() {
fi
fi
- if use pgo && ! is_cross ; then
- export BUILD_CFLAGS="${CFLAGS}"
- fi
-
echo ./configure "${myconf[@]}"
"${S}"/configure "${myconf[@]}" || die
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 9931d3fee518..ee0e1924e55f 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -283,10 +283,6 @@ src_configure() {
fi
fi
- if use pgo && ! is_cross ; then
- export BUILD_CFLAGS="${CFLAGS}"
- fi
-
echo ./configure "${myconf[@]}"
"${S}"/configure "${myconf[@]}" || die
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-02-14 23:52 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2022-02-14 23:52 UTC (permalink / raw
To: gentoo-commits
commit: 16c500702832b87a2ee09ac54766a4b6dea4f83e
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Feb 14 23:51:21 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Feb 14 23:51:21 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=16c50070
sys-devel/binutils: Stabilize 2.37_p1-r2 arm, #833210
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.37_p1-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
index cdd39a5e97af..67521fce991b 100644
--- a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-02-17 18:47 Arthur Zamarin
0 siblings, 0 replies; 477+ messages in thread
From: Arthur Zamarin @ 2022-02-17 18:47 UTC (permalink / raw
To: gentoo-commits
commit: 78e357d95352a6ef5b63a0df9468bbcfd060cd33
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Thu Feb 17 18:47:18 2022 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Thu Feb 17 18:47:18 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=78e357d9
sys-devel/binutils: Stabilize 2.37_p1-r2 x86, #833210
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
sys-devel/binutils/binutils-2.37_p1-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
index 67521fce991b..201f353d0d76 100644
--- a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-03-18 6:43 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2022-03-18 6:43 UTC (permalink / raw
To: gentoo-commits
commit: cb9cb5c03df73f3f82b6ed238658f28b34a99962
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 18 06:43:18 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Mar 18 06:43:18 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cb9cb5c0
sys-devel/binutils: Stabilize 2.37_p1-r2 hppa, #833210
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.37_p1-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
index 201f353d0d76..8ba3132d9fea 100644
--- a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-03-18 6:44 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2022-03-18 6:44 UTC (permalink / raw
To: gentoo-commits
commit: 32b2dc94ecdcb36daa6db56c94c8075c92da0f13
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 18 06:43:56 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Mar 18 06:43:56 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=32b2dc94
sys-devel/binutils: Stabilize 2.37_p1-r2 sparc, #833210
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.37_p1-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
index 8ba3132d9fea..6ade635ea8fa 100644
--- a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-03-18 22:38 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2022-03-18 22:38 UTC (permalink / raw
To: gentoo-commits
commit: 3182bdc1801e8bf859856d397b1ebacf8e659235
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 18 22:36:11 2022 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Mar 18 22:37:54 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3182bdc1
sys-devel/binutils: Remove old
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 -
sys-devel/binutils/binutils-2.37_p1-r1.ebuild | 451 --------------------------
sys-devel/binutils/binutils-2.37_p1.ebuild | 450 -------------------------
3 files changed, 903 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 3ec7b3bd145f..912dc8673e37 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -8,8 +8,6 @@ DIST binutils-2.35.2-patches-1.tar.xz 11836 BLAKE2B 0141349c9618992d1ab1e0309f7e
DIST binutils-2.35.2.tar.xz 22056908 BLAKE2B 9c392e0db2b482442f9476f30bd80cf2796321cbf7be79cf21af7bef167b6074c4ae009dcf9b438d2f2f4a23381c935176b2cfa85de1a526ab46e0fd844a7ca5 SHA512 9974ede5978d32e0d68fef23da48fa00bd06b0bff7ec45b00ca075c126d6bbe0cf2defc03ecc3f17bc6cc85b64271a13009c4049d7ba17de26e84e3a6e2c0348
DIST binutils-2.36.1-patches-5.tar.xz 44388 BLAKE2B 1dadb012fe35ec5fb0c5a15d348ab535bc5e3765375c97a3768c6b9f7126e0fda15d35163c9f9c33a4be98662dd120d7c1b21930a20c18dbb5345f56ecd9ecc1 SHA512 a2ce3388f1f1a77ff865481ff4b625121fd55f5234fed0a885312744f2f9c504717de1499b68252c6de64fa45866db7692df91c5838b43fbeb178938811cbe84
DIST binutils-2.36.1.tar.xz 22772248 BLAKE2B 03fbfbedd6dba2beaa836b1ed254eddd7a54a163d3061fd93edd2b9591cae24ba049b26658c524b5ccecc2f22d431dfa168218d2531aa356945c994fbbe896fa SHA512 cc24590bcead10b90763386b6f96bb027d7594c659c2d95174a6352e8b98465a50ec3e4088d0da038428abe059bbc4ae5f37b269f31a40fc048072c8a234f4e9
-DIST binutils-2.37_p1-patches-0.tar.xz 1392 BLAKE2B 128930a381022fea5d1fcb0695953e8dada2513b088b8540fe08d4e0da93ec18b6bf9c78acad6ec5a8982ae2c115d143462ef0bb7bfd63cfeb06c10ad472c2f8 SHA512 44666821f96349e96685ffcfd53a80a94659e38fc63eeeb980d0eed13aab03ae3e2d5059b4932cd9018f2f7698cdb5e15b443d60c01b2bd1385eeb0c698e0e24
-DIST binutils-2.37_p1-patches-1.tar.xz 28956 BLAKE2B 3bc14fcc52a6d11992ad9ed88fa3347ca3d5facd59de094a178a5f720d0eed6297dadf9a8fea7189076eb81274612c0b71c01f15a8f58deeaed8c8f6135ef50d SHA512 f6b2a09bfc692cf90f6cd56be81f424a68831db48054dc150eb6ec28bfa18d35933203c2d3b502f0c80e38771353c373446aec2488469fe2df20d8066033f59e
DIST binutils-2.37_p1-patches-2.tar.xz 31956 BLAKE2B 39c48628d0e2d7f3a8cf11be391b51dc64c7a534a3e64950fd992907c34fa36bebdf95cc5a184dd5b35e134e0c20376b5883abbf96ae57403c55377e615a6790 SHA512 c927aafa8c87e3b68ad28da5a17edf5647591ec26feeb56c743bc6637ffb10832b50ec6fd8442e80e40628b624e31b2f0f0b5f1193e77dc7e5442df0cb8cc8f1
DIST binutils-2.37_p1.tar.xz 22992196 BLAKE2B a8aa0f386d03a5b1466166ac7c40989c228351ccf0949a9b462b4d4615d70ab7e1a45351299140a42baf39c317b8007733c253eb547ee1dfadb612addde11621 SHA512 46c297ec2a7a5b81d1c6e3f16486a6dc2860a07520fe2dd8871d1eb5160065bbe2cc6b0415d5352bf12284133e5817a4e429e6077182d615e969bd1a8f52ed28
DIST binutils-2.38-patches-2.tar.xz 12488 BLAKE2B 971d3893d45a02a0d94d7f905355053e58d1acafc7692e0818af13e897e28977f0e1876a2ce3bab6242ba87ffd42013ad2492022eff8817c9e75687f7da1abfc SHA512 7457ac5004526316ceb034554467f63009f608593eb7eb24907029bb76c2573092b04d438bb886b0781e56af2070883b3c0084e7ded5e7111d53c745ccc7763c
diff --git a/sys-devel/binutils/binutils-2.37_p1-r1.ebuild b/sys-devel/binutils/binutils-2.37_p1-r1.ebuild
deleted file mode 100644
index 2333d6b11deb..000000000000
--- a/sys-devel/binutils/binutils-2.37_p1-r1.ebuild
+++ /dev/null
@@ -1,451 +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 multitarget +nls +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=1
-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 ~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. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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() {
- # 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 #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}"
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- # Available from 2.35 on
- --enable-textrel-check=warning
- # Works better than vapier's patch... #808787
- --enable-new-dtags
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #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. #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)
- )
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
-
- # bug 637066
- filter-flags -Wall -Wreturn-type
-
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- # see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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}/
- 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}"
- 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.37_p1.ebuild b/sys-devel/binutils/binutils-2.37_p1.ebuild
deleted file mode 100644
index 7bac92e076f5..000000000000
--- a/sys-devel/binutils/binutils-2.37_p1.ebuild
+++ /dev/null
@@ -1,450 +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 multitarget +nls +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=0
-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)
- # live ebuild
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~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. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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() {
- # 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 #42033
- strip-linguas -u */po
-
- # Keep things sane
- strip-flags
-
- local x
- echo
- for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
- einfo "$(printf '%10s' ${x}:) ${!x}"
- done
- echo
-
- cd "${MY_BUILDDIR}"
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- # Available from 2.35 on
- --enable-textrel-check=warning
- # Works better than vapier's patch... #808787
- --enable-new-dtags
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #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. #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)
- )
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
-
- # bug 637066
- filter-flags -Wall -Wreturn-type
-
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- # see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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}/
- 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}"
- 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-03-18 23:54 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2022-03-18 23:54 UTC (permalink / raw
To: gentoo-commits
commit: 1e040b5bd540a37f6c60179be29580720c2863b6
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 18 23:07:59 2022 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Mar 18 23:07:59 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1e040b5b
sys-devel/binutils: 2.38 patchlevel bump
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.38-r1.ebuild | 461 +++++++++++++++++++++++++++++
2 files changed, 462 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 912dc8673e37..e2123130f9f3 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -11,4 +11,5 @@ DIST binutils-2.36.1.tar.xz 22772248 BLAKE2B 03fbfbedd6dba2beaa836b1ed254eddd7a5
DIST binutils-2.37_p1-patches-2.tar.xz 31956 BLAKE2B 39c48628d0e2d7f3a8cf11be391b51dc64c7a534a3e64950fd992907c34fa36bebdf95cc5a184dd5b35e134e0c20376b5883abbf96ae57403c55377e615a6790 SHA512 c927aafa8c87e3b68ad28da5a17edf5647591ec26feeb56c743bc6637ffb10832b50ec6fd8442e80e40628b624e31b2f0f0b5f1193e77dc7e5442df0cb8cc8f1
DIST binutils-2.37_p1.tar.xz 22992196 BLAKE2B a8aa0f386d03a5b1466166ac7c40989c228351ccf0949a9b462b4d4615d70ab7e1a45351299140a42baf39c317b8007733c253eb547ee1dfadb612addde11621 SHA512 46c297ec2a7a5b81d1c6e3f16486a6dc2860a07520fe2dd8871d1eb5160065bbe2cc6b0415d5352bf12284133e5817a4e429e6077182d615e969bd1a8f52ed28
DIST binutils-2.38-patches-2.tar.xz 12488 BLAKE2B 971d3893d45a02a0d94d7f905355053e58d1acafc7692e0818af13e897e28977f0e1876a2ce3bab6242ba87ffd42013ad2492022eff8817c9e75687f7da1abfc SHA512 7457ac5004526316ceb034554467f63009f608593eb7eb24907029bb76c2573092b04d438bb886b0781e56af2070883b3c0084e7ded5e7111d53c745ccc7763c
+DIST binutils-2.38-patches-3.tar.xz 189068 BLAKE2B 5b14c90ab7dba253e92ad57b3a702fcbf48739dd0121ce8f739d88331da820ce44c35e16ac4bee394525c3a46bce980e9e1bbf4cbc9ce8a14fc324bc8fa059e7 SHA512 099266a8ef4272fd7f7552071e1892d114ed564a38b700df32e058ed691c6bfcd6f2454f649461f9c36594ea819a35d1e4cd2418609a2407be2a4f8885e500e3
DIST binutils-2.38.tar.xz 23651408 BLAKE2B 19ede396ec97b88e632aded2f69f4684cc5053109e06c3c4a1934944e3f0ceaa9e4a2604528a440189771f778cb5d75edd510163970eeea31afba87fa256feba SHA512 8bf0b0d193c9c010e0518ee2b2e5a830898af206510992483b427477ed178396cd210235e85fd7bd99a96fc6d5eedbeccbd48317a10f752b7336ada8b2bb826d
diff --git a/sys-devel/binutils/binutils-2.38-r1.ebuild b/sys-devel/binutils/binutils-2.38-r1.ebuild
new file mode 100644
index 000000000000..8cc4063118fa
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.38-r1.ebuild
@@ -0,0 +1,461 @@
+# 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 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=3
+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)
+ # live ebuild
+ #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ 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() {
+ # 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 #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}"
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && 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. #497268
+ --enable-install-libiberty
+ # Available from 2.35 on
+ --enable-textrel-check=warning
+ # Works better than vapier's patch... #808787
+ --enable-new-dtags
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #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. #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
+ myconf+=( $(use_enable pgo pgo-build lto) )
+
+ if use pgo ; then
+ export BUILD_CFLAGS="${CFLAGS}"
+ fi
+ fi
+
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${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}"
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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}"
+
+ # bug 637066
+ filter-flags -Wall -Wreturn-type
+
+ emake -k check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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}/
+ 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}"
+ 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-03-18 23:54 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2022-03-18 23:54 UTC (permalink / raw
To: gentoo-commits
commit: 4ac76abe3f384c7d0a257ee3e7fd19e08be1a87f
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 18 23:52:59 2022 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Mar 18 23:52:59 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4ac76abe
sys-devel/binutils: Remove old
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 -
sys-devel/binutils/binutils-2.38.ebuild | 461 --------------------------------
2 files changed, 462 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index e2123130f9f3..e0796af2adfb 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -10,6 +10,5 @@ DIST binutils-2.36.1-patches-5.tar.xz 44388 BLAKE2B 1dadb012fe35ec5fb0c5a15d348a
DIST binutils-2.36.1.tar.xz 22772248 BLAKE2B 03fbfbedd6dba2beaa836b1ed254eddd7a54a163d3061fd93edd2b9591cae24ba049b26658c524b5ccecc2f22d431dfa168218d2531aa356945c994fbbe896fa SHA512 cc24590bcead10b90763386b6f96bb027d7594c659c2d95174a6352e8b98465a50ec3e4088d0da038428abe059bbc4ae5f37b269f31a40fc048072c8a234f4e9
DIST binutils-2.37_p1-patches-2.tar.xz 31956 BLAKE2B 39c48628d0e2d7f3a8cf11be391b51dc64c7a534a3e64950fd992907c34fa36bebdf95cc5a184dd5b35e134e0c20376b5883abbf96ae57403c55377e615a6790 SHA512 c927aafa8c87e3b68ad28da5a17edf5647591ec26feeb56c743bc6637ffb10832b50ec6fd8442e80e40628b624e31b2f0f0b5f1193e77dc7e5442df0cb8cc8f1
DIST binutils-2.37_p1.tar.xz 22992196 BLAKE2B a8aa0f386d03a5b1466166ac7c40989c228351ccf0949a9b462b4d4615d70ab7e1a45351299140a42baf39c317b8007733c253eb547ee1dfadb612addde11621 SHA512 46c297ec2a7a5b81d1c6e3f16486a6dc2860a07520fe2dd8871d1eb5160065bbe2cc6b0415d5352bf12284133e5817a4e429e6077182d615e969bd1a8f52ed28
-DIST binutils-2.38-patches-2.tar.xz 12488 BLAKE2B 971d3893d45a02a0d94d7f905355053e58d1acafc7692e0818af13e897e28977f0e1876a2ce3bab6242ba87ffd42013ad2492022eff8817c9e75687f7da1abfc SHA512 7457ac5004526316ceb034554467f63009f608593eb7eb24907029bb76c2573092b04d438bb886b0781e56af2070883b3c0084e7ded5e7111d53c745ccc7763c
DIST binutils-2.38-patches-3.tar.xz 189068 BLAKE2B 5b14c90ab7dba253e92ad57b3a702fcbf48739dd0121ce8f739d88331da820ce44c35e16ac4bee394525c3a46bce980e9e1bbf4cbc9ce8a14fc324bc8fa059e7 SHA512 099266a8ef4272fd7f7552071e1892d114ed564a38b700df32e058ed691c6bfcd6f2454f649461f9c36594ea819a35d1e4cd2418609a2407be2a4f8885e500e3
DIST binutils-2.38.tar.xz 23651408 BLAKE2B 19ede396ec97b88e632aded2f69f4684cc5053109e06c3c4a1934944e3f0ceaa9e4a2604528a440189771f778cb5d75edd510163970eeea31afba87fa256feba SHA512 8bf0b0d193c9c010e0518ee2b2e5a830898af206510992483b427477ed178396cd210235e85fd7bd99a96fc6d5eedbeccbd48317a10f752b7336ada8b2bb826d
diff --git a/sys-devel/binutils/binutils-2.38.ebuild b/sys-devel/binutils/binutils-2.38.ebuild
deleted file mode 100644
index 587840aa37c5..000000000000
--- a/sys-devel/binutils/binutils-2.38.ebuild
+++ /dev/null
@@ -1,461 +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 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=2
-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)
- # live ebuild
- #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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() {
- # 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 #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}"
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- # Available from 2.35 on
- --enable-textrel-check=warning
- # Works better than vapier's patch... #808787
- --enable-new-dtags
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #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. #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
- myconf+=( $(use_enable pgo pgo-build lto) )
-
- if use pgo ; then
- export BUILD_CFLAGS="${CFLAGS}"
- fi
- fi
-
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
-
- # bug 637066
- filter-flags -Wall -Wreturn-type
-
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- # see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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}/
- 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}"
- 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-03-19 9:49 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2022-03-19 9:49 UTC (permalink / raw
To: gentoo-commits
commit: fe9887ed33a7369508bcd48bd0299bbcf2261fe5
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Mar 19 09:47:38 2022 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Mar 19 09:49:04 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fe9887ed
sys-devel/binutils: Rekeyword 2.38-r1
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.38-r1.ebuild | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.38-r1.ebuild b/sys-devel/binutils/binutils-2.38-r1.ebuild
index 8cc4063118fa..0041aec7eb5e 100644
--- a/sys-devel/binutils/binutils-2.38-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.38-r1.ebuild
@@ -32,8 +32,7 @@ else
[[ -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)
- # live ebuild
- #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-04-16 11:36 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2022-04-16 11:36 UTC (permalink / raw
To: gentoo-commits
commit: cd4a24737a00a1806c99c96a2340cd0161039b13
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 16 11:35:27 2022 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Apr 16 11:35:27 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cd4a2473
sys-devel/binutils: 2.38 patchset 4 bump (no keywords so far)
Bug: https://bugs.gentoo.org/838106
Bug: https://bugs.gentoo.org/838157
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Andreas K. Huettel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.38-r2.ebuild | 460 +++++++++++++++++++++++++++++
2 files changed, 461 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index e0796af2adfb..db3df3d2e7c4 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -11,4 +11,5 @@ DIST binutils-2.36.1.tar.xz 22772248 BLAKE2B 03fbfbedd6dba2beaa836b1ed254eddd7a5
DIST binutils-2.37_p1-patches-2.tar.xz 31956 BLAKE2B 39c48628d0e2d7f3a8cf11be391b51dc64c7a534a3e64950fd992907c34fa36bebdf95cc5a184dd5b35e134e0c20376b5883abbf96ae57403c55377e615a6790 SHA512 c927aafa8c87e3b68ad28da5a17edf5647591ec26feeb56c743bc6637ffb10832b50ec6fd8442e80e40628b624e31b2f0f0b5f1193e77dc7e5442df0cb8cc8f1
DIST binutils-2.37_p1.tar.xz 22992196 BLAKE2B a8aa0f386d03a5b1466166ac7c40989c228351ccf0949a9b462b4d4615d70ab7e1a45351299140a42baf39c317b8007733c253eb547ee1dfadb612addde11621 SHA512 46c297ec2a7a5b81d1c6e3f16486a6dc2860a07520fe2dd8871d1eb5160065bbe2cc6b0415d5352bf12284133e5817a4e429e6077182d615e969bd1a8f52ed28
DIST binutils-2.38-patches-3.tar.xz 189068 BLAKE2B 5b14c90ab7dba253e92ad57b3a702fcbf48739dd0121ce8f739d88331da820ce44c35e16ac4bee394525c3a46bce980e9e1bbf4cbc9ce8a14fc324bc8fa059e7 SHA512 099266a8ef4272fd7f7552071e1892d114ed564a38b700df32e058ed691c6bfcd6f2454f649461f9c36594ea819a35d1e4cd2418609a2407be2a4f8885e500e3
+DIST binutils-2.38-patches-4.tar.xz 193852 BLAKE2B 5a83e20008e58464ed563a6817a367e50684c59d08c47345cc546054269c42463d1651441720f865851e4e182e917df1a095c68e64226e0351b64e975d524096 SHA512 6657e547bb02898632cc45a8f1894be098aa7472b6725b65f95393e621abb127e468b4e50310720bf03f7e8d0a68bc2c47af76fc43aaa8f32b2e4a149c0c6290
DIST binutils-2.38.tar.xz 23651408 BLAKE2B 19ede396ec97b88e632aded2f69f4684cc5053109e06c3c4a1934944e3f0ceaa9e4a2604528a440189771f778cb5d75edd510163970eeea31afba87fa256feba SHA512 8bf0b0d193c9c010e0518ee2b2e5a830898af206510992483b427477ed178396cd210235e85fd7bd99a96fc6d5eedbeccbd48317a10f752b7336ada8b2bb826d
diff --git a/sys-devel/binutils/binutils-2.38-r2.ebuild b/sys-devel/binutils/binutils-2.38-r2.ebuild
new file mode 100644
index 000000000000..fac12698708d
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.38-r2.ebuild
@@ -0,0 +1,460 @@
+# 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 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 ~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. #562460
+ sed -i \
+ -e 's:@bfdlibdir@:@libdir@:g' \
+ -e 's:@bfdincludedir@:@includedir@:g' \
+ {bfd,opcodes}/Makefile.in || die
+
+ # Fix locale issues if possible #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
+
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ 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() {
+ # 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 #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}"
+ 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. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #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
+ )
+
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && 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. #497268
+ --enable-install-libiberty
+ # Available from 2.35 on
+ --enable-textrel-check=warning
+ # Works better than vapier's patch... #808787
+ --enable-new-dtags
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #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. #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
+ myconf+=( $(use_enable pgo pgo-build lto) )
+
+ if use pgo ; then
+ export BUILD_CFLAGS="${CFLAGS}"
+ fi
+ fi
+
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${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}"
+ # see Note [tooldir hack for ldscripts]
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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}"
+
+ # bug 637066
+ filter-flags -Wall -Wreturn-type
+
+ emake -k check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}"
+ # see Note [tooldir hack for ldscripts]
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ rm -rf "${ED}"/${LIBPATH}/bin
+ use static-libs || find "${ED}" -name '*.la' -delete
+
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
+ 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}
+ for x in * ; do
+ mv ${x} ${x/${CTARGET}-}
+ 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}/
+ 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}"
+ 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-04-16 18:09 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2022-04-16 18:09 UTC (permalink / raw
To: gentoo-commits
commit: 307220cdfb5f476926723545ee6c17c2c06eb5fe
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 16 18:07:40 2022 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Apr 16 18:09:41 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=307220cd
sys-devel/binutils: Rekeyword 2.38-r2
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.38-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.38-r2.ebuild b/sys-devel/binutils/binutils-2.38-r2.ebuild
index fac12698708d..9930eb9a5855 100644
--- a/sys-devel/binutils/binutils-2.38-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.38-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-04-19 22:52 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2022-04-19 22:52 UTC (permalink / raw
To: gentoo-commits
commit: b4e1c14674bbaf36850e044c1847c63394cf0f75
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 19 22:43:17 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Apr 19 22:51:52 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b4e1c146
sys-devel/binutils: consistent style in 9999
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-9999.ebuild | 69 +++++++++++++++++----------------
1 file changed, 36 insertions(+), 33 deletions(-)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index ee0e1924e55f..10b90a94daee 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -114,13 +114,13 @@ src_prepare() {
fi
fi
- # Make sure our explicit libdir paths don't get clobbered. #562460
+ # 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 #122216
+ # 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
@@ -131,11 +131,6 @@ src_prepare() {
done
fi
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- fi
-
# Apply things from PATCHES and user dirs
default
@@ -165,7 +160,7 @@ src_configure() {
BINPATH=${TOOLPATH}/binutils-bin/${PV}
# Make sure we filter $LINGUAS so that only ones that
- # actually work make it through #42033
+ # actually work make it through, bug #42033
strip-linguas -u */po
# Keep things sane
@@ -202,9 +197,10 @@ src_configure() {
myconf+=( --with-system-zlib )
- # For bi-arch systems, enable a 64bit bfd. This matches
- # the bi-arch logic in toolchain.eclass. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #438522
+ # 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
@@ -218,10 +214,7 @@ src_configure() {
--enable-poison-system-directories
)
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && myconf+=( --enable-secureplt )
+ myconf+=( --enable-secureplt )
# mips can't do hash-style=gnu ...
if [[ $(tc-arch) != mips ]] ; then
@@ -245,24 +238,24 @@ src_configure() {
--enable-threads
# Newer versions (>=2.27) offer a configure flag now.
--enable-relro
- # Newer versions (>=2.24) make this an explicit option. #497268
+ # 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... #808787
+ # 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)
${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #490566
+ # 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. #666100
+ # {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
@@ -295,7 +288,8 @@ src_configure() {
}
src_compile() {
- cd "${MY_BUILDDIR}"
+ cd "${MY_BUILDDIR}" || die
+
# see Note [tooldir hack for ldscripts]
emake tooldir="${EPREFIX}${TOOLPATH}" all
@@ -310,9 +304,9 @@ src_compile() {
}
src_test() {
- cd "${MY_BUILDDIR}"
+ cd "${MY_BUILDDIR}" || die
- # bug 637066
+ # bug #637066
filter-flags -Wall -Wreturn-type
emake -k check
@@ -321,14 +315,15 @@ src_test() {
src_install() {
local x d
- cd "${MY_BUILDDIR}"
+ cd "${MY_BUILDDIR}" || die
+
# see Note [tooldir hack for ldscripts]
emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
+ rm -rf "${ED}"/${LIBPATH}/bin || die
use static-libs || find "${ED}" -name '*.la' -delete
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
+ # Newer versions of binutils get fancy with ${LIBPATH}, bug #171905
+ cd "${ED}"/${LIBPATH} || die
for d in ../* ; do
[[ ${d} == ../${PV} ]] && continue
mv ${d}/* . || die
@@ -339,9 +334,9 @@ src_install() {
# 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}
+ cd "${ED}"/${BINPATH} || die
for x in * ; do
- mv ${x} ${x/${CTARGET}-}
+ mv ${x} ${x/${CTARGET}-} || die
done
if [[ -d ${ED}/usr/${CHOST}/${CTARGET} ]] ; then
@@ -350,6 +345,7 @@ src_install() {
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.
@@ -363,8 +359,8 @@ src_install() {
)
doins "${libiberty_headers[@]/#/${S}/include/}"
if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
- mv "${ED}"/${LIBPATH}/lib/* "${ED}"/${LIBPATH}/
- rm -r "${ED}"/${LIBPATH}/lib
+ mv "${ED}"/${LIBPATH}/lib/* "${ED}"/${LIBPATH}/ || die
+ rm -r "${ED}"/${LIBPATH}/lib || die
fi
# Generate an env.d entry for this binutils
@@ -378,29 +374,36 @@ src_install() {
# Handle documentation
if ! is_cross ; then
- cd "${S}"
+ 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}
+ 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
+ find "${ED}" -depth -type d -exec rmdir {} + 2>/dev/null || die
}
pkg_postinst() {
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-05-26 5:48 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2022-05-26 5:48 UTC (permalink / raw
To: gentoo-commits
commit: f26b9f82a358ce22c9d77710ce785f94defa20dd
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu May 26 05:35:25 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu May 26 05:48:05 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f26b9f82
sys-devel/binutils: add --enable-warn-{execstack,rwx-segments} to 9999 only
New in 2.39. This lays the groundworks for --enable-default-execstack
at some point, maybe even in 2.39 for us, but let's see how this goes first.
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-9999.ebuild | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index b317d8ffcd0f..8a2d54bd59b9 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -242,8 +242,22 @@ src_configure() {
--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?
+ #--enable-default-execstack
+
+ # 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)"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-05-26 5:48 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2022-05-26 5:48 UTC (permalink / raw
To: gentoo-commits
commit: 7fd549fdbb59bca06cce166c20419d9efffbd85f
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Apr 25 00:32:33 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu May 26 05:48:02 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7fd549fd
sys-devel/binutils: use econf; sync from live
1. Sync more with binutils-libs by using econf instead of raw ./configure call;
means we benefit from some of the default arguments it passes, in particular
thinking of silent rules which upstream are starting to support more now too
(and enable by default) which econf disables.
Also, we use it fine in binutils-libs w/o issue.
2. Pick up changes from live ebuild.
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-9999.ebuild | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 10b90a94daee..b317d8ffcd0f 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -175,7 +175,7 @@ src_configure() {
done
echo
- cd "${MY_BUILDDIR}"
+ cd "${MY_BUILDDIR}" || die
local myconf=()
if use plugins ; then
@@ -248,7 +248,6 @@ src_configure() {
--with-bugurl="$(toolchain-binutils_bugurl)"
--with-pkgversion="$(toolchain-binutils_pkgversion)"
$(use_enable static-libs static)
- ${EXTRA_ECONF}
# Disable modules that are in a combined binutils/gdb tree, bug #490566
--disable-{gdb,libdecnumber,readline,sim}
# Strip out broken static link flags.
@@ -276,8 +275,7 @@ src_configure() {
fi
fi
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${myconf[@]}" || die
+ ECONF_SOURCE="${S}" econf "${myconf[@]}" || die
# Prevent makeinfo from running if doc is unset.
if ! use doc ; then
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-05-30 6:30 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2022-05-30 6:30 UTC (permalink / raw
To: gentoo-commits
commit: 543e8a28d137dfac2ee430311e326c7c68eefa56
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon May 30 06:22:00 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon May 30 06:29:20 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=543e8a28
sys-devel/binutils: sync output; more verbose logs
See: 2619d10984d0633e8cab4464c389ba9cc10642cb
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.38-r2.ebuild | 16 ++++++++++++----
sys-devel/binutils/binutils-9999.ebuild | 13 +++++++++----
2 files changed, 21 insertions(+), 8 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.38-r2.ebuild b/sys-devel/binutils/binutils-2.38-r2.ebuild
index 4a491aa88c86..dcf30dbb65a6 100644
--- a/sys-devel/binutils/binutils-2.38-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.38-r2.ebuild
@@ -152,6 +152,11 @@ toolchain-binutils_pkgversion() {
}
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
@@ -228,6 +233,9 @@ src_configure() {
fi
myconf+=(
+ # (--disable-silent-rules should get passed automatically w/ econf which we use
+ # in >= 2.39, so can drop it then.)
+ --disable-silent-rules
--prefix="${EPREFIX}"/usr
--host=${CHOST}
--target=${CTARGET}
@@ -296,11 +304,11 @@ src_configure() {
src_compile() {
cd "${MY_BUILDDIR}"
# see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
+ emake V=1 tooldir="${EPREFIX}${TOOLPATH}" all
# only build info pages if the user wants them
if use doc ; then
- emake info
+ emake V=1 info
fi
# we nuke the manpages when we're left with junk
@@ -314,7 +322,7 @@ src_test() {
# bug 637066
filter-flags -Wall -Wreturn-type
- emake -k check
+ emake -k V=1 check
}
src_install() {
@@ -322,7 +330,7 @@ src_install() {
cd "${MY_BUILDDIR}"
# see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ emake V=1 DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
rm -rf "${ED}"/${LIBPATH}/bin
use static-libs || find "${ED}" -name '*.la' -delete
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 8a2d54bd59b9..ec3589ae100a 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -148,6 +148,11 @@ toolchain-binutils_pkgversion() {
}
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
@@ -303,11 +308,11 @@ src_compile() {
cd "${MY_BUILDDIR}" || die
# see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
+ emake V=1 tooldir="${EPREFIX}${TOOLPATH}" all
# only build info pages if the user wants them
if use doc ; then
- emake info
+ emake V=1 info
fi
# we nuke the manpages when we're left with junk
@@ -321,7 +326,7 @@ src_test() {
# bug #637066
filter-flags -Wall -Wreturn-type
- emake -k check
+ emake -k V=1 check
}
src_install() {
@@ -330,7 +335,7 @@ src_install() {
cd "${MY_BUILDDIR}" || die
# see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ emake V=1 DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
rm -rf "${ED}"/${LIBPATH}/bin || die
use static-libs || find "${ED}" -name '*.la' -delete
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-06-12 19:46 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2022-06-12 19:46 UTC (permalink / raw
To: gentoo-commits
commit: 8ea456d072e46530ea53f04fe8935693fab59093
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Jun 12 19:43:40 2022 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Jun 12 19:46:30 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8ea456d0
sys-devel/binutils: Prevent relinking on install, try 1
The tooldir hack introduced to solve bug 147155 makes libtool
relink libraries during the installation phase. This fails in
enough cases to be an annoyance. Use the hack only for cross
installations.
*Untested*, needs some careful observation before regaining keywords.
Bug: https://bugs.gentoo.org/147155
Bug: https://bugs.gentoo.org/834720
Bug: https://bugs.gentoo.org/838925
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
...tils-9999.ebuild => binutils-2.37_p1-r3.ebuild} | 123 ++++++++++-----------
...inutils-9999.ebuild => binutils-2.38-r3.ebuild} | 117 ++++++++++----------
sys-devel/binutils/binutils-9999.ebuild | 21 +++-
3 files changed, 137 insertions(+), 124 deletions(-)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-2.37_p1-r3.ebuild
similarity index 84%
copy from sys-devel/binutils/binutils-9999.ebuild
copy to sys-devel/binutils/binutils-2.37_p1-r3.ebuild
index ec3589ae100a..b6100c1d6a22 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1-r3.ebuild
@@ -19,7 +19,7 @@ REQUIRED_USE="default-gold? ( gold )"
# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
# for the patchsets
-PATCH_VER=0
+PATCH_VER=2
PATCH_DEV=dilfridge
if [[ ${PV} == 9999* ]]; then
@@ -32,8 +32,7 @@ else
[[ -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)
- # live ebuild
- #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ #KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
fi
#
@@ -114,13 +113,13 @@ src_prepare() {
fi
fi
- # Make sure our explicit libdir paths don't get clobbered, bug #562460
+ # Make sure our explicit libdir paths don't get clobbered. #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
+ # Fix locale issues if possible #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
@@ -131,6 +130,11 @@ src_prepare() {
done
fi
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ fi
+
# Apply things from PATCHES and user dirs
default
@@ -148,24 +152,21 @@ toolchain-binutils_pkgversion() {
}
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}
+
+ # see Note [tooldir hack for ldscripts]
if is_cross ; then
TOOLPATH=/usr/${CHOST}/${CTARGET}
+ BINPATH=${TOOLPATH}/binutils-bin/${PV}
else
- TOOLPATH=/usr/${CTARGET}
+ BINPATH=/usr/${CTARGET}/binutils-bin/${PV}
fi
- BINPATH=${TOOLPATH}/binutils-bin/${PV}
# Make sure we filter $LINGUAS so that only ones that
- # actually work make it through, bug #42033
+ # actually work make it through #42033
strip-linguas -u */po
# Keep things sane
@@ -180,7 +181,7 @@ src_configure() {
done
echo
- cd "${MY_BUILDDIR}" || die
+ cd "${MY_BUILDDIR}"
local myconf=()
if use plugins ; then
@@ -202,10 +203,9 @@ src_configure() {
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
+ # For bi-arch systems, enable a 64bit bfd. This matches
+ # the bi-arch logic in toolchain.eclass. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #438522
case $(tc-arch) in
ppc|sparc|x86) myconf+=( --enable-64-bit-bfd ) ;;
esac
@@ -219,7 +219,10 @@ src_configure() {
--enable-poison-system-directories
)
- myconf+=( --enable-secureplt )
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && myconf+=( --enable-secureplt )
# mips can't do hash-style=gnu ...
if [[ $(tc-arch) != mips ]] ; then
@@ -243,37 +246,24 @@ src_configure() {
--enable-threads
# Newer versions (>=2.27) offer a configure flag now.
--enable-relro
- # Newer versions (>=2.24) make this an explicit option, bug #497268
+ # Newer versions (>=2.24) make this an explicit option. #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?
- #--enable-default-execstack
-
- # Things to think about
- #--enable-deterministic-archives
-
- # Works better than vapier's patch, bug #808787
+ # Works better than vapier's patch... #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
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #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
+ # {native,cross}/binutils, binutils-libs. #666100
--with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
# avoid automagic dependency on (currently prefix) systems
@@ -294,7 +284,8 @@ src_configure() {
fi
fi
- ECONF_SOURCE="${S}" econf "${myconf[@]}" || die
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${myconf[@]}" || die
# Prevent makeinfo from running if doc is unset.
if ! use doc ; then
@@ -305,14 +296,17 @@ src_configure() {
}
src_compile() {
- cd "${MY_BUILDDIR}" || die
-
+ cd "${MY_BUILDDIR}"
# see Note [tooldir hack for ldscripts]
- emake V=1 tooldir="${EPREFIX}${TOOLPATH}" all
+ if is_cross ; then
+ emake V=1 tooldir="${EPREFIX}${TOOLPATH}" all
+ else
+ emake V=1 all
+ fi
# only build info pages if the user wants them
if use doc ; then
- emake V=1 info
+ emake info
fi
# we nuke the manpages when we're left with junk
@@ -321,26 +315,27 @@ src_compile() {
}
src_test() {
- cd "${MY_BUILDDIR}" || die
+ cd "${MY_BUILDDIR}"
- # bug #637066
+ # bug 637066
filter-flags -Wall -Wreturn-type
- emake -k V=1 check
+ emake -k check
}
src_install() {
local x d
- cd "${MY_BUILDDIR}" || die
+ cd "${MY_BUILDDIR}"
# see Note [tooldir hack for ldscripts]
emake V=1 DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin || die
+
+ rm -rf "${ED}"/${LIBPATH}/bin
use static-libs || find "${ED}" -name '*.la' -delete
- # Newer versions of binutils get fancy with ${LIBPATH}, bug #171905
- cd "${ED}"/${LIBPATH} || die
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
for d in ../* ; do
[[ ${d} == ../${PV} ]] && continue
mv ${d}/* . || die
@@ -351,9 +346,9 @@ src_install() {
# 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
+ cd "${ED}"/${BINPATH}
for x in * ; do
- mv ${x} ${x/${CTARGET}-} || die
+ mv ${x} ${x/${CTARGET}-}
done
if [[ -d ${ED}/usr/${CHOST}/${CTARGET} ]] ; then
@@ -362,7 +357,6 @@ src_install() {
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.
@@ -376,8 +370,8 @@ src_install() {
)
doins "${libiberty_headers[@]/#/${S}/include/}"
if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
- mv "${ED}"/${LIBPATH}/lib/* "${ED}"/${LIBPATH}/ || die
- rm -r "${ED}"/${LIBPATH}/lib || die
+ mv "${ED}"/${LIBPATH}/lib/* "${ED}"/${LIBPATH}/
+ rm -r "${ED}"/${LIBPATH}/lib
fi
# Generate an env.d entry for this binutils
@@ -391,36 +385,29 @@ src_install() {
# Handle documentation
if ! is_cross ; then
- cd "${S}" || die
+ cd "${S}"
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
+ rm -f "${ED}"/${DATAPATH}/info/{dir,configure.info,standards.info}
# Trim all empty dirs
- find "${ED}" -depth -type d -exec rmdir {} + 2>/dev/null || die
+ find "${ED}" -depth -type d -exec rmdir {} + 2>/dev/null
}
pkg_postinst() {
@@ -479,3 +466,11 @@ pkg_postrm() {
# ${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}
+#
+# Now, this would all be very nice except for the fact that the changed
+# directory makes libtool re-link libraries during the install phase.
+# It uses libraries from the system installation to do that (bad)
+# and fails if it cant handle these (e.g. newer LTO version than in
+# current gcc, see bugs 834720 and 838925).
+#
+# So, we apply this whole hack only for cross builds.
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-2.38-r3.ebuild
similarity index 83%
copy from sys-devel/binutils/binutils-9999.ebuild
copy to sys-devel/binutils/binutils-2.38-r3.ebuild
index ec3589ae100a..3fd587616c36 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-2.38-r3.ebuild
@@ -19,7 +19,7 @@ REQUIRED_USE="default-gold? ( gold )"
# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
# for the patchsets
-PATCH_VER=0
+PATCH_VER=4
PATCH_DEV=dilfridge
if [[ ${PV} == 9999* ]]; then
@@ -32,8 +32,7 @@ else
[[ -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)
- # live ebuild
- #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
@@ -114,13 +113,13 @@ src_prepare() {
fi
fi
- # Make sure our explicit libdir paths don't get clobbered, bug #562460
+ # Make sure our explicit libdir paths don't get clobbered. #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
+ # Fix locale issues if possible #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
@@ -131,6 +130,11 @@ src_prepare() {
done
fi
+ # Fix conflicts with newer glibc #272594
+ if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
+ sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
+ fi
+
# Apply things from PATCHES and user dirs
default
@@ -157,15 +161,17 @@ src_configure() {
LIBPATH=/usr/$(get_libdir)/binutils/${CTARGET}/${PV}
INCPATH=${LIBPATH}/include
DATAPATH=/usr/share/binutils-data/${CTARGET}/${PV}
+
+ # see Note [tooldir hack for ldscripts]
if is_cross ; then
TOOLPATH=/usr/${CHOST}/${CTARGET}
+ BINPATH=${TOOLPATH}/binutils-bin/${PV}
else
- TOOLPATH=/usr/${CTARGET}
+ BINPATH=/usr/${CTARGET}/binutils-bin/${PV}
fi
- BINPATH=${TOOLPATH}/binutils-bin/${PV}
# Make sure we filter $LINGUAS so that only ones that
- # actually work make it through, bug #42033
+ # actually work make it through #42033
strip-linguas -u */po
# Keep things sane
@@ -180,7 +186,7 @@ src_configure() {
done
echo
- cd "${MY_BUILDDIR}" || die
+ cd "${MY_BUILDDIR}"
local myconf=()
if use plugins ; then
@@ -202,10 +208,9 @@ src_configure() {
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
+ # For bi-arch systems, enable a 64bit bfd. This matches
+ # the bi-arch logic in toolchain.eclass. #446946
+ # We used to do it for everyone, but it's slow on 32bit arches. #438522
case $(tc-arch) in
ppc|sparc|x86) myconf+=( --enable-64-bit-bfd ) ;;
esac
@@ -219,7 +224,10 @@ src_configure() {
--enable-poison-system-directories
)
- myconf+=( --enable-secureplt )
+ # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
+ # on everyone in alpha (for now), we'll just enable it when possible
+ has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
+ has_version ">=sys-libs/glibc-2.5" && myconf+=( --enable-secureplt )
# mips can't do hash-style=gnu ...
if [[ $(tc-arch) != mips ]] ; then
@@ -227,6 +235,9 @@ src_configure() {
fi
myconf+=(
+ # (--disable-silent-rules should get passed automatically w/ econf which we use
+ # in >= 2.39, so can drop it then.)
+ --disable-silent-rules
--prefix="${EPREFIX}"/usr
--host=${CHOST}
--target=${CTARGET}
@@ -243,37 +254,24 @@ src_configure() {
--enable-threads
# Newer versions (>=2.27) offer a configure flag now.
--enable-relro
- # Newer versions (>=2.24) make this an explicit option, bug #497268
+ # Newer versions (>=2.24) make this an explicit option. #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?
- #--enable-default-execstack
-
- # Things to think about
- #--enable-deterministic-archives
-
- # Works better than vapier's patch, bug #808787
+ # Works better than vapier's patch... #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
+ ${EXTRA_ECONF}
+ # Disable modules that are in a combined binutils/gdb tree. #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
+ # {native,cross}/binutils, binutils-libs. #666100
--with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
# avoid automagic dependency on (currently prefix) systems
@@ -294,7 +292,8 @@ src_configure() {
fi
fi
- ECONF_SOURCE="${S}" econf "${myconf[@]}" || die
+ echo ./configure "${myconf[@]}"
+ "${S}"/configure "${myconf[@]}" || die
# Prevent makeinfo from running if doc is unset.
if ! use doc ; then
@@ -305,10 +304,13 @@ src_configure() {
}
src_compile() {
- cd "${MY_BUILDDIR}" || die
-
+ cd "${MY_BUILDDIR}"
# see Note [tooldir hack for ldscripts]
- emake V=1 tooldir="${EPREFIX}${TOOLPATH}" all
+ if is_cross ; then
+ emake V=1 tooldir="${EPREFIX}${TOOLPATH}" all
+ else
+ emake V=1 all
+ fi
# only build info pages if the user wants them
if use doc ; then
@@ -321,9 +323,9 @@ src_compile() {
}
src_test() {
- cd "${MY_BUILDDIR}" || die
+ cd "${MY_BUILDDIR}"
- # bug #637066
+ # bug 637066
filter-flags -Wall -Wreturn-type
emake -k V=1 check
@@ -332,15 +334,16 @@ src_test() {
src_install() {
local x d
- cd "${MY_BUILDDIR}" || die
+ cd "${MY_BUILDDIR}"
# see Note [tooldir hack for ldscripts]
emake V=1 DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin || die
+
+ rm -rf "${ED}"/${LIBPATH}/bin
use static-libs || find "${ED}" -name '*.la' -delete
- # Newer versions of binutils get fancy with ${LIBPATH}, bug #171905
- cd "${ED}"/${LIBPATH} || die
+ # Newer versions of binutils get fancy with ${LIBPATH} #171905
+ cd "${ED}"/${LIBPATH}
for d in ../* ; do
[[ ${d} == ../${PV} ]] && continue
mv ${d}/* . || die
@@ -351,9 +354,9 @@ src_install() {
# 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
+ cd "${ED}"/${BINPATH}
for x in * ; do
- mv ${x} ${x/${CTARGET}-} || die
+ mv ${x} ${x/${CTARGET}-}
done
if [[ -d ${ED}/usr/${CHOST}/${CTARGET} ]] ; then
@@ -362,7 +365,6 @@ src_install() {
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.
@@ -376,8 +378,8 @@ src_install() {
)
doins "${libiberty_headers[@]/#/${S}/include/}"
if [[ -d ${ED}/${LIBPATH}/lib ]] ; then
- mv "${ED}"/${LIBPATH}/lib/* "${ED}"/${LIBPATH}/ || die
- rm -r "${ED}"/${LIBPATH}/lib || die
+ mv "${ED}"/${LIBPATH}/lib/* "${ED}"/${LIBPATH}/
+ rm -r "${ED}"/${LIBPATH}/lib
fi
# Generate an env.d entry for this binutils
@@ -391,36 +393,29 @@ src_install() {
# Handle documentation
if ! is_cross ; then
- cd "${S}" || die
+ cd "${S}"
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
+ rm -f "${ED}"/${DATAPATH}/info/{dir,configure.info,standards.info}
# Trim all empty dirs
- find "${ED}" -depth -type d -exec rmdir {} + 2>/dev/null || die
+ find "${ED}" -depth -type d -exec rmdir {} + 2>/dev/null
}
pkg_postinst() {
@@ -479,3 +474,11 @@ pkg_postrm() {
# ${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}
+#
+# Now, this would all be very nice except for the fact that the changed
+# directory makes libtool re-link libraries during the install phase.
+# It uses libraries from the system installation to do that (bad)
+# and fails if it cant handle these (e.g. newer LTO version than in
+# current gcc, see bugs 834720 and 838925).
+#
+# So, we apply this whole hack only for cross builds.
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index ec3589ae100a..ae887224952e 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -157,12 +157,14 @@ src_configure() {
LIBPATH=/usr/$(get_libdir)/binutils/${CTARGET}/${PV}
INCPATH=${LIBPATH}/include
DATAPATH=/usr/share/binutils-data/${CTARGET}/${PV}
+
+ # see Note [tooldir hack for ldscripts]
if is_cross ; then
TOOLPATH=/usr/${CHOST}/${CTARGET}
+ BINPATH=${TOOLPATH}/binutils-bin/${PV}
else
- TOOLPATH=/usr/${CTARGET}
+ BINPATH=/usr/${CTARGET}/binutils-bin/${PV}
fi
- BINPATH=${TOOLPATH}/binutils-bin/${PV}
# Make sure we filter $LINGUAS so that only ones that
# actually work make it through, bug #42033
@@ -308,7 +310,11 @@ src_compile() {
cd "${MY_BUILDDIR}" || die
# see Note [tooldir hack for ldscripts]
- emake V=1 tooldir="${EPREFIX}${TOOLPATH}" all
+ if is_cross ; then
+ emake V=1 tooldir="${EPREFIX}${TOOLPATH}" all
+ else
+ emake V=1 all
+ fi
# only build info pages if the user wants them
if use doc ; then
@@ -336,6 +342,7 @@ src_install() {
# 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
@@ -479,3 +486,11 @@ pkg_postrm() {
# ${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}
+#
+# Now, this would all be very nice except for the fact that the changed
+# directory makes libtool re-link libraries during the install phase.
+# It uses libraries from the system installation to do that (bad)
+# and fails if it cant handle these (e.g. newer LTO version than in
+# current gcc, see bugs 834720 and 838925).
+#
+# So, we apply this whole hack only for cross builds.
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-07-09 11:43 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2022-07-09 11:43 UTC (permalink / raw
To: gentoo-commits
commit: de8ab91328eacd19cfe93d78f6bac4b3dd332c46
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 7 10:55:14 2022 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Jul 9 11:42:49 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=de8ab913
Revert "sys-devel/binutils: Prevent relinking on install, try 1"
This reverts commit 8ea456d072e46530ea53f04fe8935693fab59093.
This plainly didn't work. What I changed did not prevent install-time
relinking, and as far as I understand the situation now, relinking is also
correct here.
So forget about 2.37_p1-r3 and 2.38-r3, I'll add -r4 versions in a later
commit.
What is incorrect is the library search dir for relinking.
Bug: https://bugs.gentoo.org/834720
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.37_p1-r3.ebuild | 476 -------------------------
sys-devel/binutils/binutils-2.38-r3.ebuild | 484 --------------------------
sys-devel/binutils/binutils-9999.ebuild | 21 +-
3 files changed, 3 insertions(+), 978 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.37_p1-r3.ebuild b/sys-devel/binutils/binutils-2.37_p1-r3.ebuild
deleted file mode 100644
index b6100c1d6a22..000000000000
--- a/sys-devel/binutils/binutils-2.37_p1-r3.ebuild
+++ /dev/null
@@ -1,476 +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 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=2
-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 ~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. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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() {
- # Setup some paths
- LIBPATH=/usr/$(get_libdir)/binutils/${CTARGET}/${PV}
- INCPATH=${LIBPATH}/include
- DATAPATH=/usr/share/binutils-data/${CTARGET}/${PV}
-
- # see Note [tooldir hack for ldscripts]
- if is_cross ; then
- TOOLPATH=/usr/${CHOST}/${CTARGET}
- BINPATH=${TOOLPATH}/binutils-bin/${PV}
- else
- BINPATH=/usr/${CTARGET}/binutils-bin/${PV}
- fi
-
- # Make sure we filter $LINGUAS so that only ones that
- # actually work make it through #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}"
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- # Available from 2.35 on
- --enable-textrel-check=warning
- # Works better than vapier's patch... #808787
- --enable-new-dtags
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #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. #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
- myconf+=( $(use_enable pgo pgo-build lto) )
-
- if use pgo ; then
- export BUILD_CFLAGS="${CFLAGS}"
- fi
- fi
-
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- if is_cross ; then
- emake V=1 tooldir="${EPREFIX}${TOOLPATH}" all
- else
- emake V=1 all
- fi
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
-
- # bug 637066
- filter-flags -Wall -Wreturn-type
-
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
-
- # see Note [tooldir hack for ldscripts]
- emake V=1 DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
-
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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}/
- 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}"
- 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}
-#
-# Now, this would all be very nice except for the fact that the changed
-# directory makes libtool re-link libraries during the install phase.
-# It uses libraries from the system installation to do that (bad)
-# and fails if it cant handle these (e.g. newer LTO version than in
-# current gcc, see bugs 834720 and 838925).
-#
-# So, we apply this whole hack only for cross builds.
diff --git a/sys-devel/binutils/binutils-2.38-r3.ebuild b/sys-devel/binutils/binutils-2.38-r3.ebuild
deleted file mode 100644
index 3fd587616c36..000000000000
--- a/sys-devel/binutils/binutils-2.38-r3.ebuild
+++ /dev/null
@@ -1,484 +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 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. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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}
-
- # see Note [tooldir hack for ldscripts]
- if is_cross ; then
- TOOLPATH=/usr/${CHOST}/${CTARGET}
- BINPATH=${TOOLPATH}/binutils-bin/${PV}
- else
- BINPATH=/usr/${CTARGET}/binutils-bin/${PV}
- fi
-
- # Make sure we filter $LINGUAS so that only ones that
- # actually work make it through #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}"
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && myconf+=( --enable-secureplt )
-
- # mips can't do hash-style=gnu ...
- if [[ $(tc-arch) != mips ]] ; then
- myconf+=( --enable-default-hash-style=gnu )
- fi
-
- myconf+=(
- # (--disable-silent-rules should get passed automatically w/ econf which we use
- # in >= 2.39, so can drop it then.)
- --disable-silent-rules
- --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. #497268
- --enable-install-libiberty
- # Available from 2.35 on
- --enable-textrel-check=warning
- # Works better than vapier's patch... #808787
- --enable-new-dtags
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #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. #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
- myconf+=( $(use_enable pgo pgo-build lto) )
-
- if use pgo ; then
- export BUILD_CFLAGS="${CFLAGS}"
- fi
- fi
-
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- if is_cross ; then
- emake V=1 tooldir="${EPREFIX}${TOOLPATH}" all
- else
- emake V=1 all
- fi
-
- # 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}"
-
- # bug 637066
- filter-flags -Wall -Wreturn-type
-
- emake -k V=1 check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
-
- # see Note [tooldir hack for ldscripts]
- emake V=1 DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
-
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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}/
- 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}"
- 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}
-#
-# Now, this would all be very nice except for the fact that the changed
-# directory makes libtool re-link libraries during the install phase.
-# It uses libraries from the system installation to do that (bad)
-# and fails if it cant handle these (e.g. newer LTO version than in
-# current gcc, see bugs 834720 and 838925).
-#
-# So, we apply this whole hack only for cross builds.
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index ae887224952e..ec3589ae100a 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -157,14 +157,12 @@ src_configure() {
LIBPATH=/usr/$(get_libdir)/binutils/${CTARGET}/${PV}
INCPATH=${LIBPATH}/include
DATAPATH=/usr/share/binutils-data/${CTARGET}/${PV}
-
- # see Note [tooldir hack for ldscripts]
if is_cross ; then
TOOLPATH=/usr/${CHOST}/${CTARGET}
- BINPATH=${TOOLPATH}/binutils-bin/${PV}
else
- BINPATH=/usr/${CTARGET}/binutils-bin/${PV}
+ 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
@@ -310,11 +308,7 @@ src_compile() {
cd "${MY_BUILDDIR}" || die
# see Note [tooldir hack for ldscripts]
- if is_cross ; then
- emake V=1 tooldir="${EPREFIX}${TOOLPATH}" all
- else
- emake V=1 all
- fi
+ emake V=1 tooldir="${EPREFIX}${TOOLPATH}" all
# only build info pages if the user wants them
if use doc ; then
@@ -342,7 +336,6 @@ src_install() {
# 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
@@ -486,11 +479,3 @@ pkg_postrm() {
# ${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}
-#
-# Now, this would all be very nice except for the fact that the changed
-# directory makes libtool re-link libraries during the install phase.
-# It uses libraries from the system installation to do that (bad)
-# and fails if it cant handle these (e.g. newer LTO version than in
-# current gcc, see bugs 834720 and 838925).
-#
-# So, we apply this whole hack only for cross builds.
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-07-27 7:55 Agostino Sarubbo
0 siblings, 0 replies; 477+ messages in thread
From: Agostino Sarubbo @ 2022-07-27 7:55 UTC (permalink / raw
To: gentoo-commits
commit: dfb145a96588642696f398e7e00efc63841f3f5d
Author: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
AuthorDate: Wed Jul 27 07:55:21 2022 +0000
Commit: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
CommitDate: Wed Jul 27 07:55:21 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dfb145a9
sys-devel/binutils: ppc stable wrt bug #856955
Signed-off-by: Agostino Sarubbo <ago <AT> gentoo.org>
sys-devel/binutils/binutils-2.38-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.38-r2.ebuild b/sys-devel/binutils/binutils-2.38-r2.ebuild
index dcf30dbb65a6..dc7ef22b4891 100644
--- a/sys-devel/binutils/binutils-2.38-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.38-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-07-27 7:55 Agostino Sarubbo
0 siblings, 0 replies; 477+ messages in thread
From: Agostino Sarubbo @ 2022-07-27 7:55 UTC (permalink / raw
To: gentoo-commits
commit: abb72092877eda66bb3474438bf5bdd8074a9c17
Author: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
AuthorDate: Wed Jul 27 07:55:46 2022 +0000
Commit: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
CommitDate: Wed Jul 27 07:55:46 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=abb72092
sys-devel/binutils: sparc stable wrt bug #856955
Signed-off-by: Agostino Sarubbo <ago <AT> gentoo.org>
sys-devel/binutils/binutils-2.38-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.38-r2.ebuild b/sys-devel/binutils/binutils-2.38-r2.ebuild
index dc7ef22b4891..c67a8c8fa403 100644
--- a/sys-devel/binutils/binutils-2.38-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.38-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ~ppc64 ~riscv ~s390 sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-07-27 8:00 Agostino Sarubbo
0 siblings, 0 replies; 477+ messages in thread
From: Agostino Sarubbo @ 2022-07-27 8:00 UTC (permalink / raw
To: gentoo-commits
commit: 332b8596c945fb46169ef67c4054666f3e616ac6
Author: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
AuthorDate: Wed Jul 27 08:00:23 2022 +0000
Commit: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
CommitDate: Wed Jul 27 08:00:23 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=332b8596
sys-devel/binutils: amd64 stable wrt bug #856955
Signed-off-by: Agostino Sarubbo <ago <AT> gentoo.org>
sys-devel/binutils/binutils-2.38-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.38-r2.ebuild b/sys-devel/binutils/binutils-2.38-r2.ebuild
index c67a8c8fa403..5bc642d00ad4 100644
--- a/sys-devel/binutils/binutils-2.38-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.38-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ~ppc64 ~riscv ~s390 sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-07-27 9:51 Agostino Sarubbo
0 siblings, 0 replies; 477+ messages in thread
From: Agostino Sarubbo @ 2022-07-27 9:51 UTC (permalink / raw
To: gentoo-commits
commit: 6a890c7be15a57e6e7cc1ece24899d33524b8884
Author: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
AuthorDate: Wed Jul 27 09:51:11 2022 +0000
Commit: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
CommitDate: Wed Jul 27 09:51:11 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6a890c7b
sys-devel/binutils: ppc64 stable wrt bug #856955
Signed-off-by: Agostino Sarubbo <ago <AT> gentoo.org>
sys-devel/binutils/binutils-2.38-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.38-r2.ebuild b/sys-devel/binutils/binutils-2.38-r2.ebuild
index 5bc642d00ad4..645deb3f9907 100644
--- a/sys-devel/binutils/binutils-2.38-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.38-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-07-28 7:07 Agostino Sarubbo
0 siblings, 0 replies; 477+ messages in thread
From: Agostino Sarubbo @ 2022-07-28 7:07 UTC (permalink / raw
To: gentoo-commits
commit: 712ccfa71ab41e1a22d7578945cc4aa240773394
Author: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 28 07:07:02 2022 +0000
Commit: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
CommitDate: Thu Jul 28 07:07:02 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=712ccfa7
sys-devel/binutils: arm stable wrt bug #856955
Signed-off-by: Agostino Sarubbo <ago <AT> gentoo.org>
sys-devel/binutils/binutils-2.38-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.38-r2.ebuild b/sys-devel/binutils/binutils-2.38-r2.ebuild
index 645deb3f9907..4e9e33895b29 100644
--- a/sys-devel/binutils/binutils-2.38-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.38-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-07-28 7:08 Agostino Sarubbo
0 siblings, 0 replies; 477+ messages in thread
From: Agostino Sarubbo @ 2022-07-28 7:08 UTC (permalink / raw
To: gentoo-commits
commit: f18ce22ab77358a7e8cd249085ee520489424777
Author: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 28 07:07:54 2022 +0000
Commit: Agostino Sarubbo <ago <AT> gentoo <DOT> org>
CommitDate: Thu Jul 28 07:07:54 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f18ce22a
sys-devel/binutils: arm64 stable wrt bug #856955
Signed-off-by: Agostino Sarubbo <ago <AT> gentoo.org>
sys-devel/binutils/binutils-2.38-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.38-r2.ebuild b/sys-devel/binutils/binutils-2.38-r2.ebuild
index 4e9e33895b29..9d758b36b137 100644
--- a/sys-devel/binutils/binutils-2.38-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.38-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-07-29 12:27 WANG Xuerui
0 siblings, 0 replies; 477+ messages in thread
From: WANG Xuerui @ 2022-07-29 12:27 UTC (permalink / raw
To: gentoo-commits
commit: 5da24bc82e365fc216c4cc9b90f124e85adc3144
Author: WANG Xuerui <xen0n <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 29 12:24:38 2022 +0000
Commit: WANG Xuerui <xen0n <AT> gentoo <DOT> org>
CommitDate: Fri Jul 29 12:26:46 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5da24bc8
sys-devel/binutils: 9999: don't die on already clean installed tree
Otherwise src_install fails with current main branch of binutils-gdb.
This changes the 9999 ebuild to share the same behavior with the 2.38
ebuilds.
Signed-off-by: WANG Xuerui <xen0n <AT> gentoo.org>
sys-devel/binutils/binutils-9999.ebuild | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index ec3589ae100a..194080fc1e25 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -417,10 +417,10 @@ src_install() {
fi
# Remove shared info pages
- rm -f "${ED}"/${DATAPATH}/info/{dir,configure.info,standards.info} || die
+ rm -f "${ED}"/${DATAPATH}/info/{dir,configure.info,standards.info}
# Trim all empty dirs
- find "${ED}" -depth -type d -exec rmdir {} + 2>/dev/null || die
+ find "${ED}" -depth -type d -exec rmdir {} + 2>/dev/null
}
pkg_postinst() {
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-08-05 19:06 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2022-08-05 19:06 UTC (permalink / raw
To: gentoo-commits
commit: 461943f09bfe6674177e0ef2fef051d3d4bddda3
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 5 19:05:50 2022 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Aug 5 19:06:23 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=461943f0
sys-devel/binutils: Version bump for testing, no keywords
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 +
sys-devel/binutils/binutils-2.39.ebuild | 481 ++++++++++++++++++++++++++++++++
2 files changed, 483 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index db3df3d2e7c4..4c4e0c5d62c2 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -13,3 +13,5 @@ DIST binutils-2.37_p1.tar.xz 22992196 BLAKE2B a8aa0f386d03a5b1466166ac7c40989c22
DIST binutils-2.38-patches-3.tar.xz 189068 BLAKE2B 5b14c90ab7dba253e92ad57b3a702fcbf48739dd0121ce8f739d88331da820ce44c35e16ac4bee394525c3a46bce980e9e1bbf4cbc9ce8a14fc324bc8fa059e7 SHA512 099266a8ef4272fd7f7552071e1892d114ed564a38b700df32e058ed691c6bfcd6f2454f649461f9c36594ea819a35d1e4cd2418609a2407be2a4f8885e500e3
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-2.tar.xz 16700 BLAKE2B 709220104a79fa1ff0cf1ee0c60336920112397478d7687f1a6484b1a3147b7e6233d393c0a6f335c69385236b7abc9dba6e6118a9d6940f226fcac56ba7da01 SHA512 ebaa169dc662b7e5f44a3aaf6d7de196d447c5485b4f87bb0f272d40921f6c1209a6804ed1d64dd4bfade82898c9f18f8fac2cf52e41bb70ec2b653c39203088
+DIST binutils-2.39.tar.xz 25167756 BLAKE2B ac6a5296c6586d53eaadcbffc5c399a6d79edf72450b9bb8b3525ce525129cef3d2eb90c85ef3bb3270b5a03b0e1ffb8f0b705f028158726f9777ebb8685066f SHA512 68e038f339a8c21faa19a57bbc447a51c817f47c2e06d740847c6e9cc3396c025d35d5369fa8c3f8b70414757c89f0e577939ddc0d70f283182504920f53b0a3
diff --git a/sys-devel/binutils/binutils-2.39.ebuild b/sys-devel/binutils/binutils-2.39.ebuild
new file mode 100644
index 000000000000..df7c2b678ef9
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.39.ebuild
@@ -0,0 +1,481 @@
+# 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 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=2
+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)
+ # live ebuild
+ #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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?
+ #--enable-default-execstack
+
+ # 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
+
+ # 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
+ 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-08-05 21:27 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2022-08-05 21:27 UTC (permalink / raw
To: gentoo-commits
commit: 83dcb4b4f8589fa7a0fd891948121c6c3ba9cdf8
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 5 21:26:39 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Aug 5 21:27:44 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=83dcb4b4
sys-devel/binutils: don't default-enable gold in 2.39+
It's not very active upstream, there's a bunch of build
failures which occur when actually using gold which
aren't fixed upstream, and we don't want to encourage
people to use it.
It's a waste of build time for most folks at
the moment.
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.39.ebuild | 2 +-
sys-devel/binutils/binutils-9999.ebuild | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.39.ebuild b/sys-devel/binutils/binutils-2.39.ebuild
index df7c2b678ef9..bfa59fe7bf31 100644
--- a/sys-devel/binutils/binutils-2.39.ebuild
+++ b/sys-devel/binutils/binutils-2.39.ebuild
@@ -8,7 +8,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 multitarget +nls pgo +plugins static-libs test vanilla"
+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)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 194080fc1e25..85363e570adc 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -8,7 +8,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 multitarget +nls pgo +plugins static-libs test vanilla"
+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)
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-08-06 3:50 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2022-08-06 3:50 UTC (permalink / raw
To: gentoo-commits
commit: bb3520929e5d7e4b358426126769875ce7b7a2bb
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Aug 6 03:23:55 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Aug 6 03:23:55 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bb352092
sys-devel/binutils: fix typo in comment
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.39.ebuild | 2 +-
sys-devel/binutils/binutils-9999.ebuild | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.39.ebuild b/sys-devel/binutils/binutils-2.39.ebuild
index bfa59fe7bf31..e7c6ccfbb247 100644
--- a/sys-devel/binutils/binutils-2.39.ebuild
+++ b/sys-devel/binutils/binutils-2.39.ebuild
@@ -254,7 +254,7 @@ src_configure() {
# 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?
- #--enable-default-execstack
+ #--disable-default-execstack
# Things to think about
#--enable-deterministic-archives
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 85363e570adc..c19f89fbf55e 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -254,7 +254,7 @@ src_configure() {
# 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?
- #--enable-default-execstack
+ #--disable-default-execstack
# Things to think about
#--enable-deterministic-archives
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-08-07 17:17 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2022-08-07 17:17 UTC (permalink / raw
To: gentoo-commits
commit: 97bb38691e7a20cbbf999f3a1fa38b966f53107c
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Aug 7 17:16:00 2022 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Aug 7 17:16:48 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=97bb3869
sys-devel/binutils: Bump 2.39 patchset to 3 (no revbump)
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 +-
sys-devel/binutils/binutils-2.39.ebuild | 4 ++--
sys-devel/binutils/binutils-9999.ebuild | 2 +-
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 4c4e0c5d62c2..63c7be532b46 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -13,5 +13,5 @@ DIST binutils-2.37_p1.tar.xz 22992196 BLAKE2B a8aa0f386d03a5b1466166ac7c40989c22
DIST binutils-2.38-patches-3.tar.xz 189068 BLAKE2B 5b14c90ab7dba253e92ad57b3a702fcbf48739dd0121ce8f739d88331da820ce44c35e16ac4bee394525c3a46bce980e9e1bbf4cbc9ce8a14fc324bc8fa059e7 SHA512 099266a8ef4272fd7f7552071e1892d114ed564a38b700df32e058ed691c6bfcd6f2454f649461f9c36594ea819a35d1e4cd2418609a2407be2a4f8885e500e3
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-2.tar.xz 16700 BLAKE2B 709220104a79fa1ff0cf1ee0c60336920112397478d7687f1a6484b1a3147b7e6233d393c0a6f335c69385236b7abc9dba6e6118a9d6940f226fcac56ba7da01 SHA512 ebaa169dc662b7e5f44a3aaf6d7de196d447c5485b4f87bb0f272d40921f6c1209a6804ed1d64dd4bfade82898c9f18f8fac2cf52e41bb70ec2b653c39203088
+DIST binutils-2.39-patches-3.tar.xz 57332 BLAKE2B 08bdcd35afb6310c5f61e8a93f60c624ff461a612d8b473b2cfc1d8eb94eedb311af0b39b5f8ac425f3676d8e1addd13a4b223983de2f6d579e50daec08d3881 SHA512 f8a1a908866637a39a3ad55d47304f3320ab663d299d8d231a873008a50bb2a09c89a2482394c017a2a73c2cfc48ed944e99b422fd5db19f829e45ff071bb659
DIST binutils-2.39.tar.xz 25167756 BLAKE2B ac6a5296c6586d53eaadcbffc5c399a6d79edf72450b9bb8b3525ce525129cef3d2eb90c85ef3bb3270b5a03b0e1ffb8f0b705f028158726f9777ebb8685066f SHA512 68e038f339a8c21faa19a57bbc447a51c817f47c2e06d740847c6e9cc3396c025d35d5369fa8c3f8b70414757c89f0e577939ddc0d70f283182504920f53b0a3
diff --git a/sys-devel/binutils/binutils-2.39.ebuild b/sys-devel/binutils/binutils-2.39.ebuild
index e7c6ccfbb247..74f048c029db 100644
--- a/sys-devel/binutils/binutils-2.39.ebuild
+++ b/sys-devel/binutils/binutils-2.39.ebuild
@@ -19,7 +19,7 @@ REQUIRED_USE="default-gold? ( gold )"
# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
# for the patchsets
-PATCH_VER=2
+PATCH_VER=3
PATCH_DEV=dilfridge
if [[ ${PV} == 9999* ]]; then
@@ -33,7 +33,7 @@ else
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
SLOT=$(ver_cut 1-2)
# live ebuild
- #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index c19f89fbf55e..d19bdb17825d 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -33,7 +33,7 @@ else
https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
SLOT=$(ver_cut 1-2)
# live ebuild
- #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-08-07 23:16 WANG Xuerui
0 siblings, 0 replies; 477+ messages in thread
From: WANG Xuerui @ 2022-08-07 23:16 UTC (permalink / raw
To: gentoo-commits
commit: 0c36969226758016903d366fe72b90a73c75eeaa
Author: WANG Xuerui <xen0n <AT> gentoo <DOT> org>
AuthorDate: Sun Aug 7 23:15:18 2022 +0000
Commit: WANG Xuerui <xen0n <AT> gentoo <DOT> org>
CommitDate: Sun Aug 7 23:15:38 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0c369692
sys-devel/binutils: keyword 2.39 for ~loong
Missing piece of commit b3d41901b3018068.
Signed-off-by: WANG Xuerui <xen0n <AT> gentoo.org>
sys-devel/binutils/binutils-2.39.ebuild | 1 +
1 file changed, 1 insertion(+)
diff --git a/sys-devel/binutils/binutils-2.39.ebuild b/sys-devel/binutils/binutils-2.39.ebuild
index 74f048c029db..3b954f859b3a 100644
--- a/sys-devel/binutils/binutils-2.39.ebuild
+++ b/sys-devel/binutils/binutils-2.39.ebuild
@@ -34,6 +34,7 @@ else
SLOT=$(ver_cut 1-2)
# live ebuild
#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~loong"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-08-10 20:36 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2022-08-10 20:36 UTC (permalink / raw
To: gentoo-commits
commit: c1677ad122d5567fd6a8119f7a493229749e87fe
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 10 20:35:10 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Aug 10 20:35:14 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c1677ad1
sys-devel/binutils: disable emacs build for cross
Causes collisions w/ cross-*/binutils
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.38-r2.ebuild | 8 ++++----
sys-devel/binutils/binutils-2.39.ebuild | 8 ++++----
sys-devel/binutils/binutils-9999.ebuild | 8 ++++----
3 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.38-r2.ebuild b/sys-devel/binutils/binutils-2.38-r2.ebuild
index 71cc495774c1..b4b21afc9d21 100644
--- a/sys-devel/binutils/binutils-2.38-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.38-r2.ebuild
@@ -312,7 +312,7 @@ src_compile() {
emake V=1 info
fi
- use emacs && elisp-compile "${S}"/binutils/dwarf-mode.el
+ ! is_cross && use emacs && elisp-compile "${S}"/binutils/dwarf-mode.el
# we nuke the manpages when we're left with junk
# (like when we bootstrap, no perl -> no manpages)
@@ -406,7 +406,7 @@ src_install() {
dodoc opcodes/ChangeLog*
fi
- if use emacs ; then
+ if ! is_cross && use emacs ; then
elisp-install ${PN} "${S}"/binutils/dwarf-mode.el{,c}
elisp-site-file-install "${FILESDIR}/50${PN}-gentoo.el"
fi
@@ -423,7 +423,7 @@ pkg_postinst() {
[[ -e ${EROOT}/etc/env.d/binutils/config-${CTARGET} ]] && return 0
binutils-config ${CTARGET}-${PV}
- use emacs && elisp-site-regen
+ ! is_cross && use emacs && elisp-site-regen
}
pkg_postrm() {
@@ -448,7 +448,7 @@ pkg_postrm() {
binutils-config ${CTARGET}-${PV}
fi
- use emacs && elisp-site-regen
+ ! is_cross && use emacs && elisp-site-regen
}
# Note [slotting support]
diff --git a/sys-devel/binutils/binutils-2.39.ebuild b/sys-devel/binutils/binutils-2.39.ebuild
index 3cc9c5cdcc87..22183040ab35 100644
--- a/sys-devel/binutils/binutils-2.39.ebuild
+++ b/sys-devel/binutils/binutils-2.39.ebuild
@@ -317,7 +317,7 @@ src_compile() {
emake V=1 info
fi
- use emacs && elisp-compile "${S}"/binutils/dwarf-mode.el
+ ! is_cross && use emacs && elisp-compile "${S}"/binutils/dwarf-mode.el
# we nuke the manpages when we're left with junk
# (like when we bootstrap, no perl -> no manpages)
@@ -420,7 +420,7 @@ src_install() {
dodoc opcodes/ChangeLog*
fi
- if use emacs ; then
+ if ! is_cross && use emacs ; then
elisp-install ${PN} "${S}"/binutils/dwarf-mode.el{,c}
elisp-site-file-install "${FILESDIR}/50${PN}-gentoo.el"
fi
@@ -437,7 +437,7 @@ pkg_postinst() {
[[ -e ${EROOT}/etc/env.d/binutils/config-${CTARGET} ]] && return 0
binutils-config ${CTARGET}-${PV}
- use emacs && elisp-site-regen
+ ! is_cross && use emacs && elisp-site-regen
}
pkg_postrm() {
@@ -462,7 +462,7 @@ pkg_postrm() {
binutils-config ${CTARGET}-${PV}
fi
- use emacs && elisp-site-regen
+ ! is_cross && use emacs && elisp-site-regen
}
# Note [slotting support]
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index c3d9de773f3a..c2ab796642a4 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -316,7 +316,7 @@ src_compile() {
emake V=1 info
fi
- use emacs && elisp-compile "${S}"/binutils/dwarf-mode.el
+ ! is_cross && use emacs && elisp-compile "${S}"/binutils/dwarf-mode.el
# we nuke the manpages when we're left with junk
# (like when we bootstrap, no perl -> no manpages)
@@ -419,7 +419,7 @@ src_install() {
dodoc opcodes/ChangeLog*
fi
- if use emacs ; then
+ if ! is_cross && use emacs ; then
elisp-install ${PN} "${S}"/binutils/dwarf-mode.el{,c}
elisp-site-file-install "${FILESDIR}/50${PN}-gentoo.el"
fi
@@ -436,7 +436,7 @@ pkg_postinst() {
[[ -e ${EROOT}/etc/env.d/binutils/config-${CTARGET} ]] && return 0
binutils-config ${CTARGET}-${PV}
- use emacs && elisp-site-regen
+ ! is_cross && use emacs && elisp-site-regen
}
pkg_postrm() {
@@ -461,7 +461,7 @@ pkg_postrm() {
binutils-config ${CTARGET}-${PV}
fi
- use emacs && elisp-site-regen
+ ! is_cross && use emacs && elisp-site-regen
}
# Note [slotting support]
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-08-16 0:52 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2022-08-16 0:52 UTC (permalink / raw
To: gentoo-commits
commit: 19a6ed0e8ef5053c0ff55e8edd923efee35a98d4
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 16 00:40:23 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Aug 16 00:40:23 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=19a6ed0e
sys-devel/binutils: update execstack comment
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.39.ebuild | 2 +-
sys-devel/binutils/binutils-9999.ebuild | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.39.ebuild b/sys-devel/binutils/binutils-2.39.ebuild
index 22183040ab35..a97dadc161b8 100644
--- a/sys-devel/binutils/binutils-2.39.ebuild
+++ b/sys-devel/binutils/binutils-2.39.ebuild
@@ -256,7 +256,7 @@ src_configure() {
# 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
+ #--disable-default-execstack (or is it --enable-default-execstack=no? docs are confusing)
# Things to think about
#--enable-deterministic-archives
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index c2ab796642a4..aa5e1dcfdffe 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -255,7 +255,7 @@ src_configure() {
# 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
+ #--disable-default-execstack (or is it --enable-default-execstack=no? docs are confusing)
# Things to think about
#--enable-deterministic-archives
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-08-24 7:32 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2022-08-24 7:32 UTC (permalink / raw
To: gentoo-commits
commit: a586458ec2ebb2d13b50dc5d95051ec2033c2d29
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 24 07:29:39 2022 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Wed Aug 24 07:31:51 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a586458e
sys-devel/binutils: 2.39 patchlevel bump
Forgot this on my laptop drive for some days
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 +-
sys-devel/binutils/binutils-2.39.ebuild | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 63c7be532b46..d38b02ef8612 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -13,5 +13,5 @@ DIST binutils-2.37_p1.tar.xz 22992196 BLAKE2B a8aa0f386d03a5b1466166ac7c40989c22
DIST binutils-2.38-patches-3.tar.xz 189068 BLAKE2B 5b14c90ab7dba253e92ad57b3a702fcbf48739dd0121ce8f739d88331da820ce44c35e16ac4bee394525c3a46bce980e9e1bbf4cbc9ce8a14fc324bc8fa059e7 SHA512 099266a8ef4272fd7f7552071e1892d114ed564a38b700df32e058ed691c6bfcd6f2454f649461f9c36594ea819a35d1e4cd2418609a2407be2a4f8885e500e3
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-3.tar.xz 57332 BLAKE2B 08bdcd35afb6310c5f61e8a93f60c624ff461a612d8b473b2cfc1d8eb94eedb311af0b39b5f8ac425f3676d8e1addd13a4b223983de2f6d579e50daec08d3881 SHA512 f8a1a908866637a39a3ad55d47304f3320ab663d299d8d231a873008a50bb2a09c89a2482394c017a2a73c2cfc48ed944e99b422fd5db19f829e45ff071bb659
+DIST binutils-2.39-patches-4.tar.xz 62880 BLAKE2B 5cc335769d9c88417583ce059c61d0d7655f3ab9ac69647e6e2f65bd3a9dd143fe34c50bb68ab81d4226ddd0e4ef405d7102f67375a672eedc3d01b92b8ef497 SHA512 ef81350979af64cf35800b39982c84657a5c01362c01d221164a43d8f0dd80276c9f052c55d24516fad457e6671a58d467d71b5edd6c1f53fddbdb31172a21ee
DIST binutils-2.39.tar.xz 25167756 BLAKE2B ac6a5296c6586d53eaadcbffc5c399a6d79edf72450b9bb8b3525ce525129cef3d2eb90c85ef3bb3270b5a03b0e1ffb8f0b705f028158726f9777ebb8685066f SHA512 68e038f339a8c21faa19a57bbc447a51c817f47c2e06d740847c6e9cc3396c025d35d5369fa8c3f8b70414757c89f0e577939ddc0d70f283182504920f53b0a3
diff --git a/sys-devel/binutils/binutils-2.39.ebuild b/sys-devel/binutils/binutils-2.39.ebuild
index a97dadc161b8..d3766ed10148 100644
--- a/sys-devel/binutils/binutils-2.39.ebuild
+++ b/sys-devel/binutils/binutils-2.39.ebuild
@@ -19,7 +19,7 @@ REQUIRED_USE="default-gold? ( gold )"
# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
# for the patchsets
-PATCH_VER=3
+PATCH_VER=4
PATCH_DEV=dilfridge
if [[ ${PV} == 9999* ]]; then
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-08-27 18:07 Arthur Zamarin
0 siblings, 0 replies; 477+ messages in thread
From: Arthur Zamarin @ 2022-08-27 18:07 UTC (permalink / raw
To: gentoo-commits
commit: df62acffad80c9b366b5f4f92951be8353884c87
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Sat Aug 27 18:06:52 2022 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Sat Aug 27 18:06:52 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=df62acff
sys-devel/binutils: Stabilize 2.38-r2 hppa, #856955
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
sys-devel/binutils/binutils-2.38-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.38-r2.ebuild b/sys-devel/binutils/binutils-2.38-r2.ebuild
index b4b21afc9d21..7f49d0e9d113 100644
--- a/sys-devel/binutils/binutils-2.38-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.38-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-09-04 8:14 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2022-09-04 8:14 UTC (permalink / raw
To: gentoo-commits
commit: 9dd9194a99a73940b178506637fb4343f767e7d5
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Sep 4 08:09:39 2022 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Sep 4 08:09:39 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9dd9194a
sys-devel/binutils: Re-keyword 2.39
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/{binutils-2.39.ebuild => binutils-2.39-r1.ebuild} | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.39.ebuild b/sys-devel/binutils/binutils-2.39-r1.ebuild
similarity index 99%
rename from sys-devel/binutils/binutils-2.39.ebuild
rename to sys-devel/binutils/binutils-2.39-r1.ebuild
index 297f02af663b..ed23cdc5a829 100644
--- a/sys-devel/binutils/binutils-2.39.ebuild
+++ b/sys-devel/binutils/binutils-2.39-r1.ebuild
@@ -32,9 +32,7 @@ else
[[ -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)
- # live ebuild
- #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
- KEYWORDS="~loong"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-09-06 21:34 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2022-09-06 21:34 UTC (permalink / raw
To: gentoo-commits
commit: 001f2d2011a09562d882943e0b2de72a0ed86046
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Sep 6 21:33:35 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Sep 6 21:33:35 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=001f2d20
sys-devel/binutils: fix automagic msgpack dep
Closes: https://bugs.gentoo.org/865875
Signed-off-by: Sam James <sam <AT> gentoo.org>
.../binutils/{binutils-2.39-r1.ebuild => binutils-2.39-r2.ebuild} | 5 ++++-
sys-devel/binutils/binutils-9999.ebuild | 6 ++++--
2 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.39-r1.ebuild b/sys-devel/binutils/binutils-2.39-r2.ebuild
similarity index 99%
rename from sys-devel/binutils/binutils-2.39-r1.ebuild
rename to sys-devel/binutils/binutils-2.39-r2.ebuild
index 816ef121f08a..140158fa69ca 100644
--- a/sys-devel/binutils/binutils-2.39-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.39-r2.ebuild
@@ -275,10 +275,13 @@ src_configure() {
# {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
+ # 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.
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 033e36f10292..e52f674b5d25 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -32,7 +32,6 @@ else
[[ -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)
- # live ebuild
#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
@@ -276,10 +275,13 @@ src_configure() {
# {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
+ # 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.
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-09-06 21:34 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2022-09-06 21:34 UTC (permalink / raw
To: gentoo-commits
commit: ae4d71b313c1c821b3cbfc97de4e925cafe01ca9
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Sep 6 21:34:17 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Sep 6 21:34:17 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ae4d71b3
sys-devel/binutils: fix UnusedInherits (elisp-common)
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.39-r2.ebuild | 3 ++-
sys-devel/binutils/binutils-9999.ebuild | 3 ++-
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.39-r2.ebuild b/sys-devel/binutils/binutils-2.39-r2.ebuild
index 140158fa69ca..e4e43cdd95f3 100644
--- a/sys-devel/binutils/binutils-2.39-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.39-r2.ebuild
@@ -3,10 +3,11 @@
EAPI=7
-inherit elisp-common libtool flag-o-matic gnuconfig strip-linguas toolchain-funcs
+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 )"
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index e52f674b5d25..8025c9da680b 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -3,10 +3,11 @@
EAPI=7
-inherit elisp-common libtool flag-o-matic gnuconfig strip-linguas toolchain-funcs
+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 )"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-09-16 20:29 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2022-09-16 20:29 UTC (permalink / raw
To: gentoo-commits
commit: 6f7bd022bf2da3773a65486256b22eccc4e91f25
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 16 20:26:46 2022 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Sep 16 20:29:00 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6f7bd022
sys-devel/binutils: remove old
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 -
sys-devel/binutils/binutils-2.38-r1.ebuild | 460 -----------------------------
2 files changed, 461 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index d38b02ef8612..7e7af0fcf185 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -10,7 +10,6 @@ DIST binutils-2.36.1-patches-5.tar.xz 44388 BLAKE2B 1dadb012fe35ec5fb0c5a15d348a
DIST binutils-2.36.1.tar.xz 22772248 BLAKE2B 03fbfbedd6dba2beaa836b1ed254eddd7a54a163d3061fd93edd2b9591cae24ba049b26658c524b5ccecc2f22d431dfa168218d2531aa356945c994fbbe896fa SHA512 cc24590bcead10b90763386b6f96bb027d7594c659c2d95174a6352e8b98465a50ec3e4088d0da038428abe059bbc4ae5f37b269f31a40fc048072c8a234f4e9
DIST binutils-2.37_p1-patches-2.tar.xz 31956 BLAKE2B 39c48628d0e2d7f3a8cf11be391b51dc64c7a534a3e64950fd992907c34fa36bebdf95cc5a184dd5b35e134e0c20376b5883abbf96ae57403c55377e615a6790 SHA512 c927aafa8c87e3b68ad28da5a17edf5647591ec26feeb56c743bc6637ffb10832b50ec6fd8442e80e40628b624e31b2f0f0b5f1193e77dc7e5442df0cb8cc8f1
DIST binutils-2.37_p1.tar.xz 22992196 BLAKE2B a8aa0f386d03a5b1466166ac7c40989c228351ccf0949a9b462b4d4615d70ab7e1a45351299140a42baf39c317b8007733c253eb547ee1dfadb612addde11621 SHA512 46c297ec2a7a5b81d1c6e3f16486a6dc2860a07520fe2dd8871d1eb5160065bbe2cc6b0415d5352bf12284133e5817a4e429e6077182d615e969bd1a8f52ed28
-DIST binutils-2.38-patches-3.tar.xz 189068 BLAKE2B 5b14c90ab7dba253e92ad57b3a702fcbf48739dd0121ce8f739d88331da820ce44c35e16ac4bee394525c3a46bce980e9e1bbf4cbc9ce8a14fc324bc8fa059e7 SHA512 099266a8ef4272fd7f7552071e1892d114ed564a38b700df32e058ed691c6bfcd6f2454f649461f9c36594ea819a35d1e4cd2418609a2407be2a4f8885e500e3
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
diff --git a/sys-devel/binutils/binutils-2.38-r1.ebuild b/sys-devel/binutils/binutils-2.38-r1.ebuild
deleted file mode 100644
index 0041aec7eb5e..000000000000
--- a/sys-devel/binutils/binutils-2.38-r1.ebuild
+++ /dev/null
@@ -1,460 +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 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=3
-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 ~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. #562460
- sed -i \
- -e 's:@bfdlibdir@:@libdir@:g' \
- -e 's:@bfdincludedir@:@includedir@:g' \
- {bfd,opcodes}/Makefile.in || die
-
- # Fix locale issues if possible #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
-
- # Fix conflicts with newer glibc #272594
- if [[ -e libiberty/testsuite/test-demangle.c ]] ; then
- sed -i 's:\<getline\>:get_line:g' libiberty/testsuite/test-demangle.c
- 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() {
- # 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 #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}"
- 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. #446946
- # We used to do it for everyone, but it's slow on 32bit arches. #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
- )
-
- # glibc-2.3.6 lacks support for this ... so rather than force glibc-2.5+
- # on everyone in alpha (for now), we'll just enable it when possible
- has_version ">=${CATEGORY}/glibc-2.5" && myconf+=( --enable-secureplt )
- has_version ">=sys-libs/glibc-2.5" && 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. #497268
- --enable-install-libiberty
- # Available from 2.35 on
- --enable-textrel-check=warning
- # Works better than vapier's patch... #808787
- --enable-new-dtags
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- ${EXTRA_ECONF}
- # Disable modules that are in a combined binutils/gdb tree. #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. #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
- myconf+=( $(use_enable pgo pgo-build lto) )
-
- if use pgo ; then
- export BUILD_CFLAGS="${CFLAGS}"
- fi
- fi
-
- echo ./configure "${myconf[@]}"
- "${S}"/configure "${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}"
- # see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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}"
-
- # bug 637066
- filter-flags -Wall -Wreturn-type
-
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}"
- # see Note [tooldir hack for ldscripts]
- emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
- rm -rf "${ED}"/${LIBPATH}/bin
- use static-libs || find "${ED}" -name '*.la' -delete
-
- # Newer versions of binutils get fancy with ${LIBPATH} #171905
- cd "${ED}"/${LIBPATH}
- 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}
- for x in * ; do
- mv ${x} ${x/${CTARGET}-}
- 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}/
- 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}"
- 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-09-29 21:51 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2022-09-29 21:51 UTC (permalink / raw
To: gentoo-commits
commit: 205896d24b7d4cbfa7bbeb9afa82b2378f2fb259
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Sep 29 21:51:36 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Sep 29 21:51:42 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=205896d2
sys-devel/binutils: drop unused eclass (elisp-common)
Remnant of USE=emacs before we split into app-emacs/dwarf-mode.
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.38-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.38-r2.ebuild b/sys-devel/binutils/binutils-2.38-r2.ebuild
index 557b4622882d..658541bd3d7a 100644
--- a/sys-devel/binutils/binutils-2.38-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.38-r2.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-inherit elisp-common libtool flag-o-matic gnuconfig strip-linguas toolchain-funcs
+inherit libtool flag-o-matic gnuconfig strip-linguas toolchain-funcs
DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-09-29 21:51 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2022-09-29 21:51 UTC (permalink / raw
To: gentoo-commits
commit: 94b00d857af9975fe34bebd1d766167b4b7ebf95
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Sep 29 21:50:58 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Sep 29 21:51:42 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=94b00d85
sys-devel/binutils: add zstd support to live
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-9999.ebuild | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 8025c9da680b..20b0575b0602 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -9,7 +9,7 @@ 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"
+IUSE="cet default-gold doc gold gprofng multitarget +nls pgo +plugins static-libs test zstd vanilla"
REQUIRED_USE="default-gold? ( gold )"
# Variables that can be set here (ignored for live ebuilds)
@@ -53,6 +53,7 @@ is_cross() { [[ ${CHOST} != ${CTARGET} ]] ; }
RDEPEND="
>=sys-devel/binutils-config-3
sys-libs/zlib
+ zstd? ( app-arch/zstd:= )
"
DEPEND="${RDEPEND}"
BDEPEND="
@@ -267,6 +268,8 @@ src_configure() {
--with-bugurl="$(toolchain-binutils_bugurl)"
--with-pkgversion="$(toolchain-binutils_pkgversion)"
$(use_enable static-libs static)
+ $(use_with zstd)
+
# Disable modules that are in a combined binutils/gdb tree, bug #490566
--disable-{gdb,libdecnumber,readline,sim}
# Strip out broken static link flags.
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-09-29 22:32 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2022-09-29 22:32 UTC (permalink / raw
To: gentoo-commits
commit: 3a63185539d9f73f14eaf705cc17fc1ab4a45487
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Sep 29 22:32:02 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Sep 29 22:32:02 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3a631855
sys-devel/binutils: sort IUSE
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-9999.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 20b0575b0602..c1e00302b97f 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -9,7 +9,7 @@ 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 zstd vanilla"
+IUSE="cet default-gold doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla zstd"
REQUIRED_USE="default-gold? ( gold )"
# Variables that can be set here (ignored for live ebuilds)
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-10-08 14:55 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2022-10-08 14:55 UTC (permalink / raw
To: gentoo-commits
commit: 07d1d9698516cc66a23d7c036694c609a27057b9
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Oct 8 14:54:22 2022 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Oct 8 14:55:27 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=07d1d969
sys-devel/binutils: 2.39 patchset bump (untested/unkeyworded)
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.39-r3.ebuild | 492 +++++++++++++++++++++++++++++
2 files changed, 493 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 7e7af0fcf185..d01a3b978288 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -13,4 +13,5 @@ DIST binutils-2.37_p1.tar.xz 22992196 BLAKE2B a8aa0f386d03a5b1466166ac7c40989c22
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
diff --git a/sys-devel/binutils/binutils-2.39-r3.ebuild b/sys-devel/binutils/binutils-2.39-r3.ebuild
new file mode 100644
index 000000000000..620758c6608a
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.39-r3.ebuild
@@ -0,0 +1,492 @@
+# 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=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="~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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-10-09 11:53 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2022-10-09 11:53 UTC (permalink / raw
To: gentoo-commits
commit: 4982f3666ad8cf981fbd8477220393f51b5c7183
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Oct 9 11:50:40 2022 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Oct 9 11:53:22 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4982f366
sys-devel/binutils: keyword 2.39-r3
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.39-r3.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.39-r3.ebuild b/sys-devel/binutils/binutils-2.39-r3.ebuild
index 620758c6608a..27930510b19c 100644
--- a/sys-devel/binutils/binutils-2.39-r3.ebuild
+++ b/sys-devel/binutils/binutils-2.39-r3.ebuild
@@ -33,7 +33,7 @@ else
[[ -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"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-10-17 0:58 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2022-10-17 0:58 UTC (permalink / raw
To: gentoo-commits
commit: 8db889827661b38cfbe74f335e095a4288a83ff7
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Oct 17 00:56:55 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Oct 17 00:57:48 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8db88982
sys-devel/binutils: drop forced exec stack warnings for alt-arches
This keeps them on by default, but it doesn't override the build
system disabling them for MIPS and so on.
I've asked upstream about the unexpected/counterintuitive
behaviour: https://sourceware.org/bugzilla/show_bug.cgi?id=29592#c10.
Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=29592
Signed-off-by: Sam James <sam <AT> gentoo.org>
.../{binutils-2.39-r3.ebuild => binutils-2.39-r4.ebuild} | 12 ++++++------
sys-devel/binutils/binutils-9999.ebuild | 12 ++++++------
2 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.39-r3.ebuild b/sys-devel/binutils/binutils-2.39-r4.ebuild
similarity index 97%
rename from sys-devel/binutils/binutils-2.39-r3.ebuild
rename to sys-devel/binutils/binutils-2.39-r4.ebuild
index 27930510b19c..3ac03a449cb4 100644
--- a/sys-devel/binutils/binutils-2.39-r3.ebuild
+++ b/sys-devel/binutils/binutils-2.39-r4.ebuild
@@ -248,12 +248,12 @@ src_configure() {
# 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?
+ # These hardening options are available from 2.39+ but
+ # they unconditionally enable the behaviour even on arches
+ # where e.g. execstacks can't be avoided.
+ # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
+ #--enable-warn-execstack
+ #--enable-warn-rwx-segments
#--disable-default-execstack (or is it --enable-default-execstack=no? docs are confusing)
# Things to think about
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index c1e00302b97f..29f4e844ce60 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -249,12 +249,12 @@ src_configure() {
# 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?
+ # These hardening options are available from 2.39+ but
+ # they unconditionally enable the behaviour even on arches
+ # where e.g. execstacks can't be avoided.
+ # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
+ #--enable-warn-execstack
+ #--enable-warn-rwx-segments
#--disable-default-execstack (or is it --enable-default-execstack=no? docs are confusing)
# Things to think about
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-12-02 20:37 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2022-12-02 20:37 UTC (permalink / raw
To: gentoo-commits
commit: 3175c94028946f663546abe27afb5bd79990236f
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Dec 2 20:35:50 2022 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Dec 2 20:35:50 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3175c940
sys-devel/binutils: drop 2.39-r2
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 -
sys-devel/binutils/binutils-2.39-r2.ebuild | 492 -----------------------------
2 files changed, 493 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index d01a3b978288..0de4b0fbbc17 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -12,6 +12,5 @@ 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
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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-12-31 15:40 Arthur Zamarin
0 siblings, 0 replies; 477+ messages in thread
From: Arthur Zamarin @ 2022-12-31 15:40 UTC (permalink / raw
To: gentoo-commits
commit: f1dd2c8c3333cc1c297598c77da0dc70e6714fec
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 31 15:38:58 2022 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Sat Dec 31 15:38:58 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f1dd2c8c
sys-devel/binutils: Stabilize 2.39-r4 amd64, #880101
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
sys-devel/binutils/binutils-2.39-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.39-r4.ebuild b/sys-devel/binutils/binutils-2.39-r4.ebuild
index 8a51b198d221..5441225fcf11 100644
--- a/sys-devel/binutils/binutils-2.39-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.39-r4.ebuild
@@ -33,7 +33,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-12-31 15:40 Arthur Zamarin
0 siblings, 0 replies; 477+ messages in thread
From: Arthur Zamarin @ 2022-12-31 15:40 UTC (permalink / raw
To: gentoo-commits
commit: 82373349864e8c6838ad3e88ac31ac8d8b4f505b
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 31 15:39:02 2022 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Sat Dec 31 15:39:02 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=82373349
sys-devel/binutils: Stabilize 2.39-r4 arm, #880101
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
sys-devel/binutils/binutils-2.39-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.39-r4.ebuild b/sys-devel/binutils/binutils-2.39-r4.ebuild
index 5441225fcf11..0128adc418c9 100644
--- a/sys-devel/binutils/binutils-2.39-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.39-r4.ebuild
@@ -33,7 +33,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-12-31 15:40 Arthur Zamarin
0 siblings, 0 replies; 477+ messages in thread
From: Arthur Zamarin @ 2022-12-31 15:40 UTC (permalink / raw
To: gentoo-commits
commit: e8a49c5cf2b5948c1cda1789f37f07ad70803797
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 31 15:39:06 2022 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Sat Dec 31 15:39:06 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e8a49c5c
sys-devel/binutils: Stabilize 2.39-r4 arm64, #880101
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
sys-devel/binutils/binutils-2.39-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.39-r4.ebuild b/sys-devel/binutils/binutils-2.39-r4.ebuild
index 0128adc418c9..373e99389826 100644
--- a/sys-devel/binutils/binutils-2.39-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.39-r4.ebuild
@@ -33,7 +33,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-12-31 15:40 Arthur Zamarin
0 siblings, 0 replies; 477+ messages in thread
From: Arthur Zamarin @ 2022-12-31 15:40 UTC (permalink / raw
To: gentoo-commits
commit: e241ac11d5ec98ccdcf2891e8b8927e57bab90cb
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 31 15:39:15 2022 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Sat Dec 31 15:39:15 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e241ac11
sys-devel/binutils: Stabilize 2.39-r4 ppc64, #880101
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
sys-devel/binutils/binutils-2.39-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.39-r4.ebuild b/sys-devel/binutils/binutils-2.39-r4.ebuild
index c19b022ce0ef..51ca0a35a066 100644
--- a/sys-devel/binutils/binutils-2.39-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.39-r4.ebuild
@@ -33,7 +33,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-12-31 15:40 Arthur Zamarin
0 siblings, 0 replies; 477+ messages in thread
From: Arthur Zamarin @ 2022-12-31 15:40 UTC (permalink / raw
To: gentoo-commits
commit: 55ed80dc65947961753fe6db3a9e7d77f436c177
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 31 15:39:10 2022 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Sat Dec 31 15:39:10 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=55ed80dc
sys-devel/binutils: Stabilize 2.39-r4 ppc, #880101
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
sys-devel/binutils/binutils-2.39-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.39-r4.ebuild b/sys-devel/binutils/binutils-2.39-r4.ebuild
index 373e99389826..c19b022ce0ef 100644
--- a/sys-devel/binutils/binutils-2.39-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.39-r4.ebuild
@@ -33,7 +33,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-12-31 15:40 Arthur Zamarin
0 siblings, 0 replies; 477+ messages in thread
From: Arthur Zamarin @ 2022-12-31 15:40 UTC (permalink / raw
To: gentoo-commits
commit: bdea4017e3a87b222602dfe322a0088b04696ad7
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 31 15:39:34 2022 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Sat Dec 31 15:39:34 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bdea4017
sys-devel/binutils: Stabilize 2.39-r4 x86, #880101
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
sys-devel/binutils/binutils-2.39-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.39-r4.ebuild b/sys-devel/binutils/binutils-2.39-r4.ebuild
index d438f19b1ec6..f0baee70d145 100644
--- a/sys-devel/binutils/binutils-2.39-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.39-r4.ebuild
@@ -33,7 +33,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-12-31 15:40 Arthur Zamarin
0 siblings, 0 replies; 477+ messages in thread
From: Arthur Zamarin @ 2022-12-31 15:40 UTC (permalink / raw
To: gentoo-commits
commit: 62ccd0f65fe07f2ec67ceb63ff24bd3a990a4807
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 31 15:39:30 2022 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Sat Dec 31 15:39:30 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=62ccd0f6
sys-devel/binutils: Stabilize 2.39-r4 sparc, #880101
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
sys-devel/binutils/binutils-2.39-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.39-r4.ebuild b/sys-devel/binutils/binutils-2.39-r4.ebuild
index c871e7388248..d438f19b1ec6 100644
--- a/sys-devel/binutils/binutils-2.39-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.39-r4.ebuild
@@ -33,7 +33,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2022-12-31 15:40 Arthur Zamarin
0 siblings, 0 replies; 477+ messages in thread
From: Arthur Zamarin @ 2022-12-31 15:40 UTC (permalink / raw
To: gentoo-commits
commit: 25344e3969e76dd9e1f555ccc81c5357ebda89df
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 31 15:39:26 2022 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Sat Dec 31 15:39:26 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=25344e39
sys-devel/binutils: Stabilize 2.39-r4 hppa, #880101
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
sys-devel/binutils/binutils-2.39-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.39-r4.ebuild b/sys-devel/binutils/binutils-2.39-r4.ebuild
index 51ca0a35a066..c871e7388248 100644
--- a/sys-devel/binutils/binutils-2.39-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.39-r4.ebuild
@@ -33,7 +33,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-01-14 16:31 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2023-01-14 16:31 UTC (permalink / raw
To: gentoo-commits
commit: ecaab8ce7ebe411128c111ac2539ee9270c54715
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 14 16:15:23 2023 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Jan 14 16:31:02 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ecaab8ce
sys-devel/binutils: drop default-gold useflag in 9999
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-9999.ebuild | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 7897167274ed..9f4fe6d456ab 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -9,8 +9,7 @@ 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 zstd"
-REQUIRED_USE="default-gold? ( gold )"
+IUSE="cet doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla zstd"
# Variables that can be set here (ignored for live ebuilds)
# PATCH_VER - the patchset version
@@ -190,9 +189,6 @@ src_configure() {
# 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
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-01-14 16:31 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2023-01-14 16:31 UTC (permalink / raw
To: gentoo-commits
commit: 1d9debc930b813b10f8ab5435cc96323681ae13b
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 14 16:30:05 2023 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Jan 14 16:31:05 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1d9debc9
sys-devel/binutils: Version bump 2.40 (unkeyworded)
Testsuite passes on amd64
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 +
sys-devel/binutils/binutils-2.40.ebuild | 491 ++++++++++++++++++++++++++++++++
2 files changed, 493 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 0de4b0fbbc17..8ce6050a8086 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -14,3 +14,5 @@ DIST binutils-2.38-patches-4.tar.xz 193852 BLAKE2B 5a83e20008e58464ed563a6817a36
DIST binutils-2.38.tar.xz 23651408 BLAKE2B 19ede396ec97b88e632aded2f69f4684cc5053109e06c3c4a1934944e3f0ceaa9e4a2604528a440189771f778cb5d75edd510163970eeea31afba87fa256feba SHA512 8bf0b0d193c9c010e0518ee2b2e5a830898af206510992483b427477ed178396cd210235e85fd7bd99a96fc6d5eedbeccbd48317a10f752b7336ada8b2bb826d
DIST binutils-2.39-patches-5.tar.xz 82924 BLAKE2B 2cf75f661989f22270d6afe5f3c543814eb6a331be4493016fa2871e1f10a84a123c1c51e77a19b35e46680b9fe77390cb1532ca40d470a6041fa768fed3ccd7 SHA512 4b5811b4822b3a06f590fc7d082dc0ddf18a6058ac23887254e2ee9bd63c7f06f1636e446152115c7e0b01a6c5298a0d9df6904bd1582e66504ccde80dd1ecbd
DIST binutils-2.39.tar.xz 25167756 BLAKE2B ac6a5296c6586d53eaadcbffc5c399a6d79edf72450b9bb8b3525ce525129cef3d2eb90c85ef3bb3270b5a03b0e1ffb8f0b705f028158726f9777ebb8685066f SHA512 68e038f339a8c21faa19a57bbc447a51c817f47c2e06d740847c6e9cc3396c025d35d5369fa8c3f8b70414757c89f0e577939ddc0d70f283182504920f53b0a3
+DIST binutils-2.40-patches-1.tar.xz 12260 BLAKE2B d525502e08012080417634fd41981550362d4d799952e89f388af2a6e5db5b80e88bfdb0b5b1d2a1bcf8ebda529eefbced8fa2ae84c7fe3ddb10184e98d4b369 SHA512 140f80be786511f63651e67bf25c2992de6a21bac00a3252dcf98becc3f9379c8070ef1380d5542bbf2e1908c50dab2c7ebb651d13bb97609594fe9fd9f1f079
+DIST binutils-2.40.tar.xz 25241484 BLAKE2B 8d799f7c595f878b9af5b17a490021dd8b8300ac2fe0ed8574c012929d22d2d0493e003a3e631a9436e8e712da801779b777c566167fe42b0bde119ffa5ad1c2 SHA512 a37e042523bc46494d99d5637c3f3d8f9956d9477b748b3b1f6d7dfbb8d968ed52c932e88a4e946c6f77b8f48f1e1b360ca54c3d298f17193f3b4963472f6925
diff --git a/sys-devel/binutils/binutils-2.40.ebuild b/sys-devel/binutils/binutils-2.40.ebuild
new file mode 100644
index 000000000000..ae90473b9b61
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.40.ebuild
@@ -0,0 +1,491 @@
+# 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 doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla zstd"
+
+# 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=1
+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://sourceware.org/pub/binutils/releases/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
+ zstd? ( app-arch/zstd:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ doc? ( sys-apps/texinfo )
+ test? (
+ dev-util/dejagnu
+ sys-devel/bc
+ )
+ nls? ( sys-devel/gettext )
+ sys-devel/flex
+ app-alternatives/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 )
+ 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
+
+ # These hardening options are available from 2.39+ but
+ # they unconditionally enable the behaviour even on arches
+ # where e.g. execstacks can't be avoided.
+ # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
+ #--enable-warn-execstack
+ #--enable-warn-rwx-segments
+ #--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)
+ $(use_with zstd)
+
+ # 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-01-14 19:17 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2023-01-14 19:17 UTC (permalink / raw
To: gentoo-commits
commit: 21d7ce6b425ba815dda6adb86ac7779972d5d12c
Author: WANG Xuerui <xen0n <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 13 07:27:35 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Jan 14 19:14:36 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=21d7ce6b
sys-devel/binutils: fix build with lld-16
Signed-off-by: WANG Xuerui <xen0n <AT> gentoo.org>
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.32-r2.ebuild | 9 ++++++++-
sys-devel/binutils/binutils-2.33.1-r1.ebuild | 9 ++++++++-
sys-devel/binutils/binutils-2.34-r2.ebuild | 9 ++++++++-
sys-devel/binutils/binutils-2.35.2.ebuild | 9 ++++++++-
sys-devel/binutils/binutils-2.36.1-r2.ebuild | 9 ++++++++-
sys-devel/binutils/binutils-2.37_p1-r2.ebuild | 9 ++++++++-
sys-devel/binutils/binutils-2.38-r2.ebuild | 9 ++++++++-
sys-devel/binutils/binutils-2.39-r4.ebuild | 9 ++++++++-
sys-devel/binutils/binutils-9999.ebuild | 9 ++++++++-
9 files changed, 72 insertions(+), 9 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.32-r2.ebuild b/sys-devel/binutils/binutils-2.32-r2.ebuild
index d19fc5bc163c..df54d7b7423d 100644
--- a/sys-devel/binutils/binutils-2.32-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -162,6 +162,13 @@ src_configure() {
# Keep things sane
strip-flags
+ # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
+ # https://github.com/gentoo/gentoo/pull/28355
+ # mold needs this too but right now tc-ld-is-mold is also not available
+ if tc-ld-is-lld; then
+ append-ldflags -Wl,--undefined-version
+ fi
+
local x
echo
for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
diff --git a/sys-devel/binutils/binutils-2.33.1-r1.ebuild b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
index 2fd7c51dacb2..04c74a25e107 100644
--- a/sys-devel/binutils/binutils-2.33.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -155,6 +155,13 @@ src_configure() {
# Keep things sane
strip-flags
+ # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
+ # https://github.com/gentoo/gentoo/pull/28355
+ # mold needs this too but right now tc-ld-is-mold is also not available
+ if tc-ld-is-lld; then
+ append-ldflags -Wl,--undefined-version
+ fi
+
local x
echo
for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
diff --git a/sys-devel/binutils/binutils-2.34-r2.ebuild b/sys-devel/binutils/binutils-2.34-r2.ebuild
index f135644d0304..941890975f99 100644
--- a/sys-devel/binutils/binutils-2.34-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.34-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -152,6 +152,13 @@ src_configure() {
# Keep things sane
strip-flags
+ # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
+ # https://github.com/gentoo/gentoo/pull/28355
+ # mold needs this too but right now tc-ld-is-mold is also not available
+ if tc-ld-is-lld; then
+ append-ldflags -Wl,--undefined-version
+ fi
+
local x
echo
for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
diff --git a/sys-devel/binutils/binutils-2.35.2.ebuild b/sys-devel/binutils/binutils-2.35.2.ebuild
index 88e1395e6322..3e9e6183b4cd 100644
--- a/sys-devel/binutils/binutils-2.35.2.ebuild
+++ b/sys-devel/binutils/binutils-2.35.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -169,6 +169,13 @@ src_configure() {
# Keep things sane
strip-flags
+ # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
+ # https://github.com/gentoo/gentoo/pull/28355
+ # mold needs this too but right now tc-ld-is-mold is also not available
+ if tc-ld-is-lld; then
+ append-ldflags -Wl,--undefined-version
+ fi
+
local x
echo
for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
diff --git a/sys-devel/binutils/binutils-2.36.1-r2.ebuild b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
index 2231530b7f36..dcaa4a446b58 100644
--- a/sys-devel/binutils/binutils-2.36.1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -164,6 +164,13 @@ src_configure() {
# Keep things sane
strip-flags
+ # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
+ # https://github.com/gentoo/gentoo/pull/28355
+ # mold needs this too but right now tc-ld-is-mold is also not available
+ if tc-ld-is-lld; then
+ append-ldflags -Wl,--undefined-version
+ fi
+
local x
echo
for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
diff --git a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
index 712f1d46b7a1..333ff355ede5 100644
--- a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -170,6 +170,13 @@ src_configure() {
# Keep things sane
strip-flags
+ # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
+ # https://github.com/gentoo/gentoo/pull/28355
+ # mold needs this too but right now tc-ld-is-mold is also not available
+ if tc-ld-is-lld; then
+ append-ldflags -Wl,--undefined-version
+ fi
+
use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
local x
diff --git a/sys-devel/binutils/binutils-2.38-r2.ebuild b/sys-devel/binutils/binutils-2.38-r2.ebuild
index 401310d2e924..bea67260a9ec 100644
--- a/sys-devel/binutils/binutils-2.38-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.38-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -175,6 +175,13 @@ src_configure() {
# Keep things sane
strip-flags
+ # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
+ # https://github.com/gentoo/gentoo/pull/28355
+ # mold needs this too but right now tc-ld-is-mold is also not available
+ if tc-ld-is-lld; then
+ append-ldflags -Wl,--undefined-version
+ fi
+
use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
local x
diff --git a/sys-devel/binutils/binutils-2.39-r4.ebuild b/sys-devel/binutils/binutils-2.39-r4.ebuild
index f0baee70d145..3adccc27a417 100644
--- a/sys-devel/binutils/binutils-2.39-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.39-r4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -171,6 +171,13 @@ src_configure() {
# Keep things sane
strip-flags
+ # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
+ # https://github.com/gentoo/gentoo/pull/28355
+ # mold needs this too but right now tc-ld-is-mold is also not available
+ if tc-ld-is-lld; then
+ append-ldflags -Wl,--undefined-version
+ fi
+
use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
local x
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 9f4fe6d456ab..1f81a5189b72 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -171,6 +171,13 @@ src_configure() {
# Keep things sane
strip-flags
+ # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
+ # https://github.com/gentoo/gentoo/pull/28355
+ # mold needs this too but right now tc-ld-is-mold is also not available
+ if tc-ld-is-lld; then
+ append-ldflags -Wl,--undefined-version
+ fi
+
use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
local x
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-01-15 0:10 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2023-01-15 0:10 UTC (permalink / raw
To: gentoo-commits
commit: 7d173e99c37fab1ac992e7900f78b67a82c91570
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 15 00:05:13 2023 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Jan 15 00:09:53 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7d173e99
sys-devel/binutils: keyword 2.40
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.40.ebuild | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.40.ebuild b/sys-devel/binutils/binutils-2.40.ebuild
index ae90473b9b61..f0924ed243d4 100644
--- a/sys-devel/binutils/binutils-2.40.ebuild
+++ b/sys-devel/binutils/binutils-2.40.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-01-15 11:43 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2023-01-15 11:43 UTC (permalink / raw
To: gentoo-commits
commit: cdfb1257f1557792e5f7a2a466e55adac553d263
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 15 11:42:40 2023 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Jan 15 11:43:12 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cdfb1257
sys-devel/binutils: bdepend on pkgconfig when needed
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.40.ebuild | 1 +
sys-devel/binutils/binutils-9999.ebuild | 1 +
2 files changed, 2 insertions(+)
diff --git a/sys-devel/binutils/binutils-2.40.ebuild b/sys-devel/binutils/binutils-2.40.ebuild
index f0924ed243d4..95fe27899736 100644
--- a/sys-devel/binutils/binutils-2.40.ebuild
+++ b/sys-devel/binutils/binutils-2.40.ebuild
@@ -62,6 +62,7 @@ BDEPEND="
sys-devel/bc
)
nls? ( sys-devel/gettext )
+ zstd? ( virtual/pkgconfig )
sys-devel/flex
app-alternatives/yacc
"
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 1f81a5189b72..eae71c276ce7 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -62,6 +62,7 @@ BDEPEND="
sys-devel/bc
)
nls? ( sys-devel/gettext )
+ zstd? ( virtual/pkgconfig )
sys-devel/flex
app-alternatives/yacc
"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-01-27 6:27 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2023-01-27 6:27 UTC (permalink / raw
To: gentoo-commits
commit: 5d1e75b4126ff6760ce5d2707591cd4ea7505edb
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 27 06:26:30 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jan 27 06:26:30 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5d1e75b4
sys-devel/binutils: filter -mindirect-branch w/ CET
Incompatible with CET.
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.40.ebuild | 2 +-
sys-devel/binutils/binutils-9999.ebuild | 2 ++
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.40.ebuild b/sys-devel/binutils/binutils-2.40.ebuild
index 95fe27899736..0d5192d3560a 100644
--- a/sys-devel/binutils/binutils-2.40.ebuild
+++ b/sys-devel/binutils/binutils-2.40.ebuild
@@ -171,7 +171,7 @@ src_configure() {
# Keep things sane
strip-flags
-
+ use cet && filter-flags -mindirect-branch -mindirect-branch=*
use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
local x
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index eae71c276ce7..c8e0d5f94944 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -171,6 +171,8 @@ src_configure() {
# Keep things sane
strip-flags
+ use cet && filter-flags -mindirect-branch -mindirect-branch=*
+ use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
# ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
# https://github.com/gentoo/gentoo/pull/28355
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-02-08 21:21 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2023-02-08 21:21 UTC (permalink / raw
To: gentoo-commits
commit: 7e549adf29f028b9fc285103d119991bf2ea8900
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Wed Feb 8 21:20:56 2023 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Wed Feb 8 21:21:43 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7e549adf
sys-devel/binutils: 2.40 patchset 2 bump
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.40-r1.ebuild | 492 +++++++++++++++++++++++++++++
2 files changed, 493 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 8ce6050a8086..c52d13d3d3e3 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -15,4 +15,5 @@ DIST binutils-2.38.tar.xz 23651408 BLAKE2B 19ede396ec97b88e632aded2f69f4684cc505
DIST binutils-2.39-patches-5.tar.xz 82924 BLAKE2B 2cf75f661989f22270d6afe5f3c543814eb6a331be4493016fa2871e1f10a84a123c1c51e77a19b35e46680b9fe77390cb1532ca40d470a6041fa768fed3ccd7 SHA512 4b5811b4822b3a06f590fc7d082dc0ddf18a6058ac23887254e2ee9bd63c7f06f1636e446152115c7e0b01a6c5298a0d9df6904bd1582e66504ccde80dd1ecbd
DIST binutils-2.39.tar.xz 25167756 BLAKE2B ac6a5296c6586d53eaadcbffc5c399a6d79edf72450b9bb8b3525ce525129cef3d2eb90c85ef3bb3270b5a03b0e1ffb8f0b705f028158726f9777ebb8685066f SHA512 68e038f339a8c21faa19a57bbc447a51c817f47c2e06d740847c6e9cc3396c025d35d5369fa8c3f8b70414757c89f0e577939ddc0d70f283182504920f53b0a3
DIST binutils-2.40-patches-1.tar.xz 12260 BLAKE2B d525502e08012080417634fd41981550362d4d799952e89f388af2a6e5db5b80e88bfdb0b5b1d2a1bcf8ebda529eefbced8fa2ae84c7fe3ddb10184e98d4b369 SHA512 140f80be786511f63651e67bf25c2992de6a21bac00a3252dcf98becc3f9379c8070ef1380d5542bbf2e1908c50dab2c7ebb651d13bb97609594fe9fd9f1f079
+DIST binutils-2.40-patches-2.tar.xz 183760 BLAKE2B 447f1c40ac8212b1e91f6f2137f87958c3f4e2366b11b9979d9d09d52e9fcde9a9d74f0c1871616157e001f505849fceb2097a512f434b9c848885e367a07c35 SHA512 30efbfcbd2d936c74d9480e4f2f4b8dcd30abcd0f1b22d21d20558002fdb8c90bd2fe97e3f27c2905714dcfd1297cac2646ede1e2c3d9fbf159f93c8cf01a290
DIST binutils-2.40.tar.xz 25241484 BLAKE2B 8d799f7c595f878b9af5b17a490021dd8b8300ac2fe0ed8574c012929d22d2d0493e003a3e631a9436e8e712da801779b777c566167fe42b0bde119ffa5ad1c2 SHA512 a37e042523bc46494d99d5637c3f3d8f9956d9477b748b3b1f6d7dfbb8d968ed52c932e88a4e946c6f77b8f48f1e1b360ca54c3d298f17193f3b4963472f6925
diff --git a/sys-devel/binutils/binutils-2.40-r1.ebuild b/sys-devel/binutils/binutils-2.40-r1.ebuild
new file mode 100644
index 000000000000..4c44596c44eb
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.40-r1.ebuild
@@ -0,0 +1,492 @@
+# Copyright 1999-2023 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 doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla zstd"
+
+# 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=2
+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://sourceware.org/pub/binutils/releases/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
+ zstd? ( app-arch/zstd:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ doc? ( sys-apps/texinfo )
+ test? (
+ dev-util/dejagnu
+ sys-devel/bc
+ )
+ nls? ( sys-devel/gettext )
+ zstd? ( virtual/pkgconfig )
+ sys-devel/flex
+ app-alternatives/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 cet && filter-flags -mindirect-branch -mindirect-branch=*
+ 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 )
+ 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
+
+ # These hardening options are available from 2.39+ but
+ # they unconditionally enable the behaviour even on arches
+ # where e.g. execstacks can't be avoided.
+ # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
+ #--enable-warn-execstack
+ #--enable-warn-rwx-segments
+ #--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)
+ $(use_with zstd)
+
+ # 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-02-09 10:45 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2023-02-09 10:45 UTC (permalink / raw
To: gentoo-commits
commit: a331308c61a8193a12e727fdc53645ca81cccffb
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Thu Feb 9 10:42:09 2023 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Thu Feb 9 10:44:58 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a331308c
sys-devel/binutils: keyword 2.40-r1
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.40-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.40-r1.ebuild b/sys-devel/binutils/binutils-2.40-r1.ebuild
index 4c44596c44eb..b90f780f4705 100644
--- a/sys-devel/binutils/binutils-2.40-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r1.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-03-06 23:37 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2023-03-06 23:37 UTC (permalink / raw
To: gentoo-commits
commit: 59774263ca10bae54f07f45820309da194b7bfe7
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 6 23:35:28 2023 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Mon Mar 6 23:37:07 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=59774263
sys-devel/binutils: revision bump 2.40-r3 (patchset 3)
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.40-r3.ebuild | 503 +++++++++++++++++++++++++++++
2 files changed, 504 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index c52d13d3d3e3..c1d42d84221f 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -16,4 +16,5 @@ DIST binutils-2.39-patches-5.tar.xz 82924 BLAKE2B 2cf75f661989f22270d6afe5f3c543
DIST binutils-2.39.tar.xz 25167756 BLAKE2B ac6a5296c6586d53eaadcbffc5c399a6d79edf72450b9bb8b3525ce525129cef3d2eb90c85ef3bb3270b5a03b0e1ffb8f0b705f028158726f9777ebb8685066f SHA512 68e038f339a8c21faa19a57bbc447a51c817f47c2e06d740847c6e9cc3396c025d35d5369fa8c3f8b70414757c89f0e577939ddc0d70f283182504920f53b0a3
DIST binutils-2.40-patches-1.tar.xz 12260 BLAKE2B d525502e08012080417634fd41981550362d4d799952e89f388af2a6e5db5b80e88bfdb0b5b1d2a1bcf8ebda529eefbced8fa2ae84c7fe3ddb10184e98d4b369 SHA512 140f80be786511f63651e67bf25c2992de6a21bac00a3252dcf98becc3f9379c8070ef1380d5542bbf2e1908c50dab2c7ebb651d13bb97609594fe9fd9f1f079
DIST binutils-2.40-patches-2.tar.xz 183760 BLAKE2B 447f1c40ac8212b1e91f6f2137f87958c3f4e2366b11b9979d9d09d52e9fcde9a9d74f0c1871616157e001f505849fceb2097a512f434b9c848885e367a07c35 SHA512 30efbfcbd2d936c74d9480e4f2f4b8dcd30abcd0f1b22d21d20558002fdb8c90bd2fe97e3f27c2905714dcfd1297cac2646ede1e2c3d9fbf159f93c8cf01a290
+DIST binutils-2.40-patches-3.tar.xz 259432 BLAKE2B 03b9024e658a5860d54b9087f3e1cc4b417a2501d6a1744c44759bbc99cabd5938058ba2909b16cc999208187998094aa6ab5464e5ed54b87ea0b1eef007e85c SHA512 f2f3e38f5c0c2928ed0588ee42be74d43486d209b43249f73ae133c4c1f81491c86b14df2ddecbc37df6fe80b27b0eab6c3f319e44854e91596dfbd3ec37b8aa
DIST binutils-2.40.tar.xz 25241484 BLAKE2B 8d799f7c595f878b9af5b17a490021dd8b8300ac2fe0ed8574c012929d22d2d0493e003a3e631a9436e8e712da801779b777c566167fe42b0bde119ffa5ad1c2 SHA512 a37e042523bc46494d99d5637c3f3d8f9956d9477b748b3b1f6d7dfbb8d968ed52c932e88a4e946c6f77b8f48f1e1b360ca54c3d298f17193f3b4963472f6925
diff --git a/sys-devel/binutils/binutils-2.40-r3.ebuild b/sys-devel/binutils/binutils-2.40-r3.ebuild
new file mode 100644
index 000000000000..04cf99661b96
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.40-r3.ebuild
@@ -0,0 +1,503 @@
+# Copyright 1999-2023 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 doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla zstd"
+
+# 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=3
+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://sourceware.org/pub/binutils/releases/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
+ zstd? ( app-arch/zstd:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ doc? ( sys-apps/texinfo )
+ test? (
+ dev-util/dejagnu
+ sys-devel/bc
+ )
+ nls? ( sys-devel/gettext )
+ zstd? ( virtual/pkgconfig )
+ sys-devel/flex
+ app-alternatives/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."
+
+ # This is applied conditionally for now just out of caution.
+ # It should be okay on non-prefix systems though. See bug #892549.
+ use prefix && eapply "${FILESDIR}"/binutils-2.40-linker-search-path.patch
+ 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 cet && filter-flags -mindirect-branch -mindirect-branch=*
+ use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
+
+ # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
+ # https://github.com/gentoo/gentoo/pull/28355
+ # mold needs this too but right now tc-ld-is-mold is also not available
+ if tc-ld-is-lld; then
+ append-ldflags -Wl,--undefined-version
+ fi
+
+ 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 )
+ 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
+
+ # These hardening options are available from 2.39+ but
+ # they unconditionally enable the behaviour even on arches
+ # where e.g. execstacks can't be avoided.
+ # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
+ #--enable-warn-execstack
+ #--enable-warn-rwx-segments
+ #--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)
+ $(use_with zstd)
+
+ # 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-03-06 23:37 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2023-03-06 23:37 UTC (permalink / raw
To: gentoo-commits
commit: 9f52334ea14d7cb7825351da234b2aab224710c2
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 6 23:36:31 2023 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Mon Mar 6 23:37:10 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9f52334e
sys-devel/binutils: drop 2.40, 2.40-r1
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 -
sys-devel/binutils/binutils-2.40-r1.ebuild | 492 -----------------------------
sys-devel/binutils/binutils-2.40.ebuild | 492 -----------------------------
3 files changed, 985 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index c1d42d84221f..545bd9214ed7 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -14,7 +14,6 @@ DIST binutils-2.38-patches-4.tar.xz 193852 BLAKE2B 5a83e20008e58464ed563a6817a36
DIST binutils-2.38.tar.xz 23651408 BLAKE2B 19ede396ec97b88e632aded2f69f4684cc5053109e06c3c4a1934944e3f0ceaa9e4a2604528a440189771f778cb5d75edd510163970eeea31afba87fa256feba SHA512 8bf0b0d193c9c010e0518ee2b2e5a830898af206510992483b427477ed178396cd210235e85fd7bd99a96fc6d5eedbeccbd48317a10f752b7336ada8b2bb826d
DIST binutils-2.39-patches-5.tar.xz 82924 BLAKE2B 2cf75f661989f22270d6afe5f3c543814eb6a331be4493016fa2871e1f10a84a123c1c51e77a19b35e46680b9fe77390cb1532ca40d470a6041fa768fed3ccd7 SHA512 4b5811b4822b3a06f590fc7d082dc0ddf18a6058ac23887254e2ee9bd63c7f06f1636e446152115c7e0b01a6c5298a0d9df6904bd1582e66504ccde80dd1ecbd
DIST binutils-2.39.tar.xz 25167756 BLAKE2B ac6a5296c6586d53eaadcbffc5c399a6d79edf72450b9bb8b3525ce525129cef3d2eb90c85ef3bb3270b5a03b0e1ffb8f0b705f028158726f9777ebb8685066f SHA512 68e038f339a8c21faa19a57bbc447a51c817f47c2e06d740847c6e9cc3396c025d35d5369fa8c3f8b70414757c89f0e577939ddc0d70f283182504920f53b0a3
-DIST binutils-2.40-patches-1.tar.xz 12260 BLAKE2B d525502e08012080417634fd41981550362d4d799952e89f388af2a6e5db5b80e88bfdb0b5b1d2a1bcf8ebda529eefbced8fa2ae84c7fe3ddb10184e98d4b369 SHA512 140f80be786511f63651e67bf25c2992de6a21bac00a3252dcf98becc3f9379c8070ef1380d5542bbf2e1908c50dab2c7ebb651d13bb97609594fe9fd9f1f079
DIST binutils-2.40-patches-2.tar.xz 183760 BLAKE2B 447f1c40ac8212b1e91f6f2137f87958c3f4e2366b11b9979d9d09d52e9fcde9a9d74f0c1871616157e001f505849fceb2097a512f434b9c848885e367a07c35 SHA512 30efbfcbd2d936c74d9480e4f2f4b8dcd30abcd0f1b22d21d20558002fdb8c90bd2fe97e3f27c2905714dcfd1297cac2646ede1e2c3d9fbf159f93c8cf01a290
DIST binutils-2.40-patches-3.tar.xz 259432 BLAKE2B 03b9024e658a5860d54b9087f3e1cc4b417a2501d6a1744c44759bbc99cabd5938058ba2909b16cc999208187998094aa6ab5464e5ed54b87ea0b1eef007e85c SHA512 f2f3e38f5c0c2928ed0588ee42be74d43486d209b43249f73ae133c4c1f81491c86b14df2ddecbc37df6fe80b27b0eab6c3f319e44854e91596dfbd3ec37b8aa
DIST binutils-2.40.tar.xz 25241484 BLAKE2B 8d799f7c595f878b9af5b17a490021dd8b8300ac2fe0ed8574c012929d22d2d0493e003a3e631a9436e8e712da801779b777c566167fe42b0bde119ffa5ad1c2 SHA512 a37e042523bc46494d99d5637c3f3d8f9956d9477b748b3b1f6d7dfbb8d968ed52c932e88a4e946c6f77b8f48f1e1b360ca54c3d298f17193f3b4963472f6925
diff --git a/sys-devel/binutils/binutils-2.40-r1.ebuild b/sys-devel/binutils/binutils-2.40-r1.ebuild
deleted file mode 100644
index b90f780f4705..000000000000
--- a/sys-devel/binutils/binutils-2.40-r1.ebuild
+++ /dev/null
@@ -1,492 +0,0 @@
-# Copyright 1999-2023 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 doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla zstd"
-
-# 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=2
-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://sourceware.org/pub/binutils/releases/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
- zstd? ( app-arch/zstd:= )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- doc? ( sys-apps/texinfo )
- test? (
- dev-util/dejagnu
- sys-devel/bc
- )
- nls? ( sys-devel/gettext )
- zstd? ( virtual/pkgconfig )
- sys-devel/flex
- app-alternatives/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 cet && filter-flags -mindirect-branch -mindirect-branch=*
- 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 )
- 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
-
- # These hardening options are available from 2.39+ but
- # they unconditionally enable the behaviour even on arches
- # where e.g. execstacks can't be avoided.
- # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
- #--enable-warn-execstack
- #--enable-warn-rwx-segments
- #--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)
- $(use_with zstd)
-
- # 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.40.ebuild b/sys-devel/binutils/binutils-2.40.ebuild
deleted file mode 100644
index 0d5192d3560a..000000000000
--- a/sys-devel/binutils/binutils-2.40.ebuild
+++ /dev/null
@@ -1,492 +0,0 @@
-# Copyright 1999-2023 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 doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla zstd"
-
-# 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=1
-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://sourceware.org/pub/binutils/releases/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
- zstd? ( app-arch/zstd:= )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- doc? ( sys-apps/texinfo )
- test? (
- dev-util/dejagnu
- sys-devel/bc
- )
- nls? ( sys-devel/gettext )
- zstd? ( virtual/pkgconfig )
- sys-devel/flex
- app-alternatives/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 cet && filter-flags -mindirect-branch -mindirect-branch=*
- 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 )
- 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
-
- # These hardening options are available from 2.39+ but
- # they unconditionally enable the behaviour even on arches
- # where e.g. execstacks can't be avoided.
- # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
- #--enable-warn-execstack
- #--enable-warn-rwx-segments
- #--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)
- $(use_with zstd)
-
- # 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-03-09 4:03 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2023-03-09 4:03 UTC (permalink / raw
To: gentoo-commits
commit: 5ad2f733fa08756c4d025caee0280c37a5780101
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Thu Mar 9 03:59:49 2023 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Thu Mar 9 03:59:49 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5ad2f733
sys-devel/binutils: keyword 2.40-r3
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.40-r3.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.40-r3.ebuild b/sys-devel/binutils/binutils-2.40-r3.ebuild
index 04cf99661b96..3a322d6bdb88 100644
--- a/sys-devel/binutils/binutils-2.40-r3.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r3.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-04-02 12:21 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2023-04-02 12:21 UTC (permalink / raw
To: gentoo-commits
commit: d1400d06aaa484260e63e7181a2b9dddd464efcd
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 2 12:00:56 2023 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Apr 2 12:20:49 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d1400d06
sys-devel/binutils: patchlevel bump, 2.40 p4
Bug: https://bugs.gentoo.org/834720
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.40-r4.ebuild | 503 +++++++++++++++++++++++++++++
2 files changed, 504 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 545bd9214ed7..932768c70201 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -16,4 +16,5 @@ DIST binutils-2.39-patches-5.tar.xz 82924 BLAKE2B 2cf75f661989f22270d6afe5f3c543
DIST binutils-2.39.tar.xz 25167756 BLAKE2B ac6a5296c6586d53eaadcbffc5c399a6d79edf72450b9bb8b3525ce525129cef3d2eb90c85ef3bb3270b5a03b0e1ffb8f0b705f028158726f9777ebb8685066f SHA512 68e038f339a8c21faa19a57bbc447a51c817f47c2e06d740847c6e9cc3396c025d35d5369fa8c3f8b70414757c89f0e577939ddc0d70f283182504920f53b0a3
DIST binutils-2.40-patches-2.tar.xz 183760 BLAKE2B 447f1c40ac8212b1e91f6f2137f87958c3f4e2366b11b9979d9d09d52e9fcde9a9d74f0c1871616157e001f505849fceb2097a512f434b9c848885e367a07c35 SHA512 30efbfcbd2d936c74d9480e4f2f4b8dcd30abcd0f1b22d21d20558002fdb8c90bd2fe97e3f27c2905714dcfd1297cac2646ede1e2c3d9fbf159f93c8cf01a290
DIST binutils-2.40-patches-3.tar.xz 259432 BLAKE2B 03b9024e658a5860d54b9087f3e1cc4b417a2501d6a1744c44759bbc99cabd5938058ba2909b16cc999208187998094aa6ab5464e5ed54b87ea0b1eef007e85c SHA512 f2f3e38f5c0c2928ed0588ee42be74d43486d209b43249f73ae133c4c1f81491c86b14df2ddecbc37df6fe80b27b0eab6c3f319e44854e91596dfbd3ec37b8aa
+DIST binutils-2.40-patches-4.tar.xz 264420 BLAKE2B 70acdc15f64a45cda49ebd7c252d909db2fe659f5c2c0866c50fd710415fd34bd88f9c5cd5ba07beef1e7de7fe827bb40f835fb79ff10e00fc50451e3a8cab33 SHA512 5f0a080841cb3a032cbe7b135ba38bebeae0b0e444623887bdcb92a3adcf804701524eff840f108a9544293f5ac307b4a8d9509176abfeaea6c461b2ea5c0886
DIST binutils-2.40.tar.xz 25241484 BLAKE2B 8d799f7c595f878b9af5b17a490021dd8b8300ac2fe0ed8574c012929d22d2d0493e003a3e631a9436e8e712da801779b777c566167fe42b0bde119ffa5ad1c2 SHA512 a37e042523bc46494d99d5637c3f3d8f9956d9477b748b3b1f6d7dfbb8d968ed52c932e88a4e946c6f77b8f48f1e1b360ca54c3d298f17193f3b4963472f6925
diff --git a/sys-devel/binutils/binutils-2.40-r4.ebuild b/sys-devel/binutils/binutils-2.40-r4.ebuild
new file mode 100644
index 000000000000..38afc01f284d
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.40-r4.ebuild
@@ -0,0 +1,503 @@
+# Copyright 1999-2023 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 doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla zstd"
+
+# 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://sourceware.org/pub/binutils/releases/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
+ zstd? ( app-arch/zstd:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ doc? ( sys-apps/texinfo )
+ test? (
+ dev-util/dejagnu
+ sys-devel/bc
+ )
+ nls? ( sys-devel/gettext )
+ zstd? ( virtual/pkgconfig )
+ sys-devel/flex
+ app-alternatives/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."
+
+ # This is applied conditionally for now just out of caution.
+ # It should be okay on non-prefix systems though. See bug #892549.
+ use prefix && eapply "${FILESDIR}"/binutils-2.40-linker-search-path.patch
+ 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 cet && filter-flags -mindirect-branch -mindirect-branch=*
+ use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
+
+ # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
+ # https://github.com/gentoo/gentoo/pull/28355
+ # mold needs this too but right now tc-ld-is-mold is also not available
+ if tc-ld-is-lld; then
+ append-ldflags -Wl,--undefined-version
+ fi
+
+ 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 )
+ 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
+
+ # These hardening options are available from 2.39+ but
+ # they unconditionally enable the behaviour even on arches
+ # where e.g. execstacks can't be avoided.
+ # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
+ #--enable-warn-execstack
+ #--enable-warn-rwx-segments
+ #--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)
+ $(use_with zstd)
+
+ # 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-04-02 12:21 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2023-04-02 12:21 UTC (permalink / raw
To: gentoo-commits
commit: 6623c4f3139d0b9690466bccc5f57313ff175828
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 2 12:19:32 2023 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Apr 2 12:20:52 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6623c4f3
sys-devel/binutils: patchlevel bump, 2.39 p6
Bug: https://bugs.gentoo.org/834720
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.39-r5.ebuild | 499 +++++++++++++++++++++++++++++
2 files changed, 500 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 932768c70201..51c46724d714 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -13,6 +13,7 @@ DIST binutils-2.37_p1.tar.xz 22992196 BLAKE2B a8aa0f386d03a5b1466166ac7c40989c22
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-5.tar.xz 82924 BLAKE2B 2cf75f661989f22270d6afe5f3c543814eb6a331be4493016fa2871e1f10a84a123c1c51e77a19b35e46680b9fe77390cb1532ca40d470a6041fa768fed3ccd7 SHA512 4b5811b4822b3a06f590fc7d082dc0ddf18a6058ac23887254e2ee9bd63c7f06f1636e446152115c7e0b01a6c5298a0d9df6904bd1582e66504ccde80dd1ecbd
+DIST binutils-2.39-patches-6.tar.xz 92380 BLAKE2B 39f490f1134fb0e7dc80924a280d3113efe0ed094ee15de97c42ab751c83d2f5aa7448966d8cbbcde722b2af4999a36c1e5aa2f37ca6d2e3942b97b6d90ff152 SHA512 213cd7a86da83987966675f3195e843d898ca4ff412dfc29fd33ed80adb7bbf80a0b2919cd8e7dd49208c73a621ab7b720970f2259418bdc82ed2a568ff62064
DIST binutils-2.39.tar.xz 25167756 BLAKE2B ac6a5296c6586d53eaadcbffc5c399a6d79edf72450b9bb8b3525ce525129cef3d2eb90c85ef3bb3270b5a03b0e1ffb8f0b705f028158726f9777ebb8685066f SHA512 68e038f339a8c21faa19a57bbc447a51c817f47c2e06d740847c6e9cc3396c025d35d5369fa8c3f8b70414757c89f0e577939ddc0d70f283182504920f53b0a3
DIST binutils-2.40-patches-2.tar.xz 183760 BLAKE2B 447f1c40ac8212b1e91f6f2137f87958c3f4e2366b11b9979d9d09d52e9fcde9a9d74f0c1871616157e001f505849fceb2097a512f434b9c848885e367a07c35 SHA512 30efbfcbd2d936c74d9480e4f2f4b8dcd30abcd0f1b22d21d20558002fdb8c90bd2fe97e3f27c2905714dcfd1297cac2646ede1e2c3d9fbf159f93c8cf01a290
DIST binutils-2.40-patches-3.tar.xz 259432 BLAKE2B 03b9024e658a5860d54b9087f3e1cc4b417a2501d6a1744c44759bbc99cabd5938058ba2909b16cc999208187998094aa6ab5464e5ed54b87ea0b1eef007e85c SHA512 f2f3e38f5c0c2928ed0588ee42be74d43486d209b43249f73ae133c4c1f81491c86b14df2ddecbc37df6fe80b27b0eab6c3f319e44854e91596dfbd3ec37b8aa
diff --git a/sys-devel/binutils/binutils-2.39-r5.ebuild b/sys-devel/binutils/binutils-2.39-r5.ebuild
new file mode 100644
index 000000000000..163fb15743c1
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.39-r5.ebuild
@@ -0,0 +1,499 @@
+# Copyright 1999-2023 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=6
+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
+ app-alternatives/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
+
+ # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
+ # https://github.com/gentoo/gentoo/pull/28355
+ # mold needs this too but right now tc-ld-is-mold is also not available
+ if tc-ld-is-lld; then
+ append-ldflags -Wl,--undefined-version
+ fi
+
+ 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
+
+ # These hardening options are available from 2.39+ but
+ # they unconditionally enable the behaviour even on arches
+ # where e.g. execstacks can't be avoided.
+ # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
+ #--enable-warn-execstack
+ #--enable-warn-rwx-segments
+ #--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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-04-02 16:52 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2023-04-02 16:52 UTC (permalink / raw
To: gentoo-commits
commit: 13b8e33d114273acc129f06f3234e1a3be79a27d
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 2 16:49:40 2023 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Apr 2 16:51:49 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=13b8e33d
sys-devel/binutils: keyword 2.40-r4
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.40-r4.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.40-r4.ebuild b/sys-devel/binutils/binutils-2.40-r4.ebuild
index 38afc01f284d..987ca13d2440 100644
--- a/sys-devel/binutils/binutils-2.40-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r4.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-04-02 20:07 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2023-04-02 20:07 UTC (permalink / raw
To: gentoo-commits
commit: 41cc8bb31bd05039dd9b42727c3ccccc6507c3e9
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 2 20:04:21 2023 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Apr 2 20:07:38 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=41cc8bb3
sys-devel/binutils: keyword 2.39-r5
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.39-r5.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.39-r5.ebuild b/sys-devel/binutils/binutils-2.39-r5.ebuild
index 163fb15743c1..5e3b36d02477 100644
--- a/sys-devel/binutils/binutils-2.39-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.39-r5.ebuild
@@ -33,7 +33,7 @@ else
[[ -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"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-04-21 16:34 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2023-04-21 16:34 UTC (permalink / raw
To: gentoo-commits
commit: e1c9545326cf90002922f2437a4538241ded5c03
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Apr 21 16:34:11 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Apr 21 16:34:11 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e1c95453
sys-devel/binutils: Stabilize 2.39-r5 amd64, #904749
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.39-r5.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.39-r5.ebuild b/sys-devel/binutils/binutils-2.39-r5.ebuild
index 5e3b36d02477..7c9fd711298a 100644
--- a/sys-devel/binutils/binutils-2.39-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.39-r5.ebuild
@@ -33,7 +33,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-04-29 15:44 Arthur Zamarin
0 siblings, 0 replies; 477+ messages in thread
From: Arthur Zamarin @ 2023-04-29 15:44 UTC (permalink / raw
To: gentoo-commits
commit: bd2fc7acd406f6835c5e121a25787359be9c559e
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 29 15:42:58 2023 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Sat Apr 29 15:42:58 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bd2fc7ac
sys-devel/binutils: Stabilize 2.39-r5 sparc, #904749
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
sys-devel/binutils/binutils-2.39-r5.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.39-r5.ebuild b/sys-devel/binutils/binutils-2.39-r5.ebuild
index f3c462a03079..4847a880b3ed 100644
--- a/sys-devel/binutils/binutils-2.39-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.39-r5.ebuild
@@ -33,7 +33,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-04-29 15:44 Arthur Zamarin
0 siblings, 0 replies; 477+ messages in thread
From: Arthur Zamarin @ 2023-04-29 15:44 UTC (permalink / raw
To: gentoo-commits
commit: 3ce4ffe21a6582b64f1b917652d21ccd9375e844
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 29 15:43:01 2023 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Sat Apr 29 15:43:01 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3ce4ffe2
sys-devel/binutils: Stabilize 2.39-r5 hppa, #904749
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
sys-devel/binutils/binutils-2.39-r5.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.39-r5.ebuild b/sys-devel/binutils/binutils-2.39-r5.ebuild
index 4847a880b3ed..2927280c78a0 100644
--- a/sys-devel/binutils/binutils-2.39-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.39-r5.ebuild
@@ -33,7 +33,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-04-29 15:44 Arthur Zamarin
0 siblings, 0 replies; 477+ messages in thread
From: Arthur Zamarin @ 2023-04-29 15:44 UTC (permalink / raw
To: gentoo-commits
commit: 953fceb5454b9879d6228db45ee3f62a7eb32330
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 29 15:43:05 2023 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Sat Apr 29 15:43:05 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=953fceb5
sys-devel/binutils: Stabilize 2.39-r5 x86, #904749
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
sys-devel/binutils/binutils-2.39-r5.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.39-r5.ebuild b/sys-devel/binutils/binutils-2.39-r5.ebuild
index 2927280c78a0..c1b0195faed3 100644
--- a/sys-devel/binutils/binutils-2.39-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.39-r5.ebuild
@@ -33,7 +33,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-05-05 17:22 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2023-05-05 17:22 UTC (permalink / raw
To: gentoo-commits
commit: 867147cfb2477a8eb22b0c2afaf8a07d5457bd12
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri May 5 17:21:45 2023 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri May 5 17:22:03 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=867147cf
sys-devel/binutils: drop 2.39-r4, 2.40-r2
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 -
sys-devel/binutils/binutils-2.39-r4.ebuild | 499 ----------------------------
sys-devel/binutils/binutils-2.40-r2.ebuild | 503 -----------------------------
3 files changed, 1004 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 51c46724d714..699caacac8d0 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -12,10 +12,8 @@ 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-5.tar.xz 82924 BLAKE2B 2cf75f661989f22270d6afe5f3c543814eb6a331be4493016fa2871e1f10a84a123c1c51e77a19b35e46680b9fe77390cb1532ca40d470a6041fa768fed3ccd7 SHA512 4b5811b4822b3a06f590fc7d082dc0ddf18a6058ac23887254e2ee9bd63c7f06f1636e446152115c7e0b01a6c5298a0d9df6904bd1582e66504ccde80dd1ecbd
DIST binutils-2.39-patches-6.tar.xz 92380 BLAKE2B 39f490f1134fb0e7dc80924a280d3113efe0ed094ee15de97c42ab751c83d2f5aa7448966d8cbbcde722b2af4999a36c1e5aa2f37ca6d2e3942b97b6d90ff152 SHA512 213cd7a86da83987966675f3195e843d898ca4ff412dfc29fd33ed80adb7bbf80a0b2919cd8e7dd49208c73a621ab7b720970f2259418bdc82ed2a568ff62064
DIST binutils-2.39.tar.xz 25167756 BLAKE2B ac6a5296c6586d53eaadcbffc5c399a6d79edf72450b9bb8b3525ce525129cef3d2eb90c85ef3bb3270b5a03b0e1ffb8f0b705f028158726f9777ebb8685066f SHA512 68e038f339a8c21faa19a57bbc447a51c817f47c2e06d740847c6e9cc3396c025d35d5369fa8c3f8b70414757c89f0e577939ddc0d70f283182504920f53b0a3
-DIST binutils-2.40-patches-2.tar.xz 183760 BLAKE2B 447f1c40ac8212b1e91f6f2137f87958c3f4e2366b11b9979d9d09d52e9fcde9a9d74f0c1871616157e001f505849fceb2097a512f434b9c848885e367a07c35 SHA512 30efbfcbd2d936c74d9480e4f2f4b8dcd30abcd0f1b22d21d20558002fdb8c90bd2fe97e3f27c2905714dcfd1297cac2646ede1e2c3d9fbf159f93c8cf01a290
DIST binutils-2.40-patches-3.tar.xz 259432 BLAKE2B 03b9024e658a5860d54b9087f3e1cc4b417a2501d6a1744c44759bbc99cabd5938058ba2909b16cc999208187998094aa6ab5464e5ed54b87ea0b1eef007e85c SHA512 f2f3e38f5c0c2928ed0588ee42be74d43486d209b43249f73ae133c4c1f81491c86b14df2ddecbc37df6fe80b27b0eab6c3f319e44854e91596dfbd3ec37b8aa
DIST binutils-2.40-patches-4.tar.xz 264420 BLAKE2B 70acdc15f64a45cda49ebd7c252d909db2fe659f5c2c0866c50fd710415fd34bd88f9c5cd5ba07beef1e7de7fe827bb40f835fb79ff10e00fc50451e3a8cab33 SHA512 5f0a080841cb3a032cbe7b135ba38bebeae0b0e444623887bdcb92a3adcf804701524eff840f108a9544293f5ac307b4a8d9509176abfeaea6c461b2ea5c0886
DIST binutils-2.40.tar.xz 25241484 BLAKE2B 8d799f7c595f878b9af5b17a490021dd8b8300ac2fe0ed8574c012929d22d2d0493e003a3e631a9436e8e712da801779b777c566167fe42b0bde119ffa5ad1c2 SHA512 a37e042523bc46494d99d5637c3f3d8f9956d9477b748b3b1f6d7dfbb8d968ed52c932e88a4e946c6f77b8f48f1e1b360ca54c3d298f17193f3b4963472f6925
diff --git a/sys-devel/binutils/binutils-2.39-r4.ebuild b/sys-devel/binutils/binutils-2.39-r4.ebuild
deleted file mode 100644
index 3adccc27a417..000000000000
--- a/sys-devel/binutils/binutils-2.39-r4.ebuild
+++ /dev/null
@@ -1,499 +0,0 @@
-# Copyright 1999-2023 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=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="~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
- app-alternatives/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
-
- # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
- # https://github.com/gentoo/gentoo/pull/28355
- # mold needs this too but right now tc-ld-is-mold is also not available
- if tc-ld-is-lld; then
- append-ldflags -Wl,--undefined-version
- fi
-
- 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
-
- # These hardening options are available from 2.39+ but
- # they unconditionally enable the behaviour even on arches
- # where e.g. execstacks can't be avoided.
- # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
- #--enable-warn-execstack
- #--enable-warn-rwx-segments
- #--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.40-r2.ebuild b/sys-devel/binutils/binutils-2.40-r2.ebuild
deleted file mode 100644
index d8c2553ece20..000000000000
--- a/sys-devel/binutils/binutils-2.40-r2.ebuild
+++ /dev/null
@@ -1,503 +0,0 @@
-# Copyright 1999-2023 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 doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla zstd"
-
-# 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=2
-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://sourceware.org/pub/binutils/releases/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
- zstd? ( app-arch/zstd:= )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- doc? ( sys-apps/texinfo )
- test? (
- dev-util/dejagnu
- sys-devel/bc
- )
- nls? ( sys-devel/gettext )
- zstd? ( virtual/pkgconfig )
- sys-devel/flex
- app-alternatives/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."
-
- # This is applied conditionally for now just out of caution.
- # It should be okay on non-prefix systems though. See bug #892549.
- use prefix && eapply "${FILESDIR}"/binutils-2.40-linker-search-path.patch
- 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 cet && filter-flags -mindirect-branch -mindirect-branch=*
- use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
-
- # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
- # https://github.com/gentoo/gentoo/pull/28355
- # mold needs this too but right now tc-ld-is-mold is also not available
- if tc-ld-is-lld; then
- append-ldflags -Wl,--undefined-version
- fi
-
- 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 )
- 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
-
- # These hardening options are available from 2.39+ but
- # they unconditionally enable the behaviour even on arches
- # where e.g. execstacks can't be avoided.
- # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
- #--enable-warn-execstack
- #--enable-warn-rwx-segments
- #--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)
- $(use_with zstd)
-
- # 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-05-05 17:32 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2023-05-05 17:32 UTC (permalink / raw
To: gentoo-commits
commit: 1defc5c0a921e15664210fc2c226ea317f2cf344
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri May 5 17:32:12 2023 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri May 5 17:32:43 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1defc5c0
sys-devel/binutils: patchlevel bump including performance fixes
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.40-r5.ebuild | 503 +++++++++++++++++++++++++++++
2 files changed, 504 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 699caacac8d0..dfb6e0e93003 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -16,4 +16,5 @@ DIST binutils-2.39-patches-6.tar.xz 92380 BLAKE2B 39f490f1134fb0e7dc80924a280d31
DIST binutils-2.39.tar.xz 25167756 BLAKE2B ac6a5296c6586d53eaadcbffc5c399a6d79edf72450b9bb8b3525ce525129cef3d2eb90c85ef3bb3270b5a03b0e1ffb8f0b705f028158726f9777ebb8685066f SHA512 68e038f339a8c21faa19a57bbc447a51c817f47c2e06d740847c6e9cc3396c025d35d5369fa8c3f8b70414757c89f0e577939ddc0d70f283182504920f53b0a3
DIST binutils-2.40-patches-3.tar.xz 259432 BLAKE2B 03b9024e658a5860d54b9087f3e1cc4b417a2501d6a1744c44759bbc99cabd5938058ba2909b16cc999208187998094aa6ab5464e5ed54b87ea0b1eef007e85c SHA512 f2f3e38f5c0c2928ed0588ee42be74d43486d209b43249f73ae133c4c1f81491c86b14df2ddecbc37df6fe80b27b0eab6c3f319e44854e91596dfbd3ec37b8aa
DIST binutils-2.40-patches-4.tar.xz 264420 BLAKE2B 70acdc15f64a45cda49ebd7c252d909db2fe659f5c2c0866c50fd710415fd34bd88f9c5cd5ba07beef1e7de7fe827bb40f835fb79ff10e00fc50451e3a8cab33 SHA512 5f0a080841cb3a032cbe7b135ba38bebeae0b0e444623887bdcb92a3adcf804701524eff840f108a9544293f5ac307b4a8d9509176abfeaea6c461b2ea5c0886
+DIST binutils-2.40-patches-5.tar.xz 293628 BLAKE2B b7ed1d1fbf38b420661f984b9519b3d863da45b2a873773a521310021b0c1d5d7c24c152adb3e8a999d40f5619c0e54962114590ec9528380089977af0c30b74 SHA512 6e6df932b18ca20fe245b3ff8d3d06dbdae4daadaec3b668fa44e086d4e8ff56439681b2d810ebc74173b6348020edacb176e8c3cbf20657cce04297b97f4f83
DIST binutils-2.40.tar.xz 25241484 BLAKE2B 8d799f7c595f878b9af5b17a490021dd8b8300ac2fe0ed8574c012929d22d2d0493e003a3e631a9436e8e712da801779b777c566167fe42b0bde119ffa5ad1c2 SHA512 a37e042523bc46494d99d5637c3f3d8f9956d9477b748b3b1f6d7dfbb8d968ed52c932e88a4e946c6f77b8f48f1e1b360ca54c3d298f17193f3b4963472f6925
diff --git a/sys-devel/binutils/binutils-2.40-r5.ebuild b/sys-devel/binutils/binutils-2.40-r5.ebuild
new file mode 100644
index 000000000000..265b1ae2b533
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.40-r5.ebuild
@@ -0,0 +1,503 @@
+# Copyright 1999-2023 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 doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla zstd"
+
+# 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://sourceware.org/pub/binutils/releases/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
+ zstd? ( app-arch/zstd:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ doc? ( sys-apps/texinfo )
+ test? (
+ dev-util/dejagnu
+ sys-devel/bc
+ )
+ nls? ( sys-devel/gettext )
+ zstd? ( virtual/pkgconfig )
+ sys-devel/flex
+ app-alternatives/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."
+
+ # This is applied conditionally for now just out of caution.
+ # It should be okay on non-prefix systems though. See bug #892549.
+ use prefix && eapply "${FILESDIR}"/binutils-2.40-linker-search-path.patch
+ 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 cet && filter-flags -mindirect-branch -mindirect-branch=*
+ use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
+
+ # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
+ # https://github.com/gentoo/gentoo/pull/28355
+ # mold needs this too but right now tc-ld-is-mold is also not available
+ if tc-ld-is-lld; then
+ append-ldflags -Wl,--undefined-version
+ fi
+
+ 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 )
+ 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
+
+ # These hardening options are available from 2.39+ but
+ # they unconditionally enable the behaviour even on arches
+ # where e.g. execstacks can't be avoided.
+ # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
+ #--enable-warn-execstack
+ #--enable-warn-rwx-segments
+ #--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)
+ $(use_with zstd)
+
+ # 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-05-06 12:20 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2023-05-06 12:20 UTC (permalink / raw
To: gentoo-commits
commit: 6e2138e25da5ca87cd97e980129234a14a3f7f15
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat May 6 12:17:21 2023 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat May 6 12:19:59 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6e2138e2
sys-devel/binutils: keyword 2.40-r5
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.40-r5.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.40-r5.ebuild b/sys-devel/binutils/binutils-2.40-r5.ebuild
index 265b1ae2b533..b6d2c543fe48 100644
--- a/sys-devel/binutils/binutils-2.40-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r5.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-06-26 22:50 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2023-06-26 22:50 UTC (permalink / raw
To: gentoo-commits
commit: 53204648ba81dc9f0d53c6bb3cb3849252aeb3a5
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Mon Jun 26 22:49:16 2023 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Mon Jun 26 22:50:40 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=53204648
sys-devel/binutils: drop 2.40-r3, 2.40-r4
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 -
sys-devel/binutils/binutils-2.40-r3.ebuild | 503 -----------------------------
sys-devel/binutils/binutils-2.40-r4.ebuild | 503 -----------------------------
3 files changed, 1008 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index dfb6e0e93003..524992f61b1b 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -14,7 +14,5 @@ DIST binutils-2.38-patches-4.tar.xz 193852 BLAKE2B 5a83e20008e58464ed563a6817a36
DIST binutils-2.38.tar.xz 23651408 BLAKE2B 19ede396ec97b88e632aded2f69f4684cc5053109e06c3c4a1934944e3f0ceaa9e4a2604528a440189771f778cb5d75edd510163970eeea31afba87fa256feba SHA512 8bf0b0d193c9c010e0518ee2b2e5a830898af206510992483b427477ed178396cd210235e85fd7bd99a96fc6d5eedbeccbd48317a10f752b7336ada8b2bb826d
DIST binutils-2.39-patches-6.tar.xz 92380 BLAKE2B 39f490f1134fb0e7dc80924a280d3113efe0ed094ee15de97c42ab751c83d2f5aa7448966d8cbbcde722b2af4999a36c1e5aa2f37ca6d2e3942b97b6d90ff152 SHA512 213cd7a86da83987966675f3195e843d898ca4ff412dfc29fd33ed80adb7bbf80a0b2919cd8e7dd49208c73a621ab7b720970f2259418bdc82ed2a568ff62064
DIST binutils-2.39.tar.xz 25167756 BLAKE2B ac6a5296c6586d53eaadcbffc5c399a6d79edf72450b9bb8b3525ce525129cef3d2eb90c85ef3bb3270b5a03b0e1ffb8f0b705f028158726f9777ebb8685066f SHA512 68e038f339a8c21faa19a57bbc447a51c817f47c2e06d740847c6e9cc3396c025d35d5369fa8c3f8b70414757c89f0e577939ddc0d70f283182504920f53b0a3
-DIST binutils-2.40-patches-3.tar.xz 259432 BLAKE2B 03b9024e658a5860d54b9087f3e1cc4b417a2501d6a1744c44759bbc99cabd5938058ba2909b16cc999208187998094aa6ab5464e5ed54b87ea0b1eef007e85c SHA512 f2f3e38f5c0c2928ed0588ee42be74d43486d209b43249f73ae133c4c1f81491c86b14df2ddecbc37df6fe80b27b0eab6c3f319e44854e91596dfbd3ec37b8aa
-DIST binutils-2.40-patches-4.tar.xz 264420 BLAKE2B 70acdc15f64a45cda49ebd7c252d909db2fe659f5c2c0866c50fd710415fd34bd88f9c5cd5ba07beef1e7de7fe827bb40f835fb79ff10e00fc50451e3a8cab33 SHA512 5f0a080841cb3a032cbe7b135ba38bebeae0b0e444623887bdcb92a3adcf804701524eff840f108a9544293f5ac307b4a8d9509176abfeaea6c461b2ea5c0886
DIST binutils-2.40-patches-5.tar.xz 293628 BLAKE2B b7ed1d1fbf38b420661f984b9519b3d863da45b2a873773a521310021b0c1d5d7c24c152adb3e8a999d40f5619c0e54962114590ec9528380089977af0c30b74 SHA512 6e6df932b18ca20fe245b3ff8d3d06dbdae4daadaec3b668fa44e086d4e8ff56439681b2d810ebc74173b6348020edacb176e8c3cbf20657cce04297b97f4f83
DIST binutils-2.40.tar.xz 25241484 BLAKE2B 8d799f7c595f878b9af5b17a490021dd8b8300ac2fe0ed8574c012929d22d2d0493e003a3e631a9436e8e712da801779b777c566167fe42b0bde119ffa5ad1c2 SHA512 a37e042523bc46494d99d5637c3f3d8f9956d9477b748b3b1f6d7dfbb8d968ed52c932e88a4e946c6f77b8f48f1e1b360ca54c3d298f17193f3b4963472f6925
diff --git a/sys-devel/binutils/binutils-2.40-r3.ebuild b/sys-devel/binutils/binutils-2.40-r3.ebuild
deleted file mode 100644
index 3a322d6bdb88..000000000000
--- a/sys-devel/binutils/binutils-2.40-r3.ebuild
+++ /dev/null
@@ -1,503 +0,0 @@
-# Copyright 1999-2023 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 doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla zstd"
-
-# 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=3
-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://sourceware.org/pub/binutils/releases/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
- zstd? ( app-arch/zstd:= )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- doc? ( sys-apps/texinfo )
- test? (
- dev-util/dejagnu
- sys-devel/bc
- )
- nls? ( sys-devel/gettext )
- zstd? ( virtual/pkgconfig )
- sys-devel/flex
- app-alternatives/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."
-
- # This is applied conditionally for now just out of caution.
- # It should be okay on non-prefix systems though. See bug #892549.
- use prefix && eapply "${FILESDIR}"/binutils-2.40-linker-search-path.patch
- 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 cet && filter-flags -mindirect-branch -mindirect-branch=*
- use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
-
- # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
- # https://github.com/gentoo/gentoo/pull/28355
- # mold needs this too but right now tc-ld-is-mold is also not available
- if tc-ld-is-lld; then
- append-ldflags -Wl,--undefined-version
- fi
-
- 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 )
- 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
-
- # These hardening options are available from 2.39+ but
- # they unconditionally enable the behaviour even on arches
- # where e.g. execstacks can't be avoided.
- # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
- #--enable-warn-execstack
- #--enable-warn-rwx-segments
- #--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)
- $(use_with zstd)
-
- # 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.40-r4.ebuild b/sys-devel/binutils/binutils-2.40-r4.ebuild
deleted file mode 100644
index 987ca13d2440..000000000000
--- a/sys-devel/binutils/binutils-2.40-r4.ebuild
+++ /dev/null
@@ -1,503 +0,0 @@
-# Copyright 1999-2023 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 doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla zstd"
-
-# 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://sourceware.org/pub/binutils/releases/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
- zstd? ( app-arch/zstd:= )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- doc? ( sys-apps/texinfo )
- test? (
- dev-util/dejagnu
- sys-devel/bc
- )
- nls? ( sys-devel/gettext )
- zstd? ( virtual/pkgconfig )
- sys-devel/flex
- app-alternatives/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."
-
- # This is applied conditionally for now just out of caution.
- # It should be okay on non-prefix systems though. See bug #892549.
- use prefix && eapply "${FILESDIR}"/binutils-2.40-linker-search-path.patch
- 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 cet && filter-flags -mindirect-branch -mindirect-branch=*
- use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
-
- # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
- # https://github.com/gentoo/gentoo/pull/28355
- # mold needs this too but right now tc-ld-is-mold is also not available
- if tc-ld-is-lld; then
- append-ldflags -Wl,--undefined-version
- fi
-
- 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 )
- 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
-
- # These hardening options are available from 2.39+ but
- # they unconditionally enable the behaviour even on arches
- # where e.g. execstacks can't be avoided.
- # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
- #--enable-warn-execstack
- #--enable-warn-rwx-segments
- #--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)
- $(use_with zstd)
-
- # 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-06-30 21:14 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2023-06-30 21:14 UTC (permalink / raw
To: gentoo-commits
commit: be291dfb765ec326a721c3213053101b3aa422b0
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jun 30 21:13:47 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jun 30 21:13:47 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=be291dfb
sys-devel/binutils: Stabilize 2.40-r5 amd64, #909412
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.40-r5.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.40-r5.ebuild b/sys-devel/binutils/binutils-2.40-r5.ebuild
index 689748580977..46633978ceeb 100644
--- a/sys-devel/binutils/binutils-2.40-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r5.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-06-30 21:14 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2023-06-30 21:14 UTC (permalink / raw
To: gentoo-commits
commit: b1c92fe5cc4034753ce7ef1072cc8a240c3001db
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jun 30 21:13:45 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jun 30 21:13:45 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b1c92fe5
sys-devel/binutils: Stabilize 2.40-r5 ppc64, #909412
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.40-r5.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.40-r5.ebuild b/sys-devel/binutils/binutils-2.40-r5.ebuild
index b6d2c543fe48..689748580977 100644
--- a/sys-devel/binutils/binutils-2.40-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r5.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-07-15 8:49 Arthur Zamarin
0 siblings, 0 replies; 477+ messages in thread
From: Arthur Zamarin @ 2023-07-15 8:49 UTC (permalink / raw
To: gentoo-commits
commit: 13ed83d9b8c5491db400e820552f5fddf398179d
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Sat Jul 15 08:48:19 2023 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Sat Jul 15 08:48:19 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=13ed83d9
sys-devel/binutils: Stabilize 2.40-r5 arm, #909412
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
sys-devel/binutils/binutils-2.40-r5.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.40-r5.ebuild b/sys-devel/binutils/binutils-2.40-r5.ebuild
index 46633978ceeb..773607d770fd 100644
--- a/sys-devel/binutils/binutils-2.40-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r5.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-07-15 8:49 Arthur Zamarin
0 siblings, 0 replies; 477+ messages in thread
From: Arthur Zamarin @ 2023-07-15 8:49 UTC (permalink / raw
To: gentoo-commits
commit: dee220fd0b6aa5ccc0e4322ee3b2e234a0dd7507
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Sat Jul 15 08:48:22 2023 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Sat Jul 15 08:48:22 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dee220fd
sys-devel/binutils: Stabilize 2.40-r5 arm64, #909412
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
sys-devel/binutils/binutils-2.40-r5.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.40-r5.ebuild b/sys-devel/binutils/binutils-2.40-r5.ebuild
index 773607d770fd..010b2316c214 100644
--- a/sys-devel/binutils/binutils-2.40-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r5.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-07-18 19:18 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2023-07-18 19:18 UTC (permalink / raw
To: gentoo-commits
commit: 9acef1a000645fe2efd1d8b539ac11b4c79292a6
Author: Rolf Eike Beer <eike <AT> sf-mail <DOT> de>
AuthorDate: Sun Jul 16 11:16:32 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Jul 18 19:17:33 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9acef1a0
sys-devel/binutils: stable 2.40-r5 for sparc, bug #909412
Signed-off-by: Rolf Eike Beer <eike <AT> sf-mail.de>
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.40-r5.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.40-r5.ebuild b/sys-devel/binutils/binutils-2.40-r5.ebuild
index 010b2316c214..008e30a673d6 100644
--- a/sys-devel/binutils/binutils-2.40-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r5.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-07-19 21:48 Arsen Arsenović
0 siblings, 0 replies; 477+ messages in thread
From: Arsen Arsenović @ 2023-07-19 21:48 UTC (permalink / raw
To: gentoo-commits
commit: 654eec8416cc077d2a32f0a20b9ff5d201e4a74d
Author: Arsen Arsenović <arsen <AT> gentoo <DOT> org>
AuthorDate: Tue Jul 18 00:28:34 2023 +0000
Commit: Arsen Arsenović <arsen <AT> gentoo <DOT> org>
CommitDate: Wed Jul 19 21:44:20 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=654eec84
sys-devel/binutils: add debuginfod support
Signed-off-by: Arsen Arsenović <arsen <AT> gentoo.org>
.../{binutils-9999.ebuild => binutils-2.40-r6.ebuild} | 11 ++++++-----
sys-devel/binutils/binutils-9999.ebuild | 9 +++++----
sys-devel/binutils/metadata.xml | 1 +
3 files changed, 12 insertions(+), 9 deletions(-)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-2.40-r6.ebuild
similarity index 98%
copy from sys-devel/binutils/binutils-9999.ebuild
copy to sys-devel/binutils/binutils-2.40-r6.ebuild
index d8c2553ece20..ff5ebb262fb2 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r6.ebuild
@@ -9,7 +9,7 @@ DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
LICENSE="GPL-3+"
-IUSE="cet doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla zstd"
+IUSE="cet debuginfod doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla zstd"
# Variables that can be set here (ignored for live ebuilds)
# PATCH_VER - the patchset version
@@ -19,7 +19,7 @@ IUSE="cet doc gold gprofng multitarget +nls pgo +plugins static-libs test vanill
# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
# for the patchsets
-PATCH_VER=2
+PATCH_VER=5
PATCH_DEV=dilfridge
if [[ ${PV} == 9999* ]]; then
@@ -52,6 +52,9 @@ is_cross() { [[ ${CHOST} != ${CTARGET} ]] ; }
RDEPEND="
>=sys-devel/binutils-config-3
sys-libs/zlib
+ debuginfod? (
+ dev-libs/elfutils[debuginfod(-)]
+ )
zstd? ( app-arch/zstd:= )
"
DEPEND="${RDEPEND}"
@@ -287,9 +290,7 @@ src_configure() {
# {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
+ $(use_with debuginfod)
# Avoid automagic dev-libs/msgpack dep, bug #865875
--without-msgpack
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index d8c2553ece20..ce9b9958cd11 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -9,7 +9,7 @@ DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
LICENSE="GPL-3+"
-IUSE="cet doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla zstd"
+IUSE="cet debuginfod doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla zstd"
# Variables that can be set here (ignored for live ebuilds)
# PATCH_VER - the patchset version
@@ -52,6 +52,9 @@ is_cross() { [[ ${CHOST} != ${CTARGET} ]] ; }
RDEPEND="
>=sys-devel/binutils-config-3
sys-libs/zlib
+ debuginfod? (
+ dev-libs/elfutils[debuginfod(-)]
+ )
zstd? ( app-arch/zstd:= )
"
DEPEND="${RDEPEND}"
@@ -287,9 +290,7 @@ src_configure() {
# {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
+ $(use_with debuginfod)
# Avoid automagic dev-libs/msgpack dep, bug #865875
--without-msgpack
diff --git a/sys-devel/binutils/metadata.xml b/sys-devel/binutils/metadata.xml
index 9b80e61912f4..3cc106863437 100644
--- a/sys-devel/binutils/metadata.xml
+++ b/sys-devel/binutils/metadata.xml
@@ -13,6 +13,7 @@
<flag name="pgo">Build binutils with Profile Guided Optimization (PGO) and LTO</flag>
<flag name="plugins">Enable plugin support in tools</flag>
<flag name="multitarget">Adds support to binutils for cross compiling (does not work with gas)</flag>
+ <flag name="debuginfod">Enable debuginfod support via <pkg>dev-libs/elfutils</pkg> libdebuginfod</flag>
</use>
<upstream>
<remote-id type="cpe">cpe:/a:gnu:binutils</remote-id>
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-07-29 21:15 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2023-07-29 21:15 UTC (permalink / raw
To: gentoo-commits
commit: e52598b3f47d72cdf865445bad3035e1dd3e8770
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Jul 29 21:14:49 2023 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Jul 29 21:15:27 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e52598b3
sys-devel/binutils: 2.40 patchset 6 bump (2.40-r7)
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.40-r7.ebuild | 504 +++++++++++++++++++++++++++++
2 files changed, 505 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 524992f61b1b..f84e4d78bf57 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -15,4 +15,5 @@ DIST binutils-2.38.tar.xz 23651408 BLAKE2B 19ede396ec97b88e632aded2f69f4684cc505
DIST binutils-2.39-patches-6.tar.xz 92380 BLAKE2B 39f490f1134fb0e7dc80924a280d3113efe0ed094ee15de97c42ab751c83d2f5aa7448966d8cbbcde722b2af4999a36c1e5aa2f37ca6d2e3942b97b6d90ff152 SHA512 213cd7a86da83987966675f3195e843d898ca4ff412dfc29fd33ed80adb7bbf80a0b2919cd8e7dd49208c73a621ab7b720970f2259418bdc82ed2a568ff62064
DIST binutils-2.39.tar.xz 25167756 BLAKE2B ac6a5296c6586d53eaadcbffc5c399a6d79edf72450b9bb8b3525ce525129cef3d2eb90c85ef3bb3270b5a03b0e1ffb8f0b705f028158726f9777ebb8685066f SHA512 68e038f339a8c21faa19a57bbc447a51c817f47c2e06d740847c6e9cc3396c025d35d5369fa8c3f8b70414757c89f0e577939ddc0d70f283182504920f53b0a3
DIST binutils-2.40-patches-5.tar.xz 293628 BLAKE2B b7ed1d1fbf38b420661f984b9519b3d863da45b2a873773a521310021b0c1d5d7c24c152adb3e8a999d40f5619c0e54962114590ec9528380089977af0c30b74 SHA512 6e6df932b18ca20fe245b3ff8d3d06dbdae4daadaec3b668fa44e086d4e8ff56439681b2d810ebc74173b6348020edacb176e8c3cbf20657cce04297b97f4f83
+DIST binutils-2.40-patches-6.tar.xz 299212 BLAKE2B 3a68a924e9747fdd0486327a5bd2490cb72376f2cb6c6a60030d8c6b71357150d956a1e71d91683d43b571cb5bf738270880f72ef175d6c8faa257b090abeb8b SHA512 984dab529276ab4f9d215f643c7c18bd1793f438aaad0be158d209787c9c4a6bb68b10bec2065d3fe14a1594d5f1c29f55b2e9bac34a6f489f4b466c02e24766
DIST binutils-2.40.tar.xz 25241484 BLAKE2B 8d799f7c595f878b9af5b17a490021dd8b8300ac2fe0ed8574c012929d22d2d0493e003a3e631a9436e8e712da801779b777c566167fe42b0bde119ffa5ad1c2 SHA512 a37e042523bc46494d99d5637c3f3d8f9956d9477b748b3b1f6d7dfbb8d968ed52c932e88a4e946c6f77b8f48f1e1b360ca54c3d298f17193f3b4963472f6925
diff --git a/sys-devel/binutils/binutils-2.40-r7.ebuild b/sys-devel/binutils/binutils-2.40-r7.ebuild
new file mode 100644
index 000000000000..14a933e9d95d
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.40-r7.ebuild
@@ -0,0 +1,504 @@
+# Copyright 1999-2023 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 debuginfod doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla zstd"
+
+# 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=6
+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://sourceware.org/pub/binutils/releases/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
+ debuginfod? (
+ dev-libs/elfutils[debuginfod(-)]
+ )
+ zstd? ( app-arch/zstd:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ doc? ( sys-apps/texinfo )
+ test? (
+ dev-util/dejagnu
+ sys-devel/bc
+ )
+ nls? ( sys-devel/gettext )
+ zstd? ( virtual/pkgconfig )
+ sys-devel/flex
+ app-alternatives/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."
+
+ # This is applied conditionally for now just out of caution.
+ # It should be okay on non-prefix systems though. See bug #892549.
+ use prefix && eapply "${FILESDIR}"/binutils-2.40-linker-search-path.patch
+ 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 cet && filter-flags -mindirect-branch -mindirect-branch=*
+ use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
+
+ # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
+ # https://github.com/gentoo/gentoo/pull/28355
+ # mold needs this too but right now tc-ld-is-mold is also not available
+ if tc-ld-is-lld; then
+ append-ldflags -Wl,--undefined-version
+ fi
+
+ 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 )
+ 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
+
+ # These hardening options are available from 2.39+ but
+ # they unconditionally enable the behaviour even on arches
+ # where e.g. execstacks can't be avoided.
+ # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
+ #--enable-warn-execstack
+ #--enable-warn-rwx-segments
+ #--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)
+ $(use_with zstd)
+
+ # 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)
+
+ $(use_with 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-07-30 10:26 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2023-07-30 10:26 UTC (permalink / raw
To: gentoo-commits
commit: c5b2dc36dd8d57508ef2e1ac537452a1978b93dd
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 30 10:23:11 2023 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Jul 30 10:26:11 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c5b2dc36
sys-devel/binutils: keyword 2.40-r7
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.40-r7.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.40-r7.ebuild b/sys-devel/binutils/binutils-2.40-r7.ebuild
index 14a933e9d95d..bad301c3d31b 100644
--- a/sys-devel/binutils/binutils-2.40-r7.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r7.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-07-30 15:28 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2023-07-30 15:28 UTC (permalink / raw
To: gentoo-commits
commit: d1612ea9e67e751dd5413bcaa310a1bbf22dca7a
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 30 15:28:11 2023 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Jul 30 15:28:28 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d1612ea9
sys-devel/binutils: add 2.41
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 +
sys-devel/binutils/binutils-2.41.ebuild | 504 ++++++++++++++++++++++++++++++++
2 files changed, 506 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index f84e4d78bf57..166e1578d627 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -17,3 +17,5 @@ DIST binutils-2.39.tar.xz 25167756 BLAKE2B ac6a5296c6586d53eaadcbffc5c399a6d79ed
DIST binutils-2.40-patches-5.tar.xz 293628 BLAKE2B b7ed1d1fbf38b420661f984b9519b3d863da45b2a873773a521310021b0c1d5d7c24c152adb3e8a999d40f5619c0e54962114590ec9528380089977af0c30b74 SHA512 6e6df932b18ca20fe245b3ff8d3d06dbdae4daadaec3b668fa44e086d4e8ff56439681b2d810ebc74173b6348020edacb176e8c3cbf20657cce04297b97f4f83
DIST binutils-2.40-patches-6.tar.xz 299212 BLAKE2B 3a68a924e9747fdd0486327a5bd2490cb72376f2cb6c6a60030d8c6b71357150d956a1e71d91683d43b571cb5bf738270880f72ef175d6c8faa257b090abeb8b SHA512 984dab529276ab4f9d215f643c7c18bd1793f438aaad0be158d209787c9c4a6bb68b10bec2065d3fe14a1594d5f1c29f55b2e9bac34a6f489f4b466c02e24766
DIST binutils-2.40.tar.xz 25241484 BLAKE2B 8d799f7c595f878b9af5b17a490021dd8b8300ac2fe0ed8574c012929d22d2d0493e003a3e631a9436e8e712da801779b777c566167fe42b0bde119ffa5ad1c2 SHA512 a37e042523bc46494d99d5637c3f3d8f9956d9477b748b3b1f6d7dfbb8d968ed52c932e88a4e946c6f77b8f48f1e1b360ca54c3d298f17193f3b4963472f6925
+DIST binutils-2.41-patches-1.tar.xz 13260 BLAKE2B b7431ec92d5ce0e5d4438b31ca356c8d5366bee9aa8ff2f098a77c2add5b7539f733d0a18988337490af34c9192affbb6ccdf56b97413a8dca3192fb2125b313 SHA512 30548e4f3187444dbfa82587b5b8a0d2ab9d536aa06a572393a195649759149124d79c488c07919850c7ed4940481b852462d5a1aa52ed9162d81d6d3b290377
+DIST binutils-2.41.tar.xz 26765692 BLAKE2B 3bccec2b52f7e82a727121bf2a2e51a6249ba63dcd74c665fd834e858645c912ffd8245d848435288b938852830b482905606f55c40df4061215fd75c52ffc75 SHA512 5df45d0bd6ddabdce4f35878c041e46a92deef01e7dea5facc97fd65cc06b59abc6fba0eb454b68e571c7e14038dc823fe7f2263843e6e627b7444eaf0fe9374
diff --git a/sys-devel/binutils/binutils-2.41.ebuild b/sys-devel/binutils/binutils-2.41.ebuild
new file mode 100644
index 000000000000..3e6b9da5d246
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.41.ebuild
@@ -0,0 +1,504 @@
+# Copyright 1999-2023 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 debuginfod doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla zstd"
+
+# 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=1
+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://sourceware.org/pub/binutils/releases/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
+ debuginfod? (
+ dev-libs/elfutils[debuginfod(-)]
+ )
+ zstd? ( app-arch/zstd:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ doc? ( sys-apps/texinfo )
+ test? (
+ dev-util/dejagnu
+ sys-devel/bc
+ )
+ nls? ( sys-devel/gettext )
+ zstd? ( virtual/pkgconfig )
+ sys-devel/flex
+ app-alternatives/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."
+
+ # This is applied conditionally for now just out of caution.
+ # It should be okay on non-prefix systems though. See bug #892549.
+ use prefix && eapply "${FILESDIR}"/binutils-2.40-linker-search-path.patch
+ 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 cet && filter-flags -mindirect-branch -mindirect-branch=*
+ use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
+
+ # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
+ # https://github.com/gentoo/gentoo/pull/28355
+ # mold needs this too but right now tc-ld-is-mold is also not available
+ if tc-ld-is-lld; then
+ append-ldflags -Wl,--undefined-version
+ fi
+
+ 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 )
+ 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
+
+ # These hardening options are available from 2.39+ but
+ # they unconditionally enable the behaviour even on arches
+ # where e.g. execstacks can't be avoided.
+ # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
+ #--enable-warn-execstack
+ #--enable-warn-rwx-segments
+ #--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)
+ $(use_with zstd)
+
+ # 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)
+
+ $(use_with 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-07-30 16:43 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2023-07-30 16:43 UTC (permalink / raw
To: gentoo-commits
commit: 86ac5c16e3149458710b691e1cad81c50be8d661
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 30 16:26:38 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Jul 30 16:42:29 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=86ac5c16
sys-devel/binutils: add various hardening options to 2.41
Newer Binutils has its several configure arguments we can use:
* --enable-textrel-check={warning,error}
* --enable-warn-execstack=yes (*)
* --enable-warn-rwx-segments=yes (*)
* --enable-default-execstack=no
We chuck these in now unconditionally (with some stricter changes for USE=hardened,
as described below) except for those marked with (*) where we whitelist certain
arches (amd64/arm64/x86 for now) because the autoconf logic is broken, see
https://sourceware.org/bugzilla/show_bug.cgi?id=29592 (it both needs --enable...=no
rather than --disable, but it also breaks arches where executable stacks are
unavoidable.)
In the past (see 47b8db23ff55dd29992198dfbadda53984a4ab2d, e4b8746852919960969944904c59334cecddfe25
in binutils-patches.git), we patched Binutils to always warn on textrels
opt-out on a per-build basis with '--no-warn-shared-textrel'). From >= Binutils 2.35,
upstream has a '--enable-textrel-check=warning' configure option we use.
For USE=hardened, our new changes for TEXTRELs are equivalent to `-z text`
which make TEXTRELs fatal.
Now, while at it, also make TEXTRELs fatal on musl unconditionally because
musl doesn't support them and they explode at runtime. Yet another reason
to get rid of them entirely.
So, in summary: there's several changes here:
* Make textrels fatal for USE=hardened (we've warned about them for a while
on all profiles)
* Make textrels fatal for musl (they don't work there at all, bug #707660)
* Disable implicit/automatic executable stacks for USE=hardened (plan to do this
in general later on)
* Warn on executable stacks in general
* Warn on RWX segments in general
See also https://www.redhat.com/en/blog/linkers-warnings-about-executable-stacks-and-segments
for more information.
All of this came to mind again after reading the Qualys writeup for the recent
OpenSSH bug (bug #910553): https://www.qualys.com/2023/07/19/cve-2023-38408/rce-openssh-forwarded-ssh-agent.txt.
(Note their use of various gadgets involving these.)
Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=29592
Bug: https://bugs.gentoo.org/707660
Bug: https://bugs.gentoo.org/869881
Bug: https://bugs.gentoo.org/871150
Bug: https://bugs.gentoo.org/910553
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.41.ebuild | 43 +++++++++++++++++++++++-------
sys-devel/binutils/binutils-9999.ebuild | 47 ++++++++++++++++++++++++---------
2 files changed, 68 insertions(+), 22 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.41.ebuild b/sys-devel/binutils/binutils-2.41.ebuild
index 3e6b9da5d246..143d9cf7857b 100644
--- a/sys-devel/binutils/binutils-2.41.ebuild
+++ b/sys-devel/binutils/binutils-2.41.ebuild
@@ -9,7 +9,7 @@ DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
LICENSE="GPL-3+"
-IUSE="cet debuginfod doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla zstd"
+IUSE="cet debuginfod doc gold gprofng hardened multitarget +nls pgo +plugins static-libs test vanilla zstd"
# Variables that can be set here (ignored for live ebuilds)
# PATCH_VER - the patchset version
@@ -258,15 +258,7 @@ src_configure() {
# Newer versions (>=2.24) make this an explicit option, bug #497268
--enable-install-libiberty
# Available from 2.35 on
- --enable-textrel-check=warning
-
- # These hardening options are available from 2.39+ but
- # they unconditionally enable the behaviour even on arches
- # where e.g. execstacks can't be avoided.
- # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
- #--enable-warn-execstack
- #--enable-warn-rwx-segments
- #--disable-default-execstack (or is it --enable-default-execstack=no? docs are confusing)
+ --enable-textrel-check=$(usex hardened error warning)
# Things to think about
#--enable-deterministic-archives
@@ -309,6 +301,37 @@ src_configure() {
$(use_enable gprofng)
)
+ if use amd64 || use arm64 || use x86 ; then
+ # These hardening options are available from 2.39+ but
+ # they unconditionally enable the behaviour even on arches
+ # where e.g. execstacks can't be avoided.
+ # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
+ #
+ # TODO: Get the logic for this fixed upstream so it doesn't
+ # create impossible broken combinations on some arches, like mips.
+ #
+ # TODO: Get the logic for this fixed upstream so --disable-* works
+ # as expected.
+ myconf+=(
+ --enable-warn-execstack=yes
+ --enable-warn-rwx-segments=yes
+ )
+
+ if use hardened ; then
+ myconf+=(
+ --enable-default-execstack=no
+ )
+ fi
+ fi
+
+ if use elibc_musl ; then
+ # Override our earlier setting for musl, as textrels don't
+ # work there at all. See bug #707660.
+ myconf+=(
+ --enable-textrel-check=error
+ )
+ fi
+
if ! is_cross ; then
myconf+=( $(use_enable pgo pgo-build lto) )
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index ce9b9958cd11..143d9cf7857b 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -9,7 +9,7 @@ DESCRIPTION="Tools necessary to build programs"
HOMEPAGE="https://sourceware.org/binutils/"
LICENSE="GPL-3+"
-IUSE="cet debuginfod doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla zstd"
+IUSE="cet debuginfod doc gold gprofng hardened multitarget +nls pgo +plugins static-libs test vanilla zstd"
# Variables that can be set here (ignored for live ebuilds)
# PATCH_VER - the patchset version
@@ -19,7 +19,7 @@ IUSE="cet debuginfod doc gold gprofng multitarget +nls pgo +plugins static-libs
# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
# for the patchsets
-PATCH_VER=2
+PATCH_VER=1
PATCH_DEV=dilfridge
if [[ ${PV} == 9999* ]]; then
@@ -32,7 +32,7 @@ else
[[ -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"
+ #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
@@ -258,15 +258,7 @@ src_configure() {
# Newer versions (>=2.24) make this an explicit option, bug #497268
--enable-install-libiberty
# Available from 2.35 on
- --enable-textrel-check=warning
-
- # These hardening options are available from 2.39+ but
- # they unconditionally enable the behaviour even on arches
- # where e.g. execstacks can't be avoided.
- # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
- #--enable-warn-execstack
- #--enable-warn-rwx-segments
- #--disable-default-execstack (or is it --enable-default-execstack=no? docs are confusing)
+ --enable-textrel-check=$(usex hardened error warning)
# Things to think about
#--enable-deterministic-archives
@@ -309,6 +301,37 @@ src_configure() {
$(use_enable gprofng)
)
+ if use amd64 || use arm64 || use x86 ; then
+ # These hardening options are available from 2.39+ but
+ # they unconditionally enable the behaviour even on arches
+ # where e.g. execstacks can't be avoided.
+ # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
+ #
+ # TODO: Get the logic for this fixed upstream so it doesn't
+ # create impossible broken combinations on some arches, like mips.
+ #
+ # TODO: Get the logic for this fixed upstream so --disable-* works
+ # as expected.
+ myconf+=(
+ --enable-warn-execstack=yes
+ --enable-warn-rwx-segments=yes
+ )
+
+ if use hardened ; then
+ myconf+=(
+ --enable-default-execstack=no
+ )
+ fi
+ fi
+
+ if use elibc_musl ; then
+ # Override our earlier setting for musl, as textrels don't
+ # work there at all. See bug #707660.
+ myconf+=(
+ --enable-textrel-check=error
+ )
+ fi
+
if ! is_cross ; then
myconf+=( $(use_enable pgo pgo-build lto) )
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-07-30 16:48 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2023-07-30 16:48 UTC (permalink / raw
To: gentoo-commits
commit: ed81b5aa816230aef5c0f7872ff01ab3303d4d31
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 30 16:48:28 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Jul 30 16:48:28 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ed81b5aa
sys-devel/binutils: cleanup stale comments
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.41.ebuild | 13 ++-----------
sys-devel/binutils/binutils-9999.ebuild | 13 ++-----------
2 files changed, 4 insertions(+), 22 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.41.ebuild b/sys-devel/binutils/binutils-2.41.ebuild
index 925731fdf56b..d553da58aa63 100644
--- a/sys-devel/binutils/binutils-2.41.ebuild
+++ b/sys-devel/binutils/binutils-2.41.ebuild
@@ -253,19 +253,12 @@ src_configure() {
--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=$(usex hardened error warning)
-
# 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)"
@@ -275,11 +268,9 @@ src_configure() {
# 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
+ # 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
+ # Change SONAME to avoid conflict across {native,cross}/binutils, binutils-libs. bug #666100
--with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
$(use_with debuginfod)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 925731fdf56b..d553da58aa63 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -253,19 +253,12 @@ src_configure() {
--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=$(usex hardened error warning)
-
# 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)"
@@ -275,11 +268,9 @@ src_configure() {
# 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
+ # 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
+ # Change SONAME to avoid conflict across {native,cross}/binutils, binutils-libs. bug #666100
--with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)
$(use_with debuginfod)
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-07-30 16:48 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2023-07-30 16:48 UTC (permalink / raw
To: gentoo-commits
commit: 8adde117f4abc70c3ae8cd7b9d50c24e3a9e3eb8
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 30 16:47:35 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Jul 30 16:47:35 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8adde117
sys-devel/binutils: use case on CTARGET instead
'use' isn't reliable for cross.
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.41.ebuild | 44 ++++++++++++++++++---------------
sys-devel/binutils/binutils-9999.ebuild | 44 ++++++++++++++++++---------------
2 files changed, 48 insertions(+), 40 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.41.ebuild b/sys-devel/binutils/binutils-2.41.ebuild
index 143d9cf7857b..925731fdf56b 100644
--- a/sys-devel/binutils/binutils-2.41.ebuild
+++ b/sys-devel/binutils/binutils-2.41.ebuild
@@ -301,28 +301,32 @@ src_configure() {
$(use_enable gprofng)
)
- if use amd64 || use arm64 || use x86 ; then
- # These hardening options are available from 2.39+ but
- # they unconditionally enable the behaviour even on arches
- # where e.g. execstacks can't be avoided.
- # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
- #
- # TODO: Get the logic for this fixed upstream so it doesn't
- # create impossible broken combinations on some arches, like mips.
- #
- # TODO: Get the logic for this fixed upstream so --disable-* works
- # as expected.
- myconf+=(
- --enable-warn-execstack=yes
- --enable-warn-rwx-segments=yes
- )
-
- if use hardened ; then
+ case ${CTARGET} in
+ x86_64-*|aarch64*|arm64*|i[3456]*)
+ # These hardening options are available from 2.39+ but
+ # they unconditionally enable the behaviour even on arches
+ # where e.g. execstacks can't be avoided.
+ # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
+ #
+ # TODO: Get the logic for this fixed upstream so it doesn't
+ # create impossible broken combinations on some arches, like mips.
+ #
+ # TODO: Get the logic for this fixed upstream so --disable-* works
+ # as expected.
myconf+=(
- --enable-default-execstack=no
+ --enable-warn-execstack=yes
+ --enable-warn-rwx-segments=yes
)
- fi
- fi
+
+ if use hardened ; then
+ myconf+=(
+ --enable-default-execstack=no
+ )
+ fi
+ ;;
+ *)
+ ;;
+ esac
if use elibc_musl ; then
# Override our earlier setting for musl, as textrels don't
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 143d9cf7857b..925731fdf56b 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -301,28 +301,32 @@ src_configure() {
$(use_enable gprofng)
)
- if use amd64 || use arm64 || use x86 ; then
- # These hardening options are available from 2.39+ but
- # they unconditionally enable the behaviour even on arches
- # where e.g. execstacks can't be avoided.
- # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
- #
- # TODO: Get the logic for this fixed upstream so it doesn't
- # create impossible broken combinations on some arches, like mips.
- #
- # TODO: Get the logic for this fixed upstream so --disable-* works
- # as expected.
- myconf+=(
- --enable-warn-execstack=yes
- --enable-warn-rwx-segments=yes
- )
-
- if use hardened ; then
+ case ${CTARGET} in
+ x86_64-*|aarch64*|arm64*|i[3456]*)
+ # These hardening options are available from 2.39+ but
+ # they unconditionally enable the behaviour even on arches
+ # where e.g. execstacks can't be avoided.
+ # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
+ #
+ # TODO: Get the logic for this fixed upstream so it doesn't
+ # create impossible broken combinations on some arches, like mips.
+ #
+ # TODO: Get the logic for this fixed upstream so --disable-* works
+ # as expected.
myconf+=(
- --enable-default-execstack=no
+ --enable-warn-execstack=yes
+ --enable-warn-rwx-segments=yes
)
- fi
- fi
+
+ if use hardened ; then
+ myconf+=(
+ --enable-default-execstack=no
+ )
+ fi
+ ;;
+ *)
+ ;;
+ esac
if use elibc_musl ; then
# Override our earlier setting for musl, as textrels don't
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-08-02 22:48 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2023-08-02 22:48 UTC (permalink / raw
To: gentoo-commits
commit: bd6244a36c48ec3558895e354780eb7708d4ef10
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 2 18:49:25 2023 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Wed Aug 2 22:48:12 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bd6244a3
sys-devel/binutils: keyword 2.41
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.41.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.41.ebuild b/sys-devel/binutils/binutils-2.41.ebuild
index d553da58aa63..c555b6494b26 100644
--- a/sys-devel/binutils/binutils-2.41.ebuild
+++ b/sys-devel/binutils/binutils-2.41.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-08-04 1:53 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2023-08-04 1:53 UTC (permalink / raw
To: gentoo-commits
commit: 6c70684c01d2c36caa7cfd61be1758327ed66fc3
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 4 01:48:50 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Aug 4 01:49:24 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6c70684c
sys-devel/binutils: pass --disable-dependency-tracking, --disable-silent-rules
We already do this for gdb, do the same for binutils. Portage/econf only greps
the top-level configure which has neither of these, but the subconfigure dirs
do.
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.41.ebuild | 13 +++++++++----
sys-devel/binutils/binutils-9999.ebuild | 13 +++++++++----
2 files changed, 18 insertions(+), 8 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.41.ebuild b/sys-devel/binutils/binutils-2.41.ebuild
index c555b6494b26..2a05d10fa85c 100644
--- a/sys-devel/binutils/binutils-2.41.ebuild
+++ b/sys-devel/binutils/binutils-2.41.ebuild
@@ -250,6 +250,11 @@ src_configure() {
--libdir="${EPREFIX}"${LIBPATH}
--libexecdir="${EPREFIX}"${LIBPATH}
--includedir="${EPREFIX}"${INCPATH}
+ # portage's econf() does not detect presence of --d-d-t
+ # because it greps only top-level ./configure. But not
+ # libiberty's or bfd's configure.
+ --disable-dependency-tracking
+ --disable-silent-rules
--enable-obsolete
--enable-shared
--enable-threads
@@ -349,11 +354,11 @@ src_compile() {
cd "${MY_BUILDDIR}" || die
# see Note [tooldir hack for ldscripts]
- emake V=1 tooldir="${EPREFIX}${TOOLPATH}" all
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
# only build info pages if the user wants them
if use doc ; then
- emake V=1 info
+ emake info
fi
# we nuke the manpages when we're left with junk
@@ -367,7 +372,7 @@ src_test() {
# bug #637066
filter-flags -Wall -Wreturn-type
- emake -k V=1 check
+ emake -k check
}
src_install() {
@@ -376,7 +381,7 @@ src_install() {
cd "${MY_BUILDDIR}" || die
# see Note [tooldir hack for ldscripts]
- emake V=1 DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
rm -rf "${ED}"/${LIBPATH}/bin || die
use static-libs || find "${ED}" -name '*.la' -delete
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index d553da58aa63..bd99e9391eb7 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -250,6 +250,11 @@ src_configure() {
--libdir="${EPREFIX}"${LIBPATH}
--libexecdir="${EPREFIX}"${LIBPATH}
--includedir="${EPREFIX}"${INCPATH}
+ # portage's econf() does not detect presence of --d-d-t
+ # because it greps only top-level ./configure. But not
+ # libiberty's or bfd's configure.
+ --disable-dependency-tracking
+ --disable-silent-rules
--enable-obsolete
--enable-shared
--enable-threads
@@ -349,11 +354,11 @@ src_compile() {
cd "${MY_BUILDDIR}" || die
# see Note [tooldir hack for ldscripts]
- emake V=1 tooldir="${EPREFIX}${TOOLPATH}" all
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
# only build info pages if the user wants them
if use doc ; then
- emake V=1 info
+ emake info
fi
# we nuke the manpages when we're left with junk
@@ -367,7 +372,7 @@ src_test() {
# bug #637066
filter-flags -Wall -Wreturn-type
- emake -k V=1 check
+ emake -k check
}
src_install() {
@@ -376,7 +381,7 @@ src_install() {
cd "${MY_BUILDDIR}" || die
# see Note [tooldir hack for ldscripts]
- emake V=1 DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
rm -rf "${ED}"/${LIBPATH}/bin || die
use static-libs || find "${ED}" -name '*.la' -delete
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-08-04 1:53 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2023-08-04 1:53 UTC (permalink / raw
To: gentoo-commits
commit: abfdb8773e7f2ddd1ca29dc01d55deffdf0687d0
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 4 01:52:23 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Aug 4 01:52:23 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=abfdb877
sys-devel/binutils: drop redundant die
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.41.ebuild | 2 +-
sys-devel/binutils/binutils-9999.ebuild | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.41.ebuild b/sys-devel/binutils/binutils-2.41.ebuild
index 2a05d10fa85c..d2afce01c576 100644
--- a/sys-devel/binutils/binutils-2.41.ebuild
+++ b/sys-devel/binutils/binutils-2.41.ebuild
@@ -340,7 +340,7 @@ src_configure() {
fi
fi
- ECONF_SOURCE="${S}" econf "${myconf[@]}" || die
+ ECONF_SOURCE="${S}" econf "${myconf[@]}"
# Prevent makeinfo from running if doc is unset.
if ! use doc ; then
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index bd99e9391eb7..11e84c53af1c 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -340,7 +340,7 @@ src_configure() {
fi
fi
- ECONF_SOURCE="${S}" econf "${myconf[@]}" || die
+ ECONF_SOURCE="${S}" econf "${myconf[@]}"
# Prevent makeinfo from running if doc is unset.
if ! use doc ; then
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-08-04 11:06 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2023-08-04 11:06 UTC (permalink / raw
To: gentoo-commits
commit: 702277874f55fdee0c90b93949c07f967362d834
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 4 11:02:27 2023 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Aug 4 11:06:37 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=70227787
sys-devel/binutils: 2.41 patchlevel 2 bump (2.41-r1)
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.41-r1.ebuild | 527 +++++++++++++++++++++++++++++
2 files changed, 528 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 166e1578d627..8ae378a25c9a 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -18,4 +18,5 @@ DIST binutils-2.40-patches-5.tar.xz 293628 BLAKE2B b7ed1d1fbf38b420661f984b9519b
DIST binutils-2.40-patches-6.tar.xz 299212 BLAKE2B 3a68a924e9747fdd0486327a5bd2490cb72376f2cb6c6a60030d8c6b71357150d956a1e71d91683d43b571cb5bf738270880f72ef175d6c8faa257b090abeb8b SHA512 984dab529276ab4f9d215f643c7c18bd1793f438aaad0be158d209787c9c4a6bb68b10bec2065d3fe14a1594d5f1c29f55b2e9bac34a6f489f4b466c02e24766
DIST binutils-2.40.tar.xz 25241484 BLAKE2B 8d799f7c595f878b9af5b17a490021dd8b8300ac2fe0ed8574c012929d22d2d0493e003a3e631a9436e8e712da801779b777c566167fe42b0bde119ffa5ad1c2 SHA512 a37e042523bc46494d99d5637c3f3d8f9956d9477b748b3b1f6d7dfbb8d968ed52c932e88a4e946c6f77b8f48f1e1b360ca54c3d298f17193f3b4963472f6925
DIST binutils-2.41-patches-1.tar.xz 13260 BLAKE2B b7431ec92d5ce0e5d4438b31ca356c8d5366bee9aa8ff2f098a77c2add5b7539f733d0a18988337490af34c9192affbb6ccdf56b97413a8dca3192fb2125b313 SHA512 30548e4f3187444dbfa82587b5b8a0d2ab9d536aa06a572393a195649759149124d79c488c07919850c7ed4940481b852462d5a1aa52ed9162d81d6d3b290377
+DIST binutils-2.41-patches-2.tar.xz 20288 BLAKE2B 1cc29e868ded12845856c5da567f23798fe3017961ce079325c20f456b837cab11560d896065f70953b0bab55bf565288541579e9c3e0991a87083edf2a85fa5 SHA512 75619a5e17b75d72f9bdd9d5e5ee3b566c94de64410bfc074f1a9bfb9f08db9ecf8be216efa1053263468aa8ec99b8aa3b2b095e63cb95f3566500ac0c3b9432
DIST binutils-2.41.tar.xz 26765692 BLAKE2B 3bccec2b52f7e82a727121bf2a2e51a6249ba63dcd74c665fd834e858645c912ffd8245d848435288b938852830b482905606f55c40df4061215fd75c52ffc75 SHA512 5df45d0bd6ddabdce4f35878c041e46a92deef01e7dea5facc97fd65cc06b59abc6fba0eb454b68e571c7e14038dc823fe7f2263843e6e627b7444eaf0fe9374
diff --git a/sys-devel/binutils/binutils-2.41-r1.ebuild b/sys-devel/binutils/binutils-2.41-r1.ebuild
new file mode 100644
index 000000000000..eec1ecb1e001
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.41-r1.ebuild
@@ -0,0 +1,527 @@
+# Copyright 1999-2023 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 debuginfod doc gold gprofng hardened multitarget +nls pgo +plugins static-libs test vanilla zstd"
+
+# 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=2
+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://sourceware.org/pub/binutils/releases/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
+ debuginfod? (
+ dev-libs/elfutils[debuginfod(-)]
+ )
+ zstd? ( app-arch/zstd:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ doc? ( sys-apps/texinfo )
+ test? (
+ dev-util/dejagnu
+ sys-devel/bc
+ )
+ nls? ( sys-devel/gettext )
+ zstd? ( virtual/pkgconfig )
+ sys-devel/flex
+ app-alternatives/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."
+
+ # This is applied conditionally for now just out of caution.
+ # It should be okay on non-prefix systems though. See bug #892549.
+ use prefix && eapply "${FILESDIR}"/binutils-2.40-linker-search-path.patch
+ 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 cet && filter-flags -mindirect-branch -mindirect-branch=*
+ use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
+
+ # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
+ # https://github.com/gentoo/gentoo/pull/28355
+ # mold needs this too but right now tc-ld-is-mold is also not available
+ if tc-ld-is-lld; then
+ append-ldflags -Wl,--undefined-version
+ fi
+
+ 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 )
+ 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}
+ # portage's econf() does not detect presence of --d-d-t
+ # because it greps only top-level ./configure. But not
+ # libiberty's or bfd's configure.
+ --disable-dependency-tracking
+ --disable-silent-rules
+ --enable-obsolete
+ --enable-shared
+ --enable-threads
+ --enable-relro
+ --enable-install-libiberty
+ --enable-textrel-check=$(usex hardened error warning)
+ # Things to think about
+ #--enable-deterministic-archives
+ --enable-new-dtags
+ --disable-jansson
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ $(use_with zstd)
+
+ # 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)
+
+ $(use_with 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)
+ )
+
+ case ${CTARGET} in
+ x86_64-*|aarch64*|arm64*|i[3456]*)
+ # These hardening options are available from 2.39+ but
+ # they unconditionally enable the behaviour even on arches
+ # where e.g. execstacks can't be avoided.
+ # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
+ #
+ # TODO: Get the logic for this fixed upstream so it doesn't
+ # create impossible broken combinations on some arches, like mips.
+ #
+ # TODO: Get the logic for this fixed upstream so --disable-* works
+ # as expected.
+ myconf+=(
+ --enable-warn-execstack=yes
+ --enable-warn-rwx-segments=yes
+ )
+
+ if use hardened ; then
+ myconf+=(
+ --enable-default-execstack=no
+ )
+ fi
+ ;;
+ *)
+ ;;
+ esac
+
+ if use elibc_musl ; then
+ # Override our earlier setting for musl, as textrels don't
+ # work there at all. See bug #707660.
+ myconf+=(
+ --enable-textrel-check=error
+ )
+ fi
+
+ 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[@]}"
+
+ # 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 tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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 check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}" || die
+
+ # see Note [tooldir hack for ldscripts]
+ emake 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-08-04 23:24 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2023-08-04 23:24 UTC (permalink / raw
To: gentoo-commits
commit: 1c7b8799296291862001e5a373238b18c4add385
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 4 23:23:29 2023 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Aug 4 23:24:04 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1c7b8799
sys-devel/binutils: 2.40 patchlevel 7 bump (2.40-r8)
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.40-r8.ebuild | 504 +++++++++++++++++++++++++++++
2 files changed, 505 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 8ae378a25c9a..0d40f65ef663 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -16,6 +16,7 @@ DIST binutils-2.39-patches-6.tar.xz 92380 BLAKE2B 39f490f1134fb0e7dc80924a280d31
DIST binutils-2.39.tar.xz 25167756 BLAKE2B ac6a5296c6586d53eaadcbffc5c399a6d79edf72450b9bb8b3525ce525129cef3d2eb90c85ef3bb3270b5a03b0e1ffb8f0b705f028158726f9777ebb8685066f SHA512 68e038f339a8c21faa19a57bbc447a51c817f47c2e06d740847c6e9cc3396c025d35d5369fa8c3f8b70414757c89f0e577939ddc0d70f283182504920f53b0a3
DIST binutils-2.40-patches-5.tar.xz 293628 BLAKE2B b7ed1d1fbf38b420661f984b9519b3d863da45b2a873773a521310021b0c1d5d7c24c152adb3e8a999d40f5619c0e54962114590ec9528380089977af0c30b74 SHA512 6e6df932b18ca20fe245b3ff8d3d06dbdae4daadaec3b668fa44e086d4e8ff56439681b2d810ebc74173b6348020edacb176e8c3cbf20657cce04297b97f4f83
DIST binutils-2.40-patches-6.tar.xz 299212 BLAKE2B 3a68a924e9747fdd0486327a5bd2490cb72376f2cb6c6a60030d8c6b71357150d956a1e71d91683d43b571cb5bf738270880f72ef175d6c8faa257b090abeb8b SHA512 984dab529276ab4f9d215f643c7c18bd1793f438aaad0be158d209787c9c4a6bb68b10bec2065d3fe14a1594d5f1c29f55b2e9bac34a6f489f4b466c02e24766
+DIST binutils-2.40-patches-7.tar.xz 299188 BLAKE2B 170cd2432e0458889b240c3603461d0b4bfa62d5314634b101a629db455d87235ac14ad44c63920b713d5235fa8b73902960df1019153873ef06a33aa7050b4b SHA512 a60da163caee68fe1fa355385d404e8998ebed0e390d50e0713e95334733a8b4e37bc63d522817284c027953e43848dbc98042461a47131fb53bc69203b4ee87
DIST binutils-2.40.tar.xz 25241484 BLAKE2B 8d799f7c595f878b9af5b17a490021dd8b8300ac2fe0ed8574c012929d22d2d0493e003a3e631a9436e8e712da801779b777c566167fe42b0bde119ffa5ad1c2 SHA512 a37e042523bc46494d99d5637c3f3d8f9956d9477b748b3b1f6d7dfbb8d968ed52c932e88a4e946c6f77b8f48f1e1b360ca54c3d298f17193f3b4963472f6925
DIST binutils-2.41-patches-1.tar.xz 13260 BLAKE2B b7431ec92d5ce0e5d4438b31ca356c8d5366bee9aa8ff2f098a77c2add5b7539f733d0a18988337490af34c9192affbb6ccdf56b97413a8dca3192fb2125b313 SHA512 30548e4f3187444dbfa82587b5b8a0d2ab9d536aa06a572393a195649759149124d79c488c07919850c7ed4940481b852462d5a1aa52ed9162d81d6d3b290377
DIST binutils-2.41-patches-2.tar.xz 20288 BLAKE2B 1cc29e868ded12845856c5da567f23798fe3017961ce079325c20f456b837cab11560d896065f70953b0bab55bf565288541579e9c3e0991a87083edf2a85fa5 SHA512 75619a5e17b75d72f9bdd9d5e5ee3b566c94de64410bfc074f1a9bfb9f08db9ecf8be216efa1053263468aa8ec99b8aa3b2b095e63cb95f3566500ac0c3b9432
diff --git a/sys-devel/binutils/binutils-2.40-r8.ebuild b/sys-devel/binutils/binutils-2.40-r8.ebuild
new file mode 100644
index 000000000000..2f1a4e09d894
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.40-r8.ebuild
@@ -0,0 +1,504 @@
+# Copyright 1999-2023 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 debuginfod doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla zstd"
+
+# 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=7
+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://sourceware.org/pub/binutils/releases/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
+ debuginfod? (
+ dev-libs/elfutils[debuginfod(-)]
+ )
+ zstd? ( app-arch/zstd:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ doc? ( sys-apps/texinfo )
+ test? (
+ dev-util/dejagnu
+ sys-devel/bc
+ )
+ nls? ( sys-devel/gettext )
+ zstd? ( virtual/pkgconfig )
+ sys-devel/flex
+ app-alternatives/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."
+
+ # This is applied conditionally for now just out of caution.
+ # It should be okay on non-prefix systems though. See bug #892549.
+ use prefix && eapply "${FILESDIR}"/binutils-2.40-linker-search-path.patch
+ 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 cet && filter-flags -mindirect-branch -mindirect-branch=*
+ use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
+
+ # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
+ # https://github.com/gentoo/gentoo/pull/28355
+ # mold needs this too but right now tc-ld-is-mold is also not available
+ if tc-ld-is-lld; then
+ append-ldflags -Wl,--undefined-version
+ fi
+
+ 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 )
+ 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
+
+ # These hardening options are available from 2.39+ but
+ # they unconditionally enable the behaviour even on arches
+ # where e.g. execstacks can't be avoided.
+ # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
+ #--enable-warn-execstack
+ #--enable-warn-rwx-segments
+ #--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)
+ $(use_with zstd)
+
+ # 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)
+
+ $(use_with 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-08-08 2:23 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2023-08-08 2:23 UTC (permalink / raw
To: gentoo-commits
commit: 9362027cc8c011e04ad084d91a1d996f3ce7ceea
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 8 02:23:19 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Aug 8 02:23:19 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9362027c
sys-devel/binutils: Stabilize 2.40-r5 hppa, #909412
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.40-r5.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.40-r5.ebuild b/sys-devel/binutils/binutils-2.40-r5.ebuild
index 008e30a673d6..ecc1fc556f88 100644
--- a/sys-devel/binutils/binutils-2.40-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r5.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-08-08 2:38 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2023-08-08 2:38 UTC (permalink / raw
To: gentoo-commits
commit: e803a33a07107199bbb64e6ddf706fedcfb3d297
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 8 02:37:47 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Aug 8 02:37:47 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e803a33a
sys-devel/binutils: Stabilize 2.40-r5 x86, #909412
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.40-r5.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.40-r5.ebuild b/sys-devel/binutils/binutils-2.40-r5.ebuild
index ecc1fc556f88..bf2b7d001816 100644
--- a/sys-devel/binutils/binutils-2.40-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r5.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-08-08 2:39 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2023-08-08 2:39 UTC (permalink / raw
To: gentoo-commits
commit: 650b027ca9d85d973878f721839b6beee91fe927
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 8 02:39:01 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Aug 8 02:39:01 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=650b027c
sys-devel/binutils: Stabilize 2.40-r5 ppc, #909412
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.40-r5.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.40-r5.ebuild b/sys-devel/binutils/binutils-2.40-r5.ebuild
index bf2b7d001816..8d0073e79611 100644
--- a/sys-devel/binutils/binutils-2.40-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r5.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-08-08 5:22 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2023-08-08 5:22 UTC (permalink / raw
To: gentoo-commits
commit: 856be3682478b5170412773f41a81d1adaf571e9
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 8 05:20:47 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Aug 8 05:20:47 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=856be368
sys-devel/binutils: backport configure tweaks to unkw'd 2.40-r8
Backport 6c70684c01d2c36caa7cfd61be1758327ed66fc3 to 2.40-r8. It's pretty
risk-free.
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.40-r8.ebuild | 13 +++++++++----
1 file changed, 9 insertions(+), 4 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.40-r8.ebuild b/sys-devel/binutils/binutils-2.40-r8.ebuild
index 2f1a4e09d894..929f9a3c643a 100644
--- a/sys-devel/binutils/binutils-2.40-r8.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r8.ebuild
@@ -250,6 +250,11 @@ src_configure() {
--libdir="${EPREFIX}"${LIBPATH}
--libexecdir="${EPREFIX}"${LIBPATH}
--includedir="${EPREFIX}"${INCPATH}
+ # portage's econf() does not detect presence of --d-d-t
+ # because it greps only top-level ./configure. But not
+ # libiberty's or bfd's configure.
+ --disable-dependency-tracking
+ --disable-silent-rules
--enable-obsolete
--enable-shared
--enable-threads
@@ -331,11 +336,11 @@ src_compile() {
cd "${MY_BUILDDIR}" || die
# see Note [tooldir hack for ldscripts]
- emake V=1 tooldir="${EPREFIX}${TOOLPATH}" all
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
# only build info pages if the user wants them
if use doc ; then
- emake V=1 info
+ emake info
fi
# we nuke the manpages when we're left with junk
@@ -349,7 +354,7 @@ src_test() {
# bug #637066
filter-flags -Wall -Wreturn-type
- emake -k V=1 check
+ emake -k check
}
src_install() {
@@ -358,7 +363,7 @@ src_install() {
cd "${MY_BUILDDIR}" || die
# see Note [tooldir hack for ldscripts]
- emake V=1 DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
+ emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install
rm -rf "${ED}"/${LIBPATH}/bin || die
use static-libs || find "${ED}" -name '*.la' -delete
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-08-09 2:42 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2023-08-09 2:42 UTC (permalink / raw
To: gentoo-commits
commit: 95805f7262242992d5200428925c75eaa7d910cb
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 9 02:39:51 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Aug 9 02:39:51 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=95805f72
sys-devel/binutils: keyword 2.40-r8
This contains the fix for ppc TLS. We don't need to wait to stable this one
to drop the patch from Python 3.12, I just didn't want the fix to solely
be in the very-new 2.41 slot as users may not have changed to it yet
and it felt likely to lead to confused users/bug reports if Python 3.12
was only buildable w/ binutils-2.41.
Bug: https://bugs.gentoo.org/909544
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.40-r8.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.40-r8.ebuild b/sys-devel/binutils/binutils-2.40-r8.ebuild
index 929f9a3c643a..789ad23b059c 100644
--- a/sys-devel/binutils/binutils-2.40-r8.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r8.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-08-20 20:51 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2023-08-20 20:51 UTC (permalink / raw
To: gentoo-commits
commit: 6cc001a7406aa5263e796be00e8ba44c4a6a0762
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Aug 20 20:50:15 2023 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Aug 20 20:50:15 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6cc001a7
sys-devel/binutils: drop 2.40-r6, 2.40-r7, 2.41
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 -
sys-devel/binutils/binutils-2.40-r6.ebuild | 504 ---------------------------
sys-devel/binutils/binutils-2.40-r7.ebuild | 504 ---------------------------
sys-devel/binutils/binutils-2.41.ebuild | 527 -----------------------------
4 files changed, 1537 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 0d40f65ef663..dd1b0f96df4c 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -15,9 +15,7 @@ DIST binutils-2.38.tar.xz 23651408 BLAKE2B 19ede396ec97b88e632aded2f69f4684cc505
DIST binutils-2.39-patches-6.tar.xz 92380 BLAKE2B 39f490f1134fb0e7dc80924a280d3113efe0ed094ee15de97c42ab751c83d2f5aa7448966d8cbbcde722b2af4999a36c1e5aa2f37ca6d2e3942b97b6d90ff152 SHA512 213cd7a86da83987966675f3195e843d898ca4ff412dfc29fd33ed80adb7bbf80a0b2919cd8e7dd49208c73a621ab7b720970f2259418bdc82ed2a568ff62064
DIST binutils-2.39.tar.xz 25167756 BLAKE2B ac6a5296c6586d53eaadcbffc5c399a6d79edf72450b9bb8b3525ce525129cef3d2eb90c85ef3bb3270b5a03b0e1ffb8f0b705f028158726f9777ebb8685066f SHA512 68e038f339a8c21faa19a57bbc447a51c817f47c2e06d740847c6e9cc3396c025d35d5369fa8c3f8b70414757c89f0e577939ddc0d70f283182504920f53b0a3
DIST binutils-2.40-patches-5.tar.xz 293628 BLAKE2B b7ed1d1fbf38b420661f984b9519b3d863da45b2a873773a521310021b0c1d5d7c24c152adb3e8a999d40f5619c0e54962114590ec9528380089977af0c30b74 SHA512 6e6df932b18ca20fe245b3ff8d3d06dbdae4daadaec3b668fa44e086d4e8ff56439681b2d810ebc74173b6348020edacb176e8c3cbf20657cce04297b97f4f83
-DIST binutils-2.40-patches-6.tar.xz 299212 BLAKE2B 3a68a924e9747fdd0486327a5bd2490cb72376f2cb6c6a60030d8c6b71357150d956a1e71d91683d43b571cb5bf738270880f72ef175d6c8faa257b090abeb8b SHA512 984dab529276ab4f9d215f643c7c18bd1793f438aaad0be158d209787c9c4a6bb68b10bec2065d3fe14a1594d5f1c29f55b2e9bac34a6f489f4b466c02e24766
DIST binutils-2.40-patches-7.tar.xz 299188 BLAKE2B 170cd2432e0458889b240c3603461d0b4bfa62d5314634b101a629db455d87235ac14ad44c63920b713d5235fa8b73902960df1019153873ef06a33aa7050b4b SHA512 a60da163caee68fe1fa355385d404e8998ebed0e390d50e0713e95334733a8b4e37bc63d522817284c027953e43848dbc98042461a47131fb53bc69203b4ee87
DIST binutils-2.40.tar.xz 25241484 BLAKE2B 8d799f7c595f878b9af5b17a490021dd8b8300ac2fe0ed8574c012929d22d2d0493e003a3e631a9436e8e712da801779b777c566167fe42b0bde119ffa5ad1c2 SHA512 a37e042523bc46494d99d5637c3f3d8f9956d9477b748b3b1f6d7dfbb8d968ed52c932e88a4e946c6f77b8f48f1e1b360ca54c3d298f17193f3b4963472f6925
-DIST binutils-2.41-patches-1.tar.xz 13260 BLAKE2B b7431ec92d5ce0e5d4438b31ca356c8d5366bee9aa8ff2f098a77c2add5b7539f733d0a18988337490af34c9192affbb6ccdf56b97413a8dca3192fb2125b313 SHA512 30548e4f3187444dbfa82587b5b8a0d2ab9d536aa06a572393a195649759149124d79c488c07919850c7ed4940481b852462d5a1aa52ed9162d81d6d3b290377
DIST binutils-2.41-patches-2.tar.xz 20288 BLAKE2B 1cc29e868ded12845856c5da567f23798fe3017961ce079325c20f456b837cab11560d896065f70953b0bab55bf565288541579e9c3e0991a87083edf2a85fa5 SHA512 75619a5e17b75d72f9bdd9d5e5ee3b566c94de64410bfc074f1a9bfb9f08db9ecf8be216efa1053263468aa8ec99b8aa3b2b095e63cb95f3566500ac0c3b9432
DIST binutils-2.41.tar.xz 26765692 BLAKE2B 3bccec2b52f7e82a727121bf2a2e51a6249ba63dcd74c665fd834e858645c912ffd8245d848435288b938852830b482905606f55c40df4061215fd75c52ffc75 SHA512 5df45d0bd6ddabdce4f35878c041e46a92deef01e7dea5facc97fd65cc06b59abc6fba0eb454b68e571c7e14038dc823fe7f2263843e6e627b7444eaf0fe9374
diff --git a/sys-devel/binutils/binutils-2.40-r6.ebuild b/sys-devel/binutils/binutils-2.40-r6.ebuild
deleted file mode 100644
index ff5ebb262fb2..000000000000
--- a/sys-devel/binutils/binutils-2.40-r6.ebuild
+++ /dev/null
@@ -1,504 +0,0 @@
-# Copyright 1999-2023 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 debuginfod doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla zstd"
-
-# 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://sourceware.org/pub/binutils/releases/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
- debuginfod? (
- dev-libs/elfutils[debuginfod(-)]
- )
- zstd? ( app-arch/zstd:= )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- doc? ( sys-apps/texinfo )
- test? (
- dev-util/dejagnu
- sys-devel/bc
- )
- nls? ( sys-devel/gettext )
- zstd? ( virtual/pkgconfig )
- sys-devel/flex
- app-alternatives/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."
-
- # This is applied conditionally for now just out of caution.
- # It should be okay on non-prefix systems though. See bug #892549.
- use prefix && eapply "${FILESDIR}"/binutils-2.40-linker-search-path.patch
- 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 cet && filter-flags -mindirect-branch -mindirect-branch=*
- use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
-
- # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
- # https://github.com/gentoo/gentoo/pull/28355
- # mold needs this too but right now tc-ld-is-mold is also not available
- if tc-ld-is-lld; then
- append-ldflags -Wl,--undefined-version
- fi
-
- 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 )
- 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
-
- # These hardening options are available from 2.39+ but
- # they unconditionally enable the behaviour even on arches
- # where e.g. execstacks can't be avoided.
- # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
- #--enable-warn-execstack
- #--enable-warn-rwx-segments
- #--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)
- $(use_with zstd)
-
- # 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)
-
- $(use_with 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.40-r7.ebuild b/sys-devel/binutils/binutils-2.40-r7.ebuild
deleted file mode 100644
index bad301c3d31b..000000000000
--- a/sys-devel/binutils/binutils-2.40-r7.ebuild
+++ /dev/null
@@ -1,504 +0,0 @@
-# Copyright 1999-2023 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 debuginfod doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla zstd"
-
-# 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=6
-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://sourceware.org/pub/binutils/releases/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
- debuginfod? (
- dev-libs/elfutils[debuginfod(-)]
- )
- zstd? ( app-arch/zstd:= )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- doc? ( sys-apps/texinfo )
- test? (
- dev-util/dejagnu
- sys-devel/bc
- )
- nls? ( sys-devel/gettext )
- zstd? ( virtual/pkgconfig )
- sys-devel/flex
- app-alternatives/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."
-
- # This is applied conditionally for now just out of caution.
- # It should be okay on non-prefix systems though. See bug #892549.
- use prefix && eapply "${FILESDIR}"/binutils-2.40-linker-search-path.patch
- 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 cet && filter-flags -mindirect-branch -mindirect-branch=*
- use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
-
- # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
- # https://github.com/gentoo/gentoo/pull/28355
- # mold needs this too but right now tc-ld-is-mold is also not available
- if tc-ld-is-lld; then
- append-ldflags -Wl,--undefined-version
- fi
-
- 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 )
- 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
-
- # These hardening options are available from 2.39+ but
- # they unconditionally enable the behaviour even on arches
- # where e.g. execstacks can't be avoided.
- # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
- #--enable-warn-execstack
- #--enable-warn-rwx-segments
- #--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)
- $(use_with zstd)
-
- # 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)
-
- $(use_with 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.41.ebuild b/sys-devel/binutils/binutils-2.41.ebuild
deleted file mode 100644
index d2afce01c576..000000000000
--- a/sys-devel/binutils/binutils-2.41.ebuild
+++ /dev/null
@@ -1,527 +0,0 @@
-# Copyright 1999-2023 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 debuginfod doc gold gprofng hardened multitarget +nls pgo +plugins static-libs test vanilla zstd"
-
-# 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=1
-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://sourceware.org/pub/binutils/releases/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
- debuginfod? (
- dev-libs/elfutils[debuginfod(-)]
- )
- zstd? ( app-arch/zstd:= )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- doc? ( sys-apps/texinfo )
- test? (
- dev-util/dejagnu
- sys-devel/bc
- )
- nls? ( sys-devel/gettext )
- zstd? ( virtual/pkgconfig )
- sys-devel/flex
- app-alternatives/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."
-
- # This is applied conditionally for now just out of caution.
- # It should be okay on non-prefix systems though. See bug #892549.
- use prefix && eapply "${FILESDIR}"/binutils-2.40-linker-search-path.patch
- 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 cet && filter-flags -mindirect-branch -mindirect-branch=*
- use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
-
- # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
- # https://github.com/gentoo/gentoo/pull/28355
- # mold needs this too but right now tc-ld-is-mold is also not available
- if tc-ld-is-lld; then
- append-ldflags -Wl,--undefined-version
- fi
-
- 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 )
- 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}
- # portage's econf() does not detect presence of --d-d-t
- # because it greps only top-level ./configure. But not
- # libiberty's or bfd's configure.
- --disable-dependency-tracking
- --disable-silent-rules
- --enable-obsolete
- --enable-shared
- --enable-threads
- --enable-relro
- --enable-install-libiberty
- --enable-textrel-check=$(usex hardened error warning)
- # Things to think about
- #--enable-deterministic-archives
- --enable-new-dtags
- --disable-jansson
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- $(use_with zstd)
-
- # 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)
-
- $(use_with 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)
- )
-
- case ${CTARGET} in
- x86_64-*|aarch64*|arm64*|i[3456]*)
- # These hardening options are available from 2.39+ but
- # they unconditionally enable the behaviour even on arches
- # where e.g. execstacks can't be avoided.
- # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
- #
- # TODO: Get the logic for this fixed upstream so it doesn't
- # create impossible broken combinations on some arches, like mips.
- #
- # TODO: Get the logic for this fixed upstream so --disable-* works
- # as expected.
- myconf+=(
- --enable-warn-execstack=yes
- --enable-warn-rwx-segments=yes
- )
-
- if use hardened ; then
- myconf+=(
- --enable-default-execstack=no
- )
- fi
- ;;
- *)
- ;;
- esac
-
- if use elibc_musl ; then
- # Override our earlier setting for musl, as textrels don't
- # work there at all. See bug #707660.
- myconf+=(
- --enable-textrel-check=error
- )
- fi
-
- 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[@]}"
-
- # 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 tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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 check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}" || die
-
- # see Note [tooldir hack for ldscripts]
- emake 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-11-25 6:12 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2023-11-25 6:12 UTC (permalink / raw
To: gentoo-commits
commit: 3a8a111b2c862d8fc65afa7c0f7f43378e0f03a7
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 25 06:11:33 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Nov 25 06:11:33 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3a8a111b
sys-devel/binutils: Stabilize 2.40-r9 amd64, #916458
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.40-r9.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.40-r9.ebuild b/sys-devel/binutils/binutils-2.40-r9.ebuild
index b7fac9c0e71c..bd9728b2f2df 100644
--- a/sys-devel/binutils/binutils-2.40-r9.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r9.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-11-29 11:45 Arthur Zamarin
0 siblings, 0 replies; 477+ messages in thread
From: Arthur Zamarin @ 2023-11-29 11:45 UTC (permalink / raw
To: gentoo-commits
commit: ee30c7de93f1dca4e2c036d89f9de1b9b7e5f897
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Wed Nov 29 11:44:54 2023 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Wed Nov 29 11:44:54 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ee30c7de
sys-devel/binutils: Stabilize 2.40-r9 ppc64, #916458
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
sys-devel/binutils/binutils-2.40-r9.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.40-r9.ebuild b/sys-devel/binutils/binutils-2.40-r9.ebuild
index c24eadb37d92..d4f97d214914 100644
--- a/sys-devel/binutils/binutils-2.40-r9.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r9.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-12-14 4:13 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2023-12-14 4:13 UTC (permalink / raw
To: gentoo-commits
commit: d17d378f669315e8a1fe5ca87e104616499e7822
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Dec 14 04:13:06 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Dec 14 04:13:06 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d17d378f
sys-devel/binutils: Stabilize 2.41-r2 amd64, #916452
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.41-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.41-r2.ebuild b/sys-devel/binutils/binutils-2.41-r2.ebuild
index 642feaa68e22..7aad8705410d 100644
--- a/sys-devel/binutils/binutils-2.41-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-12-14 4:13 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2023-12-14 4:13 UTC (permalink / raw
To: gentoo-commits
commit: f50dd11538f54f848df187afcbf5aec1cf82ba69
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Dec 14 04:13:05 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Dec 14 04:13:05 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f50dd115
sys-devel/binutils: Stabilize 2.41-r2 ppc64, #916452
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.41-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.41-r2.ebuild b/sys-devel/binutils/binutils-2.41-r2.ebuild
index de4cbac1dadd..642feaa68e22 100644
--- a/sys-devel/binutils/binutils-2.41-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-12-15 10:10 Michał Górny
0 siblings, 0 replies; 477+ messages in thread
From: Michał Górny @ 2023-12-15 10:10 UTC (permalink / raw
To: gentoo-commits
commit: 43c22f4fabb8abd5e75b732c9190b5b99dd5a0cc
Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Fri Dec 15 10:09:59 2023 +0000
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Fri Dec 15 10:09:59 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=43c22f4f
sys-devel/binutils: Stabilize 2.41-r2 ppc, #916452
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
sys-devel/binutils/binutils-2.41-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.41-r2.ebuild b/sys-devel/binutils/binutils-2.41-r2.ebuild
index 7aad8705410d..785fb3155713 100644
--- a/sys-devel/binutils/binutils-2.41-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-12-16 13:52 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2023-12-16 13:52 UTC (permalink / raw
To: gentoo-commits
commit: 78fa05dc71ad00989ca6b61ded53b2e1b88c1acb
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 16 13:51:39 2023 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Dec 16 13:52:19 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=78fa05dc
sys-devel/binutils: revbump, 2.41 patchlevel 4
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.41-r3.ebuild | 529 +++++++++++++++++++++++++++++
2 files changed, 530 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index dd1b0f96df4c..c8df02346874 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -18,4 +18,5 @@ DIST binutils-2.40-patches-5.tar.xz 293628 BLAKE2B b7ed1d1fbf38b420661f984b9519b
DIST binutils-2.40-patches-7.tar.xz 299188 BLAKE2B 170cd2432e0458889b240c3603461d0b4bfa62d5314634b101a629db455d87235ac14ad44c63920b713d5235fa8b73902960df1019153873ef06a33aa7050b4b SHA512 a60da163caee68fe1fa355385d404e8998ebed0e390d50e0713e95334733a8b4e37bc63d522817284c027953e43848dbc98042461a47131fb53bc69203b4ee87
DIST binutils-2.40.tar.xz 25241484 BLAKE2B 8d799f7c595f878b9af5b17a490021dd8b8300ac2fe0ed8574c012929d22d2d0493e003a3e631a9436e8e712da801779b777c566167fe42b0bde119ffa5ad1c2 SHA512 a37e042523bc46494d99d5637c3f3d8f9956d9477b748b3b1f6d7dfbb8d968ed52c932e88a4e946c6f77b8f48f1e1b360ca54c3d298f17193f3b4963472f6925
DIST binutils-2.41-patches-2.tar.xz 20288 BLAKE2B 1cc29e868ded12845856c5da567f23798fe3017961ce079325c20f456b837cab11560d896065f70953b0bab55bf565288541579e9c3e0991a87083edf2a85fa5 SHA512 75619a5e17b75d72f9bdd9d5e5ee3b566c94de64410bfc074f1a9bfb9f08db9ecf8be216efa1053263468aa8ec99b8aa3b2b095e63cb95f3566500ac0c3b9432
+DIST binutils-2.41-patches-4.tar.xz 86580 BLAKE2B 32748fd0e81a7e323e9f56f0864f2a1755b8fe1b09c777075e31a292297e365c47b47003f8f1bffacc254ed8dccf1c655b7b13f61da751c9db090e56d819fbb2 SHA512 90dcf38c1ed2ae015eb9de922e946e2be62355bd51276075e7f1c0a06cd52408057c4151a2d2d4c07e33c1d2c5998001cba5509819e5722cce45f70172465ea5
DIST binutils-2.41.tar.xz 26765692 BLAKE2B 3bccec2b52f7e82a727121bf2a2e51a6249ba63dcd74c665fd834e858645c912ffd8245d848435288b938852830b482905606f55c40df4061215fd75c52ffc75 SHA512 5df45d0bd6ddabdce4f35878c041e46a92deef01e7dea5facc97fd65cc06b59abc6fba0eb454b68e571c7e14038dc823fe7f2263843e6e627b7444eaf0fe9374
diff --git a/sys-devel/binutils/binutils-2.41-r3.ebuild b/sys-devel/binutils/binutils-2.41-r3.ebuild
new file mode 100644
index 000000000000..212c645c5e0f
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.41-r3.ebuild
@@ -0,0 +1,529 @@
+# Copyright 1999-2023 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 debuginfod doc gold gprofng hardened multitarget +nls pgo +plugins static-libs test vanilla zstd"
+
+# 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://sourceware.org/pub/binutils/releases/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
+ debuginfod? (
+ dev-libs/elfutils[debuginfod(-)]
+ )
+ zstd? ( app-arch/zstd:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ doc? ( sys-apps/texinfo )
+ test? (
+ dev-util/dejagnu
+ sys-devel/bc
+ )
+ nls? ( sys-devel/gettext )
+ zstd? ( virtual/pkgconfig )
+ sys-devel/flex
+ app-alternatives/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."
+
+ # This is applied conditionally for now just out of caution.
+ # It should be okay on non-prefix systems though. See bug #892549.
+ if is_cross || use prefix; then
+ eapply "${FILESDIR}"/binutils-2.40-linker-search-path.patch
+ fi
+ 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 cet && filter-flags -mindirect-branch -mindirect-branch=*
+ use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
+
+ # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
+ # https://github.com/gentoo/gentoo/pull/28355
+ # mold needs this too but right now tc-ld-is-mold is also not available
+ if tc-ld-is-lld; then
+ append-ldflags -Wl,--undefined-version
+ fi
+
+ 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 )
+ 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}
+ # portage's econf() does not detect presence of --d-d-t
+ # because it greps only top-level ./configure. But not
+ # libiberty's or bfd's configure.
+ --disable-dependency-tracking
+ --disable-silent-rules
+ --enable-obsolete
+ --enable-shared
+ --enable-threads
+ --enable-relro
+ --enable-install-libiberty
+ --enable-textrel-check=$(usex hardened error warning)
+ # Things to think about
+ #--enable-deterministic-archives
+ --enable-new-dtags
+ --disable-jansson
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ $(use_with zstd)
+
+ # 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)
+
+ $(use_with 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)
+ )
+
+ case ${CTARGET} in
+ x86_64-*|aarch64*|arm64*|i[3456]*)
+ # These hardening options are available from 2.39+ but
+ # they unconditionally enable the behaviour even on arches
+ # where e.g. execstacks can't be avoided.
+ # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
+ #
+ # TODO: Get the logic for this fixed upstream so it doesn't
+ # create impossible broken combinations on some arches, like mips.
+ #
+ # TODO: Get the logic for this fixed upstream so --disable-* works
+ # as expected.
+ myconf+=(
+ --enable-warn-execstack=yes
+ --enable-warn-rwx-segments=yes
+ )
+
+ if use hardened ; then
+ myconf+=(
+ --enable-default-execstack=no
+ )
+ fi
+ ;;
+ *)
+ ;;
+ esac
+
+ if use elibc_musl ; then
+ # Override our earlier setting for musl, as textrels don't
+ # work there at all. See bug #707660.
+ myconf+=(
+ --enable-textrel-check=error
+ )
+ fi
+
+ 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[@]}"
+
+ # 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 tooldir="${EPREFIX}${TOOLPATH}" all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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 check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}" || die
+
+ # see Note [tooldir hack for ldscripts]
+ emake 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-12-17 12:20 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2023-12-17 12:20 UTC (permalink / raw
To: gentoo-commits
commit: 392b1cc4610b21f8487d351b3130baa597bd5d38
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Dec 17 12:16:16 2023 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Dec 17 12:20:09 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=392b1cc4
sys-devel/binutils: keyword 2.41-r3
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.41-r3.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.41-r3.ebuild b/sys-devel/binutils/binutils-2.41-r3.ebuild
index 212c645c5e0f..10a57e931405 100644
--- a/sys-devel/binutils/binutils-2.41-r3.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r3.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2023-12-29 0:32 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2023-12-29 0:32 UTC (permalink / raw
To: gentoo-commits
commit: 4d3ee5f466ca13b59f072c34b8f03382d7627266
Author: Matoro Mahri <matoro_gentoo <AT> matoro <DOT> tk>
AuthorDate: Fri Dec 29 00:08:16 2023 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Dec 29 00:32:03 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4d3ee5f4
sys-devel/binutils: Stabilize 2.41-r2 arm64, #916452
Signed-off-by: Matoro Mahri <matoro_gentoo <AT> matoro.tk>
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.41-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.41-r2.ebuild b/sys-devel/binutils/binutils-2.41-r2.ebuild
index 785fb3155713..aabb87038c48 100644
--- a/sys-devel/binutils/binutils-2.41-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-01-03 10:40 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-01-03 10:40 UTC (permalink / raw
To: gentoo-commits
commit: 15b87c56aa52a8c5df3accae91cbb17def639dbf
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Jan 3 10:38:31 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Jan 3 10:39:55 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=15b87c56
sys-devel/binutils: pass -Wl,--undefined-version for other linkers if supported
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.32-r2.ebuild | 9 ++-------
sys-devel/binutils/binutils-2.33.1-r1.ebuild | 9 ++-------
sys-devel/binutils/binutils-2.34-r2.ebuild | 9 ++-------
sys-devel/binutils/binutils-2.35.2.ebuild | 9 ++-------
sys-devel/binutils/binutils-2.36.1-r2.ebuild | 9 ++-------
sys-devel/binutils/binutils-2.37_p1-r2.ebuild | 9 ++-------
sys-devel/binutils/binutils-2.38-r2.ebuild | 9 ++-------
sys-devel/binutils/binutils-2.39-r5.ebuild | 9 ++-------
sys-devel/binutils/binutils-2.40-r5.ebuild | 9 ++-------
sys-devel/binutils/binutils-2.40-r9.ebuild | 9 ++-------
sys-devel/binutils/binutils-2.41-r2.ebuild | 9 ++-------
sys-devel/binutils/binutils-2.41-r3.ebuild | 9 ++-------
sys-devel/binutils/binutils-9999.ebuild | 9 ++-------
13 files changed, 26 insertions(+), 91 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.32-r2.ebuild b/sys-devel/binutils/binutils-2.32-r2.ebuild
index df54d7b7423d..f80ba08099ae 100644
--- a/sys-devel/binutils/binutils-2.32-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -162,12 +162,7 @@ src_configure() {
# Keep things sane
strip-flags
- # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
- # https://github.com/gentoo/gentoo/pull/28355
- # mold needs this too but right now tc-ld-is-mold is also not available
- if tc-ld-is-lld; then
- append-ldflags -Wl,--undefined-version
- fi
+ append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
local x
echo
diff --git a/sys-devel/binutils/binutils-2.33.1-r1.ebuild b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
index 04c74a25e107..ca79c2b7f77e 100644
--- a/sys-devel/binutils/binutils-2.33.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -155,12 +155,7 @@ src_configure() {
# Keep things sane
strip-flags
- # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
- # https://github.com/gentoo/gentoo/pull/28355
- # mold needs this too but right now tc-ld-is-mold is also not available
- if tc-ld-is-lld; then
- append-ldflags -Wl,--undefined-version
- fi
+ append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
local x
echo
diff --git a/sys-devel/binutils/binutils-2.34-r2.ebuild b/sys-devel/binutils/binutils-2.34-r2.ebuild
index 941890975f99..5f5b7e3cea60 100644
--- a/sys-devel/binutils/binutils-2.34-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.34-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -152,12 +152,7 @@ src_configure() {
# Keep things sane
strip-flags
- # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
- # https://github.com/gentoo/gentoo/pull/28355
- # mold needs this too but right now tc-ld-is-mold is also not available
- if tc-ld-is-lld; then
- append-ldflags -Wl,--undefined-version
- fi
+ append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
local x
echo
diff --git a/sys-devel/binutils/binutils-2.35.2.ebuild b/sys-devel/binutils/binutils-2.35.2.ebuild
index 3e9e6183b4cd..280c2624b3d5 100644
--- a/sys-devel/binutils/binutils-2.35.2.ebuild
+++ b/sys-devel/binutils/binutils-2.35.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -169,12 +169,7 @@ src_configure() {
# Keep things sane
strip-flags
- # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
- # https://github.com/gentoo/gentoo/pull/28355
- # mold needs this too but right now tc-ld-is-mold is also not available
- if tc-ld-is-lld; then
- append-ldflags -Wl,--undefined-version
- fi
+ append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
local x
echo
diff --git a/sys-devel/binutils/binutils-2.36.1-r2.ebuild b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
index dcaa4a446b58..133d412e6bd7 100644
--- a/sys-devel/binutils/binutils-2.36.1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -164,12 +164,7 @@ src_configure() {
# Keep things sane
strip-flags
- # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
- # https://github.com/gentoo/gentoo/pull/28355
- # mold needs this too but right now tc-ld-is-mold is also not available
- if tc-ld-is-lld; then
- append-ldflags -Wl,--undefined-version
- fi
+ append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
local x
echo
diff --git a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
index 333ff355ede5..7dae8e9b42b7 100644
--- a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -170,12 +170,7 @@ src_configure() {
# Keep things sane
strip-flags
- # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
- # https://github.com/gentoo/gentoo/pull/28355
- # mold needs this too but right now tc-ld-is-mold is also not available
- if tc-ld-is-lld; then
- append-ldflags -Wl,--undefined-version
- fi
+ append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
diff --git a/sys-devel/binutils/binutils-2.38-r2.ebuild b/sys-devel/binutils/binutils-2.38-r2.ebuild
index bea67260a9ec..22272438a18b 100644
--- a/sys-devel/binutils/binutils-2.38-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.38-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -175,12 +175,7 @@ src_configure() {
# Keep things sane
strip-flags
- # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
- # https://github.com/gentoo/gentoo/pull/28355
- # mold needs this too but right now tc-ld-is-mold is also not available
- if tc-ld-is-lld; then
- append-ldflags -Wl,--undefined-version
- fi
+ append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
diff --git a/sys-devel/binutils/binutils-2.39-r5.ebuild b/sys-devel/binutils/binutils-2.39-r5.ebuild
index c1b0195faed3..e2e702d49a83 100644
--- a/sys-devel/binutils/binutils-2.39-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.39-r5.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -171,12 +171,7 @@ src_configure() {
# Keep things sane
strip-flags
- # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
- # https://github.com/gentoo/gentoo/pull/28355
- # mold needs this too but right now tc-ld-is-mold is also not available
- if tc-ld-is-lld; then
- append-ldflags -Wl,--undefined-version
- fi
+ append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
diff --git a/sys-devel/binutils/binutils-2.40-r5.ebuild b/sys-devel/binutils/binutils-2.40-r5.ebuild
index 8d0073e79611..4709d16710d5 100644
--- a/sys-devel/binutils/binutils-2.40-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r5.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -178,12 +178,7 @@ src_configure() {
use cet && filter-flags -mindirect-branch -mindirect-branch=*
use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
- # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
- # https://github.com/gentoo/gentoo/pull/28355
- # mold needs this too but right now tc-ld-is-mold is also not available
- if tc-ld-is-lld; then
- append-ldflags -Wl,--undefined-version
- fi
+ append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
local x
echo
diff --git a/sys-devel/binutils/binutils-2.40-r9.ebuild b/sys-devel/binutils/binutils-2.40-r9.ebuild
index d4f97d214914..733e8778706e 100644
--- a/sys-devel/binutils/binutils-2.40-r9.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r9.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -183,12 +183,7 @@ src_configure() {
use cet && filter-flags -mindirect-branch -mindirect-branch=*
use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
- # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
- # https://github.com/gentoo/gentoo/pull/28355
- # mold needs this too but right now tc-ld-is-mold is also not available
- if tc-ld-is-lld; then
- append-ldflags -Wl,--undefined-version
- fi
+ append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
local x
echo
diff --git a/sys-devel/binutils/binutils-2.41-r2.ebuild b/sys-devel/binutils/binutils-2.41-r2.ebuild
index aabb87038c48..a72ae053b872 100644
--- a/sys-devel/binutils/binutils-2.41-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -183,12 +183,7 @@ src_configure() {
use cet && filter-flags -mindirect-branch -mindirect-branch=*
use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
- # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
- # https://github.com/gentoo/gentoo/pull/28355
- # mold needs this too but right now tc-ld-is-mold is also not available
- if tc-ld-is-lld; then
- append-ldflags -Wl,--undefined-version
- fi
+ append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
local x
echo
diff --git a/sys-devel/binutils/binutils-2.41-r3.ebuild b/sys-devel/binutils/binutils-2.41-r3.ebuild
index 10a57e931405..8abcecba0e8f 100644
--- a/sys-devel/binutils/binutils-2.41-r3.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -183,12 +183,7 @@ src_configure() {
use cet && filter-flags -mindirect-branch -mindirect-branch=*
use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
- # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
- # https://github.com/gentoo/gentoo/pull/28355
- # mold needs this too but right now tc-ld-is-mold is also not available
- if tc-ld-is-lld; then
- append-ldflags -Wl,--undefined-version
- fi
+ append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
local x
echo
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 5d9cedc9c2b5..71f57af9f840 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -183,12 +183,7 @@ src_configure() {
use cet && filter-flags -mindirect-branch -mindirect-branch=*
use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
- # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
- # https://github.com/gentoo/gentoo/pull/28355
- # mold needs this too but right now tc-ld-is-mold is also not available
- if tc-ld-is-lld; then
- append-ldflags -Wl,--undefined-version
- fi
+ append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
local x
echo
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-01-06 11:51 James Le Cuirot
0 siblings, 0 replies; 477+ messages in thread
From: James Le Cuirot @ 2024-01-06 11:51 UTC (permalink / raw
To: gentoo-commits
commit: 1f497cfc6bbad7c1ba32072af7f06254d29b01d2
Author: James Le Cuirot <chewi <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 6 11:51:18 2024 +0000
Commit: James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Sat Jan 6 11:51:18 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1f497cfc
sys-devel/binutils: Resync 2.41-r4 from 2.41-r3
My earlier fix missed changes that been made since I wrote it.
Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org>
sys-devel/binutils/binutils-2.41-r4.ebuild | 15 +++------------
1 file changed, 3 insertions(+), 12 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.41-r4.ebuild b/sys-devel/binutils/binutils-2.41-r4.ebuild
index 0fe91dacf35e..d57525849982 100644
--- a/sys-devel/binutils/binutils-2.41-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -184,12 +184,7 @@ src_configure() {
use cet && filter-flags -mindirect-branch -mindirect-branch=*
use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
- # ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
- # https://github.com/gentoo/gentoo/pull/28355
- # mold needs this too but right now tc-ld-is-mold is also not available
- if tc-ld-is-lld; then
- append-ldflags -Wl,--undefined-version
- fi
+ append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
local x
echo
@@ -357,11 +352,7 @@ src_compile() {
cd "${MY_BUILDDIR}" || die
# see Note [tooldir hack for ldscripts]
- # see linker prefix patch
- emake \
- tooldir="${EPREFIX}${TOOLPATH}" \
- gentoo_prefix=$(usex prefix-guest "${EPREFIX}"/usr /usr) \
- all
+ emake tooldir="${EPREFIX}${TOOLPATH}" all
# only build info pages if the user wants them
if use doc ; then
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-01-06 11:56 James Le Cuirot
0 siblings, 0 replies; 477+ messages in thread
From: James Le Cuirot @ 2024-01-06 11:56 UTC (permalink / raw
To: gentoo-commits
commit: a1a00834ca999c0ad4db7235f3575ed327fe3765
Author: James Le Cuirot <chewi <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 6 11:55:34 2024 +0000
Commit: James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Sat Jan 6 11:55:34 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a1a00834
sys-devel/binutils: Oops, undid too much in my last commit
Sorry. Will switch brain on now.
Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org>
sys-devel/binutils/binutils-2.41-r4.ebuild | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.41-r4.ebuild b/sys-devel/binutils/binutils-2.41-r4.ebuild
index d57525849982..4b0e72d26098 100644
--- a/sys-devel/binutils/binutils-2.41-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r4.ebuild
@@ -352,7 +352,11 @@ src_compile() {
cd "${MY_BUILDDIR}" || die
# see Note [tooldir hack for ldscripts]
- emake tooldir="${EPREFIX}${TOOLPATH}" all
+ # see linker prefix patch
+ emake \
+ tooldir="${EPREFIX}${TOOLPATH}" \
+ gentoo_prefix=$(usex prefix-guest "${EPREFIX}"/usr /usr) \
+ all
# only build info pages if the user wants them
if use doc ; then
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-01-07 8:27 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-01-07 8:27 UTC (permalink / raw
To: gentoo-commits
commit: 78873f9ad72d0360c188a093fb4e95d62d0b14bd
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 7 08:26:02 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Jan 7 08:26:51 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=78873f9a
sys-devel/binutils: Stabilize 2.40-r9 hppa, #916458
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.40-r9.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.40-r9.ebuild b/sys-devel/binutils/binutils-2.40-r9.ebuild
index 4be206ddef8f..6747287528f0 100644
--- a/sys-devel/binutils/binutils-2.40-r9.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r9.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-01-07 8:27 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-01-07 8:27 UTC (permalink / raw
To: gentoo-commits
commit: 390c851407451b0f104fe9a334d7df59c1404f13
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 7 08:26:06 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Jan 7 08:26:52 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=390c8514
sys-devel/binutils: Stabilize 2.40-r9 sparc, #916458
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.40-r9.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.40-r9.ebuild b/sys-devel/binutils/binutils-2.40-r9.ebuild
index 6747287528f0..22e7188f504b 100644
--- a/sys-devel/binutils/binutils-2.40-r9.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r9.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-01-07 8:27 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-01-07 8:27 UTC (permalink / raw
To: gentoo-commits
commit: 646fbfb054bdb7ae53294ae1fe359721e79867a5
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 7 08:25:58 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Jan 7 08:26:50 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=646fbfb0
sys-devel/binutils: Stabilize 2.40-r9 arm, #916458
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.40-r9.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.40-r9.ebuild b/sys-devel/binutils/binutils-2.40-r9.ebuild
index 30c18b8f3246..4be206ddef8f 100644
--- a/sys-devel/binutils/binutils-2.40-r9.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r9.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-01-07 8:27 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-01-07 8:27 UTC (permalink / raw
To: gentoo-commits
commit: 738ee50140320664ef80663fbad8bb6876a92396
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 7 08:26:10 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Jan 7 08:26:53 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=738ee501
sys-devel/binutils: Stabilize 2.40-r9 x86, #916458
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.40-r9.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.40-r9.ebuild b/sys-devel/binutils/binutils-2.40-r9.ebuild
index 22e7188f504b..18712dc49bd9 100644
--- a/sys-devel/binutils/binutils-2.40-r9.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r9.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-01-07 8:27 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-01-07 8:27 UTC (permalink / raw
To: gentoo-commits
commit: 92c6ba61d5291bc3b55a7b29717fa0515d5342b0
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 7 08:25:54 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Jan 7 08:26:49 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=92c6ba61
sys-devel/binutils: Stabilize 2.40-r9 arm64, #916458
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.40-r9.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.40-r9.ebuild b/sys-devel/binutils/binutils-2.40-r9.ebuild
index 733e8778706e..30c18b8f3246 100644
--- a/sys-devel/binutils/binutils-2.40-r9.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r9.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-01-07 8:28 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-01-07 8:28 UTC (permalink / raw
To: gentoo-commits
commit: e626bc7974e37ff755aa93c963a3adad638f7da3
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 7 08:27:32 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Jan 7 08:27:32 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e626bc79
sys-devel/binutils: Stabilize 2.41-r3 amd64, #916452
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.41-r3.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.41-r3.ebuild b/sys-devel/binutils/binutils-2.41-r3.ebuild
index 8abcecba0e8f..5e788ae17e4d 100644
--- a/sys-devel/binutils/binutils-2.41-r3.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r3.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-01-07 8:28 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-01-07 8:28 UTC (permalink / raw
To: gentoo-commits
commit: 0f4f51811b9b0158f111aec2a6d404ba892247db
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 7 08:27:35 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Jan 7 08:27:35 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0f4f5181
sys-devel/binutils: Stabilize 2.41-r3 hppa, #916452
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.41-r3.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.41-r3.ebuild b/sys-devel/binutils/binutils-2.41-r3.ebuild
index 5e788ae17e4d..49eef02c32bb 100644
--- a/sys-devel/binutils/binutils-2.41-r3.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r3.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-01-08 9:48 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-01-08 9:48 UTC (permalink / raw
To: gentoo-commits
commit: fd0b27e1020d88c5619e31d6f38ed35f2a861404
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Jan 8 09:40:10 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Jan 8 09:42:13 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fd0b27e1
sys-devel/binutils: sys-devel/bc -> app-alternatives/bc
All of these will be using app-alternatives/bc anyway as they're not calling
bc-reference, so make the dep reflect reality.
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.35.2.ebuild | 2 +-
sys-devel/binutils/binutils-2.36.1-r2.ebuild | 2 +-
sys-devel/binutils/binutils-2.37_p1-r2.ebuild | 2 +-
sys-devel/binutils/binutils-2.38-r2.ebuild | 2 +-
sys-devel/binutils/binutils-2.39-r5.ebuild | 2 +-
sys-devel/binutils/binutils-2.40-r5.ebuild | 2 +-
sys-devel/binutils/binutils-2.40-r9.ebuild | 2 +-
sys-devel/binutils/binutils-2.41-r2.ebuild | 2 +-
sys-devel/binutils/binutils-2.41-r3.ebuild | 2 +-
sys-devel/binutils/binutils-2.41-r4.ebuild | 2 +-
sys-devel/binutils/binutils-9999.ebuild | 2 +-
11 files changed, 11 insertions(+), 11 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.35.2.ebuild b/sys-devel/binutils/binutils-2.35.2.ebuild
index 280c2624b3d5..4e5a2a045f1d 100644
--- a/sys-devel/binutils/binutils-2.35.2.ebuild
+++ b/sys-devel/binutils/binutils-2.35.2.ebuild
@@ -58,7 +58,7 @@ BDEPEND="
doc? ( sys-apps/texinfo )
test? (
dev-util/dejagnu
- sys-devel/bc
+ app-alternatives/bc
)
nls? ( sys-devel/gettext )
sys-devel/flex
diff --git a/sys-devel/binutils/binutils-2.36.1-r2.ebuild b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
index 133d412e6bd7..808832a0227d 100644
--- a/sys-devel/binutils/binutils-2.36.1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
@@ -58,7 +58,7 @@ BDEPEND="
doc? ( sys-apps/texinfo )
test? (
dev-util/dejagnu
- sys-devel/bc
+ app-alternatives/bc
)
nls? ( sys-devel/gettext )
sys-devel/flex
diff --git a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
index 7dae8e9b42b7..17d7bc3ddee3 100644
--- a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
@@ -58,7 +58,7 @@ BDEPEND="
doc? ( sys-apps/texinfo )
test? (
dev-util/dejagnu
- sys-devel/bc
+ app-alternatives/bc
)
nls? ( sys-devel/gettext )
sys-devel/flex
diff --git a/sys-devel/binutils/binutils-2.38-r2.ebuild b/sys-devel/binutils/binutils-2.38-r2.ebuild
index 22272438a18b..6e150a6c24dd 100644
--- a/sys-devel/binutils/binutils-2.38-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.38-r2.ebuild
@@ -58,7 +58,7 @@ BDEPEND="
doc? ( sys-apps/texinfo )
test? (
dev-util/dejagnu
- sys-devel/bc
+ app-alternatives/bc
)
nls? ( sys-devel/gettext )
sys-devel/flex
diff --git a/sys-devel/binutils/binutils-2.39-r5.ebuild b/sys-devel/binutils/binutils-2.39-r5.ebuild
index e2e702d49a83..97885e277514 100644
--- a/sys-devel/binutils/binutils-2.39-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.39-r5.ebuild
@@ -59,7 +59,7 @@ BDEPEND="
doc? ( sys-apps/texinfo )
test? (
dev-util/dejagnu
- sys-devel/bc
+ app-alternatives/bc
)
nls? ( sys-devel/gettext )
sys-devel/flex
diff --git a/sys-devel/binutils/binutils-2.40-r5.ebuild b/sys-devel/binutils/binutils-2.40-r5.ebuild
index 4709d16710d5..bb1f52b87621 100644
--- a/sys-devel/binutils/binutils-2.40-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r5.ebuild
@@ -59,7 +59,7 @@ BDEPEND="
doc? ( sys-apps/texinfo )
test? (
dev-util/dejagnu
- sys-devel/bc
+ app-alternatives/bc
)
nls? ( sys-devel/gettext )
zstd? ( virtual/pkgconfig )
diff --git a/sys-devel/binutils/binutils-2.40-r9.ebuild b/sys-devel/binutils/binutils-2.40-r9.ebuild
index 18712dc49bd9..d44a2cc31d22 100644
--- a/sys-devel/binutils/binutils-2.40-r9.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r9.ebuild
@@ -62,7 +62,7 @@ BDEPEND="
doc? ( sys-apps/texinfo )
test? (
dev-util/dejagnu
- sys-devel/bc
+ app-alternatives/bc
)
nls? ( sys-devel/gettext )
zstd? ( virtual/pkgconfig )
diff --git a/sys-devel/binutils/binutils-2.41-r2.ebuild b/sys-devel/binutils/binutils-2.41-r2.ebuild
index a72ae053b872..f7864e7b9606 100644
--- a/sys-devel/binutils/binutils-2.41-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r2.ebuild
@@ -62,7 +62,7 @@ BDEPEND="
doc? ( sys-apps/texinfo )
test? (
dev-util/dejagnu
- sys-devel/bc
+ app-alternatives/bc
)
nls? ( sys-devel/gettext )
zstd? ( virtual/pkgconfig )
diff --git a/sys-devel/binutils/binutils-2.41-r3.ebuild b/sys-devel/binutils/binutils-2.41-r3.ebuild
index 49eef02c32bb..3fd36dfd0880 100644
--- a/sys-devel/binutils/binutils-2.41-r3.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r3.ebuild
@@ -62,7 +62,7 @@ BDEPEND="
doc? ( sys-apps/texinfo )
test? (
dev-util/dejagnu
- sys-devel/bc
+ app-alternatives/bc
)
nls? ( sys-devel/gettext )
zstd? ( virtual/pkgconfig )
diff --git a/sys-devel/binutils/binutils-2.41-r4.ebuild b/sys-devel/binutils/binutils-2.41-r4.ebuild
index 4b0e72d26098..5c5ebdd8f552 100644
--- a/sys-devel/binutils/binutils-2.41-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r4.ebuild
@@ -62,7 +62,7 @@ BDEPEND="
doc? ( sys-apps/texinfo )
test? (
dev-util/dejagnu
- sys-devel/bc
+ app-alternatives/bc
)
nls? ( sys-devel/gettext )
zstd? ( virtual/pkgconfig )
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index f08bf54fb8ff..8157ce1a9997 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -62,7 +62,7 @@ BDEPEND="
doc? ( sys-apps/texinfo )
test? (
dev-util/dejagnu
- sys-devel/bc
+ app-alternatives/bc
)
nls? ( sys-devel/gettext )
zstd? ( virtual/pkgconfig )
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-01-08 12:03 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-01-08 12:03 UTC (permalink / raw
To: gentoo-commits
commit: c7ece32b5d4a295732ccd888a3cf0fddb92f91b3
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Jan 8 11:52:23 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Jan 8 12:03:09 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c7ece32b
sys-devel/binutils: sys-devel/flex -> app-alternatives/lex
All of these will be using app-alternatives/lex anyway as they're not unsetting
YACC or LEX, so make the dep reflect reality.
(Included both YACC and LEX out of conservatism.)
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.32-r2.ebuild | 2 +-
sys-devel/binutils/binutils-2.33.1-r1.ebuild | 2 +-
sys-devel/binutils/binutils-2.34-r2.ebuild | 2 +-
sys-devel/binutils/binutils-2.35.2.ebuild | 2 +-
sys-devel/binutils/binutils-2.36.1-r2.ebuild | 2 +-
sys-devel/binutils/binutils-2.37_p1-r2.ebuild | 2 +-
sys-devel/binutils/binutils-2.38-r2.ebuild | 2 +-
sys-devel/binutils/binutils-2.39-r5.ebuild | 2 +-
sys-devel/binutils/binutils-2.40-r5.ebuild | 2 +-
sys-devel/binutils/binutils-2.40-r9.ebuild | 2 +-
sys-devel/binutils/binutils-2.41-r2.ebuild | 2 +-
sys-devel/binutils/binutils-2.41-r3.ebuild | 2 +-
sys-devel/binutils/binutils-2.41-r4.ebuild | 2 +-
sys-devel/binutils/binutils-9999.ebuild | 2 +-
14 files changed, 14 insertions(+), 14 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.32-r2.ebuild b/sys-devel/binutils/binutils-2.32-r2.ebuild
index f80ba08099ae..0fcdb18847bf 100644
--- a/sys-devel/binutils/binutils-2.32-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r2.ebuild
@@ -76,7 +76,7 @@ DEPEND="${RDEPEND}
doc? ( sys-apps/texinfo )
test? ( dev-util/dejagnu )
nls? ( sys-devel/gettext )
- sys-devel/flex
+ app-alternatives/lex
app-alternatives/yacc
"
diff --git a/sys-devel/binutils/binutils-2.33.1-r1.ebuild b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
index ca79c2b7f77e..748cab6ef93a 100644
--- a/sys-devel/binutils/binutils-2.33.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
@@ -68,7 +68,7 @@ DEPEND="${RDEPEND}
doc? ( sys-apps/texinfo )
test? ( dev-util/dejagnu )
nls? ( sys-devel/gettext )
- sys-devel/flex
+ app-alternatives/lex
app-alternatives/yacc
"
diff --git a/sys-devel/binutils/binutils-2.34-r2.ebuild b/sys-devel/binutils/binutils-2.34-r2.ebuild
index 5f5b7e3cea60..42d6d1910d24 100644
--- a/sys-devel/binutils/binutils-2.34-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.34-r2.ebuild
@@ -69,7 +69,7 @@ BDEPEND="
doc? ( sys-apps/texinfo )
test? ( dev-util/dejagnu )
nls? ( sys-devel/gettext )
- sys-devel/flex
+ app-alternatives/lex
app-alternatives/yacc
"
diff --git a/sys-devel/binutils/binutils-2.35.2.ebuild b/sys-devel/binutils/binutils-2.35.2.ebuild
index 4e5a2a045f1d..2dd287d2dce6 100644
--- a/sys-devel/binutils/binutils-2.35.2.ebuild
+++ b/sys-devel/binutils/binutils-2.35.2.ebuild
@@ -61,7 +61,7 @@ BDEPEND="
app-alternatives/bc
)
nls? ( sys-devel/gettext )
- sys-devel/flex
+ app-alternatives/lex
app-alternatives/yacc
"
diff --git a/sys-devel/binutils/binutils-2.36.1-r2.ebuild b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
index 808832a0227d..2f20daa4bb5c 100644
--- a/sys-devel/binutils/binutils-2.36.1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
@@ -61,7 +61,7 @@ BDEPEND="
app-alternatives/bc
)
nls? ( sys-devel/gettext )
- sys-devel/flex
+ app-alternatives/lex
app-alternatives/yacc
"
diff --git a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
index 17d7bc3ddee3..4d35c922704a 100644
--- a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
@@ -61,7 +61,7 @@ BDEPEND="
app-alternatives/bc
)
nls? ( sys-devel/gettext )
- sys-devel/flex
+ app-alternatives/lex
app-alternatives/yacc
"
diff --git a/sys-devel/binutils/binutils-2.38-r2.ebuild b/sys-devel/binutils/binutils-2.38-r2.ebuild
index 6e150a6c24dd..a9791fe4dfa9 100644
--- a/sys-devel/binutils/binutils-2.38-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.38-r2.ebuild
@@ -61,7 +61,7 @@ BDEPEND="
app-alternatives/bc
)
nls? ( sys-devel/gettext )
- sys-devel/flex
+ app-alternatives/lex
app-alternatives/yacc
"
diff --git a/sys-devel/binutils/binutils-2.39-r5.ebuild b/sys-devel/binutils/binutils-2.39-r5.ebuild
index 97885e277514..c9f86dbbc0be 100644
--- a/sys-devel/binutils/binutils-2.39-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.39-r5.ebuild
@@ -62,7 +62,7 @@ BDEPEND="
app-alternatives/bc
)
nls? ( sys-devel/gettext )
- sys-devel/flex
+ app-alternatives/lex
app-alternatives/yacc
"
diff --git a/sys-devel/binutils/binutils-2.40-r5.ebuild b/sys-devel/binutils/binutils-2.40-r5.ebuild
index bb1f52b87621..caa14408bc88 100644
--- a/sys-devel/binutils/binutils-2.40-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r5.ebuild
@@ -63,7 +63,7 @@ BDEPEND="
)
nls? ( sys-devel/gettext )
zstd? ( virtual/pkgconfig )
- sys-devel/flex
+ app-alternatives/lex
app-alternatives/yacc
"
diff --git a/sys-devel/binutils/binutils-2.40-r9.ebuild b/sys-devel/binutils/binutils-2.40-r9.ebuild
index d44a2cc31d22..8c60fad3923a 100644
--- a/sys-devel/binutils/binutils-2.40-r9.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r9.ebuild
@@ -66,7 +66,7 @@ BDEPEND="
)
nls? ( sys-devel/gettext )
zstd? ( virtual/pkgconfig )
- sys-devel/flex
+ app-alternatives/lex
app-alternatives/yacc
"
diff --git a/sys-devel/binutils/binutils-2.41-r2.ebuild b/sys-devel/binutils/binutils-2.41-r2.ebuild
index f7864e7b9606..b00ec7113c92 100644
--- a/sys-devel/binutils/binutils-2.41-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r2.ebuild
@@ -66,7 +66,7 @@ BDEPEND="
)
nls? ( sys-devel/gettext )
zstd? ( virtual/pkgconfig )
- sys-devel/flex
+ app-alternatives/lex
app-alternatives/yacc
"
diff --git a/sys-devel/binutils/binutils-2.41-r3.ebuild b/sys-devel/binutils/binutils-2.41-r3.ebuild
index 3fd36dfd0880..15bdc6f5a779 100644
--- a/sys-devel/binutils/binutils-2.41-r3.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r3.ebuild
@@ -66,7 +66,7 @@ BDEPEND="
)
nls? ( sys-devel/gettext )
zstd? ( virtual/pkgconfig )
- sys-devel/flex
+ app-alternatives/lex
app-alternatives/yacc
"
diff --git a/sys-devel/binutils/binutils-2.41-r4.ebuild b/sys-devel/binutils/binutils-2.41-r4.ebuild
index 5c5ebdd8f552..08d7d906dfbb 100644
--- a/sys-devel/binutils/binutils-2.41-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r4.ebuild
@@ -66,7 +66,7 @@ BDEPEND="
)
nls? ( sys-devel/gettext )
zstd? ( virtual/pkgconfig )
- sys-devel/flex
+ app-alternatives/lex
app-alternatives/yacc
"
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 8157ce1a9997..393acc75d9d3 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -66,7 +66,7 @@ BDEPEND="
)
nls? ( sys-devel/gettext )
zstd? ( virtual/pkgconfig )
- sys-devel/flex
+ app-alternatives/lex
app-alternatives/yacc
"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-01-22 6:59 Viorel Munteanu
0 siblings, 0 replies; 477+ messages in thread
From: Viorel Munteanu @ 2024-01-22 6:59 UTC (permalink / raw
To: gentoo-commits
commit: 6a126a171af68c9c1a997aeb3ec4a2019d9eeb43
Author: Matoro Mahri <matoro_gentoo <AT> matoro <DOT> tk>
AuthorDate: Sun Jan 21 20:07:51 2024 +0000
Commit: Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Mon Jan 22 06:58:47 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6a126a17
sys-devel/binutils: Stabilize 2.41-r3 arm64, #916452
Signed-off-by: Matoro Mahri <matoro_gentoo <AT> matoro.tk>
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>
sys-devel/binutils/binutils-2.41-r3.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.41-r3.ebuild b/sys-devel/binutils/binutils-2.41-r3.ebuild
index 15bdc6f5a779..40af8cdfa5aa 100644
--- a/sys-devel/binutils/binutils-2.41-r3.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r3.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 ~arm arm64 hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-01-23 5:32 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-01-23 5:32 UTC (permalink / raw
To: gentoo-commits
commit: 23f564cd13e7d403286e7788101351ae52087e79
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Jan 23 05:30:16 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Jan 23 05:30:16 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=23f564cd
sys-devel/binutils: Stabilize 2.41-r3 ppc64, #916452
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.41-r3.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.41-r3.ebuild b/sys-devel/binutils/binutils-2.41-r3.ebuild
index 40af8cdfa5aa..e391c34b9529 100644
--- a/sys-devel/binutils/binutils-2.41-r3.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r3.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 ~arm arm64 hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-01-23 6:00 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-01-23 6:00 UTC (permalink / raw
To: gentoo-commits
commit: e9f296dbe8aea53425b4bd9a5725f1ffb91d4758
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Jan 23 05:56:49 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Jan 23 05:58:14 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e9f296db
sys-devel/binutils: compress slotted man & info pages
As noted in the bug, we install to a different location to accommodate slotting
and hence do not benefit from the automagic compression for /usr/share/doc.
Explicitly opt-in for the man & info pages we install.
Bug: https://bugs.gentoo.org/922729
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.41-r4.ebuild | 2 ++
sys-devel/binutils/binutils-9999.ebuild | 2 ++
2 files changed, 4 insertions(+)
diff --git a/sys-devel/binutils/binutils-2.41-r4.ebuild b/sys-devel/binutils/binutils-2.41-r4.ebuild
index 08d7d906dfbb..44554f947d87 100644
--- a/sys-devel/binutils/binutils-2.41-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r4.ebuild
@@ -467,6 +467,8 @@ src_install() {
# Remove shared info pages
rm -f "${ED}"/${DATAPATH}/info/{dir,configure.info,standards.info}
+ docompress "${DATAPATH}"/{info,man}
+
# Trim all empty dirs
find "${ED}" -depth -type d -exec rmdir {} + 2>/dev/null
}
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 393acc75d9d3..5f745bd13e6a 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -467,6 +467,8 @@ src_install() {
# Remove shared info pages
rm -f "${ED}"/${DATAPATH}/info/{dir,configure.info,standards.info}
+ docompress "${DATAPATH}"/{info,man}
+
# Trim all empty dirs
find "${ED}" -depth -type d -exec rmdir {} + 2>/dev/null
}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-01-23 20:50 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2024-01-23 20:50 UTC (permalink / raw
To: gentoo-commits
commit: 11f5e52040ce8080a83fee5910f5d44791cfc15a
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Tue Jan 23 20:50:13 2024 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Tue Jan 23 20:50:13 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=11f5e520
sys-devel/binutils: 2.41 patchlevel 5 bump (no keywords)
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.41-r5.ebuild | 531 +++++++++++++++++++++++++++++
2 files changed, 532 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index c8df02346874..7f5f5df7a6fa 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -19,4 +19,5 @@ DIST binutils-2.40-patches-7.tar.xz 299188 BLAKE2B 170cd2432e0458889b240c3603461
DIST binutils-2.40.tar.xz 25241484 BLAKE2B 8d799f7c595f878b9af5b17a490021dd8b8300ac2fe0ed8574c012929d22d2d0493e003a3e631a9436e8e712da801779b777c566167fe42b0bde119ffa5ad1c2 SHA512 a37e042523bc46494d99d5637c3f3d8f9956d9477b748b3b1f6d7dfbb8d968ed52c932e88a4e946c6f77b8f48f1e1b360ca54c3d298f17193f3b4963472f6925
DIST binutils-2.41-patches-2.tar.xz 20288 BLAKE2B 1cc29e868ded12845856c5da567f23798fe3017961ce079325c20f456b837cab11560d896065f70953b0bab55bf565288541579e9c3e0991a87083edf2a85fa5 SHA512 75619a5e17b75d72f9bdd9d5e5ee3b566c94de64410bfc074f1a9bfb9f08db9ecf8be216efa1053263468aa8ec99b8aa3b2b095e63cb95f3566500ac0c3b9432
DIST binutils-2.41-patches-4.tar.xz 86580 BLAKE2B 32748fd0e81a7e323e9f56f0864f2a1755b8fe1b09c777075e31a292297e365c47b47003f8f1bffacc254ed8dccf1c655b7b13f61da751c9db090e56d819fbb2 SHA512 90dcf38c1ed2ae015eb9de922e946e2be62355bd51276075e7f1c0a06cd52408057c4151a2d2d4c07e33c1d2c5998001cba5509819e5722cce45f70172465ea5
+DIST binutils-2.41-patches-5.tar.xz 95176 BLAKE2B bbc94b3c7d70653a1056afe57a120b6eac9f0c8f51f05e95a1b5f80f2b7ef35e6355d740b49bc1ec2f3a13a838d5210ff4a205aa2bde5a72bc55c12100bce726 SHA512 ad293f97116f71322993f381c1af69fad1719a159f127ff16ddeca62f9b9b62aaf141abfa661985a61e9be7ae0639772148e69293a97364eebbf49182babb691
DIST binutils-2.41.tar.xz 26765692 BLAKE2B 3bccec2b52f7e82a727121bf2a2e51a6249ba63dcd74c665fd834e858645c912ffd8245d848435288b938852830b482905606f55c40df4061215fd75c52ffc75 SHA512 5df45d0bd6ddabdce4f35878c041e46a92deef01e7dea5facc97fd65cc06b59abc6fba0eb454b68e571c7e14038dc823fe7f2263843e6e627b7444eaf0fe9374
diff --git a/sys-devel/binutils/binutils-2.41-r5.ebuild b/sys-devel/binutils/binutils-2.41-r5.ebuild
new file mode 100644
index 000000000000..5d564c277fc1
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.41-r5.ebuild
@@ -0,0 +1,531 @@
+# Copyright 1999-2024 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 debuginfod doc gold gprofng hardened multitarget +nls pgo +plugins static-libs test vanilla zstd"
+
+# 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://sourceware.org/pub/binutils/releases/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
+ debuginfod? (
+ dev-libs/elfutils[debuginfod(-)]
+ )
+ zstd? ( app-arch/zstd:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ doc? ( sys-apps/texinfo )
+ test? (
+ dev-util/dejagnu
+ app-alternatives/bc
+ )
+ nls? ( sys-devel/gettext )
+ zstd? ( virtual/pkgconfig )
+ app-alternatives/lex
+ app-alternatives/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."
+
+ # This is applied conditionally for now just out of caution.
+ # It should be okay on non-prefix systems though. See bug #892549.
+ if is_cross || use prefix; then
+ eapply "${FILESDIR}"/binutils-2.40-linker-search-path.patch \
+ "${FILESDIR}"/binutils-2.41-linker-prefix.patch
+ fi
+ 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 cet && filter-flags -mindirect-branch -mindirect-branch=*
+ use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
+
+ append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
+
+ 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 )
+ 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}
+ # portage's econf() does not detect presence of --d-d-t
+ # because it greps only top-level ./configure. But not
+ # libiberty's or bfd's configure.
+ --disable-dependency-tracking
+ --disable-silent-rules
+ --enable-obsolete
+ --enable-shared
+ --enable-threads
+ --enable-relro
+ --enable-install-libiberty
+ --enable-textrel-check=$(usex hardened error warning)
+ # Things to think about
+ #--enable-deterministic-archives
+ --enable-new-dtags
+ --disable-jansson
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ $(use_with zstd)
+
+ # 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)
+
+ $(use_with 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)
+ )
+
+ case ${CTARGET} in
+ x86_64-*|aarch64*|arm64*|i[3456]*)
+ # These hardening options are available from 2.39+ but
+ # they unconditionally enable the behaviour even on arches
+ # where e.g. execstacks can't be avoided.
+ # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
+ #
+ # TODO: Get the logic for this fixed upstream so it doesn't
+ # create impossible broken combinations on some arches, like mips.
+ #
+ # TODO: Get the logic for this fixed upstream so --disable-* works
+ # as expected.
+ myconf+=(
+ --enable-warn-execstack=yes
+ --enable-warn-rwx-segments=yes
+ )
+
+ if use hardened ; then
+ myconf+=(
+ --enable-default-execstack=no
+ )
+ fi
+ ;;
+ *)
+ ;;
+ esac
+
+ if use elibc_musl ; then
+ # Override our earlier setting for musl, as textrels don't
+ # work there at all. See bug #707660.
+ myconf+=(
+ --enable-textrel-check=error
+ )
+ fi
+
+ 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[@]}"
+
+ # 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]
+ # see linker prefix patch
+ emake \
+ tooldir="${EPREFIX}${TOOLPATH}" \
+ gentoo_prefix=$(usex prefix-guest "${EPREFIX}"/usr /usr) \
+ all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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 check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}" || die
+
+ # see Note [tooldir hack for ldscripts]
+ emake 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}
+
+ docompress "${DATAPATH}"/{info,man}
+
+ # 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-01-24 10:02 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2024-01-24 10:02 UTC (permalink / raw
To: gentoo-commits
commit: 31b761eeea68a204d13e455001a451e925fa77da
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Wed Jan 24 10:00:05 2024 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Wed Jan 24 10:00:05 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=31b761ee
sys-devel/binutils: keyword 2.41-r5
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.41-r5.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.41-r5.ebuild b/sys-devel/binutils/binutils-2.41-r5.ebuild
index 5d564c277fc1..1dd8b1bda2cf 100644
--- a/sys-devel/binutils/binutils-2.41-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r5.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-01-29 16:01 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-01-29 16:01 UTC (permalink / raw
To: gentoo-commits
commit: df504c5e4541535356b6d83373dd2c82992ae2d8
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Jan 29 16:00:31 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Jan 29 16:00:31 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=df504c5e
sys-devel/binutils: error out on exec stack & rwx segments for hardened for >=2.42
Pass --enable-error-execstack=yes and --enable-error-rwx-segments=yes for
USE=hardened. New options in 2.42.
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-9999.ebuild | 2 ++
1 file changed, 2 insertions(+)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 5f745bd13e6a..cf70b25e7676 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -314,6 +314,8 @@ src_configure() {
if use hardened ; then
myconf+=(
+ --enable-error-execstack=yes
+ --enable-error-rwx-segments=yes
--enable-default-execstack=no
)
fi
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-01-29 16:50 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2024-01-29 16:50 UTC (permalink / raw
To: gentoo-commits
commit: 7f3c2c736b0ed92ba57f7d058485afb7045f6fb6
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Mon Jan 29 16:50:21 2024 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Mon Jan 29 16:50:40 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7f3c2c73
sys-devel/binutils: add 2.42
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 +
sys-devel/binutils/binutils-2.42.ebuild | 533 ++++++++++++++++++++++++++++++++
2 files changed, 535 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 7f5f5df7a6fa..aff997a5c5a6 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -21,3 +21,5 @@ DIST binutils-2.41-patches-2.tar.xz 20288 BLAKE2B 1cc29e868ded12845856c5da567f23
DIST binutils-2.41-patches-4.tar.xz 86580 BLAKE2B 32748fd0e81a7e323e9f56f0864f2a1755b8fe1b09c777075e31a292297e365c47b47003f8f1bffacc254ed8dccf1c655b7b13f61da751c9db090e56d819fbb2 SHA512 90dcf38c1ed2ae015eb9de922e946e2be62355bd51276075e7f1c0a06cd52408057c4151a2d2d4c07e33c1d2c5998001cba5509819e5722cce45f70172465ea5
DIST binutils-2.41-patches-5.tar.xz 95176 BLAKE2B bbc94b3c7d70653a1056afe57a120b6eac9f0c8f51f05e95a1b5f80f2b7ef35e6355d740b49bc1ec2f3a13a838d5210ff4a205aa2bde5a72bc55c12100bce726 SHA512 ad293f97116f71322993f381c1af69fad1719a159f127ff16ddeca62f9b9b62aaf141abfa661985a61e9be7ae0639772148e69293a97364eebbf49182babb691
DIST binutils-2.41.tar.xz 26765692 BLAKE2B 3bccec2b52f7e82a727121bf2a2e51a6249ba63dcd74c665fd834e858645c912ffd8245d848435288b938852830b482905606f55c40df4061215fd75c52ffc75 SHA512 5df45d0bd6ddabdce4f35878c041e46a92deef01e7dea5facc97fd65cc06b59abc6fba0eb454b68e571c7e14038dc823fe7f2263843e6e627b7444eaf0fe9374
+DIST binutils-2.42-patches-1.tar.xz 14472 BLAKE2B d6e28c92d2fecb2015fc7963be65beb21804eb918e592194485b57343b34eeafa81409ba3fde16c85c890c0446b900843d2ff72c62aba4f93cfebef300dd9036 SHA512 ef2eaa05532e6b32417fcbf8f0de97f5f694a657caa5e8af5d55d42b00a5b7ecad085c74f16d747c3290c00aa52c5f0ce9b6f54941a9657889f953279198b665
+DIST binutils-2.42.tar.xz 27567160 BLAKE2B e67a5c028fba70e70088fd11b38ec8c9c4ed5a019badefda25abeb6275997b16f0891e7ff3424c4b82bbfae92e8992669826920dd53df61cd48469d8f7cd5bd1 SHA512 155f3ba14cd220102f4f29a4f1e5cfee3c48aa03b74603460d05afb73c70d6657a9d87eee6eb88bf13203fe6f31177a5c9addc04384e956e7da8069c8ecd20a6
diff --git a/sys-devel/binutils/binutils-2.42.ebuild b/sys-devel/binutils/binutils-2.42.ebuild
new file mode 100644
index 000000000000..cf70b25e7676
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.42.ebuild
@@ -0,0 +1,533 @@
+# Copyright 1999-2024 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 debuginfod doc gold gprofng hardened multitarget +nls pgo +plugins static-libs test vanilla zstd"
+
+# 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=1
+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://sourceware.org/pub/binutils/releases/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
+ debuginfod? (
+ dev-libs/elfutils[debuginfod(-)]
+ )
+ zstd? ( app-arch/zstd:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ doc? ( sys-apps/texinfo )
+ test? (
+ dev-util/dejagnu
+ app-alternatives/bc
+ )
+ nls? ( sys-devel/gettext )
+ zstd? ( virtual/pkgconfig )
+ app-alternatives/lex
+ app-alternatives/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."
+
+ # This is applied conditionally for now just out of caution.
+ # It should be okay on non-prefix systems though. See bug #892549.
+ if is_cross || use prefix; then
+ eapply "${FILESDIR}"/binutils-2.40-linker-search-path.patch \
+ "${FILESDIR}"/binutils-2.41-linker-prefix.patch
+ fi
+ 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 cet && filter-flags -mindirect-branch -mindirect-branch=*
+ use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
+
+ append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
+
+ 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 )
+ 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}
+ # portage's econf() does not detect presence of --d-d-t
+ # because it greps only top-level ./configure. But not
+ # libiberty's or bfd's configure.
+ --disable-dependency-tracking
+ --disable-silent-rules
+ --enable-obsolete
+ --enable-shared
+ --enable-threads
+ --enable-relro
+ --enable-install-libiberty
+ --enable-textrel-check=$(usex hardened error warning)
+ # Things to think about
+ #--enable-deterministic-archives
+ --enable-new-dtags
+ --disable-jansson
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ $(use_with zstd)
+
+ # 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)
+
+ $(use_with 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)
+ )
+
+ case ${CTARGET} in
+ x86_64-*|aarch64*|arm64*|i[3456]*)
+ # These hardening options are available from 2.39+ but
+ # they unconditionally enable the behaviour even on arches
+ # where e.g. execstacks can't be avoided.
+ # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
+ #
+ # TODO: Get the logic for this fixed upstream so it doesn't
+ # create impossible broken combinations on some arches, like mips.
+ #
+ # TODO: Get the logic for this fixed upstream so --disable-* works
+ # as expected.
+ myconf+=(
+ --enable-warn-execstack=yes
+ --enable-warn-rwx-segments=yes
+ )
+
+ if use hardened ; then
+ myconf+=(
+ --enable-error-execstack=yes
+ --enable-error-rwx-segments=yes
+ --enable-default-execstack=no
+ )
+ fi
+ ;;
+ *)
+ ;;
+ esac
+
+ if use elibc_musl ; then
+ # Override our earlier setting for musl, as textrels don't
+ # work there at all. See bug #707660.
+ myconf+=(
+ --enable-textrel-check=error
+ )
+ fi
+
+ 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[@]}"
+
+ # 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]
+ # see linker prefix patch
+ emake \
+ tooldir="${EPREFIX}${TOOLPATH}" \
+ gentoo_prefix=$(usex prefix-guest "${EPREFIX}"/usr /usr) \
+ all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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 check
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}" || die
+
+ # see Note [tooldir hack for ldscripts]
+ emake 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}
+
+ docompress "${DATAPATH}"/{info,man}
+
+ # 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-01-30 17:08 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2024-01-30 17:08 UTC (permalink / raw
To: gentoo-commits
commit: 2d02b7b48c5bd8e2a19d7820cbc38e145bc2bed1
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Tue Jan 30 17:07:18 2024 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Tue Jan 30 17:07:56 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2d02b7b4
sys-devel/binutils: Update 2.42 patchlevel to 2
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 +-
sys-devel/binutils/binutils-2.42.ebuild | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index aff997a5c5a6..80fc37b46db3 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -21,5 +21,5 @@ DIST binutils-2.41-patches-2.tar.xz 20288 BLAKE2B 1cc29e868ded12845856c5da567f23
DIST binutils-2.41-patches-4.tar.xz 86580 BLAKE2B 32748fd0e81a7e323e9f56f0864f2a1755b8fe1b09c777075e31a292297e365c47b47003f8f1bffacc254ed8dccf1c655b7b13f61da751c9db090e56d819fbb2 SHA512 90dcf38c1ed2ae015eb9de922e946e2be62355bd51276075e7f1c0a06cd52408057c4151a2d2d4c07e33c1d2c5998001cba5509819e5722cce45f70172465ea5
DIST binutils-2.41-patches-5.tar.xz 95176 BLAKE2B bbc94b3c7d70653a1056afe57a120b6eac9f0c8f51f05e95a1b5f80f2b7ef35e6355d740b49bc1ec2f3a13a838d5210ff4a205aa2bde5a72bc55c12100bce726 SHA512 ad293f97116f71322993f381c1af69fad1719a159f127ff16ddeca62f9b9b62aaf141abfa661985a61e9be7ae0639772148e69293a97364eebbf49182babb691
DIST binutils-2.41.tar.xz 26765692 BLAKE2B 3bccec2b52f7e82a727121bf2a2e51a6249ba63dcd74c665fd834e858645c912ffd8245d848435288b938852830b482905606f55c40df4061215fd75c52ffc75 SHA512 5df45d0bd6ddabdce4f35878c041e46a92deef01e7dea5facc97fd65cc06b59abc6fba0eb454b68e571c7e14038dc823fe7f2263843e6e627b7444eaf0fe9374
-DIST binutils-2.42-patches-1.tar.xz 14472 BLAKE2B d6e28c92d2fecb2015fc7963be65beb21804eb918e592194485b57343b34eeafa81409ba3fde16c85c890c0446b900843d2ff72c62aba4f93cfebef300dd9036 SHA512 ef2eaa05532e6b32417fcbf8f0de97f5f694a657caa5e8af5d55d42b00a5b7ecad085c74f16d747c3290c00aa52c5f0ce9b6f54941a9657889f953279198b665
+DIST binutils-2.42-patches-2.tar.xz 16108 BLAKE2B 98fcec5eb524c5e197ba880862fababa2a6fbad5ab8e4f6701720beda44505fccaecfd71d3007c11f566f2152817645142b0569786f0a13fc1795602dcdfa1d2 SHA512 fbe382c5934c95d5b4ef81d04c3a2600d9f4e1fee1ef39266aad4e856eaca45a012e2ea9f00ef7c32df11d8fc118c67e959e2b7a9257a1b57b7e92be6d293d74
DIST binutils-2.42.tar.xz 27567160 BLAKE2B e67a5c028fba70e70088fd11b38ec8c9c4ed5a019badefda25abeb6275997b16f0891e7ff3424c4b82bbfae92e8992669826920dd53df61cd48469d8f7cd5bd1 SHA512 155f3ba14cd220102f4f29a4f1e5cfee3c48aa03b74603460d05afb73c70d6657a9d87eee6eb88bf13203fe6f31177a5c9addc04384e956e7da8069c8ecd20a6
diff --git a/sys-devel/binutils/binutils-2.42.ebuild b/sys-devel/binutils/binutils-2.42.ebuild
index cf70b25e7676..52950e6376e6 100644
--- a/sys-devel/binutils/binutils-2.42.ebuild
+++ b/sys-devel/binutils/binutils-2.42.ebuild
@@ -19,7 +19,7 @@ IUSE="cet debuginfod doc gold gprofng hardened multitarget +nls pgo +plugins sta
# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
# for the patchsets
-PATCH_VER=1
+PATCH_VER=2
PATCH_DEV=dilfridge
if [[ ${PV} == 9999* ]]; then
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-01-30 18:33 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-01-30 18:33 UTC (permalink / raw
To: gentoo-commits
commit: df5d86071fb5264afae87106688ef3d638bf8798
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Jan 30 18:32:26 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Jan 30 18:33:34 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=df5d8607
Revert "sys-devel/binutils: error out on exec stack & rwx segments for hardened for >=2.42"
This reverts commit df504c5e4541535356b6d83373dd2c82992ae2d8.
Breaks glibc test suite. Revert for now.
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.42.ebuild | 5 +++--
sys-devel/binutils/binutils-9999.ebuild | 5 +++--
2 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.42.ebuild b/sys-devel/binutils/binutils-2.42.ebuild
index 52950e6376e6..f672a65f1fb4 100644
--- a/sys-devel/binutils/binutils-2.42.ebuild
+++ b/sys-devel/binutils/binutils-2.42.ebuild
@@ -314,8 +314,9 @@ src_configure() {
if use hardened ; then
myconf+=(
- --enable-error-execstack=yes
- --enable-error-rwx-segments=yes
+ # TOOD: breaks glibc test suite
+ #--enable-error-execstack=yes
+ #--enable-error-rwx-segments=yes
--enable-default-execstack=no
)
fi
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index cf70b25e7676..f7eab0eff629 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -314,8 +314,9 @@ src_configure() {
if use hardened ; then
myconf+=(
- --enable-error-execstack=yes
- --enable-error-rwx-segments=yes
+ # TOOD: breaks glibc test suite
+ #--enable-error-execstack=yes
+ #--enable-error-rwx-segments=yes
--enable-default-execstack=no
)
fi
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-02-16 0:22 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2024-02-16 0:22 UTC (permalink / raw
To: gentoo-commits
commit: c7b96a3ee94a371d249e8ee710095bf3378ca0c7
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Feb 16 00:10:54 2024 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Feb 16 00:21:52 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c7b96a3e
sys-devel/binutils: 2.42 patchlevel 3 bump
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 +-
sys-devel/binutils/{binutils-2.42.ebuild => binutils-2.42-r1.ebuild} | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 80fc37b46db3..2ed9620d3794 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -21,5 +21,5 @@ DIST binutils-2.41-patches-2.tar.xz 20288 BLAKE2B 1cc29e868ded12845856c5da567f23
DIST binutils-2.41-patches-4.tar.xz 86580 BLAKE2B 32748fd0e81a7e323e9f56f0864f2a1755b8fe1b09c777075e31a292297e365c47b47003f8f1bffacc254ed8dccf1c655b7b13f61da751c9db090e56d819fbb2 SHA512 90dcf38c1ed2ae015eb9de922e946e2be62355bd51276075e7f1c0a06cd52408057c4151a2d2d4c07e33c1d2c5998001cba5509819e5722cce45f70172465ea5
DIST binutils-2.41-patches-5.tar.xz 95176 BLAKE2B bbc94b3c7d70653a1056afe57a120b6eac9f0c8f51f05e95a1b5f80f2b7ef35e6355d740b49bc1ec2f3a13a838d5210ff4a205aa2bde5a72bc55c12100bce726 SHA512 ad293f97116f71322993f381c1af69fad1719a159f127ff16ddeca62f9b9b62aaf141abfa661985a61e9be7ae0639772148e69293a97364eebbf49182babb691
DIST binutils-2.41.tar.xz 26765692 BLAKE2B 3bccec2b52f7e82a727121bf2a2e51a6249ba63dcd74c665fd834e858645c912ffd8245d848435288b938852830b482905606f55c40df4061215fd75c52ffc75 SHA512 5df45d0bd6ddabdce4f35878c041e46a92deef01e7dea5facc97fd65cc06b59abc6fba0eb454b68e571c7e14038dc823fe7f2263843e6e627b7444eaf0fe9374
-DIST binutils-2.42-patches-2.tar.xz 16108 BLAKE2B 98fcec5eb524c5e197ba880862fababa2a6fbad5ab8e4f6701720beda44505fccaecfd71d3007c11f566f2152817645142b0569786f0a13fc1795602dcdfa1d2 SHA512 fbe382c5934c95d5b4ef81d04c3a2600d9f4e1fee1ef39266aad4e856eaca45a012e2ea9f00ef7c32df11d8fc118c67e959e2b7a9257a1b57b7e92be6d293d74
+DIST binutils-2.42-patches-3.tar.xz 34768 BLAKE2B e4bfaf3b42147408a8a3dcb00f50378a6b49aef8e939731a92598680cfbf42dfdf842c3f5bf3458867f79c534eb92385bc64f34f7b1d6462ec4182b5f424fbe5 SHA512 3d75e0684bbfa2cc3fc6dfcb5488ac571db58f1a5833fcc754f231664137001ccb0f2ec750947b8021fa12daf614eb2cd21b598bd962d71a34bb8ea38805850d
DIST binutils-2.42.tar.xz 27567160 BLAKE2B e67a5c028fba70e70088fd11b38ec8c9c4ed5a019badefda25abeb6275997b16f0891e7ff3424c4b82bbfae92e8992669826920dd53df61cd48469d8f7cd5bd1 SHA512 155f3ba14cd220102f4f29a4f1e5cfee3c48aa03b74603460d05afb73c70d6657a9d87eee6eb88bf13203fe6f31177a5c9addc04384e956e7da8069c8ecd20a6
diff --git a/sys-devel/binutils/binutils-2.42.ebuild b/sys-devel/binutils/binutils-2.42-r1.ebuild
similarity index 99%
rename from sys-devel/binutils/binutils-2.42.ebuild
rename to sys-devel/binutils/binutils-2.42-r1.ebuild
index f672a65f1fb4..8b796e86d0d5 100644
--- a/sys-devel/binutils/binutils-2.42.ebuild
+++ b/sys-devel/binutils/binutils-2.42-r1.ebuild
@@ -19,7 +19,7 @@ IUSE="cet debuginfod doc gold gprofng hardened multitarget +nls pgo +plugins sta
# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
# for the patchsets
-PATCH_VER=2
+PATCH_VER=3
PATCH_DEV=dilfridge
if [[ ${PV} == 9999* ]]; then
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-02-18 9:56 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-02-18 9:56 UTC (permalink / raw
To: gentoo-commits
commit: 8e0858f32e98c274bc6b88b5800d45b585b5e43f
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Feb 18 09:56:02 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Feb 18 09:56:02 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8e0858f3
sys-devel/binutils: Stabilize 2.41-r5 amd64, #916452
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.41-r5.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.41-r5.ebuild b/sys-devel/binutils/binutils-2.41-r5.ebuild
index 1dd8b1bda2cf..2ca7809134a7 100644
--- a/sys-devel/binutils/binutils-2.41-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r5.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-02-18 14:33 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2024-02-18 14:33 UTC (permalink / raw
To: gentoo-commits
commit: 48426be35b0456bfa1b60e8d6d7933b584ff067b
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Feb 18 14:29:09 2024 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Feb 18 14:29:09 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=48426be3
sys-devel/binutils: keyword 2.42-r1
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.42-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.42-r1.ebuild b/sys-devel/binutils/binutils-2.42-r1.ebuild
index 8b796e86d0d5..b00b5196aa5b 100644
--- a/sys-devel/binutils/binutils-2.42-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.42-r1.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-02-18 14:33 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2024-02-18 14:33 UTC (permalink / raw
To: gentoo-commits
commit: a45095189c9d7375a9999623022061ff0023cd3c
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Feb 18 14:29:48 2024 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Feb 18 14:29:48 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a4509518
sys-devel/binutils: drop 2.40-r5
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 -
sys-devel/binutils/binutils-2.40-r5.ebuild | 498 -----------------------------
2 files changed, 499 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 2ed9620d3794..635b751d198d 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -14,7 +14,6 @@ DIST binutils-2.38-patches-4.tar.xz 193852 BLAKE2B 5a83e20008e58464ed563a6817a36
DIST binutils-2.38.tar.xz 23651408 BLAKE2B 19ede396ec97b88e632aded2f69f4684cc5053109e06c3c4a1934944e3f0ceaa9e4a2604528a440189771f778cb5d75edd510163970eeea31afba87fa256feba SHA512 8bf0b0d193c9c010e0518ee2b2e5a830898af206510992483b427477ed178396cd210235e85fd7bd99a96fc6d5eedbeccbd48317a10f752b7336ada8b2bb826d
DIST binutils-2.39-patches-6.tar.xz 92380 BLAKE2B 39f490f1134fb0e7dc80924a280d3113efe0ed094ee15de97c42ab751c83d2f5aa7448966d8cbbcde722b2af4999a36c1e5aa2f37ca6d2e3942b97b6d90ff152 SHA512 213cd7a86da83987966675f3195e843d898ca4ff412dfc29fd33ed80adb7bbf80a0b2919cd8e7dd49208c73a621ab7b720970f2259418bdc82ed2a568ff62064
DIST binutils-2.39.tar.xz 25167756 BLAKE2B ac6a5296c6586d53eaadcbffc5c399a6d79edf72450b9bb8b3525ce525129cef3d2eb90c85ef3bb3270b5a03b0e1ffb8f0b705f028158726f9777ebb8685066f SHA512 68e038f339a8c21faa19a57bbc447a51c817f47c2e06d740847c6e9cc3396c025d35d5369fa8c3f8b70414757c89f0e577939ddc0d70f283182504920f53b0a3
-DIST binutils-2.40-patches-5.tar.xz 293628 BLAKE2B b7ed1d1fbf38b420661f984b9519b3d863da45b2a873773a521310021b0c1d5d7c24c152adb3e8a999d40f5619c0e54962114590ec9528380089977af0c30b74 SHA512 6e6df932b18ca20fe245b3ff8d3d06dbdae4daadaec3b668fa44e086d4e8ff56439681b2d810ebc74173b6348020edacb176e8c3cbf20657cce04297b97f4f83
DIST binutils-2.40-patches-7.tar.xz 299188 BLAKE2B 170cd2432e0458889b240c3603461d0b4bfa62d5314634b101a629db455d87235ac14ad44c63920b713d5235fa8b73902960df1019153873ef06a33aa7050b4b SHA512 a60da163caee68fe1fa355385d404e8998ebed0e390d50e0713e95334733a8b4e37bc63d522817284c027953e43848dbc98042461a47131fb53bc69203b4ee87
DIST binutils-2.40.tar.xz 25241484 BLAKE2B 8d799f7c595f878b9af5b17a490021dd8b8300ac2fe0ed8574c012929d22d2d0493e003a3e631a9436e8e712da801779b777c566167fe42b0bde119ffa5ad1c2 SHA512 a37e042523bc46494d99d5637c3f3d8f9956d9477b748b3b1f6d7dfbb8d968ed52c932e88a4e946c6f77b8f48f1e1b360ca54c3d298f17193f3b4963472f6925
DIST binutils-2.41-patches-2.tar.xz 20288 BLAKE2B 1cc29e868ded12845856c5da567f23798fe3017961ce079325c20f456b837cab11560d896065f70953b0bab55bf565288541579e9c3e0991a87083edf2a85fa5 SHA512 75619a5e17b75d72f9bdd9d5e5ee3b566c94de64410bfc074f1a9bfb9f08db9ecf8be216efa1053263468aa8ec99b8aa3b2b095e63cb95f3566500ac0c3b9432
diff --git a/sys-devel/binutils/binutils-2.40-r5.ebuild b/sys-devel/binutils/binutils-2.40-r5.ebuild
deleted file mode 100644
index caa14408bc88..000000000000
--- a/sys-devel/binutils/binutils-2.40-r5.ebuild
+++ /dev/null
@@ -1,498 +0,0 @@
-# Copyright 1999-2024 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 doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla zstd"
-
-# 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://sourceware.org/pub/binutils/releases/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
- zstd? ( app-arch/zstd:= )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- doc? ( sys-apps/texinfo )
- test? (
- dev-util/dejagnu
- app-alternatives/bc
- )
- nls? ( sys-devel/gettext )
- zstd? ( virtual/pkgconfig )
- app-alternatives/lex
- app-alternatives/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."
-
- # This is applied conditionally for now just out of caution.
- # It should be okay on non-prefix systems though. See bug #892549.
- use prefix && eapply "${FILESDIR}"/binutils-2.40-linker-search-path.patch
- 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 cet && filter-flags -mindirect-branch -mindirect-branch=*
- use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
-
- append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
-
- 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 )
- 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
-
- # These hardening options are available from 2.39+ but
- # they unconditionally enable the behaviour even on arches
- # where e.g. execstacks can't be avoided.
- # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
- #--enable-warn-execstack
- #--enable-warn-rwx-segments
- #--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)
- $(use_with zstd)
-
- # 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-03-07 13:02 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-03-07 13:02 UTC (permalink / raw
To: gentoo-commits
commit: 6a77c9a444223ba6a35a8a636848997f0b00cff0
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Mar 7 13:01:14 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Mar 7 13:02:03 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6a77c9a4
sys-devel/binutils: pass --disable-gdbserver too
Note that this doesn't matter for non-live, because gdbserver isn't included
in the dist tarball.
I only noticed it with live before binutils-2.42 release, then forgot about
it as binutils-2.42 proper was fine. Anyway, it causes a build failure with
USE=pgo + 9999, but it's of course completely pointless for this ebuild anyway.
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.42-r1.ebuild | 2 +-
sys-devel/binutils/binutils-9999.ebuild | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.42-r1.ebuild b/sys-devel/binutils/binutils-2.42-r1.ebuild
index b00b5196aa5b..05cfa7ed8b77 100644
--- a/sys-devel/binutils/binutils-2.42-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.42-r1.ebuild
@@ -270,7 +270,7 @@ src_configure() {
$(use_with zstd)
# Disable modules that are in a combined binutils/gdb tree, bug #490566
- --disable-{gdb,libdecnumber,readline,sim}
+ --disable-{gdb,gdbserver,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
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index f7eab0eff629..cdb4688fad1b 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -270,7 +270,7 @@ src_configure() {
$(use_with zstd)
# Disable modules that are in a combined binutils/gdb tree, bug #490566
- --disable-{gdb,libdecnumber,readline,sim}
+ --disable-{gdb,gdbserver,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
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-03-07 13:16 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-03-07 13:16 UTC (permalink / raw
To: gentoo-commits
commit: f900949be85e2b2b21cd68b7f5163208d0429028
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Mar 7 13:09:29 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Mar 7 13:09:29 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f900949b
sys-devel/binutils: add workaround for libbacktrace tests
They fail with >=app-arch/xz-utils-5.6.0 until libbacktrace is synced upstream,
export XZ_OPT & XZ_DEFAULTS with -T1 to workaround that.
Bug: https://sourceware.org/PR31327
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.32-r2.ebuild | 4 ++++
sys-devel/binutils/binutils-2.33.1-r1.ebuild | 4 ++++
sys-devel/binutils/binutils-2.34-r2.ebuild | 4 ++++
sys-devel/binutils/binutils-2.35.2.ebuild | 4 ++++
sys-devel/binutils/binutils-2.36.1-r2.ebuild | 4 ++++
sys-devel/binutils/binutils-2.37_p1-r2.ebuild | 4 ++++
sys-devel/binutils/binutils-2.38-r2.ebuild | 4 ++++
sys-devel/binutils/binutils-2.39-r5.ebuild | 4 ++++
sys-devel/binutils/binutils-2.40-r9.ebuild | 4 ++++
sys-devel/binutils/binutils-2.41-r2.ebuild | 4 ++++
sys-devel/binutils/binutils-2.41-r3.ebuild | 4 ++++
sys-devel/binutils/binutils-2.41-r4.ebuild | 4 ++++
sys-devel/binutils/binutils-2.41-r5.ebuild | 4 ++++
sys-devel/binutils/binutils-2.42-r1.ebuild | 4 ++++
sys-devel/binutils/binutils-9999.ebuild | 4 ++++
15 files changed, 60 insertions(+)
diff --git a/sys-devel/binutils/binutils-2.32-r2.ebuild b/sys-devel/binutils/binutils-2.32-r2.ebuild
index 0fcdb18847bf..1603eecf56a5 100644
--- a/sys-devel/binutils/binutils-2.32-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r2.ebuild
@@ -281,6 +281,10 @@ src_compile() {
src_test() {
cd "${MY_BUILDDIR}"
+ # https://sourceware.org/PR31327
+ local -x XZ_OPT="-T1"
+ local -x XZ_DEFAULTS="-T1"
+
# bug 637066
filter-flags -Wall -Wreturn-type
diff --git a/sys-devel/binutils/binutils-2.33.1-r1.ebuild b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
index 748cab6ef93a..1407f814db9d 100644
--- a/sys-devel/binutils/binutils-2.33.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
@@ -274,6 +274,10 @@ src_compile() {
src_test() {
cd "${MY_BUILDDIR}"
+ # https://sourceware.org/PR31327
+ local -x XZ_OPT="-T1"
+ local -x XZ_DEFAULTS="-T1"
+
# bug 637066
filter-flags -Wall -Wreturn-type
diff --git a/sys-devel/binutils/binutils-2.34-r2.ebuild b/sys-devel/binutils/binutils-2.34-r2.ebuild
index 42d6d1910d24..c4bd1379ccef 100644
--- a/sys-devel/binutils/binutils-2.34-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.34-r2.ebuild
@@ -275,6 +275,10 @@ src_compile() {
src_test() {
cd "${MY_BUILDDIR}"
+ # https://sourceware.org/PR31327
+ local -x XZ_OPT="-T1"
+ local -x XZ_DEFAULTS="-T1"
+
# bug 637066
filter-flags -Wall -Wreturn-type
diff --git a/sys-devel/binutils/binutils-2.35.2.ebuild b/sys-devel/binutils/binutils-2.35.2.ebuild
index 2dd287d2dce6..9e076a637ae7 100644
--- a/sys-devel/binutils/binutils-2.35.2.ebuild
+++ b/sys-devel/binutils/binutils-2.35.2.ebuild
@@ -299,6 +299,10 @@ src_compile() {
src_test() {
cd "${MY_BUILDDIR}"
+ # https://sourceware.org/PR31327
+ local -x XZ_OPT="-T1"
+ local -x XZ_DEFAULTS="-T1"
+
# bug 637066
filter-flags -Wall -Wreturn-type
diff --git a/sys-devel/binutils/binutils-2.36.1-r2.ebuild b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
index 2f20daa4bb5c..84cfcde9b0e4 100644
--- a/sys-devel/binutils/binutils-2.36.1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
@@ -294,6 +294,10 @@ src_compile() {
src_test() {
cd "${MY_BUILDDIR}"
+ # https://sourceware.org/PR31327
+ local -x XZ_OPT="-T1"
+ local -x XZ_DEFAULTS="-T1"
+
# bug 637066
filter-flags -Wall -Wreturn-type
diff --git a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
index 4d35c922704a..766e5f40ec38 100644
--- a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
@@ -313,6 +313,10 @@ src_compile() {
src_test() {
cd "${MY_BUILDDIR}"
+ # https://sourceware.org/PR31327
+ local -x XZ_OPT="-T1"
+ local -x XZ_DEFAULTS="-T1"
+
# bug 637066
filter-flags -Wall -Wreturn-type
diff --git a/sys-devel/binutils/binutils-2.38-r2.ebuild b/sys-devel/binutils/binutils-2.38-r2.ebuild
index a9791fe4dfa9..18e577f9b7d8 100644
--- a/sys-devel/binutils/binutils-2.38-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.38-r2.ebuild
@@ -321,6 +321,10 @@ src_compile() {
src_test() {
cd "${MY_BUILDDIR}"
+ # https://sourceware.org/PR31327
+ local -x XZ_OPT="-T1"
+ local -x XZ_DEFAULTS="-T1"
+
# bug 637066
filter-flags -Wall -Wreturn-type
diff --git a/sys-devel/binutils/binutils-2.39-r5.ebuild b/sys-devel/binutils/binutils-2.39-r5.ebuild
index c9f86dbbc0be..859d8ca96be5 100644
--- a/sys-devel/binutils/binutils-2.39-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.39-r5.ebuild
@@ -336,6 +336,10 @@ src_compile() {
src_test() {
cd "${MY_BUILDDIR}" || die
+ # https://sourceware.org/PR31327
+ local -x XZ_OPT="-T1"
+ local -x XZ_DEFAULTS="-T1"
+
# bug #637066
filter-flags -Wall -Wreturn-type
diff --git a/sys-devel/binutils/binutils-2.40-r9.ebuild b/sys-devel/binutils/binutils-2.40-r9.ebuild
index 8c60fad3923a..c3903df24f64 100644
--- a/sys-devel/binutils/binutils-2.40-r9.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r9.ebuild
@@ -348,6 +348,10 @@ src_compile() {
src_test() {
cd "${MY_BUILDDIR}" || die
+ # https://sourceware.org/PR31327
+ local -x XZ_OPT="-T1"
+ local -x XZ_DEFAULTS="-T1"
+
# bug #637066
filter-flags -Wall -Wreturn-type
diff --git a/sys-devel/binutils/binutils-2.41-r2.ebuild b/sys-devel/binutils/binutils-2.41-r2.ebuild
index b00ec7113c92..151aae2e4c90 100644
--- a/sys-devel/binutils/binutils-2.41-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r2.ebuild
@@ -366,6 +366,10 @@ src_compile() {
src_test() {
cd "${MY_BUILDDIR}" || die
+ # https://sourceware.org/PR31327
+ local -x XZ_OPT="-T1"
+ local -x XZ_DEFAULTS="-T1"
+
# bug #637066
filter-flags -Wall -Wreturn-type
diff --git a/sys-devel/binutils/binutils-2.41-r3.ebuild b/sys-devel/binutils/binutils-2.41-r3.ebuild
index e391c34b9529..49a29308d08d 100644
--- a/sys-devel/binutils/binutils-2.41-r3.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r3.ebuild
@@ -366,6 +366,10 @@ src_compile() {
src_test() {
cd "${MY_BUILDDIR}" || die
+ # https://sourceware.org/PR31327
+ local -x XZ_OPT="-T1"
+ local -x XZ_DEFAULTS="-T1"
+
# bug #637066
filter-flags -Wall -Wreturn-type
diff --git a/sys-devel/binutils/binutils-2.41-r4.ebuild b/sys-devel/binutils/binutils-2.41-r4.ebuild
index 44554f947d87..20b6637387ed 100644
--- a/sys-devel/binutils/binutils-2.41-r4.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r4.ebuild
@@ -371,6 +371,10 @@ src_compile() {
src_test() {
cd "${MY_BUILDDIR}" || die
+ # https://sourceware.org/PR31327
+ local -x XZ_OPT="-T1"
+ local -x XZ_DEFAULTS="-T1"
+
# bug #637066
filter-flags -Wall -Wreturn-type
diff --git a/sys-devel/binutils/binutils-2.41-r5.ebuild b/sys-devel/binutils/binutils-2.41-r5.ebuild
index 2ca7809134a7..2ee6985bd3a9 100644
--- a/sys-devel/binutils/binutils-2.41-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r5.ebuild
@@ -371,6 +371,10 @@ src_compile() {
src_test() {
cd "${MY_BUILDDIR}" || die
+ # https://sourceware.org/PR31327
+ local -x XZ_OPT="-T1"
+ local -x XZ_DEFAULTS="-T1"
+
# bug #637066
filter-flags -Wall -Wreturn-type
diff --git a/sys-devel/binutils/binutils-2.42-r1.ebuild b/sys-devel/binutils/binutils-2.42-r1.ebuild
index 05cfa7ed8b77..8fbb3379b787 100644
--- a/sys-devel/binutils/binutils-2.42-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.42-r1.ebuild
@@ -374,6 +374,10 @@ src_compile() {
src_test() {
cd "${MY_BUILDDIR}" || die
+ # https://sourceware.org/PR31327
+ local -x XZ_OPT="-T1"
+ local -x XZ_DEFAULTS="-T1"
+
# bug #637066
filter-flags -Wall -Wreturn-type
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index cdb4688fad1b..968aa94a7d9a 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -374,6 +374,10 @@ src_compile() {
src_test() {
cd "${MY_BUILDDIR}" || die
+ # https://sourceware.org/PR31327
+ local -x XZ_OPT="-T1"
+ local -x XZ_DEFAULTS="-T1"
+
# bug #637066
filter-flags -Wall -Wreturn-type
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-03-08 18:23 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-03-08 18:23 UTC (permalink / raw
To: gentoo-commits
commit: 1764651a4f7daf8d622db7fddeea891809cab2fb
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 8 18:22:08 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Mar 8 18:22:20 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1764651a
sys-devel/binutils: disable libbacktrace too for live
See 6a77c9a444223ba6a35a8a636848997f0b00cff0, same deal.
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.42-r1.ebuild | 2 +-
sys-devel/binutils/binutils-9999.ebuild | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.42-r1.ebuild b/sys-devel/binutils/binutils-2.42-r1.ebuild
index 8fbb3379b787..247aaaa1fa03 100644
--- a/sys-devel/binutils/binutils-2.42-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.42-r1.ebuild
@@ -270,7 +270,7 @@ src_configure() {
$(use_with zstd)
# Disable modules that are in a combined binutils/gdb tree, bug #490566
- --disable-{gdb,gdbserver,libdecnumber,readline,sim}
+ --disable-{gdb,gdbserver,libbacktrace,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
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 968aa94a7d9a..9169e3ca712c 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -270,7 +270,7 @@ src_configure() {
$(use_with zstd)
# Disable modules that are in a combined binutils/gdb tree, bug #490566
- --disable-{gdb,gdbserver,libdecnumber,readline,sim}
+ --disable-{gdb,gdbserver,libbacktrace,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
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-03-08 19:54 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-03-08 19:54 UTC (permalink / raw
To: gentoo-commits
commit: 7db9eb7bb6f9d2be4ea4e8fa86fcdfcc1f249990
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 8 19:53:15 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Mar 8 19:53:15 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7db9eb7b
sys-devel/binutils: Stabilize 2.41-r5 hppa, #916452
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.41-r5.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.41-r5.ebuild b/sys-devel/binutils/binutils-2.41-r5.ebuild
index 2ee6985bd3a9..7ceaa4fd0524 100644
--- a/sys-devel/binutils/binutils-2.41-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r5.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-03-08 19:54 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-03-08 19:54 UTC (permalink / raw
To: gentoo-commits
commit: cb3193f7a0992fa9d109da71bd914063152d5c9e
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 8 19:53:51 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Mar 8 19:53:51 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cb3193f7
sys-devel/binutils: Stabilize 2.41-r5 sparc, #916452
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.41-r5.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.41-r5.ebuild b/sys-devel/binutils/binutils-2.41-r5.ebuild
index 3513e0ffc39b..8f1003ee131f 100644
--- a/sys-devel/binutils/binutils-2.41-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r5.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-03-08 19:54 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-03-08 19:54 UTC (permalink / raw
To: gentoo-commits
commit: ebc16e9486cbcd5f6efdfeee0beebe0064a3283b
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 8 19:53:40 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Mar 8 19:53:40 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ebc16e94
sys-devel/binutils: Stabilize 2.41-r5 arm64, #916452
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.41-r5.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.41-r5.ebuild b/sys-devel/binutils/binutils-2.41-r5.ebuild
index c66cc9df3b6d..f8bb63398a29 100644
--- a/sys-devel/binutils/binutils-2.41-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r5.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-03-08 19:54 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-03-08 19:54 UTC (permalink / raw
To: gentoo-commits
commit: 2ea2c890839d6f4d4d4e7f9b8e409e2856a2af87
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 8 19:53:47 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Mar 8 19:53:47 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2ea2c890
sys-devel/binutils: Stabilize 2.41-r5 ppc64, #916452
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.41-r5.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.41-r5.ebuild b/sys-devel/binutils/binutils-2.41-r5.ebuild
index 27afba14b766..3513e0ffc39b 100644
--- a/sys-devel/binutils/binutils-2.41-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r5.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-03-08 19:54 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-03-08 19:54 UTC (permalink / raw
To: gentoo-commits
commit: 683978a21660ba527fae65964721872c10af231e
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 8 19:53:54 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Mar 8 19:53:54 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=683978a2
sys-devel/binutils: Stabilize 2.41-r5 x86, #916452
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.41-r5.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.41-r5.ebuild b/sys-devel/binutils/binutils-2.41-r5.ebuild
index 8f1003ee131f..8158e4ac7539 100644
--- a/sys-devel/binutils/binutils-2.41-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r5.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-03-08 19:54 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-03-08 19:54 UTC (permalink / raw
To: gentoo-commits
commit: eead63a5d1135fa76a759dfd2f91c898026587fc
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 8 19:53:36 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Mar 8 19:53:36 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=eead63a5
sys-devel/binutils: Stabilize 2.41-r5 arm, #916452
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.41-r5.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.41-r5.ebuild b/sys-devel/binutils/binutils-2.41-r5.ebuild
index 7ceaa4fd0524..c66cc9df3b6d 100644
--- a/sys-devel/binutils/binutils-2.41-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r5.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm ~arm64 hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-03-08 19:54 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-03-08 19:54 UTC (permalink / raw
To: gentoo-commits
commit: f94ce94b8cf8379c87af8f0adacc7410cc30a1e3
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 8 19:53:44 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Mar 8 19:53:44 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f94ce94b
sys-devel/binutils: Stabilize 2.41-r5 ppc, #916452
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.41-r5.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.41-r5.ebuild b/sys-devel/binutils/binutils-2.41-r5.ebuild
index f8bb63398a29..27afba14b766 100644
--- a/sys-devel/binutils/binutils-2.41-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r5.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-03-09 17:54 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-03-09 17:54 UTC (permalink / raw
To: gentoo-commits
commit: 33056c4e55b76cfdcee02c206acbfd770d7ae378
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Mar 9 02:51:47 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Mar 9 17:53:29 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=33056c4e
sys-devel/binutils: rework LTO handling
Get tests passing when LTO is used and rework USE=pgo handling while at it, as
it's interlinked with LTO b/c of the upstream infra for it.
This follows on from:
* 1764651a4f7daf8d622db7fddeea891809cab2fb
* f900949be85e2b2b21cd68b7f5163208d0429028
* f900949be85e2b2b21cd68b7f5163208d0429028
where I kept hitting misc issues where the build for the live ebuild failed
with LTO or otherwise.
With this, I only needed one patch to libctf's tests [0] which I've now
pinged upstream. (I also had an odd single gprofng failure I haven't looked at
yet.)
* For LTO + (tests || pgo), always filter '-Wa,*'. This is an unfortunate one,
but the bootstrap test fails with it.
* USE=pgo no longer implies LTO. If -flto is being used, then we pass
--enable-pgo-build=lto. If not, we pass --enable-pgo-build=yes.
* For USE=pgo, filter out LTO after we applied the build system configuration,
because otherwise there's a risk we're going to break the tests used for profiling.
* In src_test, use a subshell to localise the filtering of flags we do.
* For tests, pass {C,CXX,LD}FLAGS_FOR_TARGET to make, as otherwise it'll use
what it found from configure (and e.g. pick up LTO again -> many tests fail
as they're not intended to be used with it).
[0] https://inbox.sourceware.org/binutils/87sf2evr35.fsf <AT> esperi.org.uk/
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-9999.ebuild | 32 ++++++++++++++++++++++++++++----
1 file changed, 28 insertions(+), 4 deletions(-)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 9169e3ca712c..9b30843ce94f 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -333,10 +333,20 @@ src_configure() {
)
fi
+ if use test || { use pgo && tc-is-lto ; } ; then
+ # -Wa,* needs to be consistent everywhere or lto-wrapper will complain
+ filter-flags '-Wa,*'
+ fi
+
if ! is_cross ; then
- myconf+=( $(use_enable pgo pgo-build lto) )
+ myconf+=( $(use_enable pgo pgo-build $(tc-is-lto && echo "lto" || echo "yes")) )
if use pgo ; then
+ # We let configure handle it for us because it has to run
+ # the testsuite later on for profiling, and LTO isn't compatible
+ # with the testsuite.
+ filter-lto
+
export BUILD_CFLAGS="${CFLAGS}"
fi
fi
@@ -378,10 +388,24 @@ src_test() {
local -x XZ_OPT="-T1"
local -x XZ_DEFAULTS="-T1"
- # bug #637066
- filter-flags -Wall -Wreturn-type
+ (
+ # Tests don't expect LTO
+ filter-lto
- emake -k check
+ # lto-wrapper warnings which confuse tests
+ filter-flags '-Wa,*'
+
+ # bug #637066
+ filter-flags -Wall -Wreturn-type
+
+ emake -k check \
+ CFLAGS_FOR_TARGET="${CFLAGS_FOR_TARGET:-${CFLAGS}}" \
+ CXXFLAGS_FOR_TARGET="${CXXFLAGS_FOR_TARGET:-${CXXFLAGS}}" \
+ LDFLAGS_FOR_TARGET="${LDFLAGS_FOR_TARGET:-${LDFLAGS}}" \
+ CFLAGS="${CFLAGS}" \
+ CXXFLAGS="${CXXFLAGS}" \
+ LDFLAGS="${LDFLAGS}"
+ )
}
src_install() {
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-03-09 21:55 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-03-09 21:55 UTC (permalink / raw
To: gentoo-commits
commit: 68466c8b5bda1cbf82e364763c42c7c9df1dfff0
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Mar 9 21:54:27 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Mar 9 21:55:18 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=68466c8b
sys-devel/binutils: backport LTO fixes to 2.42-r1
From 33056c4e55b76cfdcee02c206acbfd770d7ae378.
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.42-r1.ebuild | 32 ++++++++++++++++++++++++++----
1 file changed, 28 insertions(+), 4 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.42-r1.ebuild b/sys-devel/binutils/binutils-2.42-r1.ebuild
index 247aaaa1fa03..a7bca7df85af 100644
--- a/sys-devel/binutils/binutils-2.42-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.42-r1.ebuild
@@ -333,10 +333,20 @@ src_configure() {
)
fi
+ if use test || { use pgo && tc-is-lto ; } ; then
+ # -Wa,* needs to be consistent everywhere or lto-wrapper will complain
+ filter-flags '-Wa,*'
+ fi
+
if ! is_cross ; then
- myconf+=( $(use_enable pgo pgo-build lto) )
+ myconf+=( $(use_enable pgo pgo-build $(tc-is-lto && echo "lto" || echo "yes")) )
if use pgo ; then
+ # We let configure handle it for us because it has to run
+ # the testsuite later on for profiling, and LTO isn't compatible
+ # with the testsuite.
+ filter-lto
+
export BUILD_CFLAGS="${CFLAGS}"
fi
fi
@@ -378,10 +388,24 @@ src_test() {
local -x XZ_OPT="-T1"
local -x XZ_DEFAULTS="-T1"
- # bug #637066
- filter-flags -Wall -Wreturn-type
+ (
+ # Tests don't expect LTO
+ filter-lto
- emake -k check
+ # lto-wrapper warnings which confuse tests
+ filter-flags '-Wa,*'
+
+ # bug #637066
+ filter-flags -Wall -Wreturn-type
+
+ emake -k check \
+ CFLAGS_FOR_TARGET="${CFLAGS_FOR_TARGET:-${CFLAGS}}" \
+ CXXFLAGS_FOR_TARGET="${CXXFLAGS_FOR_TARGET:-${CXXFLAGS}}" \
+ LDFLAGS_FOR_TARGET="${LDFLAGS_FOR_TARGET:-${LDFLAGS}}" \
+ CFLAGS="${CFLAGS}" \
+ CXXFLAGS="${CXXFLAGS}" \
+ LDFLAGS="${LDFLAGS}"
+ )
}
src_install() {
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-04-26 11:49 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2024-04-26 11:49 UTC (permalink / raw
To: gentoo-commits
commit: 8eaf8209dab572315943094ca6c40b6652b089ee
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Apr 26 11:47:38 2024 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Apr 26 11:49:17 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8eaf8209
sys-devel/binutils: drop 2.41-r2, 2.41-r3, 2.41-r4
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 -
sys-devel/binutils/binutils-2.41-r2.ebuild | 517 ----------------------------
sys-devel/binutils/binutils-2.41-r3.ebuild | 517 ----------------------------
sys-devel/binutils/binutils-2.41-r4.ebuild | 524 -----------------------------
4 files changed, 1560 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 635b751d198d..bc60a64f9804 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -16,8 +16,6 @@ DIST binutils-2.39-patches-6.tar.xz 92380 BLAKE2B 39f490f1134fb0e7dc80924a280d31
DIST binutils-2.39.tar.xz 25167756 BLAKE2B ac6a5296c6586d53eaadcbffc5c399a6d79edf72450b9bb8b3525ce525129cef3d2eb90c85ef3bb3270b5a03b0e1ffb8f0b705f028158726f9777ebb8685066f SHA512 68e038f339a8c21faa19a57bbc447a51c817f47c2e06d740847c6e9cc3396c025d35d5369fa8c3f8b70414757c89f0e577939ddc0d70f283182504920f53b0a3
DIST binutils-2.40-patches-7.tar.xz 299188 BLAKE2B 170cd2432e0458889b240c3603461d0b4bfa62d5314634b101a629db455d87235ac14ad44c63920b713d5235fa8b73902960df1019153873ef06a33aa7050b4b SHA512 a60da163caee68fe1fa355385d404e8998ebed0e390d50e0713e95334733a8b4e37bc63d522817284c027953e43848dbc98042461a47131fb53bc69203b4ee87
DIST binutils-2.40.tar.xz 25241484 BLAKE2B 8d799f7c595f878b9af5b17a490021dd8b8300ac2fe0ed8574c012929d22d2d0493e003a3e631a9436e8e712da801779b777c566167fe42b0bde119ffa5ad1c2 SHA512 a37e042523bc46494d99d5637c3f3d8f9956d9477b748b3b1f6d7dfbb8d968ed52c932e88a4e946c6f77b8f48f1e1b360ca54c3d298f17193f3b4963472f6925
-DIST binutils-2.41-patches-2.tar.xz 20288 BLAKE2B 1cc29e868ded12845856c5da567f23798fe3017961ce079325c20f456b837cab11560d896065f70953b0bab55bf565288541579e9c3e0991a87083edf2a85fa5 SHA512 75619a5e17b75d72f9bdd9d5e5ee3b566c94de64410bfc074f1a9bfb9f08db9ecf8be216efa1053263468aa8ec99b8aa3b2b095e63cb95f3566500ac0c3b9432
-DIST binutils-2.41-patches-4.tar.xz 86580 BLAKE2B 32748fd0e81a7e323e9f56f0864f2a1755b8fe1b09c777075e31a292297e365c47b47003f8f1bffacc254ed8dccf1c655b7b13f61da751c9db090e56d819fbb2 SHA512 90dcf38c1ed2ae015eb9de922e946e2be62355bd51276075e7f1c0a06cd52408057c4151a2d2d4c07e33c1d2c5998001cba5509819e5722cce45f70172465ea5
DIST binutils-2.41-patches-5.tar.xz 95176 BLAKE2B bbc94b3c7d70653a1056afe57a120b6eac9f0c8f51f05e95a1b5f80f2b7ef35e6355d740b49bc1ec2f3a13a838d5210ff4a205aa2bde5a72bc55c12100bce726 SHA512 ad293f97116f71322993f381c1af69fad1719a159f127ff16ddeca62f9b9b62aaf141abfa661985a61e9be7ae0639772148e69293a97364eebbf49182babb691
DIST binutils-2.41.tar.xz 26765692 BLAKE2B 3bccec2b52f7e82a727121bf2a2e51a6249ba63dcd74c665fd834e858645c912ffd8245d848435288b938852830b482905606f55c40df4061215fd75c52ffc75 SHA512 5df45d0bd6ddabdce4f35878c041e46a92deef01e7dea5facc97fd65cc06b59abc6fba0eb454b68e571c7e14038dc823fe7f2263843e6e627b7444eaf0fe9374
DIST binutils-2.42-patches-3.tar.xz 34768 BLAKE2B e4bfaf3b42147408a8a3dcb00f50378a6b49aef8e939731a92598680cfbf42dfdf842c3f5bf3458867f79c534eb92385bc64f34f7b1d6462ec4182b5f424fbe5 SHA512 3d75e0684bbfa2cc3fc6dfcb5488ac571db58f1a5833fcc754f231664137001ccb0f2ec750947b8021fa12daf614eb2cd21b598bd962d71a34bb8ea38805850d
diff --git a/sys-devel/binutils/binutils-2.41-r2.ebuild b/sys-devel/binutils/binutils-2.41-r2.ebuild
deleted file mode 100644
index c787465a3200..000000000000
--- a/sys-devel/binutils/binutils-2.41-r2.ebuild
+++ /dev/null
@@ -1,517 +0,0 @@
-# Copyright 1999-2024 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 debuginfod doc gold gprofng hardened multitarget +nls pgo +plugins static-libs test vanilla zstd"
-
-# 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=2
-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://sourceware.org/pub/binutils/releases/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
- debuginfod? (
- dev-libs/elfutils[debuginfod(-)]
- )
- zstd? ( app-arch/zstd:= )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- doc? ( sys-apps/texinfo )
- test? (
- dev-util/dejagnu
- app-alternatives/bc
- )
- nls? ( sys-devel/gettext )
- zstd? ( virtual/pkgconfig )
- app-alternatives/lex
- app-alternatives/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."
-
- # This is applied conditionally for now just out of caution.
- # It should be okay on non-prefix systems though. See bug #892549.
- if is_cross || use prefix; then
- eapply "${FILESDIR}"/binutils-2.40-linker-search-path.patch
- fi
- 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
-
- # 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 cet && filter-flags -mindirect-branch -mindirect-branch=*
- use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
-
- append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
-
- 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 )
- 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}
- # portage's econf() does not detect presence of --d-d-t
- # because it greps only top-level ./configure. But not
- # libiberty's or bfd's configure.
- --disable-dependency-tracking
- --disable-silent-rules
- --enable-obsolete
- --enable-shared
- --enable-threads
- --enable-relro
- --enable-install-libiberty
- --enable-textrel-check=$(usex hardened error warning)
- # Things to think about
- #--enable-deterministic-archives
- --enable-new-dtags
- --disable-jansson
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- $(use_with zstd)
-
- # 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)
-
- $(use_with 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)
- )
-
- case ${CTARGET} in
- x86_64-*|aarch64*|arm64*|i[3456]*)
- # These hardening options are available from 2.39+ but
- # they unconditionally enable the behaviour even on arches
- # where e.g. execstacks can't be avoided.
- # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
- #
- # TODO: Get the logic for this fixed upstream so it doesn't
- # create impossible broken combinations on some arches, like mips.
- #
- # TODO: Get the logic for this fixed upstream so --disable-* works
- # as expected.
- myconf+=(
- --enable-warn-execstack=yes
- --enable-warn-rwx-segments=yes
- )
-
- if use hardened ; then
- myconf+=(
- --enable-default-execstack=no
- )
- fi
- ;;
- *)
- ;;
- esac
-
- if use elibc_musl ; then
- # Override our earlier setting for musl, as textrels don't
- # work there at all. See bug #707660.
- myconf+=(
- --enable-textrel-check=error
- )
- fi
-
- 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[@]}"
-
- # 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 tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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
-
- # https://sourceware.org/PR31327
- local -x XZ_OPT="-T1"
- local -x XZ_DEFAULTS="-T1"
-
- # bug #637066
- filter-flags -Wall -Wreturn-type
-
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}" || die
-
- # see Note [tooldir hack for ldscripts]
- emake 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.41-r3.ebuild b/sys-devel/binutils/binutils-2.41-r3.ebuild
deleted file mode 100644
index a0cc21bab946..000000000000
--- a/sys-devel/binutils/binutils-2.41-r3.ebuild
+++ /dev/null
@@ -1,517 +0,0 @@
-# Copyright 1999-2024 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 debuginfod doc gold gprofng hardened multitarget +nls pgo +plugins static-libs test vanilla zstd"
-
-# 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://sourceware.org/pub/binutils/releases/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
- debuginfod? (
- dev-libs/elfutils[debuginfod(-)]
- )
- zstd? ( app-arch/zstd:= )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- doc? ( sys-apps/texinfo )
- test? (
- dev-util/dejagnu
- app-alternatives/bc
- )
- nls? ( sys-devel/gettext )
- zstd? ( virtual/pkgconfig )
- app-alternatives/lex
- app-alternatives/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."
-
- # This is applied conditionally for now just out of caution.
- # It should be okay on non-prefix systems though. See bug #892549.
- if is_cross || use prefix; then
- eapply "${FILESDIR}"/binutils-2.40-linker-search-path.patch
- fi
- 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
-
- # 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 cet && filter-flags -mindirect-branch -mindirect-branch=*
- use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
-
- append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
-
- 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 )
- 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}
- # portage's econf() does not detect presence of --d-d-t
- # because it greps only top-level ./configure. But not
- # libiberty's or bfd's configure.
- --disable-dependency-tracking
- --disable-silent-rules
- --enable-obsolete
- --enable-shared
- --enable-threads
- --enable-relro
- --enable-install-libiberty
- --enable-textrel-check=$(usex hardened error warning)
- # Things to think about
- #--enable-deterministic-archives
- --enable-new-dtags
- --disable-jansson
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- $(use_with zstd)
-
- # 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)
-
- $(use_with 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)
- )
-
- case ${CTARGET} in
- x86_64-*|aarch64*|arm64*|i[3456]*)
- # These hardening options are available from 2.39+ but
- # they unconditionally enable the behaviour even on arches
- # where e.g. execstacks can't be avoided.
- # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
- #
- # TODO: Get the logic for this fixed upstream so it doesn't
- # create impossible broken combinations on some arches, like mips.
- #
- # TODO: Get the logic for this fixed upstream so --disable-* works
- # as expected.
- myconf+=(
- --enable-warn-execstack=yes
- --enable-warn-rwx-segments=yes
- )
-
- if use hardened ; then
- myconf+=(
- --enable-default-execstack=no
- )
- fi
- ;;
- *)
- ;;
- esac
-
- if use elibc_musl ; then
- # Override our earlier setting for musl, as textrels don't
- # work there at all. See bug #707660.
- myconf+=(
- --enable-textrel-check=error
- )
- fi
-
- 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[@]}"
-
- # 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 tooldir="${EPREFIX}${TOOLPATH}" all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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
-
- # https://sourceware.org/PR31327
- local -x XZ_OPT="-T1"
- local -x XZ_DEFAULTS="-T1"
-
- # bug #637066
- filter-flags -Wall -Wreturn-type
-
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}" || die
-
- # see Note [tooldir hack for ldscripts]
- emake 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.41-r4.ebuild b/sys-devel/binutils/binutils-2.41-r4.ebuild
deleted file mode 100644
index 9cac9d6928b7..000000000000
--- a/sys-devel/binutils/binutils-2.41-r4.ebuild
+++ /dev/null
@@ -1,524 +0,0 @@
-# Copyright 1999-2024 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 debuginfod doc gold gprofng hardened multitarget +nls pgo +plugins static-libs test vanilla zstd"
-
-# 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://sourceware.org/pub/binutils/releases/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
- debuginfod? (
- dev-libs/elfutils[debuginfod(-)]
- )
- zstd? ( app-arch/zstd:= )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- doc? ( sys-apps/texinfo )
- test? (
- dev-util/dejagnu
- app-alternatives/bc
- )
- nls? ( sys-devel/gettext )
- zstd? ( virtual/pkgconfig )
- app-alternatives/lex
- app-alternatives/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."
-
- # This is applied conditionally for now just out of caution.
- # It should be okay on non-prefix systems though. See bug #892549.
- if is_cross || use prefix; then
- eapply "${FILESDIR}"/binutils-2.40-linker-search-path.patch \
- "${FILESDIR}"/binutils-2.41-linker-prefix.patch
- fi
- 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
-
- # 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 cet && filter-flags -mindirect-branch -mindirect-branch=*
- use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
-
- append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
-
- 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 )
- 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}
- # portage's econf() does not detect presence of --d-d-t
- # because it greps only top-level ./configure. But not
- # libiberty's or bfd's configure.
- --disable-dependency-tracking
- --disable-silent-rules
- --enable-obsolete
- --enable-shared
- --enable-threads
- --enable-relro
- --enable-install-libiberty
- --enable-textrel-check=$(usex hardened error warning)
- # Things to think about
- #--enable-deterministic-archives
- --enable-new-dtags
- --disable-jansson
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- $(use_with zstd)
-
- # 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)
-
- $(use_with 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)
- )
-
- case ${CTARGET} in
- x86_64-*|aarch64*|arm64*|i[3456]*)
- # These hardening options are available from 2.39+ but
- # they unconditionally enable the behaviour even on arches
- # where e.g. execstacks can't be avoided.
- # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
- #
- # TODO: Get the logic for this fixed upstream so it doesn't
- # create impossible broken combinations on some arches, like mips.
- #
- # TODO: Get the logic for this fixed upstream so --disable-* works
- # as expected.
- myconf+=(
- --enable-warn-execstack=yes
- --enable-warn-rwx-segments=yes
- )
-
- if use hardened ; then
- myconf+=(
- --enable-default-execstack=no
- )
- fi
- ;;
- *)
- ;;
- esac
-
- if use elibc_musl ; then
- # Override our earlier setting for musl, as textrels don't
- # work there at all. See bug #707660.
- myconf+=(
- --enable-textrel-check=error
- )
- fi
-
- 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[@]}"
-
- # 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]
- # see linker prefix patch
- emake \
- tooldir="${EPREFIX}${TOOLPATH}" \
- gentoo_prefix=$(usex prefix-guest "${EPREFIX}"/usr /usr) \
- all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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
-
- # https://sourceware.org/PR31327
- local -x XZ_OPT="-T1"
- local -x XZ_DEFAULTS="-T1"
-
- # bug #637066
- filter-flags -Wall -Wreturn-type
-
- emake -k check
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}" || die
-
- # see Note [tooldir hack for ldscripts]
- emake 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}
-
- docompress "${DATAPATH}"/{info,man}
-
- # 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-05-09 19:43 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-05-09 19:43 UTC (permalink / raw
To: gentoo-commits
commit: ff761d4e1663ff7dff587b4f7a3903859a78a014
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu May 9 19:43:05 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu May 9 19:43:05 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ff761d4e
sys-devel/binutils: Stabilize 2.42-r1 amd64, #931298
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.42-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.42-r1.ebuild b/sys-devel/binutils/binutils-2.42-r1.ebuild
index cf195f441b89..a43babf01253 100644
--- a/sys-devel/binutils/binutils-2.42-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.42-r1.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-05-11 0:46 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-05-11 0:46 UTC (permalink / raw
To: gentoo-commits
commit: f464c8ce78e6aba3ae9378844db4d1ccdf455375
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat May 11 00:45:45 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat May 11 00:45:45 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f464c8ce
sys-devel/binutils: Stabilize 2.42-r1 x86, #931298
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.42-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.42-r1.ebuild b/sys-devel/binutils/binutils-2.42-r1.ebuild
index a43babf01253..4857ba622360 100644
--- a/sys-devel/binutils/binutils-2.42-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.42-r1.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-06-01 2:57 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-06-01 2:57 UTC (permalink / raw
To: gentoo-commits
commit: ed0e181697dfb6f1e7454d96b7f14febb1289e05
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Jun 1 02:57:05 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Jun 1 02:57:05 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ed0e1816
sys-devel/binutils: drop XZ_OPT/XZ_DEFAULTS for 9999
No longer necessary as libbacktrace has been updated upstream.
Bug: https://sourceware.org/PR31327
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-9999.ebuild | 4 ----
1 file changed, 4 deletions(-)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 8576f0e43ff0..57de6c0b9975 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -373,10 +373,6 @@ src_compile() {
src_test() {
cd "${MY_BUILDDIR}" || die
- # https://sourceware.org/PR31327
- local -x XZ_OPT="-T1"
- local -x XZ_DEFAULTS="-T1"
-
(
# Tests don't expect LTO
filter-lto
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-06-05 7:01 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-06-05 7:01 UTC (permalink / raw
To: gentoo-commits
commit: ea69b7de9ff9575082fc95a786e29088aff7978a
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Jun 5 06:58:54 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Jun 5 07:01:38 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ea69b7de
sys-devel/binutils: pgo needs dejagnu
Otherwise, the tests are skipped as 'runtest' is missing.
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.42-r1.ebuild | 4 ++++
sys-devel/binutils/binutils-9999.ebuild | 4 ++++
2 files changed, 8 insertions(+)
diff --git a/sys-devel/binutils/binutils-2.42-r1.ebuild b/sys-devel/binutils/binutils-2.42-r1.ebuild
index 4857ba622360..1089082dacd8 100644
--- a/sys-devel/binutils/binutils-2.42-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.42-r1.ebuild
@@ -60,6 +60,10 @@ RDEPEND="
DEPEND="${RDEPEND}"
BDEPEND="
doc? ( sys-apps/texinfo )
+ pgo? (
+ dev-util/dejagnu
+ app-alternatives/bc
+ )
test? (
dev-util/dejagnu
app-alternatives/bc
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 57de6c0b9975..6b3ec2c68fb7 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -60,6 +60,10 @@ RDEPEND="
DEPEND="${RDEPEND}"
BDEPEND="
doc? ( sys-apps/texinfo )
+ pgo? (
+ dev-util/dejagnu
+ app-alternatives/bc
+ )
test? (
dev-util/dejagnu
app-alternatives/bc
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-06-28 18:05 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-06-28 18:05 UTC (permalink / raw
To: gentoo-commits
commit: ad2ce5989fa4c3ee252ccf0e0f205cb9dcb98db6
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jun 28 18:04:49 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jun 28 18:04:49 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ad2ce598
sys-devel/binutils: Stabilize 2.42-r1 hppa, #931298
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.42-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.42-r1.ebuild b/sys-devel/binutils/binutils-2.42-r1.ebuild
index 1089082dacd8..2b8963135a1c 100644
--- a/sys-devel/binutils/binutils-2.42-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.42-r1.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-06-28 18:05 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-06-28 18:05 UTC (permalink / raw
To: gentoo-commits
commit: 861a91a228b5777338c09a7b6ed315d435ea3b4f
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jun 28 18:04:57 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jun 28 18:04:57 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=861a91a2
sys-devel/binutils: Stabilize 2.42-r1 sparc, #931298
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.42-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.42-r1.ebuild b/sys-devel/binutils/binutils-2.42-r1.ebuild
index 0428a679cfa6..b990d6affb2d 100644
--- a/sys-devel/binutils/binutils-2.42-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.42-r1.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 ~arm arm64 hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-06-28 18:05 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-06-28 18:05 UTC (permalink / raw
To: gentoo-commits
commit: e2bee5999a7362d55c117c6d01e44ee2c338186c
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jun 28 18:04:53 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jun 28 18:04:53 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e2bee599
sys-devel/binutils: Stabilize 2.42-r1 arm64, #931298
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.42-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.42-r1.ebuild b/sys-devel/binutils/binutils-2.42-r1.ebuild
index 2b8963135a1c..0428a679cfa6 100644
--- a/sys-devel/binutils/binutils-2.42-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.42-r1.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 ~arm arm64 hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-06-28 18:07 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-06-28 18:07 UTC (permalink / raw
To: gentoo-commits
commit: f466e9f2808f28c674dcf0af0db3abfdfa96973b
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jun 28 18:06:01 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jun 28 18:06:01 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f466e9f2
sys-devel/binutils: Stabilize 2.42-r1 ppc64, #931298
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.42-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.42-r1.ebuild b/sys-devel/binutils/binutils-2.42-r1.ebuild
index b990d6affb2d..06777566a77d 100644
--- a/sys-devel/binutils/binutils-2.42-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.42-r1.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 ~arm arm64 hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-06-28 22:19 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2024-06-28 22:19 UTC (permalink / raw
To: gentoo-commits
commit: e41caacaf569948a32ba3ff3d2049e737b8084f4
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Jun 28 22:18:40 2024 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Jun 28 22:18:40 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e41caaca
sys-devel/binutils: add 2.42-r2 (patchset 4)
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.42-r2.ebuild | 555 +++++++++++++++++++++++++++++
2 files changed, 556 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index bc60a64f9804..c0c88a5f5532 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -19,4 +19,5 @@ DIST binutils-2.40.tar.xz 25241484 BLAKE2B 8d799f7c595f878b9af5b17a490021dd8b830
DIST binutils-2.41-patches-5.tar.xz 95176 BLAKE2B bbc94b3c7d70653a1056afe57a120b6eac9f0c8f51f05e95a1b5f80f2b7ef35e6355d740b49bc1ec2f3a13a838d5210ff4a205aa2bde5a72bc55c12100bce726 SHA512 ad293f97116f71322993f381c1af69fad1719a159f127ff16ddeca62f9b9b62aaf141abfa661985a61e9be7ae0639772148e69293a97364eebbf49182babb691
DIST binutils-2.41.tar.xz 26765692 BLAKE2B 3bccec2b52f7e82a727121bf2a2e51a6249ba63dcd74c665fd834e858645c912ffd8245d848435288b938852830b482905606f55c40df4061215fd75c52ffc75 SHA512 5df45d0bd6ddabdce4f35878c041e46a92deef01e7dea5facc97fd65cc06b59abc6fba0eb454b68e571c7e14038dc823fe7f2263843e6e627b7444eaf0fe9374
DIST binutils-2.42-patches-3.tar.xz 34768 BLAKE2B e4bfaf3b42147408a8a3dcb00f50378a6b49aef8e939731a92598680cfbf42dfdf842c3f5bf3458867f79c534eb92385bc64f34f7b1d6462ec4182b5f424fbe5 SHA512 3d75e0684bbfa2cc3fc6dfcb5488ac571db58f1a5833fcc754f231664137001ccb0f2ec750947b8021fa12daf614eb2cd21b598bd962d71a34bb8ea38805850d
+DIST binutils-2.42-patches-4.tar.xz 49192 BLAKE2B eb9986e7248204bf183590db647beb440f7b19fb239e57804b463a7ed1f60ffe2c38def772e948d6e3d1fee0cb7c1f9867828978a2dec3457115e6d0e8829bf1 SHA512 300db75742df41bcc12e78c6f18e1d1123fd3636af8b4de043794c0890ecfdc8190070102ee3ca84ff34c012f3f7f91bb55b84a1d8dc68515526fe2f14fcc58b
DIST binutils-2.42.tar.xz 27567160 BLAKE2B e67a5c028fba70e70088fd11b38ec8c9c4ed5a019badefda25abeb6275997b16f0891e7ff3424c4b82bbfae92e8992669826920dd53df61cd48469d8f7cd5bd1 SHA512 155f3ba14cd220102f4f29a4f1e5cfee3c48aa03b74603460d05afb73c70d6657a9d87eee6eb88bf13203fe6f31177a5c9addc04384e956e7da8069c8ecd20a6
diff --git a/sys-devel/binutils/binutils-2.42-r2.ebuild b/sys-devel/binutils/binutils-2.42-r2.ebuild
new file mode 100644
index 000000000000..505782bb273d
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.42-r2.ebuild
@@ -0,0 +1,555 @@
+# Copyright 1999-2024 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 debuginfod doc gold gprofng hardened multitarget +nls pgo +plugins static-libs test vanilla zstd"
+
+# 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://sourceware.org/pub/binutils/releases/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
+ debuginfod? (
+ dev-libs/elfutils[debuginfod(-)]
+ )
+ zstd? ( app-arch/zstd:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ doc? ( sys-apps/texinfo )
+ pgo? (
+ dev-util/dejagnu
+ app-alternatives/bc
+ )
+ test? (
+ dev-util/dejagnu
+ app-alternatives/bc
+ )
+ nls? ( sys-devel/gettext )
+ zstd? ( virtual/pkgconfig )
+ app-alternatives/lex
+ app-alternatives/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."
+
+ # This is applied conditionally for now just out of caution.
+ # It should be okay on non-prefix systems though. See bug #892549.
+ if is_cross || use prefix; then
+ eapply "${FILESDIR}"/binutils-2.40-linker-search-path.patch \
+ "${FILESDIR}"/binutils-2.41-linker-prefix.patch
+ fi
+ 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
+
+ # 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 cet && filter-flags -mindirect-branch -mindirect-branch=*
+ use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
+
+ append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
+
+ 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 )
+ 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}
+ # portage's econf() does not detect presence of --d-d-t
+ # because it greps only top-level ./configure. But not
+ # libiberty's or bfd's configure.
+ --disable-dependency-tracking
+ --disable-silent-rules
+ --enable-obsolete
+ --enable-shared
+ --enable-threads
+ --enable-relro
+ --enable-install-libiberty
+ --enable-textrel-check=$(usex hardened error warning)
+ # Things to think about
+ #--enable-deterministic-archives
+ --enable-new-dtags
+ --disable-jansson
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ $(use_with zstd)
+
+ # Disable modules that are in a combined binutils/gdb tree, bug #490566
+ --disable-{gdb,gdbserver,libbacktrace,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)
+
+ $(use_with 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)
+ )
+
+ case ${CTARGET} in
+ x86_64-*|aarch64*|arm64*|i[3456]*)
+ # These hardening options are available from 2.39+ but
+ # they unconditionally enable the behaviour even on arches
+ # where e.g. execstacks can't be avoided.
+ # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
+ #
+ # TODO: Get the logic for this fixed upstream so it doesn't
+ # create impossible broken combinations on some arches, like mips.
+ #
+ # TODO: Get the logic for this fixed upstream so --disable-* works
+ # as expected.
+ myconf+=(
+ --enable-warn-execstack=yes
+ --enable-warn-rwx-segments=yes
+ )
+
+ if use hardened ; then
+ myconf+=(
+ # TOOD: breaks glibc test suite
+ #--enable-error-execstack=yes
+ #--enable-error-rwx-segments=yes
+ --enable-default-execstack=no
+ )
+ fi
+ ;;
+ *)
+ ;;
+ esac
+
+ if use elibc_musl ; then
+ # Override our earlier setting for musl, as textrels don't
+ # work there at all. See bug #707660.
+ myconf+=(
+ --enable-textrel-check=error
+ )
+ fi
+
+ if use test || { use pgo && tc-is-lto ; } ; then
+ # -Wa,* needs to be consistent everywhere or lto-wrapper will complain
+ filter-flags '-Wa,*'
+ fi
+
+ if ! is_cross ; then
+ myconf+=( $(use_enable pgo pgo-build $(tc-is-lto && echo "lto" || echo "yes")) )
+
+ if use pgo ; then
+ # We let configure handle it for us because it has to run
+ # the testsuite later on for profiling, and LTO isn't compatible
+ # with the testsuite.
+ filter-lto
+
+ export BUILD_CFLAGS="${CFLAGS}"
+ fi
+ fi
+
+ ECONF_SOURCE="${S}" econf "${myconf[@]}"
+
+ # 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]
+ # see linker prefix patch
+ emake \
+ tooldir="${EPREFIX}${TOOLPATH}" \
+ gentoo_prefix=$(usex prefix-guest "${EPREFIX}"/usr /usr) \
+ all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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
+
+ # https://sourceware.org/PR31327
+ local -x XZ_OPT="-T1"
+ local -x XZ_DEFAULTS="-T1"
+
+ (
+ # Tests don't expect LTO
+ filter-lto
+
+ # lto-wrapper warnings which confuse tests
+ filter-flags '-Wa,*'
+
+ # bug #637066
+ filter-flags -Wall -Wreturn-type
+
+ emake -k check \
+ CFLAGS_FOR_TARGET="${CFLAGS_FOR_TARGET:-${CFLAGS}}" \
+ CXXFLAGS_FOR_TARGET="${CXXFLAGS_FOR_TARGET:-${CXXFLAGS}}" \
+ LDFLAGS_FOR_TARGET="${LDFLAGS_FOR_TARGET:-${LDFLAGS}}" \
+ CFLAGS="${CFLAGS}" \
+ CXXFLAGS="${CXXFLAGS}" \
+ LDFLAGS="${LDFLAGS}"
+ )
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}" || die
+
+ # see Note [tooldir hack for ldscripts]
+ emake 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}
+
+ docompress "${DATAPATH}"/{info,man}
+
+ # 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-06-29 16:16 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2024-06-29 16:16 UTC (permalink / raw
To: gentoo-commits
commit: 2c932a9d704ff21cafe606bc09d254e3d48c551b
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Jun 29 16:15:43 2024 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Jun 29 16:16:20 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2c932a9d
sys-devel/binutils: bump 2.42-r2 to patchset 5, reverts some gentoo-specific stuff
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 +-
sys-devel/binutils/binutils-2.42-r2.ebuild | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index c0c88a5f5532..c392c0faece2 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -19,5 +19,5 @@ DIST binutils-2.40.tar.xz 25241484 BLAKE2B 8d799f7c595f878b9af5b17a490021dd8b830
DIST binutils-2.41-patches-5.tar.xz 95176 BLAKE2B bbc94b3c7d70653a1056afe57a120b6eac9f0c8f51f05e95a1b5f80f2b7ef35e6355d740b49bc1ec2f3a13a838d5210ff4a205aa2bde5a72bc55c12100bce726 SHA512 ad293f97116f71322993f381c1af69fad1719a159f127ff16ddeca62f9b9b62aaf141abfa661985a61e9be7ae0639772148e69293a97364eebbf49182babb691
DIST binutils-2.41.tar.xz 26765692 BLAKE2B 3bccec2b52f7e82a727121bf2a2e51a6249ba63dcd74c665fd834e858645c912ffd8245d848435288b938852830b482905606f55c40df4061215fd75c52ffc75 SHA512 5df45d0bd6ddabdce4f35878c041e46a92deef01e7dea5facc97fd65cc06b59abc6fba0eb454b68e571c7e14038dc823fe7f2263843e6e627b7444eaf0fe9374
DIST binutils-2.42-patches-3.tar.xz 34768 BLAKE2B e4bfaf3b42147408a8a3dcb00f50378a6b49aef8e939731a92598680cfbf42dfdf842c3f5bf3458867f79c534eb92385bc64f34f7b1d6462ec4182b5f424fbe5 SHA512 3d75e0684bbfa2cc3fc6dfcb5488ac571db58f1a5833fcc754f231664137001ccb0f2ec750947b8021fa12daf614eb2cd21b598bd962d71a34bb8ea38805850d
-DIST binutils-2.42-patches-4.tar.xz 49192 BLAKE2B eb9986e7248204bf183590db647beb440f7b19fb239e57804b463a7ed1f60ffe2c38def772e948d6e3d1fee0cb7c1f9867828978a2dec3457115e6d0e8829bf1 SHA512 300db75742df41bcc12e78c6f18e1d1123fd3636af8b4de043794c0890ecfdc8190070102ee3ca84ff34c012f3f7f91bb55b84a1d8dc68515526fe2f14fcc58b
+DIST binutils-2.42-patches-5.tar.xz 49920 BLAKE2B 36c2e08161146659bb4165883b06a7c044696339d05fdbbfe7d0525dbb693274927d9cbad5b6ad48c5940ffc76861667b10e4bc385bdb69caca211bf8ed31799 SHA512 0334c5d48021fdb73ebbc127954808ba0ef9ff6c7ff4051be3a0481295709ba37a4b77a8f842a724a89cc99e1241275e2a615cb6d508f15b2067f7a977a6b4a9
DIST binutils-2.42.tar.xz 27567160 BLAKE2B e67a5c028fba70e70088fd11b38ec8c9c4ed5a019badefda25abeb6275997b16f0891e7ff3424c4b82bbfae92e8992669826920dd53df61cd48469d8f7cd5bd1 SHA512 155f3ba14cd220102f4f29a4f1e5cfee3c48aa03b74603460d05afb73c70d6657a9d87eee6eb88bf13203fe6f31177a5c9addc04384e956e7da8069c8ecd20a6
diff --git a/sys-devel/binutils/binutils-2.42-r2.ebuild b/sys-devel/binutils/binutils-2.42-r2.ebuild
index 505782bb273d..588123f14b05 100644
--- a/sys-devel/binutils/binutils-2.42-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.42-r2.ebuild
@@ -19,7 +19,7 @@ IUSE="cet debuginfod doc gold gprofng hardened multitarget +nls pgo +plugins sta
# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
# for the patchsets
-PATCH_VER=4
+PATCH_VER=5
PATCH_DEV=dilfridge
if [[ ${PV} == 9999* ]]; then
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-06-29 16:35 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-06-29 16:35 UTC (permalink / raw
To: gentoo-commits
commit: 3de872a3105ef25730fa4bfcdbdd96fc139b40c7
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Jun 29 16:32:01 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Jun 29 16:34:56 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3de872a3
sys-devel/binutils: drop -Wl,--undefined-version passing
This should be fixed upstream now.
Bug: https://bugs.gentoo.org/914640
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-9999.ebuild | 2 --
1 file changed, 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 6b3ec2c68fb7..ec36fb66e100 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -177,8 +177,6 @@ src_configure() {
use cet && filter-flags -mindirect-branch -mindirect-branch=*
use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
- append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
-
local x
echo
for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-06-29 16:51 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2024-06-29 16:51 UTC (permalink / raw
To: gentoo-commits
commit: 42ba5b56c4e1f8713f8470f55a2ec12c2726ea3a
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Jun 29 16:50:40 2024 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Jun 29 16:51:32 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=42ba5b56
sys-devel/binutils: bump to patchlevel 6, one more test fix
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 +-
sys-devel/binutils/binutils-2.42-r2.ebuild | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index c392c0faece2..a394d716f488 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -19,5 +19,5 @@ DIST binutils-2.40.tar.xz 25241484 BLAKE2B 8d799f7c595f878b9af5b17a490021dd8b830
DIST binutils-2.41-patches-5.tar.xz 95176 BLAKE2B bbc94b3c7d70653a1056afe57a120b6eac9f0c8f51f05e95a1b5f80f2b7ef35e6355d740b49bc1ec2f3a13a838d5210ff4a205aa2bde5a72bc55c12100bce726 SHA512 ad293f97116f71322993f381c1af69fad1719a159f127ff16ddeca62f9b9b62aaf141abfa661985a61e9be7ae0639772148e69293a97364eebbf49182babb691
DIST binutils-2.41.tar.xz 26765692 BLAKE2B 3bccec2b52f7e82a727121bf2a2e51a6249ba63dcd74c665fd834e858645c912ffd8245d848435288b938852830b482905606f55c40df4061215fd75c52ffc75 SHA512 5df45d0bd6ddabdce4f35878c041e46a92deef01e7dea5facc97fd65cc06b59abc6fba0eb454b68e571c7e14038dc823fe7f2263843e6e627b7444eaf0fe9374
DIST binutils-2.42-patches-3.tar.xz 34768 BLAKE2B e4bfaf3b42147408a8a3dcb00f50378a6b49aef8e939731a92598680cfbf42dfdf842c3f5bf3458867f79c534eb92385bc64f34f7b1d6462ec4182b5f424fbe5 SHA512 3d75e0684bbfa2cc3fc6dfcb5488ac571db58f1a5833fcc754f231664137001ccb0f2ec750947b8021fa12daf614eb2cd21b598bd962d71a34bb8ea38805850d
-DIST binutils-2.42-patches-5.tar.xz 49920 BLAKE2B 36c2e08161146659bb4165883b06a7c044696339d05fdbbfe7d0525dbb693274927d9cbad5b6ad48c5940ffc76861667b10e4bc385bdb69caca211bf8ed31799 SHA512 0334c5d48021fdb73ebbc127954808ba0ef9ff6c7ff4051be3a0481295709ba37a4b77a8f842a724a89cc99e1241275e2a615cb6d508f15b2067f7a977a6b4a9
+DIST binutils-2.42-patches-6.tar.xz 50664 BLAKE2B f13b65a761cfba80caf2e4740c6383b40305558365b950fba22aca95a104e799e8bd476082f36fb9288de4f224b09f317792c1444e549c40d15a4b64cdf61989 SHA512 1203eca0a9e622411eac377509de8fd0db3ffcb282ac38ab7a0369b166cc1091197daad85b51b145b34a4832f1a1a4d573c8254e8d67aeb22f35adb1ab3ece1f
DIST binutils-2.42.tar.xz 27567160 BLAKE2B e67a5c028fba70e70088fd11b38ec8c9c4ed5a019badefda25abeb6275997b16f0891e7ff3424c4b82bbfae92e8992669826920dd53df61cd48469d8f7cd5bd1 SHA512 155f3ba14cd220102f4f29a4f1e5cfee3c48aa03b74603460d05afb73c70d6657a9d87eee6eb88bf13203fe6f31177a5c9addc04384e956e7da8069c8ecd20a6
diff --git a/sys-devel/binutils/binutils-2.42-r2.ebuild b/sys-devel/binutils/binutils-2.42-r2.ebuild
index 588123f14b05..9039b7ff227c 100644
--- a/sys-devel/binutils/binutils-2.42-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.42-r2.ebuild
@@ -19,7 +19,7 @@ IUSE="cet debuginfod doc gold gprofng hardened multitarget +nls pgo +plugins sta
# PATCH_DEV - Use download URI https://dev.gentoo.org/~{PATCH_DEV}/distfiles/...
# for the patchsets
-PATCH_VER=5
+PATCH_VER=6
PATCH_DEV=dilfridge
if [[ ${PV} == 9999* ]]; then
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-06-29 23:09 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2024-06-29 23:09 UTC (permalink / raw
To: gentoo-commits
commit: 6309bf32e4f69f4e57c2c766f8a6cb4d6d109410
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Jun 29 23:04:42 2024 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Jun 29 23:08:51 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6309bf32
sys-devel/binutils: keyword 2.42-r2
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.42-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.42-r2.ebuild b/sys-devel/binutils/binutils-2.42-r2.ebuild
index 9039b7ff227c..5e6ae95311f5 100644
--- a/sys-devel/binutils/binutils-2.42-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.42-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-07-14 15:39 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-07-14 15:39 UTC (permalink / raw
To: gentoo-commits
commit: bbcb469bfc2883b7bdbd7d14aed5d2964c6907f1
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 14 15:38:35 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Jul 14 15:38:35 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bbcb469b
sys-devel/binutils: Stabilize 2.42-r1 ppc, #931298
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.42-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.42-r1.ebuild b/sys-devel/binutils/binutils-2.42-r1.ebuild
index 333d9f4ec382..6035c39f55c8 100644
--- a/sys-devel/binutils/binutils-2.42-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.42-r1.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-07-14 15:39 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-07-14 15:39 UTC (permalink / raw
To: gentoo-commits
commit: afec923864ca12aa479999b80197ed3085624996
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 14 15:38:31 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Jul 14 15:38:31 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=afec9238
sys-devel/binutils: Stabilize 2.42-r1 arm, #931298
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.42-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.42-r1.ebuild b/sys-devel/binutils/binutils-2.42-r1.ebuild
index 06777566a77d..333d9f4ec382 100644
--- a/sys-devel/binutils/binutils-2.42-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.42-r1.ebuild
@@ -32,7 +32,7 @@ else
[[ -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"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-07-28 13:42 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2024-07-28 13:42 UTC (permalink / raw
To: gentoo-commits
commit: 9a23794a3dc75c2248fbb6546b6428480fb91ead
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 28 13:41:32 2024 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Jul 28 13:42:02 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9a23794a
sys-devel/binutils: Detect and log binutils-config errors. Eventually we want to act on them...
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.42-r2.ebuild | 8 ++++----
sys-devel/binutils/binutils-9999.ebuild | 8 ++++----
2 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.42-r2.ebuild b/sys-devel/binutils/binutils-2.42-r2.ebuild
index 5e6ae95311f5..7b0f6ea29f53 100644
--- a/sys-devel/binutils/binutils-2.42-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.42-r2.ebuild
@@ -500,7 +500,7 @@ src_install() {
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}
+ binutils-config ${CTARGET}-${PV} || eerror binutils-config returned an error
}
pkg_postrm() {
@@ -517,12 +517,12 @@ pkg_postrm() {
choice=${choice//$'\n'/ }
choice=${choice/* }
if [[ -z ${choice} ]] ; then
- binutils-config -u ${CTARGET}
+ binutils-config -u ${CTARGET} || eerror binutils-config returned an error
else
- binutils-config ${choice}
+ binutils-config ${choice} || eerror binutils-config returned an error
fi
elif [[ $(CHOST=${CTARGET} binutils-config -c) == ${CTARGET}-${PV} ]] ; then
- binutils-config ${CTARGET}-${PV}
+ binutils-config ${CTARGET}-${PV} || eerror binutils-config returned an error
fi
}
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index ec36fb66e100..ccf31a101405 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -494,7 +494,7 @@ src_install() {
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}
+ binutils-config ${CTARGET}-${PV} || eerror binutils-config returned an error
}
pkg_postrm() {
@@ -511,12 +511,12 @@ pkg_postrm() {
choice=${choice//$'\n'/ }
choice=${choice/* }
if [[ -z ${choice} ]] ; then
- binutils-config -u ${CTARGET}
+ binutils-config -u ${CTARGET} || eerror binutils-config returned an error
else
- binutils-config ${choice}
+ binutils-config ${choice} || eerror binutils-config returned an error
fi
elif [[ $(CHOST=${CTARGET} binutils-config -c) == ${CTARGET}-${PV} ]] ; then
- binutils-config ${CTARGET}-${PV}
+ binutils-config ${CTARGET}-${PV} || eerror binutils-config returned an error
fi
}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-07-31 22:32 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2024-07-31 22:32 UTC (permalink / raw
To: gentoo-commits
commit: 101b47b0d549927a2d36b7bec3be03ef6605cb50
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Wed Jul 31 22:31:16 2024 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Wed Jul 31 22:31:55 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=101b47b0
sys-devel/binutils: Add stable-branch live ebuild and mechanisms for it
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
.../{binutils-9999.ebuild => binutils-2.43.9999.ebuild} | 16 ++++++++++++----
sys-devel/binutils/binutils-9999.ebuild | 16 ++++++++++++----
2 files changed, 24 insertions(+), 8 deletions(-)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-2.43.9999.ebuild
similarity index 97%
copy from sys-devel/binutils/binutils-9999.ebuild
copy to sys-devel/binutils/binutils-2.43.9999.ebuild
index ccf31a101405..c05f1529d8c1 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-2.43.9999.ebuild
@@ -22,9 +22,12 @@ IUSE="cet debuginfod doc gold gprofng hardened multitarget +nls pgo +plugins sta
PATCH_VER=1
PATCH_DEV=dilfridge
-if [[ ${PV} == 9999* ]]; then
+if [[ ${PV} == 9999 ]]; then
inherit git-r3
SLOT=${PV}
+elif [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ SLOT=$(ver_cut 1-2)
else
PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
PATCH_DEV=${PATCH_DEV:-dilfridge}
@@ -79,12 +82,15 @@ RESTRICT="!test? ( test )"
MY_BUILDDIR=${WORKDIR}/build
src_unpack() {
- if [[ ${PV} == 9999* ]] ; then
+ 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
+ if [[ ${PV} != 9999 ]] ; then
+ EGIT_BRANCH=binutils-$(ver_cut 1)_$(ver_cut 2)-branch
+ fi
EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
S=${WORKDIR}/binutils
EGIT_CHECKOUT_DIR=${S}
@@ -108,13 +114,15 @@ src_unpack() {
src_prepare() {
local patchsetname
- if [[ ${PV} == 9999* ]] ; then
+ if [[ ${PV} == 9999 ]] ; then
patchsetname="from git master"
+ elif [[ ${PV} == *9999 ]] ; then
+ patchsetname="from git branch ${EGIT_BRANCH}"
else
patchsetname="${PATCH_BINUTILS_VER}-${PATCH_VER}"
fi
- if [[ -n ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
+ if [[ -n ${PATCH_VER} ]] || [[ ${PV} == *9999 ]] ; then
if ! use vanilla; then
einfo "Applying binutils patchset ${patchsetname}"
eapply "${WORKDIR}/patch"
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index ccf31a101405..c05f1529d8c1 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -22,9 +22,12 @@ IUSE="cet debuginfod doc gold gprofng hardened multitarget +nls pgo +plugins sta
PATCH_VER=1
PATCH_DEV=dilfridge
-if [[ ${PV} == 9999* ]]; then
+if [[ ${PV} == 9999 ]]; then
inherit git-r3
SLOT=${PV}
+elif [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ SLOT=$(ver_cut 1-2)
else
PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
PATCH_DEV=${PATCH_DEV:-dilfridge}
@@ -79,12 +82,15 @@ RESTRICT="!test? ( test )"
MY_BUILDDIR=${WORKDIR}/build
src_unpack() {
- if [[ ${PV} == 9999* ]] ; then
+ 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
+ if [[ ${PV} != 9999 ]] ; then
+ EGIT_BRANCH=binutils-$(ver_cut 1)_$(ver_cut 2)-branch
+ fi
EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
S=${WORKDIR}/binutils
EGIT_CHECKOUT_DIR=${S}
@@ -108,13 +114,15 @@ src_unpack() {
src_prepare() {
local patchsetname
- if [[ ${PV} == 9999* ]] ; then
+ if [[ ${PV} == 9999 ]] ; then
patchsetname="from git master"
+ elif [[ ${PV} == *9999 ]] ; then
+ patchsetname="from git branch ${EGIT_BRANCH}"
else
patchsetname="${PATCH_BINUTILS_VER}-${PATCH_VER}"
fi
- if [[ -n ${PATCH_VER} ]] || [[ ${PV} == 9999* ]] ; then
+ if [[ -n ${PATCH_VER} ]] || [[ ${PV} == *9999 ]] ; then
if ! use vanilla; then
einfo "Applying binutils patchset ${patchsetname}"
eapply "${WORKDIR}/patch"
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-08-05 7:28 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2024-08-05 7:28 UTC (permalink / raw
To: gentoo-commits
commit: c981e7d8ea7b86491a0cdafd1bc3944444093810
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Mon Aug 5 07:24:50 2024 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Mon Aug 5 07:28:12 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c981e7d8
sys-devel/binutils: add 2.43
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 +
sys-devel/binutils/binutils-2.43.ebuild | 557 ++++++++++++++++++++++++++++++++
2 files changed, 559 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index a394d716f488..776e8cf74bd6 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -21,3 +21,5 @@ DIST binutils-2.41.tar.xz 26765692 BLAKE2B 3bccec2b52f7e82a727121bf2a2e51a6249ba
DIST binutils-2.42-patches-3.tar.xz 34768 BLAKE2B e4bfaf3b42147408a8a3dcb00f50378a6b49aef8e939731a92598680cfbf42dfdf842c3f5bf3458867f79c534eb92385bc64f34f7b1d6462ec4182b5f424fbe5 SHA512 3d75e0684bbfa2cc3fc6dfcb5488ac571db58f1a5833fcc754f231664137001ccb0f2ec750947b8021fa12daf614eb2cd21b598bd962d71a34bb8ea38805850d
DIST binutils-2.42-patches-6.tar.xz 50664 BLAKE2B f13b65a761cfba80caf2e4740c6383b40305558365b950fba22aca95a104e799e8bd476082f36fb9288de4f224b09f317792c1444e549c40d15a4b64cdf61989 SHA512 1203eca0a9e622411eac377509de8fd0db3ffcb282ac38ab7a0369b166cc1091197daad85b51b145b34a4832f1a1a4d573c8254e8d67aeb22f35adb1ab3ece1f
DIST binutils-2.42.tar.xz 27567160 BLAKE2B e67a5c028fba70e70088fd11b38ec8c9c4ed5a019badefda25abeb6275997b16f0891e7ff3424c4b82bbfae92e8992669826920dd53df61cd48469d8f7cd5bd1 SHA512 155f3ba14cd220102f4f29a4f1e5cfee3c48aa03b74603460d05afb73c70d6657a9d87eee6eb88bf13203fe6f31177a5c9addc04384e956e7da8069c8ecd20a6
+DIST binutils-2.43-patches-1.tar.xz 11644 BLAKE2B 578ee67c3c5e67f9191a31a5c83ffcc781f757f8aaee3eea14d052db427cdd2bc769977dba16e9a8c653dcc4a94f11c149898683945d5035d0beeac128045b1a SHA512 e6db4eaf4fbea366e607a7e9a56e20851fcc34664532fd6aa1f0818271c3e2687eada3daca482e211a2b3e36be85e7e0b23158caaa0fdf9785d13a9156e8c734
+DIST binutils-2.43.tar.xz 28175768 BLAKE2B 28b0a04a28273b76eab2d00e00160be889f155f77f5a9d8759ef8dce505c97e97641bf7ec70b92b731b520570a02b06e04e8215b068fcb1bb2573e9ef24732d9 SHA512 93e063163e54d6a6ee2bd48dc754270bf757a3635b49a702ed6b310e929e94063958512d191e66beaf44275f7ea60865dbde138b624626739679fcc306b133bb
diff --git a/sys-devel/binutils/binutils-2.43.ebuild b/sys-devel/binutils/binutils-2.43.ebuild
new file mode 100644
index 000000000000..c05f1529d8c1
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.43.ebuild
@@ -0,0 +1,557 @@
+# Copyright 1999-2024 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 debuginfod doc gold gprofng hardened multitarget +nls pgo +plugins static-libs test vanilla zstd"
+
+# 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=1
+PATCH_DEV=dilfridge
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ SLOT=${PV}
+elif [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ SLOT=$(ver_cut 1-2)
+else
+ PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
+ PATCH_DEV=${PATCH_DEV:-dilfridge}
+ SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz https://sourceware.org/pub/binutils/releases/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
+ debuginfod? (
+ dev-libs/elfutils[debuginfod(-)]
+ )
+ zstd? ( app-arch/zstd:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ doc? ( sys-apps/texinfo )
+ pgo? (
+ dev-util/dejagnu
+ app-alternatives/bc
+ )
+ test? (
+ dev-util/dejagnu
+ app-alternatives/bc
+ )
+ nls? ( sys-devel/gettext )
+ zstd? ( virtual/pkgconfig )
+ app-alternatives/lex
+ app-alternatives/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
+
+ if [[ ${PV} != 9999 ]] ; then
+ EGIT_BRANCH=binutils-$(ver_cut 1)_$(ver_cut 2)-branch
+ fi
+ 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"
+ elif [[ ${PV} == *9999 ]] ; then
+ patchsetname="from git branch ${EGIT_BRANCH}"
+ 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."
+
+ # This is applied conditionally for now just out of caution.
+ # It should be okay on non-prefix systems though. See bug #892549.
+ if is_cross || use prefix; then
+ eapply "${FILESDIR}"/binutils-2.40-linker-search-path.patch \
+ "${FILESDIR}"/binutils-2.41-linker-prefix.patch
+ fi
+ 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
+
+ # 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 cet && filter-flags -mindirect-branch -mindirect-branch=*
+ 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 )
+ 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}
+ # portage's econf() does not detect presence of --d-d-t
+ # because it greps only top-level ./configure. But not
+ # libiberty's or bfd's configure.
+ --disable-dependency-tracking
+ --disable-silent-rules
+ --enable-obsolete
+ --enable-shared
+ --enable-threads
+ --enable-relro
+ --enable-install-libiberty
+ --enable-textrel-check=$(usex hardened error warning)
+ # Things to think about
+ #--enable-deterministic-archives
+ --enable-new-dtags
+ --disable-jansson
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ $(use_with zstd)
+
+ # Disable modules that are in a combined binutils/gdb tree, bug #490566
+ --disable-{gdb,gdbserver,libbacktrace,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)
+
+ $(use_with 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)
+ )
+
+ case ${CTARGET} in
+ x86_64-*|aarch64*|arm64*|i[3456]*)
+ # These hardening options are available from 2.39+ but
+ # they unconditionally enable the behaviour even on arches
+ # where e.g. execstacks can't be avoided.
+ # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
+ #
+ # TODO: Get the logic for this fixed upstream so it doesn't
+ # create impossible broken combinations on some arches, like mips.
+ #
+ # TODO: Get the logic for this fixed upstream so --disable-* works
+ # as expected.
+ myconf+=(
+ --enable-warn-execstack=yes
+ --enable-warn-rwx-segments=yes
+ )
+
+ if use hardened ; then
+ myconf+=(
+ # TOOD: breaks glibc test suite
+ #--enable-error-execstack=yes
+ #--enable-error-rwx-segments=yes
+ --enable-default-execstack=no
+ )
+ fi
+ ;;
+ *)
+ ;;
+ esac
+
+ if use elibc_musl ; then
+ # Override our earlier setting for musl, as textrels don't
+ # work there at all. See bug #707660.
+ myconf+=(
+ --enable-textrel-check=error
+ )
+ fi
+
+ if use test || { use pgo && tc-is-lto ; } ; then
+ # -Wa,* needs to be consistent everywhere or lto-wrapper will complain
+ filter-flags '-Wa,*'
+ fi
+
+ if ! is_cross ; then
+ myconf+=( $(use_enable pgo pgo-build $(tc-is-lto && echo "lto" || echo "yes")) )
+
+ if use pgo ; then
+ # We let configure handle it for us because it has to run
+ # the testsuite later on for profiling, and LTO isn't compatible
+ # with the testsuite.
+ filter-lto
+
+ export BUILD_CFLAGS="${CFLAGS}"
+ fi
+ fi
+
+ ECONF_SOURCE="${S}" econf "${myconf[@]}"
+
+ # 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]
+ # see linker prefix patch
+ emake \
+ tooldir="${EPREFIX}${TOOLPATH}" \
+ gentoo_prefix=$(usex prefix-guest "${EPREFIX}"/usr /usr) \
+ all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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
+
+ (
+ # Tests don't expect LTO
+ filter-lto
+
+ # lto-wrapper warnings which confuse tests
+ filter-flags '-Wa,*'
+
+ # bug #637066
+ filter-flags -Wall -Wreturn-type
+
+ emake -k check \
+ CFLAGS_FOR_TARGET="${CFLAGS_FOR_TARGET:-${CFLAGS}}" \
+ CXXFLAGS_FOR_TARGET="${CXXFLAGS_FOR_TARGET:-${CXXFLAGS}}" \
+ LDFLAGS_FOR_TARGET="${LDFLAGS_FOR_TARGET:-${LDFLAGS}}" \
+ CFLAGS="${CFLAGS}" \
+ CXXFLAGS="${CXXFLAGS}" \
+ LDFLAGS="${LDFLAGS}"
+ )
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}" || die
+
+ # see Note [tooldir hack for ldscripts]
+ emake 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}
+
+ docompress "${DATAPATH}"/{info,man}
+
+ # 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} || eerror binutils-config returned an error
+}
+
+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} || eerror binutils-config returned an error
+ else
+ binutils-config ${choice} || eerror binutils-config returned an error
+ fi
+ elif [[ $(CHOST=${CTARGET} binutils-config -c) == ${CTARGET}-${PV} ]] ; then
+ binutils-config ${CTARGET}-${PV} || eerror binutils-config returned an error
+ 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-08-05 10:26 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2024-08-05 10:26 UTC (permalink / raw
To: gentoo-commits
commit: 24090417a43c4f63fc90babe49779153b15a491f
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Mon Aug 5 10:23:28 2024 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Mon Aug 5 10:25:53 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=24090417
sys-devel/binutils: keyword 2.43
No loong since a bugfix will be in the next patchset
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.43.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.43.ebuild b/sys-devel/binutils/binutils-2.43.ebuild
index c05f1529d8c1..a3e7c641ce6b 100644
--- a/sys-devel/binutils/binutils-2.43.ebuild
+++ b/sys-devel/binutils/binutils-2.43.ebuild
@@ -35,7 +35,7 @@ else
[[ -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"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-08-14 19:19 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-08-14 19:19 UTC (permalink / raw
To: gentoo-commits
commit: fd404eb5fc8a27cb470fcff563d2cb97af0a4566
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 14 19:18:43 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Aug 14 19:19:22 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fd404eb5
sys-devel/binutils: add github as backup patches repo
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-9999.ebuild | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 44bb4c8c3e76..c2e263b637e9 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -83,7 +83,10 @@ MY_BUILDDIR=${WORKDIR}/build
src_unpack() {
if [[ ${PV} == *9999 ]] ; then
- EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/toolchain/binutils-patches.git"
+ EGIT_REPO_URI="
+ https://anongit.gentoo.org/git/proj/toolchain/binutils-patches.git
+ https://github.com/gentoo/binutils-patches
+ "
EGIT_CHECKOUT_DIR=${WORKDIR}/patches-git
git-r3_src_unpack
mv patches-git/9999 patch || die
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-08-20 20:28 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2024-08-20 20:28 UTC (permalink / raw
To: gentoo-commits
commit: 7b419ca7ec1415c5ba0e48be6b80336ef03f2183
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 20 20:27:50 2024 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Tue Aug 20 20:28:33 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7b419ca7
sys-devel/binutils: add 2.43-r1 (patchlevel 2, identical to upstream 2.43.1)
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.43-r1.ebuild | 557 +++++++++++++++++++++++++++++
2 files changed, 558 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 776e8cf74bd6..f7eb20a2c600 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -22,4 +22,5 @@ DIST binutils-2.42-patches-3.tar.xz 34768 BLAKE2B e4bfaf3b42147408a8a3dcb00f5037
DIST binutils-2.42-patches-6.tar.xz 50664 BLAKE2B f13b65a761cfba80caf2e4740c6383b40305558365b950fba22aca95a104e799e8bd476082f36fb9288de4f224b09f317792c1444e549c40d15a4b64cdf61989 SHA512 1203eca0a9e622411eac377509de8fd0db3ffcb282ac38ab7a0369b166cc1091197daad85b51b145b34a4832f1a1a4d573c8254e8d67aeb22f35adb1ab3ece1f
DIST binutils-2.42.tar.xz 27567160 BLAKE2B e67a5c028fba70e70088fd11b38ec8c9c4ed5a019badefda25abeb6275997b16f0891e7ff3424c4b82bbfae92e8992669826920dd53df61cd48469d8f7cd5bd1 SHA512 155f3ba14cd220102f4f29a4f1e5cfee3c48aa03b74603460d05afb73c70d6657a9d87eee6eb88bf13203fe6f31177a5c9addc04384e956e7da8069c8ecd20a6
DIST binutils-2.43-patches-1.tar.xz 11644 BLAKE2B 578ee67c3c5e67f9191a31a5c83ffcc781f757f8aaee3eea14d052db427cdd2bc769977dba16e9a8c653dcc4a94f11c149898683945d5035d0beeac128045b1a SHA512 e6db4eaf4fbea366e607a7e9a56e20851fcc34664532fd6aa1f0818271c3e2687eada3daca482e211a2b3e36be85e7e0b23158caaa0fdf9785d13a9156e8c734
+DIST binutils-2.43-patches-2.tar.xz 35184 BLAKE2B fa35c9f182c7ae0fed28614f47618d1563a58f223fd1805f348b618c1fbf039a444e44d88f46d040b6971e481e0da882e5c4492fd167d17bf39579d87a446434 SHA512 a7e167d3f6a2c08f19af4685d90a6160a1a52f1a87f5660fb6d80ec664033829c0eacad0d77b1306620e50ff89d1f9f63a7c2b064ad9775400f0cb0eba3159a4
DIST binutils-2.43.tar.xz 28175768 BLAKE2B 28b0a04a28273b76eab2d00e00160be889f155f77f5a9d8759ef8dce505c97e97641bf7ec70b92b731b520570a02b06e04e8215b068fcb1bb2573e9ef24732d9 SHA512 93e063163e54d6a6ee2bd48dc754270bf757a3635b49a702ed6b310e929e94063958512d191e66beaf44275f7ea60865dbde138b624626739679fcc306b133bb
diff --git a/sys-devel/binutils/binutils-2.43-r1.ebuild b/sys-devel/binutils/binutils-2.43-r1.ebuild
new file mode 100644
index 000000000000..e09db32d1a07
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.43-r1.ebuild
@@ -0,0 +1,557 @@
+# Copyright 1999-2024 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 debuginfod doc gold gprofng hardened multitarget +nls pgo +plugins static-libs test vanilla zstd"
+
+# 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=2
+PATCH_DEV=dilfridge
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ SLOT=${PV}
+elif [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ SLOT=$(ver_cut 1-2)
+else
+ PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
+ PATCH_DEV=${PATCH_DEV:-dilfridge}
+ SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz https://sourceware.org/pub/binutils/releases/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 ~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
+ debuginfod? (
+ dev-libs/elfutils[debuginfod(-)]
+ )
+ zstd? ( app-arch/zstd:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ doc? ( sys-apps/texinfo )
+ pgo? (
+ dev-util/dejagnu
+ app-alternatives/bc
+ )
+ test? (
+ dev-util/dejagnu
+ app-alternatives/bc
+ )
+ nls? ( sys-devel/gettext )
+ zstd? ( virtual/pkgconfig )
+ app-alternatives/lex
+ app-alternatives/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
+
+ if [[ ${PV} != 9999 ]] ; then
+ EGIT_BRANCH=binutils-$(ver_cut 1)_$(ver_cut 2)-branch
+ fi
+ 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"
+ elif [[ ${PV} == *9999 ]] ; then
+ patchsetname="from git branch ${EGIT_BRANCH}"
+ 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."
+
+ # This is applied conditionally for now just out of caution.
+ # It should be okay on non-prefix systems though. See bug #892549.
+ if is_cross || use prefix; then
+ eapply "${FILESDIR}"/binutils-2.43-linker-search-path.patch \
+ "${FILESDIR}"/binutils-2.43-linker-prefix.patch
+ fi
+ 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
+
+ # 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 cet && filter-flags -mindirect-branch -mindirect-branch=*
+ 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 )
+ 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}
+ # portage's econf() does not detect presence of --d-d-t
+ # because it greps only top-level ./configure. But not
+ # libiberty's or bfd's configure.
+ --disable-dependency-tracking
+ --disable-silent-rules
+ --enable-obsolete
+ --enable-shared
+ --enable-threads
+ --enable-relro
+ --enable-install-libiberty
+ --enable-textrel-check=$(usex hardened error warning)
+ # Things to think about
+ #--enable-deterministic-archives
+ --enable-new-dtags
+ --disable-jansson
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ $(use_with zstd)
+
+ # Disable modules that are in a combined binutils/gdb tree, bug #490566
+ --disable-{gdb,gdbserver,libbacktrace,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)
+
+ $(use_with 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)
+ )
+
+ case ${CTARGET} in
+ x86_64-*|aarch64*|arm64*|i[3456]*)
+ # These hardening options are available from 2.39+ but
+ # they unconditionally enable the behaviour even on arches
+ # where e.g. execstacks can't be avoided.
+ # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
+ #
+ # TODO: Get the logic for this fixed upstream so it doesn't
+ # create impossible broken combinations on some arches, like mips.
+ #
+ # TODO: Get the logic for this fixed upstream so --disable-* works
+ # as expected.
+ myconf+=(
+ --enable-warn-execstack=yes
+ --enable-warn-rwx-segments=yes
+ )
+
+ if use hardened ; then
+ myconf+=(
+ # TOOD: breaks glibc test suite
+ #--enable-error-execstack=yes
+ #--enable-error-rwx-segments=yes
+ --enable-default-execstack=no
+ )
+ fi
+ ;;
+ *)
+ ;;
+ esac
+
+ if use elibc_musl ; then
+ # Override our earlier setting for musl, as textrels don't
+ # work there at all. See bug #707660.
+ myconf+=(
+ --enable-textrel-check=error
+ )
+ fi
+
+ if use test || { use pgo && tc-is-lto ; } ; then
+ # -Wa,* needs to be consistent everywhere or lto-wrapper will complain
+ filter-flags '-Wa,*'
+ fi
+
+ if ! is_cross ; then
+ myconf+=( $(use_enable pgo pgo-build $(tc-is-lto && echo "lto" || echo "yes")) )
+
+ if use pgo ; then
+ # We let configure handle it for us because it has to run
+ # the testsuite later on for profiling, and LTO isn't compatible
+ # with the testsuite.
+ filter-lto
+
+ export BUILD_CFLAGS="${CFLAGS}"
+ fi
+ fi
+
+ ECONF_SOURCE="${S}" econf "${myconf[@]}"
+
+ # 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]
+ # see linker prefix patch
+ emake \
+ tooldir="${EPREFIX}${TOOLPATH}" \
+ gentoo_prefix=$(usex prefix-guest "${EPREFIX}"/usr /usr) \
+ all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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
+
+ (
+ # Tests don't expect LTO
+ filter-lto
+
+ # lto-wrapper warnings which confuse tests
+ filter-flags '-Wa,*'
+
+ # bug #637066
+ filter-flags -Wall -Wreturn-type
+
+ emake -k check \
+ CFLAGS_FOR_TARGET="${CFLAGS_FOR_TARGET:-${CFLAGS}}" \
+ CXXFLAGS_FOR_TARGET="${CXXFLAGS_FOR_TARGET:-${CXXFLAGS}}" \
+ LDFLAGS_FOR_TARGET="${LDFLAGS_FOR_TARGET:-${LDFLAGS}}" \
+ CFLAGS="${CFLAGS}" \
+ CXXFLAGS="${CXXFLAGS}" \
+ LDFLAGS="${LDFLAGS}"
+ )
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}" || die
+
+ # see Note [tooldir hack for ldscripts]
+ emake 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}
+
+ docompress "${DATAPATH}"/{info,man}
+
+ # 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} || eerror binutils-config returned an error
+}
+
+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} || eerror binutils-config returned an error
+ else
+ binutils-config ${choice} || eerror binutils-config returned an error
+ fi
+ elif [[ $(CHOST=${CTARGET} binutils-config -c) == ${CTARGET}-${PV} ]] ; then
+ binutils-config ${CTARGET}-${PV} || eerror binutils-config returned an error
+ 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-08-22 20:23 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2024-08-22 20:23 UTC (permalink / raw
To: gentoo-commits
commit: 11308d0cd299e0af8f12f308fd139ce3e79bac6f
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 22 20:20:04 2024 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Thu Aug 22 20:23:21 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=11308d0c
sys-devel/binutils: keyword 2.43-r1
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.43-r1.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.43-r1.ebuild b/sys-devel/binutils/binutils-2.43-r1.ebuild
index e09db32d1a07..ef196ce06291 100644
--- a/sys-devel/binutils/binutils-2.43-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.43-r1.ebuild
@@ -35,7 +35,7 @@ else
[[ -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 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-10-03 8:06 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-10-03 8:06 UTC (permalink / raw
To: gentoo-commits
commit: 12b3e0bf6c8844daf132fbabc621cab0fbec0806
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 3 08:06:24 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Oct 3 08:06:24 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=12b3e0bf
sys-devel/binutils: Stabilize 2.42-r2 ppc64, #940684
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.42-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.42-r2.ebuild b/sys-devel/binutils/binutils-2.42-r2.ebuild
index 3f6aedfaf651..6039d1842d2e 100644
--- a/sys-devel/binutils/binutils-2.42-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.42-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-10-03 16:25 Arthur Zamarin
0 siblings, 0 replies; 477+ messages in thread
From: Arthur Zamarin @ 2024-10-03 16:25 UTC (permalink / raw
To: gentoo-commits
commit: a87d9df593f4725a5909a0fcbb7ac780f31ac3b6
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 3 16:25:05 2024 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Thu Oct 3 16:25:05 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a87d9df5
sys-devel/binutils: Stabilize 2.42-r2 amd64, #940684
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
sys-devel/binutils/binutils-2.42-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.42-r2.ebuild b/sys-devel/binutils/binutils-2.42-r2.ebuild
index 6039d1842d2e..eae2a3a0d3c6 100644
--- a/sys-devel/binutils/binutils-2.42-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.42-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-10-03 16:25 Arthur Zamarin
0 siblings, 0 replies; 477+ messages in thread
From: Arthur Zamarin @ 2024-10-03 16:25 UTC (permalink / raw
To: gentoo-commits
commit: 06bfaf45e1db4fc745376358430bf7a73271d091
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 3 16:25:32 2024 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Thu Oct 3 16:25:32 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=06bfaf45
sys-devel/binutils: Stabilize 2.42-r2 x86, #940684
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
sys-devel/binutils/binutils-2.42-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.42-r2.ebuild b/sys-devel/binutils/binutils-2.42-r2.ebuild
index eae2a3a0d3c6..94002f8e22bb 100644
--- a/sys-devel/binutils/binutils-2.42-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.42-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-10-03 16:25 Arthur Zamarin
0 siblings, 0 replies; 477+ messages in thread
From: Arthur Zamarin @ 2024-10-03 16:25 UTC (permalink / raw
To: gentoo-commits
commit: 5d594aeac6385c5459e7f36292a01ce7df5912db
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 3 16:25:36 2024 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Thu Oct 3 16:25:36 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5d594aea
sys-devel/binutils: Stabilize 2.42-r2 arm, #940684
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
sys-devel/binutils/binutils-2.42-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.42-r2.ebuild b/sys-devel/binutils/binutils-2.42-r2.ebuild
index 94002f8e22bb..81ffeb7f7140 100644
--- a/sys-devel/binutils/binutils-2.42-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.42-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86"
+ KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-10-03 16:25 Arthur Zamarin
0 siblings, 0 replies; 477+ messages in thread
From: Arthur Zamarin @ 2024-10-03 16:25 UTC (permalink / raw
To: gentoo-commits
commit: 6a761b7d60500f5f87390209f114889bee0238a9
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 3 16:25:39 2024 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Thu Oct 3 16:25:39 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6a761b7d
sys-devel/binutils: Stabilize 2.42-r2 arm64, #940684
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
sys-devel/binutils/binutils-2.42-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.42-r2.ebuild b/sys-devel/binutils/binutils-2.42-r2.ebuild
index 81ffeb7f7140..c01dbed96648 100644
--- a/sys-devel/binutils/binutils-2.42-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.42-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-10-03 16:25 Arthur Zamarin
0 siblings, 0 replies; 477+ messages in thread
From: Arthur Zamarin @ 2024-10-03 16:25 UTC (permalink / raw
To: gentoo-commits
commit: c5dc56c9c8617186abcf01bef61bb5f7aed02b8f
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 3 16:25:43 2024 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Thu Oct 3 16:25:43 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c5dc56c9
sys-devel/binutils: Stabilize 2.42-r2 ppc, #940684
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
sys-devel/binutils/binutils-2.42-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.42-r2.ebuild b/sys-devel/binutils/binutils-2.42-r2.ebuild
index c01dbed96648..14fb7491d92f 100644
--- a/sys-devel/binutils/binutils-2.42-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.42-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-10-03 21:29 Arsen Arsenović
0 siblings, 0 replies; 477+ messages in thread
From: Arsen Arsenović @ 2024-10-03 21:29 UTC (permalink / raw
To: gentoo-commits
commit: b73eb34d9ddc76d10368a9c639a613685cdcc62b
Author: Arsen Arsenović <arsen <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 3 21:27:21 2024 +0000
Commit: Arsen Arsenović <arsen <AT> gentoo <DOT> org>
CommitDate: Thu Oct 3 21:28:12 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b73eb34d
sys-devel/binutils: enable colored disassembly in live
... so that it becomes part of the next bump.
Signed-off-by: Arsen Arsenović <arsen <AT> gentoo.org>
sys-devel/binutils/binutils-2.43.9999.ebuild | 4 ++++
sys-devel/binutils/binutils-9999.ebuild | 4 ++++
2 files changed, 8 insertions(+)
diff --git a/sys-devel/binutils/binutils-2.43.9999.ebuild b/sys-devel/binutils/binutils-2.43.9999.ebuild
index 5255b28bb0fd..06e1d7caa397 100644
--- a/sys-devel/binutils/binutils-2.43.9999.ebuild
+++ b/sys-devel/binutils/binutils-2.43.9999.ebuild
@@ -292,6 +292,10 @@ src_configure() {
# - 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)
+
+ # Enables colored disassembly by default (equivalent to passing
+ # --disassembler-color=terminal to all objdump invocations).
+ --enable-colored-disassembly
)
case ${CTARGET} in
diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild
index 32ea17c9746b..1a0501350ebe 100644
--- a/sys-devel/binutils/binutils-9999.ebuild
+++ b/sys-devel/binutils/binutils-9999.ebuild
@@ -295,6 +295,10 @@ src_configure() {
# - 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)
+
+ # Enables colored disassembly by default (equivalent to passing
+ # --disassembler-color=terminal to all objdump invocations).
+ --enable-colored-disassembly
)
case ${CTARGET} in
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-10-15 10:16 Arthur Zamarin
0 siblings, 0 replies; 477+ messages in thread
From: Arthur Zamarin @ 2024-10-15 10:16 UTC (permalink / raw
To: gentoo-commits
commit: 6e05cead7f7e8db698c6dc8bed87e7d682464f50
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 15 10:15:50 2024 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Tue Oct 15 10:15:50 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6e05cead
sys-devel/binutils: Stabilize 2.42-r2 sparc, #940684
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
sys-devel/binutils/binutils-2.42-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.42-r2.ebuild b/sys-devel/binutils/binutils-2.42-r2.ebuild
index 14fb7491d92f..70ca55cc9f86 100644
--- a/sys-devel/binutils/binutils-2.42-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.42-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-11-02 2:39 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-11-02 2:39 UTC (permalink / raw
To: gentoo-commits
commit: e03d99a71a36c0ecbd8ffc44581804ac91ebc26b
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 2 02:38:21 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Nov 2 02:38:21 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e03d99a7
sys-devel/binutils: Stabilize 2.42-r2 hppa, #940684
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.42-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.42-r2.ebuild b/sys-devel/binutils/binutils-2.42-r2.ebuild
index 70ca55cc9f86..6e5766f0d3ba 100644
--- a/sys-devel/binutils/binutils-2.42-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.42-r2.ebuild
@@ -32,7 +32,7 @@ else
[[ -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 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-11-09 14:46 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2024-11-09 14:46 UTC (permalink / raw
To: gentoo-commits
commit: 8d71bbba81d22581f729053f9401494ce423d7c3
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 9 14:45:14 2024 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Nov 9 14:46:21 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8d71bbba
sys-devel/binutils: 2.43 revbump, patchlevel 3, no keywords
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 1 +
sys-devel/binutils/binutils-2.43-r2.ebuild | 557 +++++++++++++++++++++++++++++
2 files changed, 558 insertions(+)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index 2b273a025f92..b72d306765dc 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -21,4 +21,5 @@ DIST binutils-2.41.tar.xz 26765692 BLAKE2B 3bccec2b52f7e82a727121bf2a2e51a6249ba
DIST binutils-2.42-patches-6.tar.xz 50664 BLAKE2B f13b65a761cfba80caf2e4740c6383b40305558365b950fba22aca95a104e799e8bd476082f36fb9288de4f224b09f317792c1444e549c40d15a4b64cdf61989 SHA512 1203eca0a9e622411eac377509de8fd0db3ffcb282ac38ab7a0369b166cc1091197daad85b51b145b34a4832f1a1a4d573c8254e8d67aeb22f35adb1ab3ece1f
DIST binutils-2.42.tar.xz 27567160 BLAKE2B e67a5c028fba70e70088fd11b38ec8c9c4ed5a019badefda25abeb6275997b16f0891e7ff3424c4b82bbfae92e8992669826920dd53df61cd48469d8f7cd5bd1 SHA512 155f3ba14cd220102f4f29a4f1e5cfee3c48aa03b74603460d05afb73c70d6657a9d87eee6eb88bf13203fe6f31177a5c9addc04384e956e7da8069c8ecd20a6
DIST binutils-2.43-patches-2.tar.xz 35184 BLAKE2B fa35c9f182c7ae0fed28614f47618d1563a58f223fd1805f348b618c1fbf039a444e44d88f46d040b6971e481e0da882e5c4492fd167d17bf39579d87a446434 SHA512 a7e167d3f6a2c08f19af4685d90a6160a1a52f1a87f5660fb6d80ec664033829c0eacad0d77b1306620e50ff89d1f9f63a7c2b064ad9775400f0cb0eba3159a4
+DIST binutils-2.43-patches-3.tar.xz 62692 BLAKE2B a189a01a6a99c4fdff124cf90ecc18f874812c17fc735376c855469c487b6a71489ad5c2f86c518d2e029cc83d65757144ff9abddbe7ec3fc06e22f9501c62f4 SHA512 99a30e18fdfd7bdce85bb903f8d61837cfbb639ead8a680ff1a85ad1d615b658e696bdf196c4a002d029f952d34aa441e09e861b22f5400c65f07cce5934cd8f
DIST binutils-2.43.tar.xz 28175768 BLAKE2B 28b0a04a28273b76eab2d00e00160be889f155f77f5a9d8759ef8dce505c97e97641bf7ec70b92b731b520570a02b06e04e8215b068fcb1bb2573e9ef24732d9 SHA512 93e063163e54d6a6ee2bd48dc754270bf757a3635b49a702ed6b310e929e94063958512d191e66beaf44275f7ea60865dbde138b624626739679fcc306b133bb
diff --git a/sys-devel/binutils/binutils-2.43-r2.ebuild b/sys-devel/binutils/binutils-2.43-r2.ebuild
new file mode 100644
index 000000000000..2ba6a474e05a
--- /dev/null
+++ b/sys-devel/binutils/binutils-2.43-r2.ebuild
@@ -0,0 +1,557 @@
+# Copyright 1999-2024 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 debuginfod doc gold gprofng hardened multitarget +nls pgo +plugins static-libs test vanilla zstd"
+
+# 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=3
+PATCH_DEV=dilfridge
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ SLOT=${PV}
+elif [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ SLOT=$(ver_cut 1-2)
+else
+ PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
+ PATCH_DEV=${PATCH_DEV:-dilfridge}
+ SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz https://sourceware.org/pub/binutils/releases/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 ~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
+ debuginfod? (
+ dev-libs/elfutils[debuginfod(-)]
+ )
+ zstd? ( app-arch/zstd:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ doc? ( sys-apps/texinfo )
+ pgo? (
+ dev-util/dejagnu
+ app-alternatives/bc
+ )
+ test? (
+ dev-util/dejagnu
+ app-alternatives/bc
+ )
+ nls? ( sys-devel/gettext )
+ zstd? ( virtual/pkgconfig )
+ app-alternatives/lex
+ app-alternatives/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
+
+ if [[ ${PV} != 9999 ]] ; then
+ EGIT_BRANCH=binutils-$(ver_cut 1)_$(ver_cut 2)-branch
+ fi
+ 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"
+ elif [[ ${PV} == *9999 ]] ; then
+ patchsetname="from git branch ${EGIT_BRANCH}"
+ 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."
+
+ # This is applied conditionally for now just out of caution.
+ # It should be okay on non-prefix systems though. See bug #892549.
+ if is_cross || use prefix; then
+ eapply "${FILESDIR}"/binutils-2.43-linker-search-path.patch \
+ "${FILESDIR}"/binutils-2.43-linker-prefix.patch
+ fi
+ 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
+
+ # 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 cet && filter-flags -mindirect-branch -mindirect-branch=*
+ 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 )
+ 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}
+ # portage's econf() does not detect presence of --d-d-t
+ # because it greps only top-level ./configure. But not
+ # libiberty's or bfd's configure.
+ --disable-dependency-tracking
+ --disable-silent-rules
+ --enable-obsolete
+ --enable-shared
+ --enable-threads
+ --enable-relro
+ --enable-install-libiberty
+ --enable-textrel-check=$(usex hardened error warning)
+ # Things to think about
+ #--enable-deterministic-archives
+ --enable-new-dtags
+ --disable-jansson
+ --disable-werror
+ --with-bugurl="$(toolchain-binutils_bugurl)"
+ --with-pkgversion="$(toolchain-binutils_pkgversion)"
+ $(use_enable static-libs static)
+ $(use_with zstd)
+
+ # Disable modules that are in a combined binutils/gdb tree, bug #490566
+ --disable-{gdb,gdbserver,libbacktrace,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)
+
+ $(use_with 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)
+ )
+
+ case ${CTARGET} in
+ x86_64-*|aarch64*|arm64*|i[3456]*)
+ # These hardening options are available from 2.39+ but
+ # they unconditionally enable the behaviour even on arches
+ # where e.g. execstacks can't be avoided.
+ # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
+ #
+ # TODO: Get the logic for this fixed upstream so it doesn't
+ # create impossible broken combinations on some arches, like mips.
+ #
+ # TODO: Get the logic for this fixed upstream so --disable-* works
+ # as expected.
+ myconf+=(
+ --enable-warn-execstack=yes
+ --enable-warn-rwx-segments=yes
+ )
+
+ if use hardened ; then
+ myconf+=(
+ # TOOD: breaks glibc test suite
+ #--enable-error-execstack=yes
+ #--enable-error-rwx-segments=yes
+ --enable-default-execstack=no
+ )
+ fi
+ ;;
+ *)
+ ;;
+ esac
+
+ if use elibc_musl ; then
+ # Override our earlier setting for musl, as textrels don't
+ # work there at all. See bug #707660.
+ myconf+=(
+ --enable-textrel-check=error
+ )
+ fi
+
+ if use test || { use pgo && tc-is-lto ; } ; then
+ # -Wa,* needs to be consistent everywhere or lto-wrapper will complain
+ filter-flags '-Wa,*'
+ fi
+
+ if ! is_cross ; then
+ myconf+=( $(use_enable pgo pgo-build $(tc-is-lto && echo "lto" || echo "yes")) )
+
+ if use pgo ; then
+ # We let configure handle it for us because it has to run
+ # the testsuite later on for profiling, and LTO isn't compatible
+ # with the testsuite.
+ filter-lto
+
+ export BUILD_CFLAGS="${CFLAGS}"
+ fi
+ fi
+
+ ECONF_SOURCE="${S}" econf "${myconf[@]}"
+
+ # 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]
+ # see linker prefix patch
+ emake \
+ tooldir="${EPREFIX}${TOOLPATH}" \
+ gentoo_prefix=$(usex prefix-guest "${EPREFIX}"/usr /usr) \
+ all
+
+ # only build info pages if the user wants them
+ if use doc ; then
+ emake 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
+
+ (
+ # Tests don't expect LTO
+ filter-lto
+
+ # lto-wrapper warnings which confuse tests
+ filter-flags '-Wa,*'
+
+ # bug #637066
+ filter-flags -Wall -Wreturn-type
+
+ emake -k check \
+ CFLAGS_FOR_TARGET="${CFLAGS_FOR_TARGET:-${CFLAGS}}" \
+ CXXFLAGS_FOR_TARGET="${CXXFLAGS_FOR_TARGET:-${CXXFLAGS}}" \
+ LDFLAGS_FOR_TARGET="${LDFLAGS_FOR_TARGET:-${LDFLAGS}}" \
+ CFLAGS="${CFLAGS}" \
+ CXXFLAGS="${CXXFLAGS}" \
+ LDFLAGS="${LDFLAGS}"
+ )
+}
+
+src_install() {
+ local x d
+
+ cd "${MY_BUILDDIR}" || die
+
+ # see Note [tooldir hack for ldscripts]
+ emake 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}
+
+ docompress "${DATAPATH}"/{info,man}
+
+ # 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} || eerror binutils-config returned an error
+}
+
+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} || eerror binutils-config returned an error
+ else
+ binutils-config ${choice} || eerror binutils-config returned an error
+ fi
+ elif [[ $(CHOST=${CTARGET} binutils-config -c) == ${CTARGET}-${PV} ]] ; then
+ binutils-config ${CTARGET}-${PV} || eerror binutils-config returned an error
+ 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-11-09 14:46 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2024-11-09 14:46 UTC (permalink / raw
To: gentoo-commits
commit: 15a027ca756a5e95ee501c80e4f85aab1eeb7b58
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 9 14:38:14 2024 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Nov 9 14:46:17 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=15a027ca
sys-devel/binutils: drop 2.42-r1, 2.43
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/Manifest | 2 -
sys-devel/binutils/binutils-2.42-r1.ebuild | 555 ----------------------------
sys-devel/binutils/binutils-2.43.ebuild | 557 -----------------------------
3 files changed, 1114 deletions(-)
diff --git a/sys-devel/binutils/Manifest b/sys-devel/binutils/Manifest
index f7eb20a2c600..2b273a025f92 100644
--- a/sys-devel/binutils/Manifest
+++ b/sys-devel/binutils/Manifest
@@ -18,9 +18,7 @@ DIST binutils-2.40-patches-7.tar.xz 299188 BLAKE2B 170cd2432e0458889b240c3603461
DIST binutils-2.40.tar.xz 25241484 BLAKE2B 8d799f7c595f878b9af5b17a490021dd8b8300ac2fe0ed8574c012929d22d2d0493e003a3e631a9436e8e712da801779b777c566167fe42b0bde119ffa5ad1c2 SHA512 a37e042523bc46494d99d5637c3f3d8f9956d9477b748b3b1f6d7dfbb8d968ed52c932e88a4e946c6f77b8f48f1e1b360ca54c3d298f17193f3b4963472f6925
DIST binutils-2.41-patches-5.tar.xz 95176 BLAKE2B bbc94b3c7d70653a1056afe57a120b6eac9f0c8f51f05e95a1b5f80f2b7ef35e6355d740b49bc1ec2f3a13a838d5210ff4a205aa2bde5a72bc55c12100bce726 SHA512 ad293f97116f71322993f381c1af69fad1719a159f127ff16ddeca62f9b9b62aaf141abfa661985a61e9be7ae0639772148e69293a97364eebbf49182babb691
DIST binutils-2.41.tar.xz 26765692 BLAKE2B 3bccec2b52f7e82a727121bf2a2e51a6249ba63dcd74c665fd834e858645c912ffd8245d848435288b938852830b482905606f55c40df4061215fd75c52ffc75 SHA512 5df45d0bd6ddabdce4f35878c041e46a92deef01e7dea5facc97fd65cc06b59abc6fba0eb454b68e571c7e14038dc823fe7f2263843e6e627b7444eaf0fe9374
-DIST binutils-2.42-patches-3.tar.xz 34768 BLAKE2B e4bfaf3b42147408a8a3dcb00f50378a6b49aef8e939731a92598680cfbf42dfdf842c3f5bf3458867f79c534eb92385bc64f34f7b1d6462ec4182b5f424fbe5 SHA512 3d75e0684bbfa2cc3fc6dfcb5488ac571db58f1a5833fcc754f231664137001ccb0f2ec750947b8021fa12daf614eb2cd21b598bd962d71a34bb8ea38805850d
DIST binutils-2.42-patches-6.tar.xz 50664 BLAKE2B f13b65a761cfba80caf2e4740c6383b40305558365b950fba22aca95a104e799e8bd476082f36fb9288de4f224b09f317792c1444e549c40d15a4b64cdf61989 SHA512 1203eca0a9e622411eac377509de8fd0db3ffcb282ac38ab7a0369b166cc1091197daad85b51b145b34a4832f1a1a4d573c8254e8d67aeb22f35adb1ab3ece1f
DIST binutils-2.42.tar.xz 27567160 BLAKE2B e67a5c028fba70e70088fd11b38ec8c9c4ed5a019badefda25abeb6275997b16f0891e7ff3424c4b82bbfae92e8992669826920dd53df61cd48469d8f7cd5bd1 SHA512 155f3ba14cd220102f4f29a4f1e5cfee3c48aa03b74603460d05afb73c70d6657a9d87eee6eb88bf13203fe6f31177a5c9addc04384e956e7da8069c8ecd20a6
-DIST binutils-2.43-patches-1.tar.xz 11644 BLAKE2B 578ee67c3c5e67f9191a31a5c83ffcc781f757f8aaee3eea14d052db427cdd2bc769977dba16e9a8c653dcc4a94f11c149898683945d5035d0beeac128045b1a SHA512 e6db4eaf4fbea366e607a7e9a56e20851fcc34664532fd6aa1f0818271c3e2687eada3daca482e211a2b3e36be85e7e0b23158caaa0fdf9785d13a9156e8c734
DIST binutils-2.43-patches-2.tar.xz 35184 BLAKE2B fa35c9f182c7ae0fed28614f47618d1563a58f223fd1805f348b618c1fbf039a444e44d88f46d040b6971e481e0da882e5c4492fd167d17bf39579d87a446434 SHA512 a7e167d3f6a2c08f19af4685d90a6160a1a52f1a87f5660fb6d80ec664033829c0eacad0d77b1306620e50ff89d1f9f63a7c2b064ad9775400f0cb0eba3159a4
DIST binutils-2.43.tar.xz 28175768 BLAKE2B 28b0a04a28273b76eab2d00e00160be889f155f77f5a9d8759ef8dce505c97e97641bf7ec70b92b731b520570a02b06e04e8215b068fcb1bb2573e9ef24732d9 SHA512 93e063163e54d6a6ee2bd48dc754270bf757a3635b49a702ed6b310e929e94063958512d191e66beaf44275f7ea60865dbde138b624626739679fcc306b133bb
diff --git a/sys-devel/binutils/binutils-2.42-r1.ebuild b/sys-devel/binutils/binutils-2.42-r1.ebuild
deleted file mode 100644
index 1f784c1459a6..000000000000
--- a/sys-devel/binutils/binutils-2.42-r1.ebuild
+++ /dev/null
@@ -1,555 +0,0 @@
-# Copyright 1999-2024 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 debuginfod doc gold gprofng hardened multitarget +nls pgo +plugins static-libs test vanilla zstd"
-
-# 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=3
-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://sourceware.org/pub/binutils/releases/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 ~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
- debuginfod? (
- dev-libs/elfutils[debuginfod(-)]
- )
- zstd? ( app-arch/zstd:= )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- doc? ( sys-apps/texinfo )
- pgo? (
- dev-util/dejagnu
- app-alternatives/bc
- )
- test? (
- dev-util/dejagnu
- app-alternatives/bc
- )
- nls? ( sys-devel/gettext )
- zstd? ( virtual/pkgconfig )
- app-alternatives/lex
- app-alternatives/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."
-
- # This is applied conditionally for now just out of caution.
- # It should be okay on non-prefix systems though. See bug #892549.
- if is_cross || use prefix; then
- eapply "${FILESDIR}"/binutils-2.40-linker-search-path.patch \
- "${FILESDIR}"/binutils-2.41-linker-prefix.patch
- fi
- 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
-
- # 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 cet && filter-flags -mindirect-branch -mindirect-branch=*
- use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
-
- append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
-
- 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 )
- 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}
- # portage's econf() does not detect presence of --d-d-t
- # because it greps only top-level ./configure. But not
- # libiberty's or bfd's configure.
- --disable-dependency-tracking
- --disable-silent-rules
- --enable-obsolete
- --enable-shared
- --enable-threads
- --enable-relro
- --enable-install-libiberty
- --enable-textrel-check=$(usex hardened error warning)
- # Things to think about
- #--enable-deterministic-archives
- --enable-new-dtags
- --disable-jansson
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- $(use_with zstd)
-
- # Disable modules that are in a combined binutils/gdb tree, bug #490566
- --disable-{gdb,gdbserver,libbacktrace,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)
-
- $(use_with 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)
- )
-
- case ${CTARGET} in
- x86_64-*|aarch64*|arm64*|i[3456]*)
- # These hardening options are available from 2.39+ but
- # they unconditionally enable the behaviour even on arches
- # where e.g. execstacks can't be avoided.
- # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
- #
- # TODO: Get the logic for this fixed upstream so it doesn't
- # create impossible broken combinations on some arches, like mips.
- #
- # TODO: Get the logic for this fixed upstream so --disable-* works
- # as expected.
- myconf+=(
- --enable-warn-execstack=yes
- --enable-warn-rwx-segments=yes
- )
-
- if use hardened ; then
- myconf+=(
- # TOOD: breaks glibc test suite
- #--enable-error-execstack=yes
- #--enable-error-rwx-segments=yes
- --enable-default-execstack=no
- )
- fi
- ;;
- *)
- ;;
- esac
-
- if use elibc_musl ; then
- # Override our earlier setting for musl, as textrels don't
- # work there at all. See bug #707660.
- myconf+=(
- --enable-textrel-check=error
- )
- fi
-
- if use test || { use pgo && tc-is-lto ; } ; then
- # -Wa,* needs to be consistent everywhere or lto-wrapper will complain
- filter-flags '-Wa,*'
- fi
-
- if ! is_cross ; then
- myconf+=( $(use_enable pgo pgo-build $(tc-is-lto && echo "lto" || echo "yes")) )
-
- if use pgo ; then
- # We let configure handle it for us because it has to run
- # the testsuite later on for profiling, and LTO isn't compatible
- # with the testsuite.
- filter-lto
-
- export BUILD_CFLAGS="${CFLAGS}"
- fi
- fi
-
- ECONF_SOURCE="${S}" econf "${myconf[@]}"
-
- # 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]
- # see linker prefix patch
- emake \
- tooldir="${EPREFIX}${TOOLPATH}" \
- gentoo_prefix=$(usex prefix-guest "${EPREFIX}"/usr /usr) \
- all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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
-
- # https://sourceware.org/PR31327
- local -x XZ_OPT="-T1"
- local -x XZ_DEFAULTS="-T1"
-
- (
- # Tests don't expect LTO
- filter-lto
-
- # lto-wrapper warnings which confuse tests
- filter-flags '-Wa,*'
-
- # bug #637066
- filter-flags -Wall -Wreturn-type
-
- emake -k check \
- CFLAGS_FOR_TARGET="${CFLAGS_FOR_TARGET:-${CFLAGS}}" \
- CXXFLAGS_FOR_TARGET="${CXXFLAGS_FOR_TARGET:-${CXXFLAGS}}" \
- LDFLAGS_FOR_TARGET="${LDFLAGS_FOR_TARGET:-${LDFLAGS}}" \
- CFLAGS="${CFLAGS}" \
- CXXFLAGS="${CXXFLAGS}" \
- LDFLAGS="${LDFLAGS}"
- )
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}" || die
-
- # see Note [tooldir hack for ldscripts]
- emake 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}
-
- docompress "${DATAPATH}"/{info,man}
-
- # 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.43.ebuild b/sys-devel/binutils/binutils-2.43.ebuild
deleted file mode 100644
index c5fc0b22c353..000000000000
--- a/sys-devel/binutils/binutils-2.43.ebuild
+++ /dev/null
@@ -1,557 +0,0 @@
-# Copyright 1999-2024 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 debuginfod doc gold gprofng hardened multitarget +nls pgo +plugins static-libs test vanilla zstd"
-
-# 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=1
-PATCH_DEV=dilfridge
-
-if [[ ${PV} == 9999 ]]; then
- inherit git-r3
- SLOT=${PV}
-elif [[ ${PV} == *9999 ]]; then
- inherit git-r3
- SLOT=$(ver_cut 1-2)
-else
- PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
- PATCH_DEV=${PATCH_DEV:-dilfridge}
- SRC_URI="mirror://gnu/binutils/binutils-${PV}.tar.xz https://sourceware.org/pub/binutils/releases/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 ~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
- debuginfod? (
- dev-libs/elfutils[debuginfod(-)]
- )
- zstd? ( app-arch/zstd:= )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- doc? ( sys-apps/texinfo )
- pgo? (
- dev-util/dejagnu
- app-alternatives/bc
- )
- test? (
- dev-util/dejagnu
- app-alternatives/bc
- )
- nls? ( sys-devel/gettext )
- zstd? ( virtual/pkgconfig )
- app-alternatives/lex
- app-alternatives/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
-
- if [[ ${PV} != 9999 ]] ; then
- EGIT_BRANCH=binutils-$(ver_cut 1)_$(ver_cut 2)-branch
- fi
- 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"
- elif [[ ${PV} == *9999 ]] ; then
- patchsetname="from git branch ${EGIT_BRANCH}"
- 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."
-
- # This is applied conditionally for now just out of caution.
- # It should be okay on non-prefix systems though. See bug #892549.
- if is_cross || use prefix; then
- eapply "${FILESDIR}"/binutils-2.43-linker-search-path.patch \
- "${FILESDIR}"/binutils-2.43-linker-prefix.patch
- fi
- 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
-
- # 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 cet && filter-flags -mindirect-branch -mindirect-branch=*
- 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 )
- 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}
- # portage's econf() does not detect presence of --d-d-t
- # because it greps only top-level ./configure. But not
- # libiberty's or bfd's configure.
- --disable-dependency-tracking
- --disable-silent-rules
- --enable-obsolete
- --enable-shared
- --enable-threads
- --enable-relro
- --enable-install-libiberty
- --enable-textrel-check=$(usex hardened error warning)
- # Things to think about
- #--enable-deterministic-archives
- --enable-new-dtags
- --disable-jansson
- --disable-werror
- --with-bugurl="$(toolchain-binutils_bugurl)"
- --with-pkgversion="$(toolchain-binutils_pkgversion)"
- $(use_enable static-libs static)
- $(use_with zstd)
-
- # Disable modules that are in a combined binutils/gdb tree, bug #490566
- --disable-{gdb,gdbserver,libbacktrace,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)
-
- $(use_with 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)
- )
-
- case ${CTARGET} in
- x86_64-*|aarch64*|arm64*|i[3456]*)
- # These hardening options are available from 2.39+ but
- # they unconditionally enable the behaviour even on arches
- # where e.g. execstacks can't be avoided.
- # See https://sourceware.org/bugzilla/show_bug.cgi?id=29592.
- #
- # TODO: Get the logic for this fixed upstream so it doesn't
- # create impossible broken combinations on some arches, like mips.
- #
- # TODO: Get the logic for this fixed upstream so --disable-* works
- # as expected.
- myconf+=(
- --enable-warn-execstack=yes
- --enable-warn-rwx-segments=yes
- )
-
- if use hardened ; then
- myconf+=(
- # TOOD: breaks glibc test suite
- #--enable-error-execstack=yes
- #--enable-error-rwx-segments=yes
- --enable-default-execstack=no
- )
- fi
- ;;
- *)
- ;;
- esac
-
- if use elibc_musl ; then
- # Override our earlier setting for musl, as textrels don't
- # work there at all. See bug #707660.
- myconf+=(
- --enable-textrel-check=error
- )
- fi
-
- if use test || { use pgo && tc-is-lto ; } ; then
- # -Wa,* needs to be consistent everywhere or lto-wrapper will complain
- filter-flags '-Wa,*'
- fi
-
- if ! is_cross ; then
- myconf+=( $(use_enable pgo pgo-build $(tc-is-lto && echo "lto" || echo "yes")) )
-
- if use pgo ; then
- # We let configure handle it for us because it has to run
- # the testsuite later on for profiling, and LTO isn't compatible
- # with the testsuite.
- filter-lto
-
- export BUILD_CFLAGS="${CFLAGS}"
- fi
- fi
-
- ECONF_SOURCE="${S}" econf "${myconf[@]}"
-
- # 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]
- # see linker prefix patch
- emake \
- tooldir="${EPREFIX}${TOOLPATH}" \
- gentoo_prefix=$(usex prefix-guest "${EPREFIX}"/usr /usr) \
- all
-
- # only build info pages if the user wants them
- if use doc ; then
- emake 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
-
- (
- # Tests don't expect LTO
- filter-lto
-
- # lto-wrapper warnings which confuse tests
- filter-flags '-Wa,*'
-
- # bug #637066
- filter-flags -Wall -Wreturn-type
-
- emake -k check \
- CFLAGS_FOR_TARGET="${CFLAGS_FOR_TARGET:-${CFLAGS}}" \
- CXXFLAGS_FOR_TARGET="${CXXFLAGS_FOR_TARGET:-${CXXFLAGS}}" \
- LDFLAGS_FOR_TARGET="${LDFLAGS_FOR_TARGET:-${LDFLAGS}}" \
- CFLAGS="${CFLAGS}" \
- CXXFLAGS="${CXXFLAGS}" \
- LDFLAGS="${LDFLAGS}"
- )
-}
-
-src_install() {
- local x d
-
- cd "${MY_BUILDDIR}" || die
-
- # see Note [tooldir hack for ldscripts]
- emake 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}
-
- docompress "${DATAPATH}"/{info,man}
-
- # 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} || eerror binutils-config returned an error
-}
-
-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} || eerror binutils-config returned an error
- else
- binutils-config ${choice} || eerror binutils-config returned an error
- fi
- elif [[ $(CHOST=${CTARGET} binutils-config -c) == ${CTARGET}-${PV} ]] ; then
- binutils-config ${CTARGET}-${PV} || eerror binutils-config returned an error
- 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}
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-11-09 17:35 Andreas K. Hüttel
0 siblings, 0 replies; 477+ messages in thread
From: Andreas K. Hüttel @ 2024-11-09 17:35 UTC (permalink / raw
To: gentoo-commits
commit: 6970bd65c3aa1c1728b2d663e5be25cfd3603cd2
Author: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 9 17:27:47 2024 +0000
Commit: Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Nov 9 17:34:35 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6970bd65
sys-devel/binutils: keyword 2.43-r2
Patchset changelog 2.43-2..2.43-3
5f5582fdd8e (HEAD -> gentoo/binutils-2.43, tag: gentoo/binutils-2.43-3, gentoo/gentoo/binutils-2.43) PR32300, --dependency-file: link dependencies are not all collected
8d1feccbd02 s390: Add arch15 instructions
e9b2ef88641 s390: Relax risbg[n]z, risb{h|l}gz, {rns|ros|rxs}bgt operand constraints
b4bc39ba1ec s390: Simplify (dis)assembly of insn operands with const bits
4c260fc560d s390: Align opcodes to lower-case
560853b7fef s390: Document syntax to omit base register operand
5e95b40b391 LoongArch: Add elfNN_loongarch_mkobject to initialize LoongArch tdata
2d1eeebfa71 segv in bfd_elf_get_str_section
ef7a608ad87 ld: Don't explicitly add .note.gnu.build-id in elf.sc
5e716509f11 x86: Turn PLT32 to PC32 only for PC-relative relocations
eb6504961a5 x86-64: Disable PIE on PR gas/32189 test
787143a1530 x86-64: Never make R_X86_64_GOT64 section relative
643a63ad01d x86/APX: Don't promote AVX/AVX2 instructions out of APX spec
ac806fe60ea bfd: Pass true to ld_plugin_object_p
b880fc9bfc9 PR32109, aborting at bfd/bfd.c:1236 in int _bfd_doprnt
248d2ca5eab lto: Add a test for PR ld/32083
f75e046d8c3 ld: Add an LTO test for common symbol override
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
sys-devel/binutils/binutils-2.43-r2.ebuild | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sys-devel/binutils/binutils-2.43-r2.ebuild b/sys-devel/binutils/binutils-2.43-r2.ebuild
index 2ba6a474e05a..3a2ace907f82 100644
--- a/sys-devel/binutils/binutils-2.43-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.43-r2.ebuild
@@ -35,7 +35,7 @@ else
[[ -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 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
#
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-11-10 9:44 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-11-10 9:44 UTC (permalink / raw
To: gentoo-commits
commit: 72ef5d93a19e1e0bafa467a5bc086043ea1615f2
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 10 09:44:02 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Nov 10 09:44:02 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=72ef5d93
sys-devel/binutils: fix cross patch for 2.43-r2
0037-PR32300-dependency-file-link-dependencies-are-not-al.patch conflicts
with binutils-2.43-linker-search-path.patch but we can go back to the
one before from 2.42 given that 0037 is a revert.
Closes: https://bugs.gentoo.org/943162
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.43-r2.ebuild | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/sys-devel/binutils/binutils-2.43-r2.ebuild b/sys-devel/binutils/binutils-2.43-r2.ebuild
index 3a2ace907f82..18d5aa85e3df 100644
--- a/sys-devel/binutils/binutils-2.43-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.43-r2.ebuild
@@ -131,8 +131,8 @@ src_prepare() {
# This is applied conditionally for now just out of caution.
# It should be okay on non-prefix systems though. See bug #892549.
if is_cross || use prefix; then
- eapply "${FILESDIR}"/binutils-2.43-linker-search-path.patch \
- "${FILESDIR}"/binutils-2.43-linker-prefix.patch
+ eapply "${FILESDIR}"/binutils-2.40-linker-search-path.patch \
+ "${FILESDIR}"/binutils-2.41-linker-prefix.patch
fi
fi
fi
^ permalink raw reply related [flat|nested] 477+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/
@ 2024-11-16 7:26 Sam James
0 siblings, 0 replies; 477+ messages in thread
From: Sam James @ 2024-11-16 7:26 UTC (permalink / raw
To: gentoo-commits
commit: b38f3cada5bf53a1c255fe6f700455884a09fa78
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 16 07:24:22 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Nov 16 07:25:34 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b38f3cad
sys-devel/binutils: build with -std=gnu17
Doesn't build with gnu23 which is the default now in GCC trunk. I've
sent patches for 9999 and we may backport those once merged but for now
(and for older slots, probably forever), let's pass -std=gnu17 to keep
stuff building.
Bug: https://sourceware.org/PR32372
Signed-off-by: Sam James <sam <AT> gentoo.org>
sys-devel/binutils/binutils-2.32-r2.ebuild | 2 ++
sys-devel/binutils/binutils-2.33.1-r1.ebuild | 2 ++
sys-devel/binutils/binutils-2.34-r2.ebuild | 2 ++
sys-devel/binutils/binutils-2.35.2.ebuild | 2 ++
sys-devel/binutils/binutils-2.36.1-r2.ebuild | 2 ++
sys-devel/binutils/binutils-2.37_p1-r2.ebuild | 2 ++
sys-devel/binutils/binutils-2.38-r2.ebuild | 2 ++
sys-devel/binutils/binutils-2.39-r5.ebuild | 2 ++
sys-devel/binutils/binutils-2.40-r9.ebuild | 2 ++
sys-devel/binutils/binutils-2.41-r5.ebuild | 2 ++
sys-devel/binutils/binutils-2.42-r2.ebuild | 2 ++
sys-devel/binutils/binutils-2.43-r1.ebuild | 3 +++
sys-devel/binutils/binutils-2.43-r2.ebuild | 3 +++
sys-devel/binutils/binutils-2.43.9999.ebuild | 3 +++
14 files changed, 31 insertions(+)
diff --git a/sys-devel/binutils/binutils-2.32-r2.ebuild b/sys-devel/binutils/binutils-2.32-r2.ebuild
index 3b4528435b01..30df41aa33d2 100644
--- a/sys-devel/binutils/binutils-2.32-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.32-r2.ebuild
@@ -151,6 +151,8 @@ src_configure() {
# Keep things sane
strip-flags
+ # https://sourceware.org/PR32372
+ append-cflags -std=gnu17
append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
local x
diff --git a/sys-devel/binutils/binutils-2.33.1-r1.ebuild b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
index 573a527570c2..245e22ea0452 100644
--- a/sys-devel/binutils/binutils-2.33.1-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.33.1-r1.ebuild
@@ -144,6 +144,8 @@ src_configure() {
# Keep things sane
strip-flags
+ # https://sourceware.org/PR32372
+ append-cflags -std=gnu17
append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
local x
diff --git a/sys-devel/binutils/binutils-2.34-r2.ebuild b/sys-devel/binutils/binutils-2.34-r2.ebuild
index 48ce464c3296..12198ae2a210 100644
--- a/sys-devel/binutils/binutils-2.34-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.34-r2.ebuild
@@ -141,6 +141,8 @@ src_configure() {
# Keep things sane
strip-flags
+ # https://sourceware.org/PR32372
+ append-cflags -std=gnu17
append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
local x
diff --git a/sys-devel/binutils/binutils-2.35.2.ebuild b/sys-devel/binutils/binutils-2.35.2.ebuild
index ffef3022e99f..6f2986251b95 100644
--- a/sys-devel/binutils/binutils-2.35.2.ebuild
+++ b/sys-devel/binutils/binutils-2.35.2.ebuild
@@ -158,6 +158,8 @@ src_configure() {
# Keep things sane
strip-flags
+ # https://sourceware.org/PR32372
+ append-cflags -std=gnu17
append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
local x
diff --git a/sys-devel/binutils/binutils-2.36.1-r2.ebuild b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
index 16544c47a238..2ff454f94f42 100644
--- a/sys-devel/binutils/binutils-2.36.1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.36.1-r2.ebuild
@@ -153,6 +153,8 @@ src_configure() {
# Keep things sane
strip-flags
+ # https://sourceware.org/PR32372
+ append-cflags -std=gnu17
append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
local x
diff --git a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
index 884eaa5ad132..e2f0c616eb13 100644
--- a/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.37_p1-r2.ebuild
@@ -159,6 +159,8 @@ src_configure() {
# Keep things sane
strip-flags
+ # https://sourceware.org/PR32372
+ append-cflags -std=gnu17
append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
diff --git a/sys-devel/binutils/binutils-2.38-r2.ebuild b/sys-devel/binutils/binutils-2.38-r2.ebuild
index 7b86a922666e..d3b1576fffa2 100644
--- a/sys-devel/binutils/binutils-2.38-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.38-r2.ebuild
@@ -164,6 +164,8 @@ src_configure() {
# Keep things sane
strip-flags
+ # https://sourceware.org/PR32372
+ append-cflags -std=gnu17
append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
diff --git a/sys-devel/binutils/binutils-2.39-r5.ebuild b/sys-devel/binutils/binutils-2.39-r5.ebuild
index 25b4c34511a8..dae998b28acb 100644
--- a/sys-devel/binutils/binutils-2.39-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.39-r5.ebuild
@@ -160,6 +160,8 @@ src_configure() {
# Keep things sane
strip-flags
+ # https://sourceware.org/PR32372
+ append-cflags -std=gnu17
append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
diff --git a/sys-devel/binutils/binutils-2.40-r9.ebuild b/sys-devel/binutils/binutils-2.40-r9.ebuild
index 3157e859ad3b..a619b246dff5 100644
--- a/sys-devel/binutils/binutils-2.40-r9.ebuild
+++ b/sys-devel/binutils/binutils-2.40-r9.ebuild
@@ -172,6 +172,8 @@ src_configure() {
use cet && filter-flags -mindirect-branch -mindirect-branch=*
use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
+ # https://sourceware.org/PR32372
+ append-cflags -std=gnu17
append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
local x
diff --git a/sys-devel/binutils/binutils-2.41-r5.ebuild b/sys-devel/binutils/binutils-2.41-r5.ebuild
index 93bf607238ea..fe1544cdd346 100644
--- a/sys-devel/binutils/binutils-2.41-r5.ebuild
+++ b/sys-devel/binutils/binutils-2.41-r5.ebuild
@@ -173,6 +173,8 @@ src_configure() {
use cet && filter-flags -mindirect-branch -mindirect-branch=*
use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
+ # https://sourceware.org/PR32372
+ append-cflags -std=gnu17
append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
local x
diff --git a/sys-devel/binutils/binutils-2.42-r2.ebuild b/sys-devel/binutils/binutils-2.42-r2.ebuild
index 6e5766f0d3ba..8c77bded00d0 100644
--- a/sys-devel/binutils/binutils-2.42-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.42-r2.ebuild
@@ -177,6 +177,8 @@ src_configure() {
use cet && filter-flags -mindirect-branch -mindirect-branch=*
use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
+ # https://sourceware.org/PR32372
+ append-cflags -std=gnu17
append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
local x
diff --git a/sys-devel/binutils/binutils-2.43-r1.ebuild b/sys-devel/binutils/binutils-2.43-r1.ebuild
index d55fbb138802..c632b993e7ff 100644
--- a/sys-devel/binutils/binutils-2.43-r1.ebuild
+++ b/sys-devel/binutils/binutils-2.43-r1.ebuild
@@ -185,6 +185,9 @@ src_configure() {
use cet && filter-flags -mindirect-branch -mindirect-branch=*
use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
+ # https://sourceware.org/PR32372
+ append-cflags -std=gnu17
+
local x
echo
for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
diff --git a/sys-devel/binutils/binutils-2.43-r2.ebuild b/sys-devel/binutils/binutils-2.43-r2.ebuild
index 18d5aa85e3df..9224db9d995c 100644
--- a/sys-devel/binutils/binutils-2.43-r2.ebuild
+++ b/sys-devel/binutils/binutils-2.43-r2.ebuild
@@ -185,6 +185,9 @@ src_configure() {
use cet && filter-flags -mindirect-branch -mindirect-branch=*
use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
+ # https://sourceware.org/PR32372
+ append-cflags -std=gnu17
+
local x
echo
for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
diff --git a/sys-devel/binutils/binutils-2.43.9999.ebuild b/sys-devel/binutils/binutils-2.43.9999.ebuild
index 06e1d7caa397..7a666a60c369 100644
--- a/sys-devel/binutils/binutils-2.43.9999.ebuild
+++ b/sys-devel/binutils/binutils-2.43.9999.ebuild
@@ -185,6 +185,9 @@ src_configure() {
use cet && filter-flags -mindirect-branch -mindirect-branch=*
use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
+ # https://sourceware.org/PR32372
+ append-cflags -std=gnu17
+
local x
echo
for x in CATEGORY CBUILD CHOST CTARGET CFLAGS LDFLAGS ; do
^ permalink raw reply related [flat|nested] 477+ messages in thread
end of thread, other threads:[~2024-11-16 7:26 UTC | newest]
Thread overview: 477+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-11-20 15:18 [gentoo-commits] repo/gentoo:master commit in: sys-devel/binutils/ Manuel Rüger
-- strict thread matches above, loose matches on Subject: below --
2024-11-16 7:26 Sam James
2024-11-10 9:44 Sam James
2024-11-09 17:35 Andreas K. Hüttel
2024-11-09 14:46 Andreas K. Hüttel
2024-11-09 14:46 Andreas K. Hüttel
2024-11-02 2:39 Sam James
2024-10-15 10:16 Arthur Zamarin
2024-10-03 21:29 Arsen Arsenović
2024-10-03 16:25 Arthur Zamarin
2024-10-03 16:25 Arthur Zamarin
2024-10-03 16:25 Arthur Zamarin
2024-10-03 16:25 Arthur Zamarin
2024-10-03 16:25 Arthur Zamarin
2024-10-03 8:06 Sam James
2024-08-22 20:23 Andreas K. Hüttel
2024-08-20 20:28 Andreas K. Hüttel
2024-08-14 19:19 Sam James
2024-08-05 10:26 Andreas K. Hüttel
2024-08-05 7:28 Andreas K. Hüttel
2024-07-31 22:32 Andreas K. Hüttel
2024-07-28 13:42 Andreas K. Hüttel
2024-07-14 15:39 Sam James
2024-07-14 15:39 Sam James
2024-06-29 23:09 Andreas K. Hüttel
2024-06-29 16:51 Andreas K. Hüttel
2024-06-29 16:35 Sam James
2024-06-29 16:16 Andreas K. Hüttel
2024-06-28 22:19 Andreas K. Hüttel
2024-06-28 18:07 Sam James
2024-06-28 18:05 Sam James
2024-06-28 18:05 Sam James
2024-06-28 18:05 Sam James
2024-06-05 7:01 Sam James
2024-06-01 2:57 Sam James
2024-05-11 0:46 Sam James
2024-05-09 19:43 Sam James
2024-04-26 11:49 Andreas K. Hüttel
2024-03-09 21:55 Sam James
2024-03-09 17:54 Sam James
2024-03-08 19:54 Sam James
2024-03-08 19:54 Sam James
2024-03-08 19:54 Sam James
2024-03-08 19:54 Sam James
2024-03-08 19:54 Sam James
2024-03-08 19:54 Sam James
2024-03-08 19:54 Sam James
2024-03-08 18:23 Sam James
2024-03-07 13:16 Sam James
2024-03-07 13:02 Sam James
2024-02-18 14:33 Andreas K. Hüttel
2024-02-18 14:33 Andreas K. Hüttel
2024-02-18 9:56 Sam James
2024-02-16 0:22 Andreas K. Hüttel
2024-01-30 18:33 Sam James
2024-01-30 17:08 Andreas K. Hüttel
2024-01-29 16:50 Andreas K. Hüttel
2024-01-29 16:01 Sam James
2024-01-24 10:02 Andreas K. Hüttel
2024-01-23 20:50 Andreas K. Hüttel
2024-01-23 6:00 Sam James
2024-01-23 5:32 Sam James
2024-01-22 6:59 Viorel Munteanu
2024-01-08 12:03 Sam James
2024-01-08 9:48 Sam James
2024-01-07 8:28 Sam James
2024-01-07 8:28 Sam James
2024-01-07 8:27 Sam James
2024-01-07 8:27 Sam James
2024-01-07 8:27 Sam James
2024-01-07 8:27 Sam James
2024-01-07 8:27 Sam James
2024-01-06 11:56 James Le Cuirot
2024-01-06 11:51 James Le Cuirot
2024-01-03 10:40 Sam James
2023-12-29 0:32 Sam James
2023-12-17 12:20 Andreas K. Hüttel
2023-12-16 13:52 Andreas K. Hüttel
2023-12-15 10:10 Michał Górny
2023-12-14 4:13 Sam James
2023-12-14 4:13 Sam James
2023-11-29 11:45 Arthur Zamarin
2023-11-25 6:12 Sam James
2023-08-20 20:51 Andreas K. Hüttel
2023-08-09 2:42 Sam James
2023-08-08 5:22 Sam James
2023-08-08 2:39 Sam James
2023-08-08 2:38 Sam James
2023-08-08 2:23 Sam James
2023-08-04 23:24 Andreas K. Hüttel
2023-08-04 11:06 Andreas K. Hüttel
2023-08-04 1:53 Sam James
2023-08-04 1:53 Sam James
2023-08-02 22:48 Andreas K. Hüttel
2023-07-30 16:48 Sam James
2023-07-30 16:48 Sam James
2023-07-30 16:43 Sam James
2023-07-30 15:28 Andreas K. Hüttel
2023-07-30 10:26 Andreas K. Hüttel
2023-07-29 21:15 Andreas K. Hüttel
2023-07-19 21:48 Arsen Arsenović
2023-07-18 19:18 Sam James
2023-07-15 8:49 Arthur Zamarin
2023-07-15 8:49 Arthur Zamarin
2023-06-30 21:14 Sam James
2023-06-30 21:14 Sam James
2023-06-26 22:50 Andreas K. Hüttel
2023-05-06 12:20 Andreas K. Hüttel
2023-05-05 17:32 Andreas K. Hüttel
2023-05-05 17:22 Andreas K. Hüttel
2023-04-29 15:44 Arthur Zamarin
2023-04-29 15:44 Arthur Zamarin
2023-04-29 15:44 Arthur Zamarin
2023-04-21 16:34 Sam James
2023-04-02 20:07 Andreas K. Hüttel
2023-04-02 16:52 Andreas K. Hüttel
2023-04-02 12:21 Andreas K. Hüttel
2023-04-02 12:21 Andreas K. Hüttel
2023-03-09 4:03 Andreas K. Hüttel
2023-03-06 23:37 Andreas K. Hüttel
2023-03-06 23:37 Andreas K. Hüttel
2023-02-09 10:45 Andreas K. Hüttel
2023-02-08 21:21 Andreas K. Hüttel
2023-01-27 6:27 Sam James
2023-01-15 11:43 Andreas K. Hüttel
2023-01-15 0:10 Andreas K. Hüttel
2023-01-14 19:17 Sam James
2023-01-14 16:31 Andreas K. Hüttel
2023-01-14 16:31 Andreas K. Hüttel
2022-12-31 15:40 Arthur Zamarin
2022-12-31 15:40 Arthur Zamarin
2022-12-31 15:40 Arthur Zamarin
2022-12-31 15:40 Arthur Zamarin
2022-12-31 15:40 Arthur Zamarin
2022-12-31 15:40 Arthur Zamarin
2022-12-31 15:40 Arthur Zamarin
2022-12-31 15:40 Arthur Zamarin
2022-12-02 20:37 Andreas K. Hüttel
2022-10-17 0:58 Sam James
2022-10-09 11:53 Andreas K. Hüttel
2022-10-08 14:55 Andreas K. Hüttel
2022-09-29 22:32 Sam James
2022-09-29 21:51 Sam James
2022-09-29 21:51 Sam James
2022-09-16 20:29 Andreas K. Hüttel
2022-09-06 21:34 Sam James
2022-09-06 21:34 Sam James
2022-09-04 8:14 Andreas K. Hüttel
2022-08-27 18:07 Arthur Zamarin
2022-08-24 7:32 Andreas K. Hüttel
2022-08-16 0:52 Sam James
2022-08-10 20:36 Sam James
2022-08-07 23:16 WANG Xuerui
2022-08-07 17:17 Andreas K. Hüttel
2022-08-06 3:50 Sam James
2022-08-05 21:27 Sam James
2022-08-05 19:06 Andreas K. Hüttel
2022-07-29 12:27 WANG Xuerui
2022-07-28 7:08 Agostino Sarubbo
2022-07-28 7:07 Agostino Sarubbo
2022-07-27 9:51 Agostino Sarubbo
2022-07-27 8:00 Agostino Sarubbo
2022-07-27 7:55 Agostino Sarubbo
2022-07-27 7:55 Agostino Sarubbo
2022-07-09 11:43 Andreas K. Hüttel
2022-06-12 19:46 Andreas K. Hüttel
2022-05-30 6:30 Sam James
2022-05-26 5:48 Sam James
2022-05-26 5:48 Sam James
2022-04-19 22:52 Sam James
2022-04-16 18:09 Andreas K. Hüttel
2022-04-16 11:36 Andreas K. Hüttel
2022-03-19 9:49 Andreas K. Hüttel
2022-03-18 23:54 Andreas K. Hüttel
2022-03-18 23:54 Andreas K. Hüttel
2022-03-18 22:38 Andreas K. Hüttel
2022-03-18 6:44 Sam James
2022-03-18 6:43 Sam James
2022-02-17 18:47 Arthur Zamarin
2022-02-14 23:52 Sam James
2022-02-14 23:52 Sam James
2022-02-14 23:52 Sam James
2022-02-14 23:20 Sam James
2022-02-14 23:20 Sam James
2022-02-14 21:32 Sam James
2022-02-10 13:11 Andreas K. Hüttel
2022-01-28 22:13 Sam James
2022-01-28 22:10 Sam James
2022-01-27 21:53 Sam James
2022-01-25 22:34 Andreas K. Hüttel
2022-01-21 23:43 Sam James
2022-01-21 20:29 Sam James
2022-01-15 21:33 Andreas K. Hüttel
2022-01-06 19:22 Mike Frysinger
2022-01-01 20:08 David Seifert
2022-01-01 18:31 David Seifert
2021-12-06 22:43 Sam James
2021-11-14 22:20 Andreas K. Hüttel
2021-10-29 18:33 Andreas K. Hüttel
2021-10-05 23:19 Sam James
2021-10-05 23:19 Sam James
2021-10-04 1:32 Sam James
2021-10-03 0:35 Sam James
2021-09-24 16:14 Sam James
2021-09-23 22:12 Sam James
2021-09-21 17:44 Sam James
2021-09-21 6:35 Agostino Sarubbo
2021-09-16 1:45 Sam James
2021-08-20 15:02 Andreas K. Hüttel
2021-08-20 15:02 Andreas K. Hüttel
2021-08-19 13:40 Sam James
2021-08-19 13:40 Sam James
2021-08-19 13:27 Sam James
2021-08-19 13:27 Sam James
2021-08-19 13:27 Sam James
2021-08-19 12:57 Sam James
2021-08-19 12:57 Sam James
2021-08-17 21:42 Andreas K. Hüttel
2021-08-17 20:07 Andreas K. Hüttel
2021-08-13 21:40 Andreas K. Hüttel
2021-07-31 10:03 Andreas K. Hüttel
2021-07-25 11:16 Andreas K. Hüttel
2021-07-24 22:54 Andreas K. Hüttel
2021-07-24 21:15 Andreas K. Hüttel
2021-07-20 21:52 Andreas K. Hüttel
2021-07-17 11:22 Sergei Trofimovich
2021-05-15 23:13 Georgy Yakovlev
2021-05-15 22:04 Georgy Yakovlev
2021-04-20 18:39 Andreas K. Hüttel
2021-04-20 17:06 Andreas K. Hüttel
2021-04-18 9:48 Andreas K. Hüttel
2021-04-18 9:48 Andreas K. Hüttel
2021-04-13 0:13 Sam James
2021-04-12 23:33 Sam James
2021-04-11 18:41 Sergei Trofimovich
2021-04-11 12:31 Mikle Kolyada
2021-04-05 8:53 Sergei Trofimovich
2021-04-04 16:03 Thomas Deutschmann
2021-02-25 11:13 Sam James
2021-02-25 5:18 Sam James
2021-02-25 2:10 Sam James
2021-02-11 20:22 Sergei Trofimovich
2021-02-09 21:46 Andreas K. Hüttel
2021-02-09 21:46 Andreas K. Hüttel
2021-02-08 22:17 Andreas K. Hüttel
2021-02-08 21:21 Andreas K. Hüttel
2021-01-31 13:26 Sergei Trofimovich
2021-01-30 4:31 Sam James
2021-01-28 19:55 Sam James
2021-01-28 17:38 Sergei Trofimovich
2021-01-26 17:42 Sergei Trofimovich
2021-01-24 15:34 Andreas K. Hüttel
2021-01-23 19:28 Andreas K. Hüttel
2021-01-03 13:23 Sergei Trofimovich
2020-12-23 2:17 Sam James
2020-12-23 2:16 Sam James
2020-11-16 16:49 Andreas K. Hüttel
2020-11-14 9:24 Mikle Kolyada
2020-11-03 22:47 Sergei Trofimovich
2020-10-30 21:45 Andreas K. Hüttel
2020-10-06 4:23 Sam James
2020-10-03 9:25 Sergei Trofimovich
2020-09-28 17:41 Sergei Trofimovich
2020-09-25 14:20 Andreas K. Hüttel
2020-09-25 14:20 Andreas K. Hüttel
2020-09-25 14:20 Andreas K. Hüttel
2020-09-23 9:10 Andreas K. Hüttel
2020-09-20 18:31 Sam James
2020-09-19 20:08 Mikle Kolyada
2020-09-17 20:08 Andreas K. Hüttel
2020-09-15 17:22 Thomas Deutschmann
2020-07-31 16:06 Andreas K. Hüttel
2020-07-25 17:50 Andreas K. Hüttel
2020-07-25 12:43 Andreas K. Hüttel
2020-06-28 22:43 Sergei Trofimovich
2020-06-18 19:24 Sergei Trofimovich
2020-05-19 19:57 Andreas K. Hüttel
2020-05-10 18:31 Andreas K. Hüttel
2020-05-08 18:20 Andreas K. Hüttel
2020-04-07 10:26 Mart Raudsepp
2020-04-01 11:12 Jeroen Roovers
2020-03-16 21:23 Sergei Trofimovich
2020-03-10 7:35 Sergei Trofimovich
2020-03-09 21:00 Sergei Trofimovich
2020-03-09 7:56 Sergei Trofimovich
2020-03-06 13:31 Andreas K. Hüttel
2020-03-02 15:22 Agostino Sarubbo
2020-03-02 12:39 Agostino Sarubbo
2020-03-02 12:38 Agostino Sarubbo
2020-03-02 12:34 Agostino Sarubbo
2020-03-02 12:32 Agostino Sarubbo
2020-03-02 12:29 Agostino Sarubbo
2020-03-02 12:28 Agostino Sarubbo
2020-03-01 7:45 Mikle Kolyada
2020-02-13 21:40 David Seifert
2020-02-01 22:00 Sergei Trofimovich
2020-01-24 15:51 Sergei Trofimovich
2020-01-05 12:19 Sergei Trofimovich
2020-01-04 12:31 Sergei Trofimovich
2019-11-18 23:39 Sergei Trofimovich
2019-11-09 13:54 Sergei Trofimovich
2019-11-09 13:02 Sergei Trofimovich
2019-11-09 13:02 Sergei Trofimovich
2019-11-09 11:57 Sergei Trofimovich
2019-11-09 0:00 Sergei Trofimovich
2019-11-09 0:00 Sergei Trofimovich
2019-10-13 4:18 Andreas K. Hüttel
2019-08-27 7:31 Sergei Trofimovich
2019-08-09 21:09 Andreas K. Hüttel
2019-07-28 10:36 Mikle Kolyada
2019-07-28 10:36 Mikle Kolyada
2019-07-28 10:36 Mikle Kolyada
2019-07-22 13:16 Aaron Bauman
2019-07-18 13:10 Agostino Sarubbo
2019-07-18 11:45 Agostino Sarubbo
2019-07-18 10:01 Agostino Sarubbo
2019-07-18 9:57 Agostino Sarubbo
2019-07-17 14:03 Agostino Sarubbo
2019-07-03 21:32 Sergei Trofimovich
2019-07-01 19:23 Thomas Deutschmann
2019-06-29 14:46 Andreas K. Hüttel
2019-06-29 13:22 Agostino Sarubbo
2019-06-06 14:27 Andreas K. Hüttel
2019-06-03 11:11 Tobias Klausmann
2019-05-31 8:08 Agostino Sarubbo
2019-05-16 22:41 Sergei Trofimovich
2019-05-14 8:08 Sergei Trofimovich
2019-05-11 12:29 Mikle Kolyada
2019-05-11 12:28 Mikle Kolyada
2019-05-11 12:28 Mikle Kolyada
2019-05-11 12:28 Mikle Kolyada
2019-05-11 12:28 Mikle Kolyada
2019-05-11 12:28 Mikle Kolyada
2019-05-11 12:28 Mikle Kolyada
2019-05-10 17:31 Mikle Kolyada
2019-05-10 2:24 Aaron Bauman
2019-05-08 6:25 Sergei Trofimovich
2019-05-04 17:03 Andreas K. Hüttel
2019-04-29 10:10 Jeroen Roovers
2019-04-27 20:50 Sergei Trofimovich
2019-04-26 12:45 Andreas K. Hüttel
2019-04-25 18:44 Andreas K. Hüttel
2019-04-25 9:09 Anthony G. Basile
2019-04-24 21:02 Andreas K. Hüttel
2019-04-20 18:27 Mikle Kolyada
2019-04-19 12:20 Andreas K. Hüttel
2019-04-18 21:38 Andreas K. Hüttel
2019-04-11 11:35 Sergei Trofimovich
2019-04-10 23:34 Aaron Bauman
2019-04-09 14:09 Andreas K. Hüttel
2019-04-07 22:00 Mikle Kolyada
2019-04-07 22:00 Mikle Kolyada
2019-04-07 22:00 Mikle Kolyada
2019-04-07 22:00 Mikle Kolyada
2019-04-06 14:35 Andreas K. Hüttel
2019-04-04 6:56 Mikle Kolyada
2019-03-29 21:59 Andreas K. Hüttel
2019-03-26 21:32 Andreas K. Hüttel
2019-02-23 13:06 Sergei Trofimovich
2019-02-23 12:55 Sergei Trofimovich
2019-02-16 17:51 Sergei Trofimovich
2019-02-16 10:35 Sergei Trofimovich
2019-02-14 22:17 Sergei Trofimovich
2019-02-12 23:32 Sergei Trofimovich
2019-02-12 23:01 Sergei Trofimovich
2019-02-03 18:52 Sergei Trofimovich
2018-12-28 23:13 Andreas K. Hüttel
2018-12-22 11:38 Andreas K. Hüttel
2018-12-22 11:38 Andreas K. Hüttel
2018-12-20 22:50 Andreas K. Hüttel
2018-12-14 23:52 Andreas K. Hüttel
2018-12-09 13:58 Andreas K. Hüttel
2018-12-08 18:03 Andreas K. Hüttel
2018-12-03 23:43 Andreas K. Hüttel
2018-11-30 23:00 Andreas K. Hüttel
2018-11-30 22:25 Andreas K. Hüttel
2018-11-11 11:20 Mikle Kolyada
2018-10-14 11:10 Mikle Kolyada
2018-10-13 16:14 Sergei Trofimovich
2018-10-13 6:56 Tobias Klausmann
2018-10-12 19:08 Sergei Trofimovich
2018-10-06 16:48 Matt Turner
2018-10-06 11:27 Sergei Trofimovich
2018-10-04 7:59 Mikle Kolyada
2018-10-04 6:26 Sergei Trofimovich
2018-10-01 0:07 Thomas Deutschmann
2018-09-25 7:37 Sergei Trofimovich
2018-09-21 7:00 Sergei Trofimovich
2018-09-16 7:59 Mikle Kolyada
2018-09-15 11:27 Sergei Trofimovich
2018-08-27 13:17 Sergei Trofimovich
2018-08-19 5:50 Matt Turner
2018-08-19 5:50 Matt Turner
2018-08-07 9:45 Andreas Hüttel
2018-08-04 18:18 Andreas Hüttel
2018-08-04 18:18 Andreas Hüttel
2018-07-18 15:04 Andreas Hüttel
2018-07-15 12:55 Andreas Hüttel
2018-07-01 17:49 Mikle Kolyada
2018-06-29 22:10 Sergei Trofimovich
2018-06-27 19:06 Andreas Hüttel
2018-06-26 16:12 Mikle Kolyada
2018-06-23 8:24 Sergei Trofimovich
2018-06-22 18:21 Andreas Hüttel
2018-06-18 20:21 Tobias Klausmann
2018-06-13 22:10 Andreas Hüttel
2018-06-12 21:06 Andreas Hüttel
2018-06-03 20:47 Sergei Trofimovich
2018-06-03 8:00 Mart Raudsepp
2018-06-02 5:48 Mikle Kolyada
2018-05-19 17:21 Andreas Hüttel
2018-05-12 18:44 Sergei Trofimovich
2018-05-01 20:24 Andreas Hüttel
2018-04-29 20:08 Andreas Hüttel
2018-04-07 20:03 Sergei Trofimovich
2018-04-07 19:48 Sergei Trofimovich
2018-04-07 10:43 Sergei Trofimovich
2018-01-29 20:11 Andreas Hüttel
2018-01-27 21:26 Andreas Hüttel
2018-01-27 15:07 Andreas Hüttel
2018-01-27 14:50 Andreas Hüttel
2018-01-27 13:16 Andreas Hüttel
2018-01-14 20:04 Mike Frysinger
2018-01-14 20:04 Mike Frysinger
2018-01-08 22:22 Sergei Trofimovich
2017-12-27 22:30 Sergei Trofimovich
2017-12-24 9:46 Mart Raudsepp
2017-11-24 6:15 Markus Meier
2017-11-23 11:54 Tobias Klausmann
2017-11-19 21:20 Sergei Trofimovich
2017-11-19 19:14 Thomas Deutschmann
2017-11-18 19:08 Sergei Trofimovich
2017-11-18 17:46 Sergei Trofimovich
2017-11-12 23:02 Andreas Hüttel
2017-10-20 23:26 Andreas Hüttel
2017-10-18 21:58 Andreas Hüttel
2017-10-15 13:44 Andreas Hüttel
2017-10-12 21:10 Andreas Hüttel
2017-09-25 23:18 Sergei Trofimovich
2017-09-14 19:06 Andreas Hüttel
2017-09-14 18:59 Andreas Hüttel
2017-09-14 8:26 Sergei Trofimovich
2017-09-11 21:02 Thomas Deutschmann
2017-09-07 20:59 Sergei Trofimovich
2017-08-31 1:15 Matt Turner
2017-08-31 1:15 Matt Turner
2017-08-25 22:34 Matt Turner
2017-08-25 21:31 Mikle Kolyada
2017-08-08 20:41 Markus Meier
2017-08-07 7:40 Sergei Trofimovich
2017-08-03 7:11 Sergei Trofimovich
2017-08-02 16:57 Matthias Maier
2017-08-02 0:11 Matthias Maier
2017-06-23 7:48 Sergei Trofimovich
2017-06-21 21:55 Sergei Trofimovich
2017-06-13 18:23 Markus Meier
2017-06-12 12:41 Agostino Sarubbo
2017-06-07 14:47 Matthias Maier
2017-06-06 23:17 Matthias Maier
2017-06-06 22:23 Matthias Maier
2017-03-20 1:05 Matt Turner
2017-03-15 5:47 Jeroen Roovers
2017-03-10 10:59 Agostino Sarubbo
2017-03-10 9:09 Agostino Sarubbo
2017-03-10 5:21 Matt Turner
2017-03-08 21:58 Michael Weber
2017-03-07 20:55 Mike Frysinger
2017-03-03 18:30 Mike Frysinger
2016-12-08 19:28 Mike Frysinger
2016-07-13 8:26 Patrice Clement
2016-07-13 8:26 Patrice Clement
2015-10-03 0:43 Mike Frysinger
2015-09-30 3:41 Jeroen Roovers
2015-09-20 17:57 Mike Frysinger
2015-09-19 16:40 Tobias Klausmann
2015-09-19 12:32 Agostino Sarubbo
2015-08-27 17:37 Mike Frysinger
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox