X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=configure.in;h=03ceaa1a578a6ee74d9c28c38dc3c84e4d44215a;hb=220a43bf4607c46a28a78c43b6037886884bd98f;hp=fde76c7f6f7d005a97ebbc011266232f9b68e8b1;hpb=b5705ff47a847ebbd6cf78130bdb710692e4fdd3;p=simgear.git diff --git a/configure.in b/configure.in index fde76c7f..03ceaa1a 100644 --- a/configure.in +++ b/configure.in @@ -6,23 +6,55 @@ dnl $Id$ AC_INIT(simgear/bucket/newbucket.cxx) dnl Initialize the automake stuff -AM_INIT_AUTOMAKE(SimGear, 0.0.11) +AM_INIT_AUTOMAKE(SimGear, 0.0.17) + +dnl Specify KAI C++ compiler and flags. +dnl Borrowed with slight modification from blitz distribution. +AC_ARG_WITH(cxx, + [ --with-cxx=COMPILER[:name-flags] set options for COMPILER (KCC)], + [case "$withval" in + KCC*) # KAI C++ http://www.kai.com/ + echo "Configuring for KAI C++" + AC_SG_SET_COMPILER($withval,"KCC","--restrict --strict_warnings") + CXX_OPTIMIZE_FLAGS=="+K3 -O3" + CXX_DEBUG_FLAGS="-g +K0" + ;; + esac +]) + +echo CXX = $CXX +echo CC = $CC dnl Checks for programs. AC_PROG_MAKE_SET AC_PROG_CC +AC_PROG_CPP AC_PROG_CXX AC_PROG_RANLIB AC_PROG_INSTALL AC_PROG_LN_S +AR="ar" +OS=`uname -s` +if test "$OS" = "IRIX" -o "$OS" = "IRIX64"; then + if test "$CXX" = "CC"; then + AR="CC -ar" + AC_SUBST(AR) + fi +fi + if echo $includedir | egrep "simgear$" > /dev/null; then echo "includedir is" $includedir "libdir is" $libdir else includedir="${includedir}/simgear" echo "includedir changed to" $includedir "libdir is" $libdir fi - + +# Determine version of automake ... important becuase of +# incompatibilities between versions +AUTO_MAKE_VERSION=`automake --version | head -1 | awk '{print $4}' | sed -e 's/\-p[[0-9]]$//' | sed -e 's/\.//'` +AM_CONDITIONAL(ANCIENT_AUTOMAKE, test $AUTO_MAKE_VERSION -lt 14) +AM_CONDITIONAL(OLD_AUTOMAKE, test $AUTO_MAKE_VERSION -lt 15) # set logging default value # with_logging=yes @@ -36,24 +68,28 @@ AC_ARG_WITH(efence, [ --with-efence Specify if we are building with " if test "x$with_efence" = "xyes" ; then echo "Building with efence" - LIBS= "$LIBS -lefence" + LIBS="$LIBS -lefence" fi dnl Check for MS Windows environment AC_CHECK_HEADER(windows.h) -dnl extra library and include directories -EXTRA_DIRS="/usr/local /usr/local/plib /usr/X11R6" +if test "$HOSTTYPE" != "macintosh" ; then + dnl extra library and include directories + EXTRA_DIRS="/usr/local /usr/local/plib /usr/X11R6" -if test -d /opt/X11R6 ; then - EXTRA_DIRS="$EXTRA_DIRS /opt/X11R6" -fi + if test -d /opt/X11R6 ; then + EXTRA_DIRS="$EXTRA_DIRS /opt/X11R6" + fi -if test "x$ac_cv_header_windows_h" = "xyes" ; then - EXTRA_DIRS="${EXTRA_DIRS} `pwd`/Win32" -# elif test `uname -s` = "SunOS" ; then -# EXTRA_DIRS="${EXTRA_DIRS} `pwd`/SunOS" + if test "x$ac_cv_header_windows_h" = "xyes" ; then + if test -d /usr/mingw/usr ; then + EXTRA_DIRS="$EXTRA_DIRS /usr/mingw/usr" + fi + EXTRA_DIRS="${EXTRA_DIRS} `pwd`/Win32" + fi fi + wi_EXTRA_DIRS(no, ${EXTRA_DIRS}) dnl Using AM_CONDITIONAL is a step out of the protected little @@ -66,8 +102,11 @@ dnl includes, compile alternative source files, etc. dnl Enable serial support on Unix type systems AM_CONDITIONAL(ENABLE_UNIX_SERIAL, true) -dnl Check for X11 (fancy) -AC_PATH_XTRA +dnl X11 might be installed on Mac OS X, don't want to use it if it is. +if test "$HOSTTYPE" != "macintosh" ; then + dnl Check for X11 (fancy) + AC_PATH_XTRA +fi dnl Checks for libraries. @@ -77,18 +116,34 @@ AC_CHECK_LIB(m, cos) base_LIBS="$LIBS" +dnl Thread related checks +AC_CHECK_LIB(pthread, pthread_exit) +AC_CHECK_HEADER(pthread.h) +if test "x$ac_cv_lib_pthread_pthread_exit" = "xyes" -a "x$ac_cv_header_pthread_h" = "xyes"; then + CXXFLAGS="$CXXFLAGS -D_REENTRANT" + CFLAGS="$CFLAGS -D_REENTRANT" +fi +AM_CONDITIONAL(HAVE_THREADS, test "x$ac_cv_lib_pthread_pthread_exit" = "xyes" -a "x$ac_cv_header_pthread_h" = "xyes") + AC_CHECK_LIB(socket, socket) -AC_CHECK_LIB(X11, XCreateWindow) -AC_CHECK_LIB(Xext, XShmCreateImage) -AC_CHECK_LIB(Xi, XGetExtensionVersion) -AC_CHECK_LIB(ICE, IceOpenConnection) -AC_CHECK_LIB(SM, SmcOpenConnection) -AC_CHECK_LIB(Xt, XtMalloc) -AC_CHECK_LIB(Xmu, XmuLookupStandardColormap) + +dnl X11 might be installed, but we don't want to use it for OSX -dw- +if test "$HOSTTYPE" != "macintosh" ; then + AC_CHECK_LIB(X11, XCreateWindow) + AC_CHECK_LIB(Xext, XShmCreateImage) + AC_CHECK_LIB(Xi, XGetExtensionVersion) + AC_CHECK_LIB(ICE, IceOpenConnection) + AC_CHECK_LIB(SM, SmcOpenConnection) + AC_CHECK_LIB(Xt, XtMalloc) + AC_CHECK_LIB(Xmu, XmuLookupStandardColormap) +fi dnl check for OpenGL related libraries -if test "x$ac_cv_header_windows_h" != "xyes" ; then +if test "$HOSTTYPE" = "macintosh" ; then + dnl Macintosh OSX + LIBS="$LIBS -framework OpenGL -framework GLUT" +elif test "x$ac_cv_header_windows_h" != "xyes" ; then dnl Reasonable stuff for non-windoze variants ... :-) AC_CHECK_LIB(GLcore, glNewList) @@ -228,8 +283,12 @@ AM_CONDITIONAL(HAVE_ZLIB, test "x$ac_cv_header_zlib_h" = "xyes" ) dnl Checks for header files. AC_HEADER_STDC AC_CHECK_HEADERS( \ - fcntl.h getopt.h malloc.h memory.h stdlib.h sys/param.h sys/stat.h \ - sys/time.h sys/timeb.h unistd.h windows.h winbase.h values.h ) + fcntl.h getopt.h malloc.h memory.h stdint.h stdlib.h sys/param.h \ + sys/stat.h sys/time.h sys/timeb.h unistd.h windows.h winbase.h values.h ) + +if test "x$ac_cv_header_stdint_h" = "xyes"; then + AC_DEFINE( HAVE_STDINT_H ) +fi dnl Checks for typedefs, structures, and compiler characteristics. AC_C_CONST @@ -243,7 +302,7 @@ AC_FUNC_VPRINTF AC_CHECK_FUNCS( ftime gettimeofday timegm memcpy bcopy mktime strstr rand \ random setitimer getitimer signal GetLocalTime rint getrusage ) -AM_CONFIG_HEADER(simgear/config.h) +AM_CONFIG_HEADER(simgear/simgear_config.h) AC_OUTPUT( \ Makefile \ @@ -253,14 +312,19 @@ AC_OUTPUT( \ simgear/bucket/Makefile \ simgear/debug/Makefile \ simgear/ephemeris/Makefile \ + simgear/io/Makefile \ simgear/magvar/Makefile \ simgear/math/Makefile \ + simgear/metar/Makefile \ simgear/misc/Makefile \ + simgear/route/Makefile \ simgear/screen/Makefile \ simgear/serial/Makefile \ simgear/sky/Makefile \ + simgear/threads/Makefile \ simgear/timing/Makefile \ simgear/xgl/Makefile \ + simgear/xml/Makefile \ simgear/zlib/Makefile \ ) @@ -288,9 +352,8 @@ else echo "Electric fence: no" fi -# if test "x$ac_cv_header_gdbm_h" != "xyes"; then -# echo "Building gdbm" -# fi +echo -n "Automake version: ($AUTO_MAKE_VERSION) " +automake --version | head -1 if test "x$ac_cv_header_mk4_h" != "xyes"; then echo "Building metakit" @@ -299,3 +362,15 @@ fi if test "x$ac_cv_header_zlib_h" != "xyes"; then echo "Building zlib" fi + +if test "x$ac_cv_lib_pthread_pthread_exit" = "xyes" -a "x$ac_cv_header_pthread_h" = "xyes"; then + echo "Threads: pthread lib found." +else + echo "Threads: no threads (pthread lib not found.)" +fi + +if test "$OS" = "IRIX" -o "$OS" = "IRIX64"; then + if test "$CXX" = "CC"; then + echo "\nRemember to run: sh ../FlightGear/irix-hack.sh!\07\n" + fi +fi