diff options
Diffstat (limited to 'configure.ac')
-rw-r--r-- | configure.ac | 35 |
1 files changed, 25 insertions, 10 deletions
diff --git a/configure.ac b/configure.ac index bdc385d03c..e48957f318 100644 --- a/configure.ac +++ b/configure.ac @@ -52,6 +52,22 @@ fi AC_SUBST(cross_compiling) AC_PROG_CPP +# This will get text that should go into config.make. +config_vars= + +AC_ARG_ENABLE([static-c++-tests], + AS_HELP_STRING([--disable-static-c++-tests], + [disable static C++ tests@<:@default=no@:>@]), + [static_cxx_tests=$enableval], + [static_cxx_tests=yes]) +LIBC_CONFIG_VAR([static-cxx-tests], [$static_cxx_tests]) + +AC_ARG_ENABLE([static-c++-link-check], + AS_HELP_STRING([--disable-static-c++-link-check], + [disable static C++ link check @<:@default=no@:>@]), + [static_cxx_link_check=$enableval], + [static_cxx_link_check=yes]) + # We need the C++ compiler only for testing. AC_PROG_CXX # It's useless to us if it can't link programs (e.g. missing -lstdc++). @@ -61,10 +77,11 @@ AC_LANG_PUSH([C++]) AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])], [libc_cv_cxx_link_ok=yes], [libc_cv_cxx_link_ok=no]) -# Static case. -old_LDFLAGS="$LDFLAGS" -LDFLAGS="$LDFLAGS -static" -AC_LINK_IFELSE([AC_LANG_SOURCE([ +if test $static_cxx_link_check$static_cxx_tests = yesyes; then + # Static case. + old_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS -static" + AC_LINK_IFELSE([AC_LANG_SOURCE([ #include <iostream> int @@ -74,9 +91,10 @@ main() return 0; } ])], - [], - [libc_cv_cxx_link_ok=no]) -LDFLAGS="$old_LDFLAGS" + [], + [libc_cv_cxx_link_ok=no]) + LDFLAGS="$old_LDFLAGS" +fi AC_LANG_POP([C++])]) AS_IF([test $libc_cv_cxx_link_ok != yes], [CXX=]) @@ -84,9 +102,6 @@ if test "`cd $srcdir; pwd -P`" = "`pwd -P`"; then AC_MSG_ERROR([you must configure in a separate build directory]) fi -# This will get text that should go into config.make. -config_vars= - # Check for a --with-gd argument and set libgd-LDFLAGS in config.make. AC_ARG_WITH([gd], AS_HELP_STRING([--with-gd=DIR], |