| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187 |
- # Process this file with autoconf to produce a configure script.
- AC_INIT()
- #
- # check for some programs we use
- #
- # save the CXXFLAGS specified by the user
- save_CXXFLAGS=$CXXFLAGS
- AC_PROG_CXX
- # Step 1: set the variable "system" to hold the name and version number
- # for the system. This can usually be done via the "uname" command, but
- # there are a few systems, like Next, where this doesn't work.
- AC_MSG_CHECKING([system version (for dynamic loading)])
- if test -f /usr/lib/NextStep/software_version; then
- system=NEXTSTEP-`awk '/3/,/3/' /usr/lib/NextStep/software_version`
- else
- system=`uname -s`-`uname -r`
- if test "$?" -ne 0 ; then
- AC_MSG_RESULT([unknown (can't find uname command)])
- system=unknown
- else
- # Special check for weird MP-RAS system (uname returns weird
- # results, and the version is kept in special file).
-
- if test -r /etc/.relid -a "X`uname -n`" = "X`uname -s`" ; then
- system=MP-RAS-`awk '{print $3}' /etc/.relid'`
- fi
- AC_MSG_RESULT($system)
- fi
- fi
- # restore the flags specified by the user and get rid of any flags
- # found by autoconf (we do not want -02 -g by default)
- CXXFLAGS=$save_CXXFLAGS
- CMAKE_NO_EXPLICIT_TEMPLATE_INSTANTIATION=""
- if test $ac_cv_prog_gxx = no; then
- echo $ac_n "checking whether ${CXX} supports explicit instantiation""... $ac_c" 1>&6
- echo 'template<class T>class x{};template class x<int>;' > conftest.cc
- if test -z "`${CXX} -c conftest.cc 2>&1`"; then
- echo "$ac_t""yes" 1>&6
- else
- echo "$ac_t""no" 1>&6
- CMAKE_NO_EXPLICIT_TEMPLATE_INSTANTIATION="1"
- fi
- rm -f conftest*
- fi
- # if running on darwin no explicit template instantiations even though
- # syntax is supported.
- case $system in
- Darwin*)
- CMAKE_NO_EXPLICIT_TEMPLATE_INSTANTIATION="1"
- ;;
- esac
- AC_SUBST(CMAKE_NO_EXPLICIT_TEMPLATE_INSTANTIATION)
- CMAKE_ANSI_CXXFLAGS=""
- # on hp use -Aa for ansi
- if test $ac_cv_prog_gxx = no; then
- case $system in
- IRIX-5* | IRIX-6* | IRIX64-6* | IRIX-64-6*)
- 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*
- ;;
- esac
- fi
- AC_SUBST(CMAKE_ANSI_CXXFLAGS)
- # if we are not running g++ then we might need some other flags
- # to get the templates compiled correctly
- CMAKE_TEMPLATE_FLAGS=""
- if test $ac_cv_prog_gxx = no; then
- echo $ac_n "checking whether ${CXX} accepts -ptused -no_prelink""... $ac_c" 1>&6
- echo 'void f(){}' > conftest.cc
- if test -z "`${CXX} -ptused -no_prelink -c conftest.cc 2>&1`"; then
- echo "$ac_t""yes" 1>&6
- CMAKE_TEMPLATE_FLAGS="-ptused -no_prelink"
- else
- echo "$ac_t""no" 1>&6
- fi
- rm -f conftest*
- fi
- AC_SUBST(CMAKE_TEMPLATE_FLAGS)
- # check no g++ compilers to see if they have the standard
- # ansi stream files (without the .h)
- if test $ac_cv_prog_gxx = no; then
- AC_MSG_CHECKING( ansi standard C++ stream headers )
- 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
- CMAKE_NO_ANSI_STREAM_HEADERS="1"
- echo "$ac_t""no" 1>&6
- fi
- fi
- AC_SUBST(CMAKE_NO_ANSI_STREAM_HEADERS)
- # check to see if stl is in the std namespace
- if test $ac_cv_prog_gxx = no; then
- AC_MSG_CHECKING( ansi standard namespace support )
- 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
- CMAKE_NO_STD_NAMESPACE="1"
- echo "$ac_t""no" 1>&6
- fi
- fi
- AC_SUBST(CMAKE_NO_STD_NAMESPACE)
- # check to see if for scoping is supported
- if test $ac_cv_prog_gxx = no; then
- AC_MSG_CHECKING( ansi for scope support )
- 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
- CMAKE_NO_ANSI_FOR_SCOPE="1"
- echo "$ac_t""no" 1>&6
- fi
- fi
- AC_SUBST(CMAKE_NO_ANSI_FOR_SCOPE)
- # find make to use to build cmake, prefer gmake
- AC_PATH_PROGS(CMAKE_AR_TMP, ar)
- CMAKE_CXX_AR="$CMAKE_AR_TMP"
- CMAKE_CXX_AR_ARGS="cr"
- # if on SunOS and not using gXX then use the compiler to make .a libs
- case $system in
- SunOS-5*)
- if test $ac_cv_prog_gxx = yes; then
- :
- else
- echo "Using $CXX -xar -o for creating .a libraries"
- CMAKE_CXX_AR="$CXX"
- CMAKE_CXX_AR_ARGS="-xar -o"
- fi
- ;;
- IRIX*)
- if test $ac_cv_prog_gxx = yes; then
- :
- else
- echo "Using $CXX -xar -o for creating .a libraries"
- CMAKE_CXX_AR="$CXX"
- CMAKE_CXX_AR_ARGS="-ar -o"
- fi
- ;;
- esac
- AC_SUBST(CMAKE_CXX_AR)
- AC_SUBST(CMAKE_CXX_AR_ARGS)
- CMAKE_COMPILER_IS_GNUGXX=0
- if test $ac_cv_prog_gxx = yes; then
- CMAKE_COMPILER_IS_GNUCXX=1
- fi
- AC_SUBST(CMAKE_COMPILER_IS_GNUCXX)
- # generate output files.
- # create mkdir files just to make some of the directories
- AC_OUTPUT( CXXCMakeSystemConfig.cmake )
|