From: Bruno Haible Date: Fri, 15 Sep 2023 18:54:32 +0000 (+0200) Subject: intl: Fix a build error on Android. X-Git-Tag: v0.22.1~20 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=600e679f91bab87f31671017ec2d8b9ce3627c4f;p=thirdparty%2Fgettext.git intl: Fix a build error on Android. The declaration in Android's long double frexpl(long double, int*) __RENAME_LDBL(frexp, 3, 21); has the effect that frexpl.o defines the symbol _libintl_frexp, not _libintl_frexpl, if config.h contains #define frexp _libintl_frexp #define frexpl _libintl_frexpl * gettext-runtime/intl/configure.ac: If REPLACE_FREXP is 1, don't redirect frexp to _libintl_frexp. If REPLACE_FREXPL is 1, don't redirect frexpl to _libintl_frexp. --- diff --git a/gettext-runtime/intl/configure.ac b/gettext-runtime/intl/configure.ac index b525e15e6..90cf6a9c1 100644 --- a/gettext-runtime/intl/configure.ac +++ b/gettext-runtime/intl/configure.ac @@ -336,13 +336,19 @@ AH_VERBATIM([znoexport], [ ]) dnl Symbols defined by gnulib module 'frexp-nolibm'. if test $gl_func_frexp_no_libm != yes; then - AC_DEFINE([frexp], [_libintl_frexp], [Hidden symbol.]) - AC_DEFINE([rpl_frexp], [_libintl_frexp], [Hidden symbol.]) + if test $REPLACE_FREXP = 1; then + AC_DEFINE([rpl_frexp], [_libintl_frexp], [Hidden symbol.]) + else + AC_DEFINE([frexp], [_libintl_frexp], [Hidden symbol.]) + fi fi dnl Symbols defined by gnulib module 'frexpl-nolibm'. if test $HAVE_DECL_FREXPL = 0 || test $gl_func_frexpl_no_libm = no; then - AC_DEFINE([frexpl], [_libintl_frexpl], [Hidden symbol.]) - AC_DEFINE([rpl_frexpl], [_libintl_frexpl], [Hidden symbol.]) + if test $REPLACE_FREXPL = 1; then + AC_DEFINE([rpl_frexpl], [_libintl_frexpl], [Hidden symbol.]) + else + AC_DEFINE([frexpl], [_libintl_frexpl], [Hidden symbol.]) + fi fi dnl Symbols defined by gnulib module 'mbrtowc'. if test $REPLACE_MBRTOWC = 1; then