commit: 1c2e87534ac3075a381a5993a43c67413f3a416b
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat May 10 17:54:55 2025 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat May 10 17:54:55 2025 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1c2e8753
dev-libs/libffi: use dot-a.eclass
... to avoid installing broken static libraries w/ LTO.
Signed-off-by: Sam James <sam <AT> gentoo.org>
dev-libs/libffi/libffi-3.4.6-r3.ebuild | 8 +++++++-
dev-libs/libffi/libffi-3.4.8-r1.ebuild | 8 +++++++-
dev-libs/libffi/libffi-9999.ebuild | 8 +++++++-
3 files changed, 21 insertions(+), 3 deletions(-)
diff --git a/dev-libs/libffi/libffi-3.4.6-r3.ebuild
b/dev-libs/libffi/libffi-3.4.6-r3.ebuild
index aa2b81610756..7773456321b4 100644
--- a/dev-libs/libffi/libffi-3.4.6-r3.ebuild
+++ b/dev-libs/libffi/libffi-3.4.6-r3.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-inherit multilib-minimal preserve-libs
+inherit dot-a multilib-minimal preserve-libs
MY_PV=${PV/_rc/-rc}
MY_P=${PN}-${MY_PV}
@@ -55,6 +55,11 @@ src_prepare() {
fi
}
+src_configure() {
+ use static-libs && lto-guarantee-fat
+ multilib-minimal_src_configure
+}
+
multilib_src_configure() {
# --includedir= path maintains a few properties:
# 1. have stable name across libffi versions: some packages like
@@ -83,6 +88,7 @@ multilib_src_test() {
multilib_src_install_all() {
einstalldocs
find "${ED}" -name "*.la" -delete || die
+ strip-lto-bytecode
}
pkg_preinst() {
diff --git a/dev-libs/libffi/libffi-3.4.8-r1.ebuild
b/dev-libs/libffi/libffi-3.4.8-r1.ebuild
index b53a7ca31e89..86ce6f2a9d68 100644
--- a/dev-libs/libffi/libffi-3.4.8-r1.ebuild
+++ b/dev-libs/libffi/libffi-3.4.8-r1.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-inherit multilib-minimal preserve-libs
+inherit dot-a multilib-minimal preserve-libs
MY_PV=${PV/_rc/-rc}
MY_P=${PN}-${MY_PV}
@@ -48,6 +48,11 @@ src_prepare() {
fi
}
+src_configure() {
+ use static-libs && lto-guarantee-fat
+ multilib-minimal_src_configure
+}
+
multilib_src_configure() {
# --includedir= path maintains a few properties:
# 1. have stable name across libffi versions: some packages like
@@ -76,6 +81,7 @@ multilib_src_test() {
multilib_src_install_all() {
einstalldocs
find "${ED}" -name "*.la" -delete || die
+ strip-lto-bytecode
}
pkg_preinst() {
diff --git a/dev-libs/libffi/libffi-9999.ebuild
b/dev-libs/libffi/libffi-9999.ebuild
index e000b77b4e7a..c210e2cd6086 100644
--- a/dev-libs/libffi/libffi-9999.ebuild
+++ b/dev-libs/libffi/libffi-9999.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-inherit multilib-minimal preserve-libs
+inherit dot-a multilib-minimal preserve-libs
MY_PV=${PV/_rc/-rc}
MY_P=${PN}-${MY_PV}
@@ -44,6 +44,11 @@ src_prepare() {
fi
}
+src_configure() {
+ use static-libs && lto-guarantee-fat
+ multilib-minimal_src_configure
+}
+
multilib_src_configure() {
# --includedir= path maintains a few properties:
# 1. have stable name across libffi versions: some packages like
@@ -72,6 +77,7 @@ multilib_src_test() {
multilib_src_install_all() {
einstalldocs
find "${ED}" -name "*.la" -delete || die
+ strip-lto-bytecode
}
pkg_preinst() {