commit: 67641025a4092daecd6e6b9dd585eaada02ea8b7 Author: Mike Frysinger <vapier <AT> gentoo <DOT> org> AuthorDate: Mon Nov 23 10:09:41 2015 +0000 Commit: Mike Frysinger <vapier <AT> gentoo <DOT> org> CommitDate: Mon Nov 23 10:21:58 2015 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=67641025
sys-devel/binutils-libs: add multitarget & 64-bit bfd support Some tools might want multitarget/64-bit bfd support, so add flags to control support for these options. ...s-libs-2.25.1-r1.ebuild => binutils-libs-2.25.1-r2.ebuild} | 11 +++++++++-- sys-libs/binutils-libs/metadata.xml | 4 ++++ 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/sys-libs/binutils-libs/binutils-libs-2.25.1-r1.ebuild b/sys-libs/binutils-libs/binutils-libs-2.25.1-r2.ebuild similarity index 82% rename from sys-libs/binutils-libs/binutils-libs-2.25.1-r1.ebuild rename to sys-libs/binutils-libs/binutils-libs-2.25.1-r2.ebuild index e5bd03a..5db501d 100644 --- a/sys-libs/binutils-libs/binutils-libs-2.25.1-r1.ebuild +++ b/sys-libs/binutils-libs/binutils-libs-2.25.1-r2.ebuild @@ -6,7 +6,7 @@ EAPI="5" PATCHVER="1.1" -inherit eutils multilib-minimal +inherit eutils toolchain-funcs multilib-minimal MY_PN="binutils" MY_P="${MY_PN}-${PV}" @@ -20,7 +20,7 @@ LICENSE="|| ( GPL-3 LGPL-3 )" # The shared lib SONAMEs use the ${PV} in them. SLOT="0/${PV}" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd -sparc-fbsd ~x86-fbsd" -IUSE="nls static-libs zlib" +IUSE="64-bit-bfd multitarget nls static-libs zlib" COMMON_DEPEND="zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )" DEPEND="${COMMON_DEPEND} @@ -57,6 +57,11 @@ multilib_src_configure() { --with-bugurl="https://bugs.gentoo.org/" --with-pkgversion="$(pkgversion)" $(use_enable static-libs static) + # The binutils eclass enables this flag for all bi-arch builds, + # but other tools often don't care about that support. Put it + # beyond a flag if people really want it, but otherwise leave + # it disabled as it can slow things down on 32bit arches. #438522 + $(use_enable 64-bit-bfd) # We only care about the libs, so disable programs. #528088 --disable-{binutils,etc,ld,gas,gold,gprof} # Disable modules that are in a combined binutils/gdb tree. #490566 @@ -66,6 +71,8 @@ multilib_src_configure() { --without-stage1-ldflags ) + use multitarget && myconf+=( --enable-targets=all --enable-64-bit-bfd ) + use nls \ && myconf+=( --without-included-gettext ) \ || myconf+=( --disable-nls ) diff --git a/sys-libs/binutils-libs/metadata.xml b/sys-libs/binutils-libs/metadata.xml index e9755a1..9939e3c 100644 --- a/sys-libs/binutils-libs/metadata.xml +++ b/sys-libs/binutils-libs/metadata.xml @@ -2,6 +2,10 @@ <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> <herd>toolchain</herd> +<use> + <flag name='64-bit-bfd'>Support 64-bit targets even on 32-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>