2002-12-10 20:50:48 +00:00
|
|
|
dnl Process this file with autoget.sh to produce a working configure
|
|
|
|
dnl script.
|
|
|
|
dnl
|
|
|
|
dnl $Id$
|
2002-08-27 23:52:15 +00:00
|
|
|
|
|
|
|
AC_INIT
|
|
|
|
AC_CONFIG_SRCDIR([src/Aircraft/aircraft.cxx])
|
|
|
|
|
2002-12-10 20:50:48 +00:00
|
|
|
dnl Require at least automake 2.52
|
2002-08-28 16:13:06 +00:00
|
|
|
AC_PREREQ(2.52)
|
2002-08-27 23:52:15 +00:00
|
|
|
|
2002-12-10 20:50:48 +00:00
|
|
|
dnl Initialize the automake stuff
|
2002-12-05 15:31:09 +00:00
|
|
|
AM_INIT_AUTOMAKE(FlightGear, 0.9.1)
|
2002-08-27 23:52:15 +00:00
|
|
|
|
2002-12-10 20:50:48 +00:00
|
|
|
dnl Checks for programs.
|
2002-08-27 23:52:15 +00:00
|
|
|
AC_PROG_MAKE_SET
|
|
|
|
AC_PROG_CC
|
|
|
|
AC_PROG_CPP
|
|
|
|
AC_PROG_CXX
|
|
|
|
AC_PROG_RANLIB
|
|
|
|
AC_PROG_INSTALL
|
|
|
|
AC_PROG_LN_S
|
|
|
|
|
2002-12-30 21:34:46 +00:00
|
|
|
# specify the simgear location
|
|
|
|
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"
|
|
|
|
EXTRA_DIRS="${EXTRA_DIRS} $with_simgear"
|
|
|
|
fi
|
|
|
|
|
2002-12-10 20:50:48 +00:00
|
|
|
dnl set the $host variable based on local machine/os
|
|
|
|
AC_CANONICAL_HOST
|
2002-09-06 17:30:21 +00:00
|
|
|
|
2002-12-10 20:50:48 +00:00
|
|
|
case "${host}" in
|
|
|
|
*-*-irix*)
|
2002-08-27 23:52:15 +00:00
|
|
|
if test "$CXX" = "CC"; then
|
|
|
|
AR="CC -ar"
|
2002-09-06 17:30:21 +00:00
|
|
|
ARFLAGS="-o"
|
2002-12-30 21:34:46 +00:00
|
|
|
CXXFLAGS="$CXXFLAGS -I$with_simgear/include/simgear/compatibility"
|
2002-12-16 20:50:42 +00:00
|
|
|
else
|
|
|
|
AR="ar"
|
|
|
|
ARFLAGS="cru"
|
2002-08-27 23:52:15 +00:00
|
|
|
fi
|
2002-12-10 20:50:48 +00:00
|
|
|
;;
|
2002-12-16 20:50:42 +00:00
|
|
|
*)
|
|
|
|
AR="ar"
|
|
|
|
ARFLAGS="cru"
|
|
|
|
;;
|
2002-12-10 20:50:48 +00:00
|
|
|
esac
|
2002-09-06 17:30:21 +00:00
|
|
|
AC_SUBST(AR)
|
|
|
|
AC_SUBST(ARFLAGS)
|
2002-08-27 23:52:15 +00:00
|
|
|
|
2002-12-10 20:50:48 +00:00
|
|
|
dnl set logging; default value of with_logging=yes
|
2002-08-27 23:52:15 +00:00
|
|
|
AC_ARG_WITH(logging, [ --with-logging Include logging output (default)])
|
|
|
|
if test "x$with_logging" = "xno" ; then
|
|
|
|
AC_DEFINE([FG_NDEBUG], 1, [Define for no logging output])
|
|
|
|
fi
|
|
|
|
|
2003-03-21 09:57:38 +00:00
|
|
|
# Specify if we want to build with Multiplayer support
|
2003-03-19 20:45:09 +00:00
|
|
|
# default to with_network=yes
|
|
|
|
AC_ARG_WITH(multiplayer, [ --with-multiplayer Include default multiplayer support])
|
2003-03-21 09:57:38 +00:00
|
|
|
AC_ARG_WITH(network_olk, [ --with-network-olk Include Oliver's multi-pilot networking support [default=no]])
|
2003-03-19 20:45:09 +00:00
|
|
|
|
2003-03-21 09:57:38 +00:00
|
|
|
if test "x$with_multiplayer" = "xno" -a "x$with_network_olk" = "xno"; then
|
|
|
|
echo "Building without any kind of multiplayer support"
|
|
|
|
|
|
|
|
elif test "x$with_multiplayer" = "xno"; then
|
|
|
|
# echo "Building without default multiplayer support"
|
|
|
|
echo "Building with Oliver's multi-pilot network support"
|
|
|
|
AC_DEFINE([FG_NETWORK_OLK], 1, [Define to build with Oliver's networking])
|
2003-03-19 20:45:09 +00:00
|
|
|
|
2002-08-27 23:52:15 +00:00
|
|
|
else
|
2003-03-21 09:57:38 +00:00
|
|
|
echo "Building with default multiplayer support"
|
|
|
|
# echo "Building without Oliver's multi-pilot network support"
|
|
|
|
AC_DEFINE([FG_MPLAYER_AS], 1, [Define to build with default multiplayer support])
|
2002-08-27 23:52:15 +00:00
|
|
|
fi
|
2003-03-19 20:45:09 +00:00
|
|
|
|
2003-03-21 10:39:17 +00:00
|
|
|
AM_CONDITIONAL(ENABLE_NETWORK_OLK, test "x$with_network_olk" != "xno" -a "x$with_multiplayer" = "xno")
|
2003-03-21 09:57:38 +00:00
|
|
|
AM_CONDITIONAL(ENABLE_MPLAYER_AS, test "x$with_multiplayer" != "xno")
|
2002-08-27 23:52:15 +00:00
|
|
|
|
|
|
|
|
|
|
|
# Specify if we want to use WeatherCM instead of FGEnvironment.
|
|
|
|
# default to with_weathercm=no
|
2003-01-16 18:06:27 +00:00
|
|
|
AC_ARG_WITH(weathercm, [ --with-weathercm Use WeatherCM instead of FGEnvironment])
|
2002-08-27 23:52:15 +00:00
|
|
|
if test "x$with_weathercm" = "xyes" ; then
|
|
|
|
echo "Building with WeatherCM"
|
|
|
|
AC_DEFINE([FG_WEATHERCM], 1,
|
|
|
|
[Define to build with Christian Mayer's weather code])
|
|
|
|
else
|
|
|
|
echo "Building with FGEnvironment"
|
|
|
|
fi
|
|
|
|
AM_CONDITIONAL(ENABLE_WEATHERCM, test "x$with_weathercm" = "xyes")
|
|
|
|
|
|
|
|
dnl Thread related checks
|
|
|
|
AC_ARG_WITH(threads, [ --with-threads Include tile loading threads [default=no]])
|
|
|
|
if test "x$with_threads" = "xyes"; then
|
|
|
|
AC_DEFINE([ENABLE_THREADS], 1, [Define to enable threaded tile paging])
|
|
|
|
CXXFLAGS="$CXXFLAGS -D_REENTRANT"
|
|
|
|
CFLAGS="$CFLAGS -D_REENTRANT"
|
|
|
|
fi
|
2003-01-23 15:17:41 +00:00
|
|
|
AC_CHECK_HEADER(pthread.h)
|
2002-08-27 23:52:15 +00:00
|
|
|
AM_CONDITIONAL(WITH_THREADS, test "x$with_threads" = "xyes")
|
|
|
|
|
|
|
|
# specify the plib location
|
2002-08-29 16:00:17 +00:00
|
|
|
AC_ARG_WITH(plib, [ --with-plib=PREFIX Specify the prefix path to plib])
|
2002-08-27 23:52:15 +00:00
|
|
|
|
|
|
|
if test "x$with_plib" != "x" ; then
|
|
|
|
echo "plib prefix is $with_plib"
|
|
|
|
EXTRA_DIRS="${EXTRA_DIRS} $with_plib"
|
|
|
|
fi
|
|
|
|
|
|
|
|
# specify the metakit location
|
2002-08-29 16:00:17 +00:00
|
|
|
AC_ARG_WITH(metakit, [ --with-metakit=PREFIX Specify the prefix path to metakit])
|
2002-08-27 23:52:15 +00:00
|
|
|
|
|
|
|
if test "x$with_metakit" != "x" ; then
|
|
|
|
echo "metakit prefix is $with_metakit"
|
|
|
|
EXTRA_DIRS="${EXTRA_DIRS} $with_metakit"
|
|
|
|
fi
|
|
|
|
|
2002-12-10 20:50:48 +00:00
|
|
|
dnl Used by JSBSim to conditionally compile in fgfs interface code
|
|
|
|
AC_DEFINE([FGFS], 1, [Define so that JSBSim compiles in 'library' mode])
|
|
|
|
|
2002-08-27 23:52:15 +00:00
|
|
|
# Check for MS Windows environment
|
|
|
|
AC_CHECK_HEADER(windows.h)
|
|
|
|
|
2002-12-10 20:50:48 +00:00
|
|
|
dnl Determine an extra directories to add to include/lib search paths
|
|
|
|
case "${host}" in
|
|
|
|
*-apple-darwin* | *-*-mingw32*)
|
|
|
|
echo no EXTRA_DIRS for $host
|
|
|
|
;;
|
2002-08-27 23:52:15 +00:00
|
|
|
|
2002-12-10 20:50:48 +00:00
|
|
|
*)
|
|
|
|
if test -d /usr/X11R6 ; then
|
|
|
|
EXTRA_DIR1="/usr/X11R6"
|
2002-08-27 23:52:15 +00:00
|
|
|
fi
|
2002-12-10 20:50:48 +00:00
|
|
|
if test -d /opt/X11R6 ; then
|
|
|
|
EXTRA_DIR2="/opt/X11R6"
|
2002-08-27 23:52:15 +00:00
|
|
|
fi
|
2003-02-05 01:09:20 +00:00
|
|
|
EXTRA_DIRS="${EXTRA_DIRS} $EXTRA_DIR1 $EXTRA_DIR2"
|
2002-12-10 20:50:48 +00:00
|
|
|
;;
|
2002-08-27 23:52:15 +00:00
|
|
|
|
2002-12-10 20:50:48 +00:00
|
|
|
esac
|
2002-08-27 23:52:15 +00:00
|
|
|
wi_EXTRA_DIRS(no, ${EXTRA_DIRS})
|
|
|
|
|
2002-12-10 20:50:48 +00:00
|
|
|
|
|
|
|
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
|
|
|
|
dnl build a Makefile.in from a Makefile.am which lets us define custom
|
|
|
|
dnl includes, compile alternative source files, etc.
|
2002-08-27 23:52:15 +00:00
|
|
|
|
2002-12-12 01:21:21 +00:00
|
|
|
dnl Check for external variables daylight and timezone.
|
2002-08-27 23:52:15 +00:00
|
|
|
AC_EXT_DAYLIGHT
|
|
|
|
if test "$have_daylight" = yes; then
|
|
|
|
AC_DEFINE([HAVE_DAYLIGHT], 1, [Define if system has daylight variable])
|
|
|
|
fi
|
|
|
|
|
|
|
|
AC_EXT_TIMEZONE
|
|
|
|
if test "$have_timezone" = yes; then
|
|
|
|
AC_DEFINE([HAVE_TIMEZONE], 1, [Define if system has timezone variable])
|
|
|
|
fi
|
|
|
|
|
2002-12-12 01:21:21 +00:00
|
|
|
dnl add correct audio libs and configure for audio support
|
2002-12-10 20:50:48 +00:00
|
|
|
audio_LIBS="-lplibsl -lplibsm"
|
|
|
|
case "${host}" in
|
|
|
|
*-*-cygwin* | *-*-mingw32*)
|
|
|
|
audio_LIBS="$audio_LIBS -lwinmm"
|
|
|
|
;;
|
2003-02-09 03:47:21 +00:00
|
|
|
*-apple-darwin*)
|
|
|
|
audio_LIBS="$audio_LIBS -framework IOKit -framework CoreFoundation"
|
|
|
|
;;
|
2002-12-10 20:50:48 +00:00
|
|
|
*-*-irix* )
|
|
|
|
audio_LIBS="$audio_LIBS -laudio"
|
|
|
|
;;
|
2002-08-27 23:52:15 +00:00
|
|
|
|
2002-12-10 20:50:48 +00:00
|
|
|
esac
|
2002-08-27 23:52:15 +00:00
|
|
|
AC_SUBST(audio_LIBS)
|
2002-12-21 05:01:51 +00:00
|
|
|
|
|
|
|
dnl ENABLE_AUDIO_SUPPORT could be depricated at any time in favor of
|
|
|
|
dnl just assuming we have audio support on all platform. We can
|
|
|
|
dnl depend on plib to hide the details.
|
2002-12-12 01:21:21 +00:00
|
|
|
AC_DEFINE([ENABLE_AUDIO_SUPPORT], 1, [Define for audio support])
|
2002-08-27 23:52:15 +00:00
|
|
|
|
2002-12-10 20:50:48 +00:00
|
|
|
dnl X11 might be installed on Mac OS X or cygwin/mingwin, we don't want
|
|
|
|
dnl to use it if it is.
|
|
|
|
case "${host}" in
|
|
|
|
*-apple-darwin* | *-*-cygwin* | *-*-mingw32*)
|
|
|
|
echo no fancy X11 check
|
|
|
|
;;
|
|
|
|
|
|
|
|
*)
|
2002-08-27 23:52:15 +00:00
|
|
|
AC_PATH_XTRA
|
2002-12-10 20:50:48 +00:00
|
|
|
;;
|
2002-08-27 23:52:15 +00:00
|
|
|
|
2002-12-10 20:50:48 +00:00
|
|
|
esac
|
|
|
|
|
|
|
|
dnl Checks for libraries.
|
2002-08-27 23:52:15 +00:00
|
|
|
|
|
|
|
null_LIBS="$LIBS"
|
|
|
|
|
|
|
|
AC_CHECK_LIB(m, cos)
|
|
|
|
|
|
|
|
base_LIBS="$LIBS"
|
|
|
|
|
2002-12-10 20:50:48 +00:00
|
|
|
dnl Thread related checks
|
2002-08-27 23:52:15 +00:00
|
|
|
AC_CHECK_LIB(pthread, pthread_exit)
|
2003-01-23 15:17:41 +00:00
|
|
|
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"
|
2003-02-07 17:35:46 +00:00
|
|
|
save_CFLAGS="$CFLAGS"
|
2003-01-23 15:17:41 +00:00
|
|
|
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
|
|
|
|
fi
|
|
|
|
LIBS=$save_LIBS
|
|
|
|
fi
|
2002-08-27 23:52:15 +00:00
|
|
|
AC_CHECK_LIB(socket, socket)
|
|
|
|
|
2002-12-11 21:07:30 +00:00
|
|
|
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
|
2003-02-09 03:47:21 +00:00
|
|
|
AC_DEFINE([GLUT_H], <GLUT/glut.h>, [Define as glut.h include location])
|
2002-12-11 21:07:30 +00:00
|
|
|
else
|
|
|
|
echo "Neither GL/glut.h nor GLUT/glut.h found. Cannot continue"
|
|
|
|
exit
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
2002-12-10 20:50:48 +00:00
|
|
|
dnl check for OpenGL related libraries
|
|
|
|
case "${host}" in
|
|
|
|
*-*-cygwin* | *-*-mingw32*)
|
|
|
|
dnl CygWin under Windoze.
|
|
|
|
|
|
|
|
echo Win32 specific hacks...
|
|
|
|
AC_DEFINE([WIN32], 1, [Define for Win32 platforms])
|
|
|
|
AC_DEFINE([NOMINMAX], 1, [Define for Win32 platforms])
|
|
|
|
|
|
|
|
LIBS="$LIBS -lglut32 -lglu32 -lopengl32"
|
|
|
|
LIBS="$LIBS -luser32 -lgdi32"
|
|
|
|
|
|
|
|
dnl add -lwsock32 for mingwin
|
|
|
|
case "${host}" in
|
|
|
|
*-*-mingw32*)
|
2002-12-17 20:03:45 +00:00
|
|
|
echo "********** BUILDING FOR MINGW32 *************"
|
|
|
|
base_LIBS="$base_LIBS -lws2_32"
|
2002-12-10 20:50:48 +00:00
|
|
|
;;
|
|
|
|
esac
|
|
|
|
|
|
|
|
echo "Will link apps with $LIBS"
|
|
|
|
;;
|
2002-08-27 23:52:15 +00:00
|
|
|
|
|
|
|
|
2002-12-10 20:50:48 +00:00
|
|
|
*-apple-darwin*)
|
|
|
|
dnl Mac OS X
|
|
|
|
|
|
|
|
LIBS="$LIBS -framework GLUT -framework OpenGL -framework Carbon -lobjc"
|
|
|
|
;;
|
|
|
|
|
|
|
|
*)
|
|
|
|
dnl X-Windows based machines
|
|
|
|
|
|
|
|
dnl Skip X11 library tests if requested.
|
|
|
|
if test "x$no_x" != "xyes"; 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
|
2002-08-27 23:52:15 +00:00
|
|
|
|
|
|
|
AC_CHECK_LIB(GLcore, glNewList)
|
|
|
|
if test "x$ac_cv_lib_GLcore_glNewList" = "xno" ; then
|
2002-12-10 20:50:48 +00:00
|
|
|
dnl if no GLcore, check for GL
|
2002-08-27 23:52:15 +00:00
|
|
|
AC_CHECK_LIB(GL, glNewList)
|
|
|
|
if test "x$ac_cv_lib_GL_glNewList" = "xno" ; then
|
2002-12-10 20:50:48 +00:00
|
|
|
dnl if no GL, check for MesaGL
|
2002-08-27 23:52:15 +00:00
|
|
|
AC_CHECK_LIB(MesaGL, glNewList)
|
|
|
|
fi
|
|
|
|
else
|
2002-12-10 20:50:48 +00:00
|
|
|
dnl if GLcore found, then also check for GL
|
2002-08-27 23:52:15 +00:00
|
|
|
AC_CHECK_LIB(GL, glXCreateContext)
|
|
|
|
fi
|
|
|
|
|
2002-12-10 20:50:48 +00:00
|
|
|
dnl if using mesa, check for xmesa.h
|
|
|
|
if test "x$ac_cv_lib_MesaGL_glNewList" = "xyes" ; 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])
|
|
|
|
AC_DEFINE([FX], 1, [Define for fxmesa])
|
|
|
|
fi
|
2002-08-27 23:52:15 +00:00
|
|
|
fi
|
|
|
|
|
|
|
|
AC_CHECK_LIB(GLU, gluLookAt)
|
|
|
|
if test "x$ac_cv_lib_GLU_gluLookAt" = "xno" ; then
|
2002-12-10 20:50:48 +00:00
|
|
|
dnl if no GLU, check for MesaGLU
|
2002-08-27 23:52:15 +00:00
|
|
|
AC_CHECK_LIB(MesaGLU, gluLookAt)
|
|
|
|
fi
|
|
|
|
|
2002-12-16 20:50:42 +00:00
|
|
|
AC_CHECK_LIB(glut, glutGetModifiers)
|
|
|
|
if test "x$ac_cv_lib_glut_glutGetModifiers" = "xno" ; then
|
|
|
|
dnl if no "real" glut, check for freeglut
|
|
|
|
AC_CHECK_LIB(freeglut, glutGetModifiers)
|
|
|
|
fi
|
2002-12-10 20:50:48 +00:00
|
|
|
;;
|
2002-08-27 23:52:15 +00:00
|
|
|
|
2002-12-10 20:50:48 +00:00
|
|
|
esac
|
2002-08-27 23:52:15 +00:00
|
|
|
|
|
|
|
opengl_LIBS="$LIBS"
|
|
|
|
LIBS="$base_LIBS"
|
|
|
|
|
|
|
|
AC_SUBST(base_LIBS)
|
|
|
|
AC_SUBST(opengl_LIBS)
|
|
|
|
|
2002-08-28 03:34:31 +00:00
|
|
|
# The following are C++ items that need to be tested for with the c++
|
|
|
|
# compiler
|
|
|
|
|
2002-08-29 16:00:17 +00:00
|
|
|
AC_LANG_PUSH(C++)
|
2002-08-28 03:34:31 +00:00
|
|
|
|
2002-08-27 23:52:15 +00:00
|
|
|
# Check for "plib" without which we cannot go on
|
2002-09-03 01:12:26 +00:00
|
|
|
AC_CHECK_HEADER(plib/ul.h)
|
|
|
|
if test "x$ac_cv_header_plib_ul_h" != "xyes"; then
|
2002-08-27 23:52:15 +00:00
|
|
|
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
|
|
|
|
|
2002-09-03 01:12:26 +00:00
|
|
|
AC_MSG_CHECKING([for plib 1.6.0 or newer])
|
|
|
|
AC_TRY_RUN([
|
|
|
|
#include <plib/ul.h>
|
2002-08-27 23:52:15 +00:00
|
|
|
|
2002-09-03 01:12:26 +00:00
|
|
|
#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)
|
|
|
|
)
|
2002-08-27 23:52:15 +00:00
|
|
|
|
2002-12-10 20:50:48 +00:00
|
|
|
dnl If we get here then plib is available, so force use of plib
|
|
|
|
dnl joystick lib
|
2002-08-27 23:52:15 +00:00
|
|
|
AC_DEFINE([ENABLE_PLIB_JOYSTICK], 1, [Define to enable plib joystick support])
|
2003-01-11 16:30:32 +00:00
|
|
|
|
|
|
|
|
2003-01-17 12:41:47 +00:00
|
|
|
dnl Checking for PSL in plib
|
2003-01-11 16:30:32 +00:00
|
|
|
dnl version of plib, so check for it.
|
2003-01-17 12:41:47 +00:00
|
|
|
AC_MSG_CHECKING([for plib PSL scripting support])
|
2003-01-11 16:30:32 +00:00
|
|
|
AC_COMPILE_IFELSE([
|
|
|
|
#include <plib/psl.h>
|
|
|
|
|
|
|
|
int main() {
|
|
|
|
// not for running...
|
|
|
|
pslProgram program((pslExtension *)0);
|
|
|
|
program.compile("int main () {}", "");
|
|
|
|
return 0;
|
|
|
|
}
|
|
|
|
],
|
|
|
|
[AC_MSG_RESULT(yes);
|
2003-01-17 12:41:47 +00:00
|
|
|
have_plib_psl=yes],
|
2003-01-11 16:30:32 +00:00
|
|
|
AC_MSG_RESULT(no)
|
|
|
|
)
|
2003-01-17 12:41:47 +00:00
|
|
|
AM_CONDITIONAL(HAVE_PLIB_PSL, test "x$have_plib_psl" = "xyes")
|
2002-08-27 23:52:15 +00:00
|
|
|
|
2002-12-10 20:50:48 +00:00
|
|
|
dnl Check for MetaKit
|
|
|
|
AC_CHECK_HEADER(mk4.h)
|
|
|
|
if test "x$ac_cv_header_mk4_h" != "xyes"; then
|
|
|
|
echo
|
|
|
|
echo "MetaKit library not found."
|
|
|
|
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 it's included instructions"
|
|
|
|
echo "to compile and install on your system."
|
|
|
|
echo
|
|
|
|
echo "configure aborted."
|
|
|
|
exit
|
2002-08-27 23:52:15 +00:00
|
|
|
fi
|
|
|
|
|
2002-12-10 20:50:48 +00:00
|
|
|
AC_MSG_CHECKING([for metakit 2.4.3 or newer])
|
|
|
|
saved_LIBS="$LIBS"
|
|
|
|
LIBS="$saved_LIBS -lmk4"
|
|
|
|
AC_TRY_RUN([
|
|
|
|
#include <mk4.h>
|
|
|
|
|
|
|
|
#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([
|
|
|
|
|
|
|
|
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)
|
|
|
|
)
|
|
|
|
|
|
|
|
dnl Check for the presence of SimGear
|
2002-08-27 23:52:15 +00:00
|
|
|
AC_CHECK_HEADER(simgear/version.h)
|
|
|
|
if test "x$ac_cv_header_simgear_version_h" != "xyes"; then
|
|
|
|
echo
|
|
|
|
echo "You *must* have the SimGear support library installed on your system"
|
|
|
|
echo "to build the FGFS simulator!"
|
|
|
|
echo
|
|
|
|
echo "Please see README.SimGear for more details."
|
|
|
|
echo
|
|
|
|
echo "configure aborted."
|
|
|
|
exit
|
|
|
|
fi
|
|
|
|
|
2002-12-03 20:36:56 +00:00
|
|
|
AC_MSG_CHECKING([for simgear 0.3.0 or newer])
|
2002-08-27 23:52:15 +00:00
|
|
|
AC_TRY_RUN([
|
2002-08-28 03:34:31 +00:00
|
|
|
#include <stdio.h>
|
|
|
|
|
2002-08-27 23:52:15 +00:00
|
|
|
#include <simgear/version.h>
|
|
|
|
|
|
|
|
#define STRINGIFY(X) XSTRINGIFY(X)
|
|
|
|
#define XSTRINGIFY(X) #X
|
|
|
|
|
|
|
|
#define MIN_MAJOR 0
|
2002-12-03 20:36:56 +00:00
|
|
|
#define MIN_MINOR 3
|
2002-09-07 20:33:00 +00:00
|
|
|
#define MIN_MICRO 0
|
2002-08-27 23:52:15 +00:00
|
|
|
|
|
|
|
int main() {
|
|
|
|
int major, minor, micro;
|
|
|
|
|
|
|
|
printf("%d.%d.%d or greater... ", MIN_MAJOR, MIN_MINOR, MIN_MICRO);
|
|
|
|
|
|
|
|
sscanf( STRINGIFY(SIMGEAR_VERSION), "%d.%d.%d", &major, &minor, µ );
|
|
|
|
|
|
|
|
if ( major < MIN_MAJOR ) {
|
|
|
|
return -1;
|
|
|
|
} else if ( major == MIN_MAJOR && minor < MIN_MINOR ) {
|
|
|
|
return -1;
|
|
|
|
} else if ( major == MIN_MAJOR && minor == MIN_MINOR && micro < MIN_MICRO ){
|
|
|
|
return -1;
|
|
|
|
}
|
|
|
|
|
|
|
|
return 0;
|
|
|
|
}
|
|
|
|
|
|
|
|
],
|
|
|
|
AC_MSG_RESULT(yes),
|
|
|
|
[AC_MSG_RESULT(wrong version);
|
|
|
|
AC_MSG_ERROR([Install latest simgear first...])],
|
|
|
|
AC_MSG_RESULT(yes)
|
|
|
|
)
|
|
|
|
|
2002-08-29 20:43:19 +00:00
|
|
|
LIBS="$saved_LIBS"
|
|
|
|
|
2002-12-10 20:50:48 +00:00
|
|
|
dnl Check if SimGear was built with Norman JPEG factory support
|
2002-08-29 20:43:19 +00:00
|
|
|
AC_CHECK_HEADER(simgear/screen/jpgfactory.hxx)
|
|
|
|
if test "x$ac_cv_header_simgear_screen_jpgfactory_hxx" = "xyes"; then
|
|
|
|
AC_CHECK_LIB(jpeg, jpeg_start_compress)
|
|
|
|
if test "x$ac_cv_lib_jpeg_jpeg_start_compress" != "xyes" ; then
|
|
|
|
echo
|
|
|
|
echo "The JPEG factory code was built and installed with SimGear."
|
|
|
|
echo "However it appears the libjpeg is no longer installed."
|
|
|
|
echo "You need to install libjpeg or remove jpgfactory support from"
|
|
|
|
echo "SimGear"
|
|
|
|
echo
|
|
|
|
echo "libjpeg is available at :"
|
|
|
|
echo " ftp://ftp.uu.net in the directory graphics/jpeg"
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
AC_DEFINE([FG_JPEG_SERVER], 1,
|
|
|
|
[Define to build with jpeg screen shot server])
|
|
|
|
fi
|
|
|
|
AM_CONDITIONAL(ENABLE_JPEG_SERVER, test "x$ac_cv_header_simgear_screen_jpgfactory_hxx" = "xyes")
|
2002-08-28 03:34:31 +00:00
|
|
|
|
2002-08-29 16:00:17 +00:00
|
|
|
AC_LANG_POP
|
2002-08-28 03:34:31 +00:00
|
|
|
|
2002-12-10 20:50:48 +00:00
|
|
|
dnl Check for system installed zlib
|
2002-08-27 23:52:15 +00:00
|
|
|
AC_CHECK_HEADER(zlib.h)
|
|
|
|
if test "x$ac_cv_header_zlib_h" != "xyes"; then
|
|
|
|
echo
|
|
|
|
echo "zlib library not found."
|
|
|
|
echo
|
|
|
|
echo "If your OS does not provide an installable package for zlib"
|
|
|
|
echo "you will have to compile and install it first yourself. A copy"
|
|
|
|
echo "of zlib-1.1.4.tar.gz is included with SimGear. You will"
|
|
|
|
echo "have to untar this source code, and follow it's included instructions"
|
|
|
|
echo "to compile and install on your system."
|
|
|
|
echo
|
|
|
|
echo "configure aborted."
|
|
|
|
echo
|
|
|
|
fi
|
|
|
|
|
2002-12-10 20:50:48 +00:00
|
|
|
dnl Checks for header files.
|
2002-08-27 23:52:15 +00:00
|
|
|
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 )
|
|
|
|
|
2002-12-10 20:50:48 +00:00
|
|
|
dnl Checks for typedefs, structures, and compiler characteristics.
|
2002-08-27 23:52:15 +00:00
|
|
|
AC_C_CONST
|
|
|
|
AC_TYPE_SIZE_T
|
|
|
|
AC_HEADER_TIME
|
|
|
|
AC_STRUCT_TM
|
|
|
|
|
2002-12-10 20:50:48 +00:00
|
|
|
dnl Checks for library functions.
|
2002-08-27 23:52:15 +00:00
|
|
|
AC_TYPE_SIGNAL
|
|
|
|
AC_FUNC_VPRINTF
|
2002-12-10 20:50:48 +00:00
|
|
|
AC_CHECK_FUNCS( \
|
|
|
|
ftime gettimeofday timegm memcpy bcopy mktime strstr rand \
|
|
|
|
random drand48 setitimer getitimer signal GetLocalTime rint getrusage )
|
2002-08-27 23:52:15 +00:00
|
|
|
|
2002-08-29 16:00:17 +00:00
|
|
|
AM_CONFIG_HEADER(src/Include/config.h)
|
2002-08-27 23:52:15 +00:00
|
|
|
|
|
|
|
AC_CONFIG_FILES([ \
|
|
|
|
Makefile \
|
|
|
|
man/Makefile \
|
|
|
|
man/est-epsilon.1 \
|
|
|
|
man/fgfs.1 \
|
|
|
|
man/fgjs.1 \
|
|
|
|
man/gl-info.1 \
|
|
|
|
man/js_demo.1 \
|
|
|
|
man/pstest.1 \
|
|
|
|
scripts/Makefile \
|
|
|
|
scripts/debug/Makefile \
|
|
|
|
scripts/python/Makefile \
|
|
|
|
src/Makefile \
|
|
|
|
src/Include/Makefile \
|
|
|
|
src/Include/version.h \
|
|
|
|
src/Aircraft/Makefile \
|
|
|
|
src/Airports/Makefile \
|
|
|
|
src/ATC/Makefile \
|
|
|
|
src/Autopilot/Makefile \
|
|
|
|
src/Cockpit/Makefile \
|
|
|
|
src/Cockpit/built_in/Makefile \
|
|
|
|
src/Controls/Makefile \
|
|
|
|
src/Environment/Makefile \
|
|
|
|
src/FDM/Balloon/Makefile \
|
2002-09-28 21:42:03 +00:00
|
|
|
src/FDM/ExternalNet/Makefile \
|
2003-03-03 04:32:42 +00:00
|
|
|
src/FDM/ExternalPipe/Makefile \
|
2002-08-27 23:52:15 +00:00
|
|
|
src/FDM/JSBSim/Makefile \
|
|
|
|
src/FDM/JSBSim/filtersjb/Makefile \
|
|
|
|
src/FDM/LaRCsim/Makefile \
|
|
|
|
src/FDM/UIUCModel/Makefile \
|
|
|
|
src/FDM/YASim/Makefile \
|
|
|
|
src/FDM/Makefile \
|
|
|
|
src/GUI/Makefile \
|
|
|
|
src/Input/Makefile \
|
2002-09-24 14:51:37 +00:00
|
|
|
src/Instrumentation/Makefile \
|
2002-08-27 23:52:15 +00:00
|
|
|
src/Main/Makefile \
|
|
|
|
src/Main/runfgfs \
|
|
|
|
src/Main/runfgfs.bat \
|
|
|
|
src/Model/Makefile \
|
2003-03-19 20:45:09 +00:00
|
|
|
src/MultiPlayer/Makefile \
|
2002-08-27 23:52:15 +00:00
|
|
|
src/Navaids/Makefile \
|
|
|
|
src/Network/Makefile \
|
|
|
|
src/NetworkOLK/Makefile \
|
|
|
|
src/Objects/Makefile \
|
|
|
|
src/Scenery/Makefile \
|
2003-01-11 16:30:32 +00:00
|
|
|
src/Scripting/Makefile \
|
2002-08-27 23:52:15 +00:00
|
|
|
src/Sound/Makefile \
|
2002-09-23 19:55:10 +00:00
|
|
|
src/Systems/Makefile \
|
2002-08-27 23:52:15 +00:00
|
|
|
src/Time/Makefile \
|
|
|
|
src/WeatherCM/Makefile \
|
|
|
|
tests/Makefile \
|
2002-12-03 15:38:41 +00:00
|
|
|
utils/Makefile \
|
|
|
|
utils/TerraSync/Makefile \
|
2002-08-27 23:52:15 +00:00
|
|
|
])
|
|
|
|
AC_OUTPUT
|
|
|
|
|
|
|
|
AC_OUTPUT_COMMANDS([chmod 755 src/Main/runfgfs])
|
|
|
|
|
|
|
|
echo ""
|
|
|
|
echo "Configure Summary"
|
|
|
|
echo "================="
|
|
|
|
|
|
|
|
echo "Prefix: $prefix"
|
|
|
|
|
2003-01-17 12:41:47 +00:00
|
|
|
if test "x$have_plib_psl" = "xyes"; then
|
|
|
|
echo "Plib PSL scripting: yes"
|
2003-01-11 16:30:32 +00:00
|
|
|
else
|
2003-01-17 12:41:47 +00:00
|
|
|
echo "Plib PSL scripting: $fg_psl_string_compile"
|
|
|
|
echo " You will not be able to run scripts written in PSL"
|
|
|
|
echo " and some advanced GUI and input features may not"
|
|
|
|
echo " work. Download and install the latest CVS version"
|
|
|
|
echo " of plib if you would like to enable PSL support."
|
2003-01-11 16:30:32 +00:00
|
|
|
fi
|
|
|
|
|
2002-08-27 23:52:15 +00:00
|
|
|
if test "x$with_logging" != "x"; then
|
|
|
|
echo "Debug messages: $with_logging"
|
|
|
|
else
|
|
|
|
echo "Debug messages: yes"
|
|
|
|
fi
|
|
|
|
|
2002-12-10 20:50:48 +00:00
|
|
|
echo -n "Automake version: "
|
2002-08-27 23:52:15 +00:00
|
|
|
automake --version | head -1
|
|
|
|
|
|
|
|
if test "x$with_weathercm" != "x"; then
|
|
|
|
echo "WeatherCM instead of FGEnvironment: $with_weathercm"
|
|
|
|
else
|
|
|
|
echo "Using FGEnvironment"
|
|
|
|
fi
|
|
|
|
|
2003-03-19 20:45:09 +00:00
|
|
|
if test "x$with_multiplayer" != "xno"; then
|
|
|
|
echo "Using default multiplayer support"
|
|
|
|
elif test "x$with_network_olk" != "xno"; then
|
|
|
|
echo "Using Oliver's multi-pilot network support"
|
|
|
|
fi
|
|
|
|
|
2002-08-27 23:52:15 +00:00
|
|
|
if test "x$with_threads" = "xyes"; then
|
|
|
|
echo "threads: yes"
|
|
|
|
else
|
|
|
|
echo "threads: no"
|
|
|
|
fi
|