From: Todd C. Miller Date: Mon, 15 Aug 2011 17:41:58 +0000 (-0400) Subject: Add caching for gettext() checks. X-Git-Tag: SUDO_1_8_2~3^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=366cb19273fb71f0bcf4acb55ec69023c999e684;p=sudo Add caching for gettext() checks. --- diff --git a/configure b/configure index cf648fb26..1b29bed32 100755 --- a/configure +++ b/configure @@ -17580,15 +17580,23 @@ if test "$enable_nls" != "no"; then if test "$enable_nls" != "yes"; then continue fi + gettext_name=sudo_cv_gettext + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gettext" >&5 +$as_echo_n "checking for gettext... " >&6; } else LIBS="$OLIBS $l" - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gettext in $l" >&5 + gettext_name=sudo_cv_gettext"`echo $l|sed -e 's/ //g' -e 's/-/_/g'`" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gettext in $l" >&5 $as_echo_n "checking for gettext in $l... " >&6; } - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + fi + if eval \${$gettext_name+:} false; then : + $as_echo_n "(cached) " >&6 +else + + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ - #include + #include int main () { @@ -17599,27 +17607,37 @@ main () _ACEOF if ac_fn_c_try_link "$LINENO"; then : - enable_nls=yes + eval $gettext_name=yes else - enable_nls=no + eval $gettext_name=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_nls" >&5 -$as_echo "$enable_nls" >&6; } - if test "$enable_nls" = "yes"; then - break - fi + +fi + + eval gettext_result="\$$gettext_name" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gettext_result" >&5 +$as_echo "$gettext_result" >&6; } + test "$gettext_result" = "yes" && break done LIBS="$OLIBS" - if test "$enable_nls" = "yes"; then + + if test "$sudo_cv_gettext" = "yes"; then $as_echo "#define HAVE_LIBINTL_H 1" >>confdefs.h SUDO_NLS=enabled - if test "$l" != "libc"; then - LIBINTL="$l" - fi + elif test "$sudo_cv_gettext_lintl" = "yes"; then + $as_echo "#define HAVE_LIBINTL_H 1" >>confdefs.h + + SUDO_NLS=enabled + LIBINTL="-lintl" + elif test "$sudo_cv_gettext_lintl_liconv" = "yes"; then + $as_echo "#define HAVE_LIBINTL_H 1" >>confdefs.h + + SUDO_NLS=enabled + LIBINTL="-lintl -liconv" fi fi diff --git a/configure.in b/configure.in index fa07cd08d..ed43c1335 100644 --- a/configure.in +++ b/configure.in @@ -2224,27 +2224,37 @@ if test "$enable_nls" != "no"; then if test "$enable_nls" != "yes"; then continue fi + gettext_name=sudo_cv_gettext + AC_MSG_CHECKING([for gettext]) else LIBS="$OLIBS $l" + gettext_name=sudo_cv_gettext"`echo $l|sed -e 's/ //g' -e 's/-/_/g'`" + AC_MSG_CHECKING([for gettext in $l]) fi - AC_MSG_CHECKING([for gettext in $l]) - AC_LINK_IFELSE( - [ - AC_LANG_PROGRAM([[#include ]], [(void)gettext((char *)0);]) - ], [enable_nls=yes], [enable_nls=no] - ) - AC_MSG_RESULT($enable_nls) - if test "$enable_nls" = "yes"; then - break - fi + AC_CACHE_VAL($gettext_name, [ + AC_LINK_IFELSE( + [ + AC_LANG_PROGRAM([[#include ]], [(void)gettext((char *)0);]) + ], [eval $gettext_name=yes], [eval $gettext_name=no] + ) + ]) + eval gettext_result="\$$gettext_name" + AC_MSG_RESULT($gettext_result) + test "$gettext_result" = "yes" && break done LIBS="$OLIBS" - if test "$enable_nls" = "yes"; then + + if test "$sudo_cv_gettext" = "yes"; then AC_DEFINE(HAVE_LIBINTL_H) SUDO_NLS=enabled - if test "$l" != "libc"; then - LIBINTL="$l" - fi + elif test "$sudo_cv_gettext_lintl" = "yes"; then + AC_DEFINE(HAVE_LIBINTL_H) + SUDO_NLS=enabled + LIBINTL="-lintl" + elif test "$sudo_cv_gettext_lintl_liconv" = "yes"; then + AC_DEFINE(HAVE_LIBINTL_H) + SUDO_NLS=enabled + LIBINTL="-lintl -liconv" fi fi