# Process this file with autoconf to produce a configure script. AC_INIT() AC_CONFIG_HEADER(Source/cmConfigure.h) # # check for some programs we use # # save the CFLAGS and CXXFLAGS specified by the user save_CFLAGS=$CFLAGS save_CXXFLAGS=$CXXFLAGS # let autoconf find cc and CC, it will try to add -g -O2 to CFLAGS and CXXFLAGS AC_PROG_CC AC_PROG_CXX # restore the flags specified by the user and get rid of any flags # found by autoconf (we do not want -02 -g by default) CFLAGS=$save_CFLAGS CXXFLAGS=$save_CXXFLAGS fullSrcDir=`cd $srcdir; pwd` CMAKE_ROOT_DIR=$fullSrcDir AC_SUBST(CMAKE_ROOT_DIR) # 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 CMAKE_CONFIG_DIR=`pwd` AC_SUBST(CMAKE_CONFIG_DIR) case $system in CYGWIN_NT*) CMAKE_CONFIG_DIR=`pwd` CMAKE_CONFIG_DIR="\"$CMAKE_CONFIG_DIR\"" ;; esac CMAKE_ANSI_CFLAGS="" CMAKE_ANSI_CXXFLAGS="" # on hp use -Aa for ansi if test $ac_cv_prog_gxx = no; then case $system in HP-UX-*.08.*|HP-UX-*.09.*|HP-UX-*.10.*) 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* ;; 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* ;; OSF1-*) echo $ac_n "checking whether ${CXX} accepts -std strict_ansi""... $ac_c" 1>&6 echo 'void f(){}' > conftest.c if test -z "`${CXX} -std strict_ansi -c conftest.c 2>&1`"; then echo "$ac_t""yes" 1>&6 CMAKE_ANSI_CXXFLAGS="-std strict_ansi" else echo "$ac_t""no" 1>&6 fi rm -f conftest* ;; esac fi AC_SUBST(CMAKE_ANSI_CFLAGS) AC_SUBST(CMAKE_ANSI_CXXFLAGS) # 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 AC_MSG_CHECKING( ansi standard C++ stream headers ) 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 AC_DEFINE(CMAKE_NO_ANSI_STREAM_HEADERS) echo "$ac_t""no" 1>&6 fi fi # check non-g++ compilers to see if they have std::stringstream AC_MSG_CHECKING( for ansi standard C++ stringstream ) 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 AC_DEFINE(CMAKE_NO_ANSI_STRING_STREAM) echo "$ac_t""no" 1>&6 fi # 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 < 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 AC_DEFINE(CMAKE_NO_STD_NAMESPACE) echo "$ac_t""no" 1>&6 fi fi # 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 <&1`"; then echo "$ac_t""yes" 1>&6 else AC_DEFINE(CMAKE_NO_ANSI_FOR_SCOPE) echo "$ac_t""no" 1>&6 fi fi # find make to use to build cmake, prefer gmake AC_PATH_PROGS(RUNMAKE, gmake make) AC_OUTPUT(Source/InitialConfigureFlags.cmake Makefile Source/Makefile) # build cmake $RUNMAKE # run cmake ./Source/cmake $fullSrcDir # run cmake depends $RUNMAKE depend