commit:     631038dec7129bd3f5d859170b2c11bd6d1b8264
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Thu Feb 11 20:16:15 2021 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Thu Feb 11 20:21:55 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=631038de

sys-libs/binutils-libs: 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>

 .../binutils-libs/binutils-libs-2.35.1-r1.ebuild   |  7 ++++++-
 sys-libs/binutils-libs/binutils-libs-2.35.2.ebuild |  7 ++++++-
 sys-libs/binutils-libs/binutils-libs-2.36.1.ebuild |  7 ++++++-
 sys-libs/binutils-libs/metadata.xml                | 23 +++++++++++-----------
 4 files changed, 30 insertions(+), 14 deletions(-)

diff --git a/sys-libs/binutils-libs/binutils-libs-2.35.1-r1.ebuild 
b/sys-libs/binutils-libs/binutils-libs-2.35.1-r1.ebuild
index 688ea58abcd..340f2a556d5 100644
--- a/sys-libs/binutils-libs/binutils-libs-2.35.1-r1.ebuild
+++ b/sys-libs/binutils-libs/binutils-libs-2.35.1-r1.ebuild
@@ -20,7 +20,7 @@ SRC_URI="mirror://gnu/binutils/${MY_P}.tar.xz
 
 LICENSE="|| ( GPL-3 LGPL-3 )"
 SLOT="0/${PV}"
-IUSE="64-bit-bfd multitarget nls static-libs"
+IUSE="64-bit-bfd cet multitarget nls static-libs"
 KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv 
~s390 sparc x86 ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris 
~x86-solaris"
 
 BDEPEND="nls? ( sys-devel/gettext )"
@@ -89,6 +89,11 @@ multilib_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)
        )
 
        # mips can't do hash-style=gnu ...

diff --git a/sys-libs/binutils-libs/binutils-libs-2.35.2.ebuild 
b/sys-libs/binutils-libs/binutils-libs-2.35.2.ebuild
index a5f20fafd25..9eabcacc31e 100644
--- a/sys-libs/binutils-libs/binutils-libs-2.35.2.ebuild
+++ b/sys-libs/binutils-libs/binutils-libs-2.35.2.ebuild
@@ -20,7 +20,7 @@ SRC_URI="mirror://gnu/binutils/${MY_P}.tar.xz
 
 LICENSE="|| ( GPL-3 LGPL-3 )"
 SLOT="0/${PV}"
-IUSE="64-bit-bfd multitarget nls static-libs"
+IUSE="64-bit-bfd cet multitarget nls static-libs"
 KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv 
~s390 ~sparc ~x86 ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris 
~x86-solaris"
 
 BDEPEND="nls? ( sys-devel/gettext )"
@@ -89,6 +89,11 @@ multilib_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)
        )
 
        # mips can't do hash-style=gnu ...

diff --git a/sys-libs/binutils-libs/binutils-libs-2.36.1.ebuild 
b/sys-libs/binutils-libs/binutils-libs-2.36.1.ebuild
index c30d96e6bb4..c4c2a9d4ffa 100644
--- a/sys-libs/binutils-libs/binutils-libs-2.36.1.ebuild
+++ b/sys-libs/binutils-libs/binutils-libs-2.36.1.ebuild
@@ -20,7 +20,7 @@ SRC_URI="mirror://gnu/binutils/${MY_P}.tar.xz
 
 LICENSE="|| ( GPL-3 LGPL-3 )"
 SLOT="0/${PV}"
-IUSE="64-bit-bfd multitarget nls static-libs"
+IUSE="64-bit-bfd cet multitarget nls static-libs"
 #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 
~riscv ~s390 ~sparc ~x86 ~x64-macos ~sparc-solaris ~sparc64-solaris 
~x64-solaris ~x86-solaris"
 
 BDEPEND="nls? ( sys-devel/gettext )"
@@ -89,6 +89,11 @@ multilib_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)
        )
 
        # mips can't do hash-style=gnu ...

diff --git a/sys-libs/binutils-libs/metadata.xml 
b/sys-libs/binutils-libs/metadata.xml
index 80f41eae3f2..f1528f82ed9 100644
--- a/sys-libs/binutils-libs/metadata.xml
+++ b/sys-libs/binutils-libs/metadata.xml
@@ -1,15 +1,16 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
 <pkgmetadata>
-<maintainer type="project">
-       <email>[email protected]</email>
-       <name>Gentoo Toolchain Project</name>
-</maintainer>
-<use>
-       <flag name="64-bit-bfd">Support 64-bit targets even on 32-bit hosts (is 
ignored on 64-bit hosts)</flag>
-       <flag name="multitarget">Enable all possible targets in libbfd</flag>
-</use>
-<upstream>
-       <remote-id type="cpe">cpe:/a:gnu:binutils</remote-id>
-</upstream>
+       <maintainer type="project">
+               <email>[email protected]</email>
+               <name>Gentoo Toolchain Project</name>
+       </maintainer>
+       <use>
+               <flag name="cet">Enable Intel Control-flow Enforcement 
Technology.</flag>
+               <flag name="64-bit-bfd">Support 64-bit targets even on 32-bit 
hosts (is ignored on 64-bit hosts)</flag>
+               <flag name="multitarget">Enable all possible targets in 
libbfd</flag>
+       </use>
+       <upstream>
+               <remote-id type="cpe">cpe:/a:gnu:binutils</remote-id>
+       </upstream>
 </pkgmetadata>

Reply via email to