commit: 04f82eb996d86d0efa79b96a4f7ee3220029ea20 Author: Sam James <sam <AT> gentoo <DOT> org> AuthorDate: Sun May 18 11:33:32 2025 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Sun May 18 12:05:09 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=04f82eb9
sys-devel/binutils: EAPI 8, use dot-a * EAPI 8 (which allows using dot-a) * Use dot-a.eclass to avoid installing broken static libraries w/ LTO. Note that we have to do it even w/ USE=-static-libs, per b2d68e3a4bae7c7b144fabe58efdccf68c862628. Bug: https://bugs.gentoo.org/834720 Bug: https://bugs.gentoo.org/900905 Signed-off-by: Sam James <sam <AT> gentoo.org> sys-devel/binutils/binutils-2.44.9999.ebuild | 5 ++++- sys-devel/binutils/binutils-2.44.ebuild | 7 +++++-- sys-devel/binutils/binutils-9999.ebuild | 5 ++++- 3 files changed, 13 insertions(+), 4 deletions(-) diff --git a/sys-devel/binutils/binutils-2.44.9999.ebuild b/sys-devel/binutils/binutils-2.44.9999.ebuild index 63f2cf5091ce..ec413eb353d5 100644 --- a/sys-devel/binutils/binutils-2.44.9999.ebuild +++ b/sys-devel/binutils/binutils-2.44.9999.ebuild @@ -3,7 +3,7 @@ EAPI=8 -inherit libtool flag-o-matic gnuconfig strip-linguas toolchain-funcs +inherit dot-a libtool flag-o-matic gnuconfig strip-linguas toolchain-funcs DESCRIPTION="Tools necessary to build programs" HOMEPAGE="https://sourceware.org/binutils/" @@ -194,6 +194,7 @@ src_configure() { strip-flags use cet && filter-flags -mindirect-branch -mindirect-branch=* use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152 + lto-guarantee-fat local x echo @@ -436,6 +437,8 @@ src_install() { emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install rm -rf "${ED}"/${LIBPATH}/bin || die use static-libs || find "${ED}" -name '*.la' -delete + # Explicit "${ED}" as we need it to do things even w/ USE=-static-libs + strip-lto-bytecode "${ED}" # Newer versions of binutils get fancy with ${LIBPATH}, bug #171905 cd "${ED}"/${LIBPATH} || die diff --git a/sys-devel/binutils/binutils-2.44.ebuild b/sys-devel/binutils/binutils-2.44.ebuild index 88da64be3e67..2203fe5beec1 100644 --- a/sys-devel/binutils/binutils-2.44.ebuild +++ b/sys-devel/binutils/binutils-2.44.ebuild @@ -1,9 +1,9 @@ # Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 -inherit libtool flag-o-matic gnuconfig strip-linguas toolchain-funcs +inherit dot-a libtool flag-o-matic gnuconfig strip-linguas toolchain-funcs DESCRIPTION="Tools necessary to build programs" HOMEPAGE="https://sourceware.org/binutils/" @@ -194,6 +194,7 @@ src_configure() { strip-flags use cet && filter-flags -mindirect-branch -mindirect-branch=* use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152 + lto-guarantee-fat local x echo @@ -436,6 +437,8 @@ src_install() { emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install rm -rf "${ED}"/${LIBPATH}/bin || die use static-libs || find "${ED}" -name '*.la' -delete + # Explicit "${ED}" as we need it to do things even w/ USE=-static-libs + strip-lto-bytecode "${ED}" # Newer versions of binutils get fancy with ${LIBPATH}, bug #171905 cd "${ED}"/${LIBPATH} || die diff --git a/sys-devel/binutils/binutils-9999.ebuild b/sys-devel/binutils/binutils-9999.ebuild index 2fd2fd1b0999..56005f5b75eb 100644 --- a/sys-devel/binutils/binutils-9999.ebuild +++ b/sys-devel/binutils/binutils-9999.ebuild @@ -3,7 +3,7 @@ EAPI=8 -inherit libtool flag-o-matic gnuconfig strip-linguas toolchain-funcs +inherit dot-a libtool flag-o-matic gnuconfig strip-linguas toolchain-funcs DESCRIPTION="Tools necessary to build programs" HOMEPAGE="https://sourceware.org/binutils/" @@ -194,6 +194,7 @@ src_configure() { strip-flags use cet && filter-flags -mindirect-branch -mindirect-branch=* use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152 + lto-guarantee-fat local x echo @@ -436,6 +437,8 @@ src_install() { emake DESTDIR="${D}" tooldir="${EPREFIX}${LIBPATH}" install rm -rf "${ED}"/${LIBPATH}/bin || die use static-libs || find "${ED}" -name '*.la' -delete + # Explicit "${ED}" as we need it to do things even w/ USE=-static-libs + strip-lto-bytecode "${ED}" # Newer versions of binutils get fancy with ${LIBPATH}, bug #171905 cd "${ED}"/${LIBPATH} || die
