if test -f po/Makefile; then
have_gettext="no"
if test -n "$MSGFMT"; then
+ olibs=$LIBS
+ LIBS=""
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <libintl.h>
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: gettext() works" >&5
-$as_echo "gettext() works" >&6; }; have_gettext="yes"
+$as_echo "gettext() works" >&6; }; have_gettext="yes"; LIBS=$olibs
else
- olibs=$LIBS
- LIBS="$LIBS -lintl"
+ LIBS="-lintl"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <libintl.h>
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: gettext() works with -lintl" >&5
-$as_echo "gettext() works with -lintl" >&6; }; have_gettext="yes"
+$as_echo "gettext() works with -lintl" >&6; }; have_gettext="yes";
+ LIBS="$olibs -lintl"
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: gettext() doesn't work" >&5
$as_echo "gettext() doesn't work" >&6; };
fi
dnl Check if gettext() is working and if it needs -lintl
+dnl We take care to base this on an empty LIBS: on some systems libelf would be
+dnl in LIBS and implicitly take along libintl. The final LIBS would then not
+dnl contain libintl, and the link step would fail due to -Wl,--as-needed.
AC_MSG_CHECKING(--disable-nls argument)
AC_ARG_ENABLE(nls,
[ --disable-nls Don't support NLS (gettext()).], ,
if test -f po/Makefile; then
have_gettext="no"
if test -n "$MSGFMT"; then
+ olibs=$LIBS
+ LIBS=""
AC_TRY_LINK(
[#include <libintl.h>],
[gettext("Test");],
- AC_MSG_RESULT([gettext() works]); have_gettext="yes",
- olibs=$LIBS
- LIBS="$LIBS -lintl"
+ AC_MSG_RESULT([gettext() works]); have_gettext="yes"; LIBS=$olibs,
+ LIBS="-lintl"
AC_TRY_LINK(
[#include <libintl.h>],
[gettext("Test");],
- AC_MSG_RESULT([gettext() works with -lintl]); have_gettext="yes",
+ AC_MSG_RESULT([gettext() works with -lintl]); have_gettext="yes";
+ LIBS="$olibs -lintl",
AC_MSG_RESULT([gettext() doesn't work]);
LIBS=$olibs))
else