X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=configure.ac;h=28e846cd491bf215f9a35e98e562011d5cbd8c7f;hb=20ac2dcd044c418de5819b51cccb1dcf4c073041;hp=2136625ba2dc490f6d0bdeb4a4733d8b32e79e47;hpb=4b0b49d1ed9ef2080b293b92696446fc4be2ae83;p=simgear.git diff --git a/configure.ac b/configure.ac index 2136625b..28e846cd 100644 --- a/configure.ac +++ b/configure.ac @@ -1,17 +1,17 @@ -dnl Process this file with autoget.sh to produce a working configure +dnl Process this file with autogen.sh to produce a working configure dnl script. -dnl -dnl $Id$ -AC_INIT +AC_INIT(SimGear, m4_esyscmd([cat ./version | tr -d '\n']), [http://www.flightgear.org]) + +dnl Ensure touching the version causes autoconf to re-run +AC_SUBST([CONFIGURE_DEPENDENCIES], ['$(top_srcdir)/version']) + AC_CONFIG_SRCDIR([simgear/bucket/newbucket.cxx]) dnl Require at least automake 2.52 AC_PREREQ(2.52) dnl Initialize the automake stuff -AM_INIT_AUTOMAKE(SimGear, 0.3.1) - dnl Specify KAI C++ compiler and flags. dnl Borrowed with slight modification from blitz distribution. AC_ARG_WITH(cxx, @@ -25,36 +25,81 @@ AC_ARG_WITH(cxx, ;; esac ]) +dnl set the $host variable based on local machine/os +AC_CANONICAL_TARGET +AM_INIT_AUTOMAKE([dist-bzip2]) + +AC_ARG_ENABLE(headless, + AS_HELP_STRING([--enable-headless],[Enable only packages for headless build])) -echo CXX = $CXX -echo CC = $CC +AC_MSG_CHECKING([for headless mode]) +AC_MSG_RESULT([$enable_headless]) + +AM_CONDITIONAL(WANT_HEADLESS,[test "x$enable_headless" = "xyes"]) + +AC_MSG_CHECKING([CXX]) +AC_MSG_RESULT([$CXX]) +AC_MSG_CHECKING([CC]) +AC_MSG_RESULT([$CC]) dnl Checks for programs. AC_PROG_MAKE_SET AC_PROG_CC AC_PROG_CPP AC_PROG_CXX +AC_PROG_CXXCPP AC_PROG_RANLIB AC_PROG_INSTALL AC_PROG_LN_S +AX_BOOST_BASE([1.37.0]) + +if test "x$BOOST_CPPFLAGS" != "x-I/usr/include" ; then + CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS" +fi dnl set the $host variable based on local machine/os AC_CANONICAL_HOST dnl Used on the Irix platform -AR="ar" -ARFLAGS="cru" case "${host}" in *-*-irix*) - if test "$CXX" = "CC"; then - AR="CC -ar" + if test "x$CXX" = "xCC" -o "x$CXX" = "xccache CC"; then + AR="$CXX -ar" ARFLAGS="-o" - CXXFLAGS="$CXXFLAGS -I$(top_srcdir)/simgear/compatibility" + CXXFLAGS="$CXXFLAGS -I$(top_srcdir)/simgear/compatibility/MIPSpro740" + compatibility_DIR="compatibility" + MIPSpro_DIRS="MIPSpro740" + AC_MSG_CHECKING([for MIPSpro compiler version 7.4 or newer]) + AC_TRY_RUN([ + int main() { + if ( _COMPILER_VERSION < 740 ) { + return -1; + } + return 0; + } + + ], AC_MSG_RESULT(yes), + [ AC_MSG_RESULT(no) + CXXFLAGS="$CXXFLAGS -I$(top_srcdir)/simgear/compatibility/MIPSpro721" + MIPSpro_DIRS="$(MIPSpro_DIRS) MIPSpro721" + AC_MSG_WARN([Using our own subset of the STL headers]) + ], AC_MSG_RESULT(yes)) + AC_SUBST(MIPSpro_DIRS) fi ;; +*) + AR="ar" + ARFLAGS="cru" + compatibility_DIR= + ;; esac AC_SUBST(AR) AC_SUBST(ARFLAGS) +AC_SUBST(compatibility_DIR) + +# Show all compiler warnings by default +CXXFLAGS="$CXXFLAGS -Wall" +CFLAGS="$CFLAGS -Wall" if echo $includedir | egrep "simgear$" > /dev/null; then echo "includedir is" $includedir "libdir is" $libdir @@ -62,7 +107,7 @@ else includedir="${includedir}/simgear" echo "includedir changed to" $includedir "libdir is" $libdir fi - + dnl set logging; default value of with_logging=yes AC_ARG_WITH(logging, [ --with-logging Include logging output (default)]) if test "x$with_logging" = "xno" ; then @@ -91,10 +136,48 @@ else fi AM_CONDITIONAL(ENABLE_JPEG_SERVER, test "x$with_jpeg_factory" = "xyes") +# specify the osg location +AC_ARG_WITH(osg, [ --with-osg=PREFIX Specify the prefix path to osg]) + +if test "x$with_osg" != "x" ; then + echo "osg prefix is $with_osg" + EXTRA_DIRS="${EXTRA_DIRS} $with_osg" +fi + +AC_ARG_WITH(osg_framework, [ --with-osg-framework=PREFIX Specify the prefix path to OSG.framework ]) + +if test "x$with_osg_framework" != "x"; then + echo "osg framework prefix is $with_osg_framework" + CPPFLAGS = "$CPPFLAGS -F$with-osg-framework" + export DYLD_FRAMEWORK_PATH="$DYLD_FRAMEWORK_PATH:$with_osg_framework" +fi + +dnl specifying ALUT.framework (for user provided ALUT.framework) +AC_ARG_WITH(alut_framework, [ --with-alut-framework=PREFIX Specify the prefix path to ALUT.framework ]) + +if test "x$with_alut_framework" != "x"; then + echo "ALUT framework prefix is $with_alut_framework" +fi + +# specify the rti13 location +AC_ARG_WITH(rti13, [ --with-rti13=PREFIX Specify the prefix path to a HLA13 rti]) + +if test "x$with_rti13" != "x" ; then + echo "rti13 prefix is $with_rti13" + EXTRA_DIRS="${EXTRA_DIRS} $with_rti13" +fi + +# specify the rti13 location +AC_ARG_WITH(rti1516, [ --with-rti1516=PREFIX Specify the prefix path to a HLA1516 rti]) + +if test "x$with_rti1516" != "x" ; then + echo "rti1516 prefix is $with_rti1516" + EXTRA_DIRS="${EXTRA_DIRS} $with_rti1516" +fi dnl Determine an extra directories to add to include/lib search paths case "${host}" in -*-apple-darwin* | *-*-mingw32*) +*-apple-darwin* | *-*-cygwin* | *-*-mingw32*) echo no EXTRA_DIRS for $host ;; @@ -105,14 +188,14 @@ case "${host}" in if test -d /opt/X11R6 ; then EXTRA_DIR2="/opt/X11R6" fi - EXTRA_DIRS="$EXTRA_DIR1 $EXTRA_DIR2" + EXTRA_DIRS="${EXTRA_DIRS} $EXTRA_DIR1 $EXTRA_DIR2" ;; esac wi_EXTRA_DIRS(no, ${EXTRA_DIRS}) -dnl Using AM_CONDITIONAL is a step out of the protected little +dnl Using AM_CONDITIONAL is a step out of the protected little dnl automake fold so it is potentially dangerous. But, we are dnl beginning to run into cases where the standard checks are not dnl enough. AM_CONDITIONALS are then referenced to conditionally @@ -134,55 +217,36 @@ esac dnl Checks for libraries. -null_LIBS="$LIBS" - -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 +AC_SEARCH_LIBS(pthread_exit, [pthread c_r]) +if test "x$ac_cv_header_pthread_h" = "xyes"; then CXXFLAGS="$CXXFLAGS -D_REENTRANT" CFLAGS="$CFLAGS -D_REENTRANT" -fi -if test "x$ac_cv_lib_pthread_pthread_exit" != "xyes" -a "x$ac_cv_header_pthread_h" = "xyes"; then - dnl FreeBSD: System has pthread.h, but -lpthread library check - dnl fails. See if we need -pthread instead of -lpthread and look - dnl for the functions in libc_r. - save_CXXFLAGS="$CXXFLAGS" - save_CFLAGS="$CFLAGS" + + if test "x$ac_cv_search_pthread_exit" = "x-lc_r"; then CXXFLAGS="-pthread $CXXFLAGS" - CFLAGS="-pthread $FLAGS" - save_LIBS=$LIBS - AC_CHECK_LIB(c_r, pthread_exit) - if test "x$ac_cv_lib_c_r_pthread_exit" != "xyes"; then - CXXFLAGS=$save_CXXFLAGS - CFLAGS=$save_CFLAGS - else - dnl This is cheating a bit. pthread_exit comes with using -pthread, not -lpthread - ac_cv_lib_pthread_pthread_exit="yes" - fi - LIBS=$save_LIBS + CFLAGS="-pthread $CFLAGS" + fi 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) +AM_CONDITIONAL(HAVE_THREADS, test "x$ac_cv_header_pthread_h" = "xyes") -dnl check for glut location -AC_CHECK_HEADER(GL/glut.h) -if test "x$ac_cv_header_GL_glut_h" = "xyes"; then - AC_DEFINE([GLUT_H], "GL/glut.h", [Define as glut.h include location]) -else - AC_CHECK_HEADER(GLUT/glut.h) - if test "x$ac_cv_header_GLUT_glut_h" = "xyes"; then - AC_DEFINE([GLUT_H], "GLUT/glut.h", [Define as glut.h include location]) - else - echo "Neither GL/glut.h nor GLUT/glut.h found. Cannot continue" - exit - fi -fi +thread_LIBS="$LIBS" +LIBS="" + +dnl search for network related libraries +AC_SEARCH_LIBS(inet_addr, xnet) +AC_SEARCH_LIBS(socket, socket) + +network_LIBS="$LIBS" +LIBS="" + +dnl check for some default libraries +AC_SEARCH_LIBS(cos, m) +AC_SEARCH_LIBS(clock_gettime, rt) + +base_LIBS="$LIBS" dnl check for OpenGL related libraries case "${host}" in @@ -193,7 +257,7 @@ case "${host}" in AC_DEFINE([WIN32], 1, [Define for Win32 platforms]) AC_DEFINE([NOMINMAX], 1, [Define for Win32 platforms]) - LIBS="$LIBS -lglut32 -lglu32 -lopengl32" + LIBS="$LIBS -lglu32 -lopengl32" LIBS="$LIBS -luser32 -lgdi32 -lwinmm" dnl add -lwsock32 for mingwin @@ -209,35 +273,28 @@ case "${host}" in *-apple-darwin*) dnl Mac OS X - LIBS="$LIBS -framework GLUT -framework OpenGL -framework Carbon -lobjc" + LIBS="$LIBS -framework OpenGL -framework Carbon -lobjc" ;; *) dnl X-Windows based machines - 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) - - AC_CHECK_LIB(GLcore, glNewList) - if test "x$ac_cv_lib_GLcore_glNewList" = "xno" ; then - dnl if no GLcore, check for GL - AC_CHECK_LIB(GL, glNewList) - if test "x$ac_cv_lib_GL_glNewList" = "xno" ; then - dnl if no GL, check for MesaGL - AC_CHECK_LIB(MesaGL, glNewList) - fi - else + AC_SEARCH_LIBS(XCreateWindow, X11) + AC_SEARCH_LIBS(XShmCreateImage, Xext) + AC_SEARCH_LIBS(XGetExtensionVersion, Xi) + AC_SEARCH_LIBS(IceOpenConnection, ICE) + AC_SEARCH_LIBS(SmcOpenConnection, SM) + AC_SEARCH_LIBS(XtMalloc, Xt) + AC_SEARCH_LIBS(XmuLookupStandardColormap, Xmu) + + AC_SEARCH_LIBS(glNewList, [ GL GLcore MesaGL ]) + if test "x$ac_cv_search_glNewList" = "x-lGLcore"; then dnl if GLcore found, then also check for GL - AC_CHECK_LIB(GL, glXCreateContext) + AC_SEARCH_LIBS(glXCreateContext, GL) fi dnl if using mesa, check for xmesa.h - if test "x$ac_cv_lib_MesaGL_glNewList" = "xyes" ; then + if test "x$ac_cv_search_glNewList" = "x-lMesaGL"; then AC_CHECK_HEADER(GL/fxmesa.h) if test "x$ac_cv_header_GL_fxmesa_h" = "xyes"; then AC_DEFINE([XMESA], 1, [Define for fxmesa]) @@ -245,22 +302,130 @@ case "${host}" in fi fi - AC_CHECK_LIB(GLU, gluLookAt) - if test "x$ac_cv_lib_GLU_gluLookAt" = "xno" ; then - dnl if no GLU, check for MesaGLU - AC_CHECK_LIB(MesaGLU, gluLookAt) + AC_SEARCH_LIBS(gluLookAt, [ GLU MesaGLU ]) + ;; + +esac + +opengl_LIBS="$LIBS" +LIBS="$base_LIBS" + +dnl check for OpenAL libraries +OPENAL_OK="no" +ALUT_OK="no" +case "${host}" in +*-*-cygwin* | *-*-mingw32*) + dnl CygWin under Windoze. + INCLUDES="$INCLUDES -I/usr/local/include/" + LIBS="$LIBS -L/usr/local/lib" + AC_SEARCH_LIBS(alGenBuffers, [ openal32 openal 'openal -ldsound -lwinmm' ] ) + AC_SEARCH_LIBS(alutInit, [ openal32 ALut alut ] ) + LIBS="$LIBS -lwinmm -ldsound -ldxguid -lole32" + openal_LIBS="$LIBS" + OPENAL_OK="$ac_cv_search_alGenBuffers" + ALUT_OK="$ac_cv_search_alutInit" + ;; + +*-apple-darwin*) + dnl Mac OS X + + LIBS="$LIBS -framework IOKit -framework OpenAL -framework ALUT" + openal_LIBS="$LIBS" + + if test "x$with_openal_lib" != "x"; then + echo "libopenal is not supported on Mac OS platform." + openal_LIBS="" + fi + + AC_CHECK_HEADERS([OpenAL/al.h],[OPENAL_OK="yes"]) + # Looking for alut.h + AC_CHECK_HEADERS([ALUT/alut.h],[ALUT_OK="yes"]) + + dnl Thank you Christian Bauer from SheepSaver + dnl Modified by Tatsuhiro Nishioka for accepting a given framework path + dnl AC_CHECK_FRAMEWORK($1=NAME, $2=INCLUDES, $3=FRAMEWORK_PATH, $4=ACTION_IF_TRUE) ; $3 is optional + AC_DEFUN([AC_CHECK_FRAMEWORK], [ + AS_VAR_PUSHDEF([ac_Framework], [ac_cv_framework_$1])dnl + AC_CACHE_CHECK([whether compiler supports framework $1], + ac_Framework, [ + saved_LIBS="$LIBS" + FRAMEWORKS="$FRAMEWORKS -framework $1" + if test "$3" = ""; then + FRAMEWORKS="$FRAMEWORKS $ADD2LD" + elif test "`echo $FRAMEWORKS | grep -- -F$3`" = ""; then + FRAMEWORKS="$FRAMEWORKS -F$3" + CXXFLAGS="$CXXFLAGS -F$3" + CPPFLAGS="$CPPFLAGS -F$3" + CCFLAGS="$CCFLAGS -F$3" + dnl This is needed for AC_TRY_LINK when a framework path is specified + export DYLD_FRAMEWORK_PATH="${DYLD_FRAMEWORK_PATH}:$3" + fi + AC_TRY_LINK( + [$2], [], + [AS_VAR_SET(ac_Framework, yes)], [AS_VAR_SET(ac_Framework, no); LIBS="$saved_LIBS"] + ) + ]) + AS_IF([test AS_VAR_GET(ac_Framework) = yes], + [AC_DEFINE(AS_TR_CPP(HAVE_FRAMEWORK_$1), 1, [Define if framework $1 is available.])] + ) + AS_IF([test AS_VAR_GET(ac_Framework) = yes], $4) + + AS_VAR_POPDEF([ac_Framework])dnl + ]) + + dnl Check for ALUT.framework when --with-alut-framework is specified + if test "x$with_alut_framework" != "x"; then + AC_CHECK_FRAMEWORK(ALUT, [#include ], $with_alut_framework, [ALUT_OK="yes"]) fi - LIBS="$LIBS -lglut" + ;; + +*) + dnl default unix style machines + + save_LIBS=$LIBS + LIBS="$LIBS $thread_LIBS" + AC_SEARCH_LIBS(alGenBuffers, openal) + AC_SEARCH_LIBS(alutInit, [ alut openal ] ) + OPENAL_OK="$ac_cv_search_alGenBuffers" + ALUT_OK="$ac_cv_search_alutInit" + openal_LIBS="$LIBS" + LIBS=$save_LIBS ;; esac -opengl_LIBS="$LIBS" +if test "$OPENAL_OK" == "no" -a "x$enable_headless" != "xyes"; then + echo + echo "You *must* have the openal library installed on your system to build" + echo "SimGear!" + echo + echo "Please see README.OpenAL for more details." + echo + echo "configure aborted." + exit +fi + +if test "$ALUT_OK" == "no" -a "x$enable_headless" != "xyes"; then + echo + echo "You *must* have the alut library installed on your system to build" + echo "SimGear!" + echo + echo "Please see README.OpenAL for more details." + echo + echo "configure aborted." + exit +fi + + + LIBS="$base_LIBS" AC_SUBST(base_LIBS) +AC_SUBST(openal_LIBS) AC_SUBST(opengl_LIBS) +AC_SUBST(thread_LIBS) +AC_SUBST(network_LIBS) dnl Check for MS Windows environment AC_CHECK_HEADER(windows.h) @@ -269,93 +434,93 @@ AM_CONDITIONAL(EXTGL_NEEDED, test "x$ac_cv_header_windows_h" = "xyes") # The following are C++ items that need to be tested for with the c++ # compiler +CXXCPP="g++ -E" AC_LANG_PUSH(C++) -dnl Check for "plib" without which we cannot go on -AC_CHECK_HEADER(plib/ul.h) -if test "x$ac_cv_header_plib_ul_h" != "xyes"; then +# OpenSceneGraph +case "${host}" in +*-apple-darwin*) + if test "x$with_osg_framework" != "x"; then +# AC_CHECK_FRAMEWORK(osgViewer, [#include ], $with_osg_framework) +# AC_CHECK_FRAMEWORK(osgGA, [#include ], $with_osg_framework) +# AC_CHECK_FRAMEWORK(osgText, [#include ], $with_osg_framework) +# AC_CHECK_FRAMEWORK(osgFX, [#include ], $with_osg_framework) +# AC_CHECK_FRAMEWORK(osgUtil, [#include ], $with_osg_framework) +# AC_CHECK_FRAMEWORK(osgDB, [#include ], $with_osg_framework) +# AC_CHECK_FRAMEWORK(osgSim, [#include ], $with_osg_framework) +# AC_CHECK_FRAMEWORK(osgParticle, [#include ], $with_osg_framework) + AC_CHECK_FRAMEWORK(osg, [#include ], $with_osg_framework) +# osg_FRAMEWORKS="$FRAMEWORKS" +# FRAMEWORKS="" +# AC_SUBST(osg_FRAMEWORKS) + AC_CHECK_FRAMEWORK(OpenThreads, [#include ], $with_osg_framework) + openthreads_FRAMEWORK="$FRAMEWORKS" + FRAMEWORKS="" + AC_SUBST(openthreads_FRAMEWORK) + else + dnl + dnl This is needed when osg dynamic libs are specified + dnl instead of OSG frameworks on Mac OS X + dnl + AC_CHECK_LIB(OpenThreads,OpenThreadsGetVersion) + fi + ;; +*) + if test "x$enable_osgdebug" = "xyes"; then + AC_CHECK_LIB(OpenThreadsd,OpenThreadsGetVersion) + else + AC_CHECK_LIB(OpenThreads,OpenThreadsGetVersion) + fi + ;; +esac + +AM_CONDITIONAL(HAVE_FRAMEWORK_OSG, test "x$ac_cv_framework_osg" != "x") + +AC_CHECK_HEADER(osg/Version) + +if test "x$ac_cv_header_osg_Version" != "xyes" -o "x$ac_cv_lib_OpenThreads_OpenThreadsGetVersion" != "xyes"; then + if test "x$ac_cv_framework_osg" != "xyes"; then echo - echo "You *must* have the plib library installed on your system to build" - echo "SimGear!" + echo "You *must* have the OpenThreads library installed on your system" + echo "to build this version of SimGear!" + echo " Maybe you need to specify --with-osg=DIR." + echo " Maybe you need to specify some LDFLAGS to help the linker." + echo + echo " LIBS: '$LIBS'" + echo " LDFLAGS: '$LDFLAGS'" + echo " CPPFLAGS: '$CPPFLAGS'" echo - echo "Please see README.plib for more details." + echo "Please see README.OSG for more details." echo echo "configure aborted." exit + fi fi -AC_MSG_CHECKING([for plib 1.6.0 or newer]) -AC_TRY_RUN([ -#include - -#define MIN_PLIB_VERSION 160 - -int main() { - int major, minor, micro; - - if ( PLIB_VERSION < MIN_PLIB_VERSION ) { - return -1; - } - - return 0; -} - -], - AC_MSG_RESULT(yes), - [AC_MSG_RESULT(wrong version); - AC_MSG_ERROR([Install plib 1.6.0 or later first...])], - AC_MSG_RESULT(yes) -) - -dnl Check for MetaKit -AC_CHECK_HEADER(mk4.h) -if test "x$ac_cv_header_mk4_h" != "xyes"; then +AC_CHECK_HEADER(boost/version.hpp) +if test "x$ac_cv_header_boost_version_hpp" != "xyes"; then echo - echo "MetaKit library not found." + echo "You *must* have the Boost library installed on your system" + echo "to build this version of SimGear!" echo - echo "If your OS does not provide an installable package for MetaKit" - echo "you will have to compile and install it first yourself. A copy" - echo "of metakit-$(VERSION).tar.gz is included with SimGear. You will" - echo "have to untar this source code, and follow its included instructions" - echo "to compile and install on your system." + echo " LIBS: '$LIBS'" + echo " LDFLAGS: '$LDFLAGS'" + echo " CPPFLAGS: '$CPPFLAGS'" echo echo "configure aborted." exit fi -AC_MSG_CHECKING([for metakit 2.4.3 or newer]) -saved_LIBS="$LIBS" -LIBS="$saved_LIBS -lmk4" -AC_TRY_RUN([ -#include - -#define MIN_MK4_VERSION 243 - -int main() { - int major, minor, micro; - - if ( d4_MetaKitLibraryVersion < MIN_MK4_VERSION ) { - return -1; - } - - return 0; -} - -], - AC_MSG_RESULT(yes), - [AC_MSG_RESULT(wrong version); - AC_MSG_ERROR([ +dnl Check for a HLA13 rti. +dnl This is really tricky because of the ancient iostream stuff in RTI13 +saved_CPPFLAGS="$CPPFLAGS" +CPPFLAGS="$CPPFLAGS -DRTI_USES_STD_FSTREAM" +AC_CHECK_HEADER(RTI.hh) +CPPFLAGS="${saved_CPPFLAGS}" -Install metakit 2.4.3 or later first. - -Or, the compiler may not be finding your libmk4.so library. -Please check the config.log file for specific details of the -failure if you believe you have the correct metakit version. -Also, look up this issue in the FlightGear FAQ.])], - AC_MSG_RESULT(yes) -) - -LIBS="$saved_LIBS" +dnl Up to now only RTI13 +AM_CONDITIONAL(ENABLE_HLA, test "x$ac_cv_header_RTI_hh" = "xyes") +AM_CONDITIONAL(ENABLE_HLA13, test "x$ac_cv_header_RTI_hh" = "xyes") AC_LANG_POP @@ -375,6 +540,39 @@ if test "x$ac_cv_header_zlib_h" != "xyes"; then echo fi +dnl Check for Subversion library support +# libsvn support defaults to yes +save_LIBS=$LIBS +save_CPPFLAGS=$CPPFLAGS +AC_ARG_WITH(libsvn, [ --without-libsvn Do not use built-in subversion (libsvn) for simgear [default=no]], [], [with_libsvn=yes]) +if test "x$with_libsvn" = "xyes"; then + LIBS="`apr-1-config --link-ld`" + CPPFLAGS="-I/usr/include/subversion-1 `apr-1-config --includes --cppflags`" + AC_CHECK_HEADERS([svn_client.h]) + if test "x$ac_cv_header_svn_client_h" = "xyes"; then + echo "Using built-in subversion (libsvn) for scenery downloads." + AC_SEARCH_LIBS(svn_client_checkout, svn_client-1, + [AC_DEFINE([HAVE_LIBSVN_CLIENT_1], [1], [Define to 1 if you have libsvn_client-1])], + [AC_MSG_ERROR(svn_client-1 library not found.)],) + AC_SEARCH_LIBS(svn_cmdline_init, svn_subr-1, , [AC_MSG_ERROR(svn_subr-1 library not found.)],) + AC_SEARCH_LIBS(svn_ra_initialize, svn_ra-1, , [AC_MSG_ERROR(svn_ra-1 library not found.)],) + svn_LIBS=$LIBS + svn_CPPFLAGS=$CPPFLAGS + AC_SUBST(svn_LIBS) + AC_SUBST(svn_CPPFLAGS) + else + echo "Libsvn not found. Will use command line subversion for scenery downloads." + svn_LIBS="" + svn_CPPFLAGS="" + fi +else +echo "Libsvn explicitly disabled. Will use command line subversion for scenery downloads." + svn_LIBS="" + svn_CPPFLAGS="" +fi +LIBS=$save_LIBS +CPPFLAGS=$save_CPPFLAGS + dnl Checks for header files. AC_HEADER_STDC AC_CHECK_HEADERS( \ @@ -388,47 +586,56 @@ fi dnl Checks for typedefs, structures, and compiler characteristics. AC_C_CONST AC_TYPE_SIZE_T +AC_TYPE_MODE_T AC_HEADER_TIME AC_STRUCT_TM dnl Checks for library functions. +old_LIBS=$LIBS +LIBS="$base_LIBS $network_LIBS $opengl_LIBS" AC_TYPE_SIGNAL AC_FUNC_VPRINTF -AC_CHECK_FUNCS( \ +AC_CHECK_FUNCS( [ \ ftime gettimeofday timegm memcpy bcopy mktime strstr rand \ - random drand48 setitimer getitimer signal GetLocalTime rint getrusage ) + random drand48 setitimer getitimer signal GetLocalTime rint getrusage ] ) +LIBS=$old_LIBS AM_CONFIG_HEADER(simgear/simgear_config.h) AC_CONFIG_FILES([ \ Makefile \ SimGear.spec \ - src-libs/Makefile \ simgear/Makefile \ simgear/version.h \ simgear/compatibility/Makefile \ + simgear/compatibility/MIPSpro721/Makefile \ + simgear/compatibility/MIPSpro740/Makefile \ simgear/bucket/Makefile \ simgear/debug/Makefile \ simgear/ephemeris/Makefile \ + simgear/hla/Makefile \ simgear/io/Makefile \ simgear/magvar/Makefile \ simgear/math/Makefile \ - simgear/metar/Makefile \ + simgear/environment/Makefile \ simgear/misc/Makefile \ + simgear/nasal/Makefile \ simgear/props/Makefile \ simgear/route/Makefile \ simgear/scene/Makefile \ + simgear/scene/bvh/Makefile \ simgear/scene/material/Makefile \ simgear/scene/model/Makefile \ + simgear/scene/sky/Makefile \ simgear/scene/tgdb/Makefile \ + simgear/scene/util/Makefile \ + simgear/scene/tsync/Makefile \ simgear/screen/Makefile \ simgear/serial/Makefile \ - simgear/sky/Makefile \ - simgear/sky/clouds3d/Makefile \ simgear/sound/Makefile \ + simgear/structure/Makefile \ simgear/threads/Makefile \ simgear/timing/Makefile \ - simgear/xgl/Makefile \ simgear/xml/Makefile \ ]) AC_OUTPUT @@ -449,20 +656,13 @@ fi echo -n "Automake version: " automake --version | head -1 -if test "x$ac_cv_header_GL_glut_h" = "xyes"; then - echo "With GL/glut.h" -fi -if test "x$ac_cv_header_GLUT_glut_h" = "xyes"; then - echo "With GLUT/glut.h" -fi - if test "x$with_jpeg_factory" = "xyes"; then echo "With JPEG Factory support" else echo "Without JPEG Factory support" fi -if test "x$ac_cv_lib_pthread_pthread_exit" = "xyes" -a "x$ac_cv_header_pthread_h" = "xyes"; then +if test "x$ac_cv_header_pthread_h" = "xyes"; then echo "Threads: pthread lib found." else echo "Threads: no threads (pthread lib not found.)"