X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=configure.ac;h=1af45ab9dfaaf21fb7e4d0f00563af965320aa6f;hb=65fd0c9c7a6ce872976e0299b6fb2bbde8d523b6;hp=18ecf3a518eb3505bdd198d063087b261e659394;hpb=f9f2144d7d85e67c164afadcaf708b9c93b4655f;p=flightgear.git diff --git a/configure.ac b/configure.ac index 18ecf3a51..1af45ab9d 100644 --- a/configure.ac +++ b/configure.ac @@ -10,7 +10,7 @@ AC_PREREQ(2.52) dnl Initialize the automake stuff dnl set the $host variable based on local machine/os AC_CANONICAL_TARGET -AM_INIT_AUTOMAKE(FlightGear, 0.9.10) +AM_INIT_AUTOMAKE(FlightGear, 1.9.1) dnl Checks for programs. AC_PROG_MAKE_SET @@ -20,9 +20,14 @@ AC_PROG_CXX AC_PROG_RANLIB AC_PROG_INSTALL AC_PROG_LN_S +AX_BOOST_BASE([1.34.0]) + +if test "x$BOOST_CPPFLAGS" != "x-I/usr/include" ; then + CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS" +fi # specify the simgear location -AC_ARG_WITH(simgear, [ --with-simgear=PREFIX Specify the prefix path to simgear]) +AC_ARG_WITH(simgear, [ --with-simgear=PREFIX Specify the prefix path to SimGear]) if test "x$with_simgear" != "x" ; then echo "SimGear prefix path is $with_simgear" @@ -98,7 +103,7 @@ if test "x$with_logging" = "xno" ; then AC_DEFINE([FG_NDEBUG], 1, [Define for no logging output]) fi -AC_ARG_ENABLE(sp_fdms, [ --enable-sp-fdms Include special purpose Flight Models], [enable_sp_fdms="$enableval"] ) +AC_ARG_ENABLE(sp_fdms, [ --enable-sp-fdms Include special purpose Flight Models], [enable_sp_fdms="$enableval"] ) if test "x$enable_sp_fdms" != "xno"; then AC_DEFINE([ENABLE_SP_FDM], 1, [Define to include special purpose FDMs]) else @@ -171,7 +176,7 @@ esac dnl Checks for libraries. dnl Thread related checks -AC_SEARCH_LIBS(pthread_cancel, [pthread c_r]) +AC_SEARCH_LIBS(pthread_create, [pthread c_r]) if test "x$ac_cv_header_pthread_h" = "xyes"; then if test "x$ac_cv_search_pthread_exit" = "x-lc_r"; then CXXFLAGS="-pthread $CXXFLAGS" @@ -194,17 +199,29 @@ dnl check for some default libraries AC_SEARCH_LIBS(sqrt, [am ffm fm fastm m]) AC_SEARCH_LIBS(ceil, m) AC_SEARCH_LIBS(dlclose, dl) +AC_SEARCH_LIBS(clock_gettime, rt) base_LIBS="$LIBS" -dnl Check for SDL if enabled. -AC_ARG_ENABLE(sdl, [ --enable-sdl Configure to use SDL instead of GLUT], [enable_sdl="$enableval"]) +dnl Check for SDL or glut if enabled. +AC_ARG_ENABLE(osgviewer, [ --enable-osgviewer Configure to use osgViewer(default)], [enable_osgviewer="$enableval"]) +AC_ARG_ENABLE(sdl, [ --enable-sdl Configure to use SDL], [enable_sdl="$enableval"]) +AC_ARG_ENABLE(glut, [ --enable-glut Configure to use GLUT], [enable_glut="$enableval"]) AM_CONDITIONAL(USE_SDL, test "x$enable_sdl" = "xyes") -if test "x$enable_sdl" = "xyes"; then - AC_DEFINE([PU_USE_SDL], 1, [Define to use SDL]) -else - AC_DEFINE([PU_USE_GLUT], 1, [Define to use glut]) +AM_CONDITIONAL(USE_GLUT, test "x$enable_glut" = "xyes") +if test "x$enable_sdl" != "xyes" -a "x$enable_glut" != "xyes" -a "x$enable_osgviewer" != "xno"; then + enable_osgviewer="yes" +fi +if test \( "x$enable_osgviewer" = "xyes" \ + -a \( "x$enable_sdl" = "xyes" -o "x$enable_glut" = "xyes" \) \) \ + -o \( "x$enable_sdl" = "xyes" -a "x$enable_glut" = "xyes" \); then + echo " Only one of --enable-osgviewer, --enable-sdl, or --enable -glut may" + echo " be supplied." + exit fi +AC_DEFINE([PU_USE_NONE], 1, [Define to use application's pu callbacks]) + +AC_ARG_ENABLE(osgdebug, [ --enable-osgdebug Use OSG debug libraries], [enable_osgdebug="$enableval"]) dnl check for OpenGL related libraries case "${host}" in @@ -285,14 +302,19 @@ opengl_LIBS="$LIBS" LIBS="$base_LIBS $joystick_LIBS" dnl check for OpenAL libraries +OPENAL_OK="no" +ALUT_OK="no" case "${host}" in *-*-cygwin* | *-*-mingw32*) dnl CygWin under Windoze. - - AC_SEARCH_LIBS(alGenBuffers, openal32) - AC_SEARCH_LIBS(alutInit, [ openal32 ALut ] ) - LIBS="$LIBS -ldsound -ldxguid -lole32" + INCLUDES="$INCLUDES -I/usr/local/include/" + LIBS="$LIBS -L/usr/local/lib" + AC_SEARCH_LIBS(alGenBuffers, [ openal32 openal ] ) + 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*) @@ -300,6 +322,9 @@ case "${host}" in LIBS="$LIBS -framework IOKit -framework OpenAL" openal_LIBS="$LIBS" + # not sure how to test if OpenAL exists on MacOS (does it come by default?) + OPENAL_OK="yes" + ALUT_OK="yes" ;; *) @@ -310,12 +335,36 @@ case "${host}" in 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 +if test "$OPENAL_OK" == "no"; 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"; 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) @@ -330,47 +379,6 @@ AC_SUBST(joystick_LIBS) AC_LANG_PUSH(C++) -# 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 - echo - echo "You *must* have the plib library installed on your system to build" - echo "the FGFS simulator!" - echo - echo "Please see README.plib for more details." - echo - echo "configure aborted." - exit -fi - -AC_MSG_CHECKING([for plib 1.8.4 or newer]) -AC_TRY_RUN([ -#include - -#define MIN_PLIB_VERSION 184 - -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.8.4 or later first...])], - AC_MSG_RESULT(yes) -) - -dnl If we get here then plib is available, so force use of plib -dnl joystick lib -AC_DEFINE([ENABLE_PLIB_JOYSTICK], 1, [Define to enable plib joystick support]) - - dnl Check for the presence of SimGear if test "x$with_simgear" != "x"; then AC_CHECK_HEADER($with_simgear/include/simgear/version.h, [ac_cv_header_simgear_version_h=yes], [ac_cv_header_simgear_version_h=no]) @@ -388,7 +396,7 @@ if test "x$ac_cv_header_simgear_version_h" != "xyes"; then exit fi -AC_MSG_CHECKING([for simgear 0.3.10 or newer]) +AC_MSG_CHECKING([for SimGear 1.9.0 or newer]) AC_TRY_RUN([ #include @@ -397,9 +405,9 @@ AC_TRY_RUN([ #define STRINGIFY(X) XSTRINGIFY(X) #define XSTRINGIFY(X) #X -#define MIN_MAJOR 0 -#define MIN_MINOR 3 -#define MIN_MICRO 10 +#define MIN_MAJOR 1 +#define MIN_MINOR 9 +#define MIN_MICRO 0 int main() { int major, minor, micro; @@ -421,7 +429,7 @@ int main() { ], AC_MSG_RESULT(yes), [AC_MSG_RESULT(wrong version); - AC_MSG_ERROR([Install latest simgear first...])], + AC_MSG_ERROR([Install latest SimGear first...])], AC_MSG_RESULT(yes) ) @@ -451,6 +459,132 @@ if test "x$ac_cv_header_simgear_screen_jpgfactory_hxx" = "xyes"; then fi AM_CONDITIONAL(ENABLE_JPEG_SERVER, test "x$ac_cv_header_simgear_screen_jpgfactory_hxx" = "xyes") +# 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 + echo + echo "You *must* have the plib library installed on your system to build" + echo "the FGFS simulator!" + echo + echo "Please see README.plib for more details." + echo + echo "configure aborted." + exit +fi + +AC_MSG_CHECKING([for plib 1.8.5 or newer]) +AC_TRY_RUN([ +#include + +#define MIN_PLIB_VERSION 185 + +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.8.5 or later first...])], + AC_MSG_RESULT(yes) +) + +dnl If we get here then plib is available, so force use of plib +dnl joystick lib +AC_DEFINE([ENABLE_PLIB_JOYSTICK], 1, [Define to enable plib joystick support]) + +AC_CHECK_HEADER(osg/Version) +if test "x$ac_cv_header_osg_Version" != "xyes"; then + echo + echo "You *must* have the OpenSceneGraph support library installed on your system" + echo "to build the FGFS simulator!" + echo + echo "Please see README.OSG for more details." + echo + echo "configure aborted." + exit +fi + +# Find the OSG libraries. Note special handling for OS X frameworks +case "${host}" in +*-apple-darwin*) + + dnl Thank you Christian Bauer from SheepSaver + dnl AC_CHECK_FRAMEWORK($1=NAME, $2=INCLUDES) + 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" + LIBS="$LIBS -framework $1" + 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_VAR_POPDEF([ac_Framework])dnl + ]) + + if test "x$enable_osgdebug" = "xyes"; then + AC_CHECK_LIB(osgViewerd,osgViewerGetVersion) + AC_CHECK_LIB(osgGAd,osgGAGetVersion) + AC_CHECK_LIB(osgTextd,osgTextGetVersion) + LIBS="$LIBS -losgFXd" + AC_CHECK_LIB(osgUtild,osgUtilGetVersion) + AC_CHECK_LIB(osgDBd,osgDBGetVersion) + AC_CHECK_LIB(osgSimd,osgSimGetVersion) + AC_CHECK_LIB(osgParticled,osgParticleGetVersion) + AC_CHECK_LIB(osgd,osgGetVersion) + AC_CHECK_LIB(OpenThreadsd,OpenThreadsGetVersion) + else + AC_CHECK_FRAMEWORK(osgViewer, [#include ]) + AC_CHECK_FRAMEWORK(osgGA, [#include ]) + AC_CHECK_FRAMEWORK(osgText, [#include ]) + AC_CHECK_FRAMEWORK(osgFX, [#include ]) + AC_CHECK_FRAMEWORK(osgUtil, [#include ]) + AC_CHECK_FRAMEWORK(osgDB, [#include ]) + AC_CHECK_FRAMEWORK(osgSim, [#include ]) + AC_CHECK_FRAMEWORK(osgParticle, [#include ]) + AC_CHECK_FRAMEWORK(osg, [#include ]) + AC_CHECK_FRAMEWORK(OpenThreads, [#include ]) + fi + ;; +*) + if test "x$enable_osgdebug" = "xyes"; then + AC_CHECK_LIB(OpenThreadsd,OpenThreadsGetVersion) + AC_CHECK_LIB(osgd,osgGetVersion) + AC_CHECK_LIB(osgUtild,osgUtilGetVersion) + AC_CHECK_LIB(osgDBd,osgDBGetVersion) + AC_CHECK_LIB(osgTextd,osgTextGetVersion) + AC_CHECK_LIB(osgGAd,osgGAGetVersion) + AC_CHECK_LIB(osgViewerd,osgViewerGetVersion) + AC_CHECK_LIB(osgSimd,osgSimGetVersion) + AC_CHECK_LIB(osgParticled,osgParticleGetVersion) + LIBS="$LIBS -losgFXd" + else + AC_CHECK_LIB(OpenThreads,OpenThreadsGetVersion) + AC_CHECK_LIB(osg,osgGetVersion) + AC_CHECK_LIB(osgUtil,osgUtilGetVersion) + AC_CHECK_LIB(osgDB,osgDBGetVersion) + AC_CHECK_LIB(osgText,osgTextGetVersion) + AC_CHECK_LIB(osgGA,osgGAGetVersion) + AC_CHECK_LIB(osgViewer,osgViewerGetVersion) + AC_CHECK_LIB(osgSim,osgSimGetVersion) + AC_CHECK_LIB(osgParticle,osgParticleGetVersion) + LIBS="$LIBS -losgFX" + fi + ;; +esac + AC_LANG_POP dnl Check for system installed zlib @@ -469,6 +603,35 @@ if test "x$ac_cv_header_zlib_h" != "xyes"; then echo fi +dnl Check for Subversion library support +save_LIBS=$LIBS +save_CPPFLAGS=$CPPFLAGS +LIBS="" +CPPFLAGS="-I/usr/include/subversion-1 `apr-1-config --includes`" +AC_CHECK_LIB(svn_client-1, svn_client_checkout3) +AC_CHECK_HEADERS([svn_client.h]) +if test "x$ac_cv_header_svn_client_h" != "xyes"; then + echo "TerraSync will shell out for command line subversion" + svn_LIBS="" + svn_CPPFLAGS="" +else + echo "TerraSync will use integrated subversion library" + AC_SEARCH_LIBS(svn_client_checkout, svn_client-1) + svn_LIBS=$LIBS + svn_CPPFLAGS=$CPPFLAGS + AC_SUBST(svn_LIBS) + AC_SUBST(svn_CPPFLAGS) +fi +LIBS=$save_LIBS +CPPFLAGS=$save_CPPFLAGS + +AC_MSG_CHECKING([for feenableexcept]) +AC_LINK_IFELSE([AC_LANG_PROGRAM([[#define _GNU_SOURCE +#include ]], [[feenableexcept(FE_DIVBYZERO)]])], +[AC_DEFINE([HAVE_FEENABLEEXCEPT], 1, [define if system has fenableexcept])], +AC_MSG_RESULT([yes]), +AC_MSG_RESULT([no])) + dnl Checks for header files. AC_HEADER_STDC AC_CHECK_HEADERS( \ @@ -517,11 +680,11 @@ AC_CONFIG_FILES([ \ src/Aircraft/Makefile \ src/Airports/Makefile \ src/ATC/Makefile \ + src/ATCDCL/Makefile \ src/Autopilot/Makefile \ src/Cockpit/Makefile \ src/Cockpit/built_in/Makefile \ src/Environment/Makefile \ - src/FDM/Balloon/Makefile \ src/FDM/ExternalNet/Makefile \ src/FDM/ExternalPipe/Makefile \ src/FDM/JSBSim/Makefile \ @@ -559,10 +722,14 @@ AC_CONFIG_FILES([ \ tests/Makefile \ utils/Makefile \ utils/GPSsmooth/Makefile \ + utils/fgadmin/Makefile + utils/fgadmin/src/Makefile \ utils/js_server/Makefile \ utils/Modeller/Makefile \ + utils/propmerge/Makefile \ utils/TerraSync/Makefile \ utils/xmlgrep/Makefile \ + utils/fgviewer/Makefile \ ]) AC_OUTPUT