summaryrefslogtreecommitdiff
path: root/configure
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2002-09-06 17:19:18 -0400
committerBrad King <brad.king@kitware.com>2002-09-06 17:19:18 -0400
commit29058923349566477620c905c3ac5d150518cedc (patch)
tree6749adb6632309f78afafdf1cbddb81637f898f3 /configure
parent41628d2602733993d74a24cc557083a6a007c845 (diff)
downloadcmake-29058923349566477620c905c3ac5d150518cedc.tar.gz
ENH: Improved configure test implementations by using AC_TRY_COMPILE.
Diffstat (limited to 'configure')
-rwxr-xr-xconfigure369
1 files changed, 291 insertions, 78 deletions
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 <<EOF
+#line 961 "configure"
+#include "confdefs.h"
+
+ void foo() {}
+
+int main() {
+
+; return 0; }
+EOF
+if { (eval echo configure:970: \"$ac_compile\") 1>&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 <<EOF
+#line 1001 "configure"
+#include "confdefs.h"
+
+ void foo() {}
+
+int main() {
+
+; return 0; }
+EOF
+if { (eval echo configure:1010: \"$ac_compile\") 1>&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 <<EOF
+#line 1049 "configure"
+#include "confdefs.h"
+
+ void foo() {}
+
+int main() {
+
+; return 0; }
+EOF
+if { (eval echo configure:1058: \"$ac_compile\") 1>&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 <<!
-#include <iostream>
-!
- 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 <<EOF
+#line 1103 "configure"
+#include "confdefs.h"
+
+ #include <iostream>
+
+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 <<!
+CXXFLAGS_ORIG="$CXXFLAGS"
+CXXFLAGS="$CMAKE_ANSI_CXXFLAGS $CXXFLAGS"
+echo $ac_n "checking for ansi standard C++ stringstream""... $ac_c" 1>&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 <<EOF
+#line 1151 "configure"
+#include "confdefs.h"
+
#include <sstream>
-!
-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 <<!
-#include <list>
-void foo() { std::list<int> 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 <<EOF
+#line 1199 "configure"
+#include "confdefs.h"
+
+ #include <list>
+ void foo() { std::list<int>(); }
+
+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 <<!
-void foo() { for(int i;;); for(int i;;); }
-!
- 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_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 <<EOF
+#line 1249 "configure"
+#include "confdefs.h"
+
+ void foo() { for(int i;;); for(int i;;); }
+
+int main() {
+
+; return 0; }
EOF
+if { (eval echo configure:1258: \"$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_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