Autoconf propose a mechanism to cache the result of checks, so that a user who needs to re-run configure can get a very fast result. Unfortunately, the code in the macro gl_LD_VERSION_SCRIPT did not implement this feature, so it would always spend time re-testing.
This patch inserts the AC_CACHE_CHECK macro at the appropriate place, so now the check will not be re-run if the user enabled autoconf's cache. Signed-off-by: Christophe CURIS <christophe.cu...@free.fr> --- m4/ld-version-script.m4 | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/m4/ld-version-script.m4 b/m4/ld-version-script.m4 index f8b4a5c..bb3cd88 100644 --- a/m4/ld-version-script.m4 +++ b/m4/ld-version-script.m4 @@ -1,4 +1,4 @@ -# ld-version-script.m4 serial 3 +# ld-version-script.m4 serial 4 dnl Copyright (C) 2008-2014 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -22,16 +22,17 @@ AC_DEFUN([gl_LD_VERSION_SCRIPT], [enable linker version script (default is enabled when possible)]), [have_ld_version_script=$enableval], []) if test -z "$have_ld_version_script"; then - AC_MSG_CHECKING([if LD -Wl,--version-script works]) - save_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS -Wl,--version-script=conftest.map" - cat > conftest.map <<EOF + AC_CACHE_CHECK([if LD -Wl,--version-script works], [gl_cv_sys_ld_version_script], + [ + save_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS -Wl,--version-script=conftest.map" + cat > conftest.map <<EOF foo EOF - AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])], - [accepts_syntax_errors=yes], [accepts_syntax_errors=no]) - if test "$accepts_syntax_errors" = no; then - cat > conftest.map <<EOF + AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])], + [], [gl_cv_sys_ld_version_script=no]) + if test "x$gl_cv_sys_ld_version_script" != "xno"; then + cat > conftest.map <<EOF VERS_1 { global: sym; }; @@ -40,14 +41,13 @@ VERS_2 { global: sym; } VERS_1; EOF - AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])], - [have_ld_version_script=yes], [have_ld_version_script=no]) - else - have_ld_version_script=no - fi - rm -f conftest.map - LDFLAGS="$save_LDFLAGS" - AC_MSG_RESULT($have_ld_version_script) + AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])], + [gl_cv_sys_ld_version_script=yes], [gl_cv_sys_ld_version_script=no]) + fi + rm -f conftest.map + LDFLAGS="$save_LDFLAGS" + ]) + have_ld_version_script=$gl_cv_sys_ld_version_script fi AM_CONDITIONAL(HAVE_LD_VERSION_SCRIPT, test "$have_ld_version_script" = "yes") ]) -- 2.1.3