dnl
dnl $Id$
-AC_INIT(bucket/newbucket.cxx)
+AC_INIT(simgear/bucket/newbucket.cxx)
dnl Initialize the automake stuff
-AM_INIT_AUTOMAKE(SimGear, 0.0.0)
+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
fi
-dnl Specify if we want logging (testing build) or not (release build)
# set logging default value
# with_logging=yes
AC_ARG_WITH(logging, [ --with-logging Include logging output (default)])
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)
exit
fi
+# dnl Check for system installed gdbm
+# AC_CHECK_HEADER(gdbm.h)
+# if test "x$ac_cv_header_gdbm_h" = "xyes"; then
+# AC_DEFINE( HAVE_GDBM )
+# else
+# echo "no gdbm found, configuring and building."
+# fi
+# AM_CONDITIONAL(HAVE_GDBM, test "x$ac_cv_header_gdbm_h" = "xyes" )
+
+dnl Check for system installed metakit
+AC_CHECK_HEADER(mk4.h)
+if test "x$ac_cv_header_mk4_h" != "xyes"; then
+ echo "no metakit found, configuring and building."
+ # Run configure in the metakit subdir
+ AC_CONFIG_SUBDIRS( simgear/metakit/unix )
+fi
+AM_CONDITIONAL(HAVE_METAKIT, test "x$ac_cv_header_mk4_h" = "xyes" )
+
+
+dnl Specify if we want logging (testing build) or not (release build)
+
dnl Check for system installed zlib
AC_CHECK_HEADER(zlib.h)
-if test "x$ac_cv_header_zlib_h" != "xyes"; then
+if test "x$ac_cv_header_zlib_h" = "xyes"; then
+ AC_DEFINE( HAVE_ZLIB )
+else
echo "no zlib found, building."
fi
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
AC_CHECK_FUNCS( ftime gettimeofday timegm memcpy bcopy mktime strstr rand \
random setitimer getitimer signal GetLocalTime rint getrusage )
-AM_CONFIG_HEADER(include/config.h)
+AM_CONFIG_HEADER(simgear/simgear_config.h)
AC_OUTPUT( \
- VERSION \
Makefile \
- include/Makefile \
- bucket/Makefile \
- debug/Makefile \
- math/Makefile \
- misc/Makefile \
- screen/Makefile \
- serial/Makefile \
- xgl/Makefile \
- zlib/Makefile \
+ SimGear.spec \
+ simgear/Makefile \
+ simgear/version.h \
+ 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 \
)
-AC_OUTPUT_COMMANDS([./mksymlinks.sh])
+AC_OUTPUT_COMMANDS([
+# if test "x$ac_cv_header_windows_h" = "xyes" ; then
+# cp simgear/gdbm/autoconf.h.cygwin32 simgear/gdbm/autoconf.h
+# fi
+])
echo ""
echo "Configure Summary"
else
echo "Electric fence: no"
fi
+
+# if test "x$ac_cv_header_gdbm_h" != "xyes"; then
+# echo "Building gdbm"
+# fi
+
+if test "x$ac_cv_header_mk4_h" != "xyes"; then
+ echo "Building metakit"
+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