From 29058923349566477620c905c3ac5d150518cedc Mon Sep 17 00:00:00 2001 From: Brad King Date: Fri, 6 Sep 2002 17:19:18 -0400 Subject: ENH: Improved configure test implementations by using AC_TRY_COMPILE. --- configure | 369 +++++++++++++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 291 insertions(+), 78 deletions(-) (limited to 'configure') diff --git a/configure b/configure index bd4c27debb..5b1c6b348f 100755 --- a/configure +++ b/configure @@ -952,39 +952,132 @@ CMAKE_ANSI_CXXFLAGS="" if test $ac_cv_prog_gxx = no; then case $system in HP-UX-*.08.*|HP-UX-*.09.*|HP-UX-*.10.*) + CFLAGS_ORIG="$FLAGS" + CFLAGS="-Aa $CFLAGS" echo $ac_n "checking whether ${CC} accepts -Aa""... $ac_c" 1>&6 - echo 'void f(){}' > conftest.c - if test -z "`${CC} -Aa -c conftest.c 2>&1`"; then - echo "$ac_t""yes" 1>&6 - CMAKE_ANSI_CFLAGS="-Aa" - else - echo "$ac_t""no" 1>&6 - fi - rm -f conftest* +echo "configure:959: checking whether ${CC} accepts -Aa" >&5 + cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then + rm -rf conftest* + + echo "$ac_t""yes" 1>&6 + CMAKE_ANSI_CFLAGS="$CMAKE_ANSI_CFLAGS -Aa" + +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + + echo "$ac_t""no" 1>&6 + +fi +rm -f conftest* + CFLAGS="$CFLAGS_ORIG" ;; - IRIX-5* | IRIX-6* | IRIX64-6* | IRIX-64-6*) + IRIX-5* | IRIX-6* | IRIX64-6* | IRIX-64-6*) + CXXFLAGS_ORIG="$CXXFLAGS" + CXXFLAGS="-LANG:std $CXXFLAGS" echo $ac_n "checking whether ${CXX} accepts -LANG:std""... $ac_c" 1>&6 - echo 'void f(){}' > conftest.c - if test -z "`${CXX} -LANG:std -c conftest.c 2>&1`"; then - echo "$ac_t""yes" 1>&6 - CMAKE_ANSI_CXXFLAGS="-LANG:std" - else - echo "$ac_t""no" 1>&6 - fi - rm -f conftest* - ;; +echo "configure:991: checking whether ${CXX} accepts -LANG:std" >&5 + + ac_ext=C +# CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cxx_cross + + cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then + rm -rf conftest* + + echo "$ac_t""yes" 1>&6 + CMAKE_ANSI_CXXFLAGS="-LANG:std" + +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + + echo "$ac_t""no" 1>&6 + +fi +rm -f conftest* + ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + + CXXFLAGS="$CXXFLAGS_ORIG" + ;; OSF1-*) + + CXXFLAGS_ORIG="$CXXFLAGS" + CXXFLAGS="-std strict_ansi -nopure_cname $CXXFLAGS" echo $ac_n "checking whether ${CXX} accepts -std strict_ansi -nopure_cname""... $ac_c" 1>&6 - echo 'void f(){}' > conftest.c - if test -z "`${CXX} -std strict_ansi -nopure_cname -c conftest.c 2>&1`"; then - echo "$ac_t""yes" 1>&6 - CMAKE_ANSI_CXXFLAGS="-std strict_ansi -nopure_cname" - else - echo "$ac_t""no" 1>&6 - fi - rm -f conftest* - ;; +echo "configure:1039: checking whether ${CXX} accepts -std strict_ansi -nopure_cname" >&5 + + ac_ext=C +# CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cxx_cross + cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then + rm -rf conftest* + + echo "$ac_t""yes" 1>&6 + CMAKE_ANSI_CXXFLAGS="-std strict_ansi -nopure_cname" + +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + + echo "$ac_t""no" 1>&6 + +fi +rm -f conftest* + ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + + CXXFLAGS="$CXXFLAGS_ORIG" + ;; esac fi @@ -993,77 +1086,197 @@ fi # check non-g++ compilers to see if they have the standard # ansi stream files (without the .h) if test $ac_cv_prog_gxx = no; then + CXXFLAGS_ORIG="$CXXFLAGS" + CXXFLAGS="$CMAKE_ANSI_CXXFLAGS $CXXFLAGS" echo $ac_n "checking ansi standard C++ stream headers ""... $ac_c" 1>&6 -echo "configure:998: checking ansi standard C++ stream headers " >&5 - rm -rf conftest.* - cat > conftest.cc < -! - if test -z "`${CXX} $CMAKE_ANSI_CXXFLAGS $CXXFLAGS $CPPFLAGS -c conftest.cc 2>&1`"; then - echo "$ac_t""yes" 1>&6 - else - cat >> confdefs.h <<\EOF -#define CMAKE_NO_ANSI_STREAM_HEADERS 1 +echo "configure:1093: checking ansi standard C++ stream headers " >&5 + + ac_ext=C +# CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cxx_cross + + cat > conftest.$ac_ext < + +int main() { + +; return 0; } EOF +if { (eval echo configure:1112: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + rm -rf conftest* + + echo "$ac_t""yes" 1>&6 + +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + + CMAKE_NO_ANSI_STREAM_HEADERS=1 + echo "$ac_t""no" 1>&6 + +fi +rm -f conftest* + ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross - echo "$ac_t""no" 1>&6 - fi + CXXFLAGS="$CXXFLAGS_ORIG" fi # check non-g++ compilers to see if they have std::stringstream -echo $ac_n "checking for ansi standard C++ stringstream ""... $ac_c" 1>&6 -echo "configure:1016: checking for ansi standard C++ stringstream " >&5 -rm -rf conftest.* -cat > conftest.cc <&6 +echo "configure:1141: checking for ansi standard C++ stringstream" >&5 + +ac_ext=C +# CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cxx_cross + +cat > conftest.$ac_ext < -! -if test -z "`${CXX} $CMAKE_ANSI_CXXFLAGS $CXXFLAGS $CPPFLAGS -c conftest.cc 2>&1`"; then - echo "$ac_t""yes" 1>&6 -else - cat >> confdefs.h <<\EOF -#define CMAKE_NO_ANSI_STRING_STREAM 1 + +int main() { + +; return 0; } EOF +if { (eval echo configure:1160: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + rm -rf conftest* + +echo "$ac_t""yes" 1>&6 + +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + +CMAKE_NO_ANSI_STRING_STREAM=1 +echo "$ac_t""no" 1>&6 - echo "$ac_t""no" 1>&6 fi +rm -f conftest* +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +CXXFLAGS="$CXXFLAGS_ORIG" # check to see if stl is in the std namespace if test $ac_cv_prog_gxx = no; then - echo $ac_n "checking ansi standard namespace support ""... $ac_c" 1>&6 -echo "configure:1034: checking ansi standard namespace support " >&5 - rm -rf conftest.* - cat > conftest.cc < -void foo() { std::list l; } -! - if test -z "`${CXX} $CMAKE_ANSI_CXXFLAGS $CXXFLAGS $CPPFLAGS -c conftest.cc 2>&1`"; then - echo "$ac_t""yes" 1>&6 - else - cat >> confdefs.h <<\EOF -#define CMAKE_NO_STD_NAMESPACE 1 + CXXFLAGS_ORIG="$CXXFLAGS" + CXXFLAGS="$CMAKE_ANSI_CXXFLAGS $CXXFLAGS" + echo $ac_n "checking whether the std namespace is supported""... $ac_c" 1>&6 +echo "configure:1189: checking whether the std namespace is supported" >&5 + + ac_ext=C +# CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cxx_cross + + cat > conftest.$ac_ext < + void foo() { std::list(); } + +int main() { + +; return 0; } EOF +if { (eval echo configure:1209: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + rm -rf conftest* + + echo "$ac_t""yes" 1>&6 + +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + + CMAKE_NO_STD_NAMESPACE=1 + echo "$ac_t""no" 1>&6 + +fi +rm -f conftest* + ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross - echo "$ac_t""no" 1>&6 - fi + CXXFLAGS="$CXXFLAGS_ORIG" fi # check to see if for scoping is supported if test $ac_cv_prog_gxx = no; then - echo $ac_n "checking ansi for scope support ""... $ac_c" 1>&6 -echo "configure:1054: checking ansi for scope support " >&5 - rm -rf conftest.* - cat > conftest.cc <&1`"; then - echo "$ac_t""yes" 1>&6 - else - cat >> confdefs.h <<\EOF -#define CMAKE_NO_ANSI_FOR_SCOPE 1 + CXXFLAGS_ORIG="$CXXFLAGS" + CXXFLAGS="$CMAKE_ANSI_CXXFLAGS $CXXFLAGS" + echo $ac_n "checking ansi for scope support""... $ac_c" 1>&6 +echo "configure:1239: checking ansi for scope support" >&5 + + ac_ext=C +# CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cxx_cross + + cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then + rm -rf conftest* + + echo "$ac_t""yes" 1>&6 + +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + + CMAKE_NO_ANSI_FOR_SCOPE=1 + echo "$ac_t""no" 1>&6 + +fi +rm -f conftest* + ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross - echo "$ac_t""no" 1>&6 - fi + CXXFLAGS="$CXXFLAGS_ORIG" fi # find make to use to build cmake, prefer gmake @@ -1072,7 +1285,7 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1076: checking for $ac_word" >&5 +echo "configure:1289: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_RUNMAKE'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else -- cgit v1.2.1