commit:     37d02084f569fa71329bf0db592ea18da4604fcd
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Jun 27 06:35:04 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Jun 27 06:35:34 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=37d02084

dev-libs/libpcre2: fix shared library build on mips (libtool-2.5.0 bug)

Closes: https://bugs.gentoo.org/934977
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../{libpcre2-10.44.ebuild => libpcre2-10.44-r1.ebuild}     | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/dev-libs/libpcre2/libpcre2-10.44.ebuild 
b/dev-libs/libpcre2/libpcre2-10.44-r1.ebuild
similarity index 82%
rename from dev-libs/libpcre2/libpcre2-10.44.ebuild
rename to dev-libs/libpcre2/libpcre2-10.44-r1.ebuild
index 4d571ec14abb..493d5149dd4f 100644
--- a/dev-libs/libpcre2/libpcre2-10.44.ebuild
+++ b/dev-libs/libpcre2/libpcre2-10.44-r1.ebuild
@@ -4,7 +4,7 @@
 EAPI=8
 
 VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/philiphazel.asc
-inherit libtool multilib-minimal verify-sig
+inherit libtool multilib-minimal toolchain-funcs verify-sig
 
 MY_P="pcre2-${PV/_rc/-RC}"
 
@@ -67,6 +67,10 @@ src_prepare() {
 }
 
 multilib_src_configure() {
+       # Workaround for bug #934977 (libtool-2.5.0), drop when dist tarball
+       # uses newer libtool with the fix.
+       export ac_cv_prog_ac_ct_FILECMD='file' FILECMD='file'
+
        local myeconfargs=(
                --enable-pcre2-8
                --enable-shared
@@ -99,6 +103,13 @@ multilib_src_install() {
                DESTDIR="${D}" \
                $(multilib_is_native_abi || echo "bin_PROGRAMS= 
dist_html_DATA=") \
                install
+
+       # bug #934977
+       if ! tc-is-static-only && [[ ! -f 
"${ED}/usr/$(get_libdir)/libpcre2-8$(get_libname)" ]] ; then
+               eerror "Sanity check for libpcre2-8$(get_libname) failed."
+               eerror "Shared library wasn't built, possible libtool bug"
+               [[ -z ${I_KNOW_WHAT_I_AM_DOING} ]] && die 
"libpcre2-8$(get_libname) not found in build, aborting"
+       fi
 }
 
 multilib_src_install_all() {

Reply via email to