From: Bruno Haible Date: Mon, 5 May 2025 01:00:00 +0000 (+0200) Subject: intl-modula2: Fix a build failure on Ubuntu 22.04. X-Git-Tag: v0.25~19 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4e1c588f21529ac604bb3645160ddd9e1f3332d7;p=thirdparty%2Fgettext.git intl-modula2: Fix a build failure on Ubuntu 22.04. * gettext-runtime/configure.ac: Substitute M2SHLIBEXT. * gettext-runtime/intl-modula2/Makefile.am (libintl_m2_la_LDFLAGS): Attempt harder to find the libm2pim library. --- diff --git a/gettext-runtime/configure.ac b/gettext-runtime/configure.ac index 8ace6a29e..81973b789 100644 --- a/gettext-runtime/configure.ac +++ b/gettext-runtime/configure.ac @@ -194,6 +194,9 @@ AS_IF([test "$MODULA2_CHOICE" != no], AC_SUBST([VALUE_OF_LC_COLLATE]) AC_SUBST([VALUE_OF_LC_MONETARY]) AC_SUBST([VALUE_OF_LC_MESSAGES]) + AC_REQUIRE([AC_LIB_RPATH]) + M2SHLIBEXT="$acl_shlibext" + AC_SUBST([M2SHLIBEXT]) ], [BUILDMODULA2=no ]) diff --git a/gettext-runtime/intl-modula2/Makefile.am b/gettext-runtime/intl-modula2/Makefile.am index afd39188f..0a2592cef 100644 --- a/gettext-runtime/intl-modula2/Makefile.am +++ b/gettext-runtime/intl-modula2/Makefile.am @@ -61,11 +61,22 @@ LTV_REVISION=0 LTV_AGE=0 # How to build libintl_m2.la. +# Finding the gm2 libm2pim is hairy: +# - In GCC builds from source, the .la files are present and work. +# - In distros, either libm2pim.so may work, or m2/m2pim/libm2pim.so, depending +# on the distro's packaging. libintl_m2_la_LDFLAGS = \ -no-undefined \ -version-info $(LTV_CURRENT):$(LTV_REVISION):$(LTV_AGE) \ -rpath $(libdir) \ - `$(M2C) -print-file-name=libm2pim.la` + $$(libm2=`$(M2C) -print-file-name=libm2pim.la`; \ + if test "$$libm2" != 'libm2pim.la'; then echo "$$libm2"; else \ + libm2=`$(M2C) -print-file-name=libm2pim.$(M2SHLIBEXT)`; \ + if test "$$libm2" != 'libm2pim.$(M2SHLIBEXT)'; then echo "$$libm2"; else \ + libm2=`$(M2C) -print-file-name=m2/m2pim/libm2pim.$(M2SHLIBEXT)`; \ + if test "$$libm2" != 'm2/m2pim/libm2pim.$(M2SHLIBEXT)'; then echo "$$libm2"; fi; \ + fi; \ + fi) # Installation of libintl_m2.la.