AC_INIT(simgear/bucket/newbucket.cxx)
dnl Initialize the automake stuff
-AM_INIT_AUTOMAKE(SimGear, 0.0.13)
+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
if test "x$with_efence" = "xyes" ; then
echo "Building with efence"
- LIBS= "$LIBS -lefence"
+ LIBS="$LIBS -lefence"
fi
dnl Check for MS Windows environment
fi
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"
-# elif test `uname -s` = "SunOS" ; then
-# EXTRA_DIRS="${EXTRA_DIRS} `pwd`/SunOS"
fi
wi_EXTRA_DIRS(no, ${EXTRA_DIRS})
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)
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
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 \
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 \
)
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