updated for version 7.4.094
Problem: Configure may not find that -lint is needed for gettext().
Solution: Check for gettext() with empty $LIBS. (Thomas De Schampheleire)
diff --git a/src/configure.in b/src/configure.in
index 83d0ea8..9af3f24 100644
--- a/src/configure.in
+++ b/src/configure.in
@@ -3725,6 +3725,9 @@
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()).], ,
@@ -3743,16 +3746,18 @@
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