2002-08-27 23:52:15 +00:00
|
|
|
dnl Process this file with aclocal ; automake -a ; autoconf to produce a
|
|
|
|
dnl working configure script.
|
|
|
|
|
|
|
|
#
|
|
|
|
# $Id$
|
|
|
|
#
|
|
|
|
|
|
|
|
AC_INIT
|
|
|
|
AC_CONFIG_SRCDIR([src/Aircraft/aircraft.cxx])
|
|
|
|
|
2002-08-28 16:13:06 +00:00
|
|
|
# Require at least automake 2.52
|
|
|
|
AC_PREREQ(2.52)
|
2002-08-27 23:52:15 +00:00
|
|
|
|
|
|
|
# Initialize the automake stuff
|
2002-09-07 20:33:00 +00:00
|
|
|
AM_INIT_AUTOMAKE(FlightGear, 0.8.0)
|
2002-08-27 23:52:15 +00:00
|
|
|
|
|
|
|
# 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
|
|
|
|
|
|
|
|
# Initialize libtool
|
|
|
|
# AM_PROG_LIBTOOL
|
|
|
|
|
|
|
|
# Initialize maintainer mode
|
|
|
|
# AM_MAINTAINER_MODE
|
|
|
|
|
|
|
|
# This is needed for AC_TRY_COMPILE later
|
|
|
|
# AC_ISC_POSIX
|
|
|
|
|
|
|
|
# Check to see if this `configure' is being run in the `Cygwin32' environment
|
|
|
|
AC_EGREP_CPP(yes,
|
|
|
|
[#ifdef __MINGW32__
|
|
|
|
yes
|
|
|
|
#endif
|
|
|
|
],is_mingw=yes, is_mingw=no)
|
|
|
|
|
|
|
|
echo "IS_MINGW = $is_mingw"
|
|
|
|
AM_CONDITIONAL(IS_MINGW, test "x$is_mingw" = "xyes")
|
|
|
|
|
|
|
|
AC_EGREP_CPP(yes,
|
|
|
|
[#ifdef __CYGWIN__
|
|
|
|
yes
|
|
|
|
#endif
|
|
|
|
],is_cygwin=yes, is_cygwin=no)
|
|
|
|
|
|
|
|
echo "IS_CYGWIN = $is_cygwin"
|
|
|
|
AM_CONDITIONAL(IS_CYGWIN, test "x$is_cygwin" = "xyes")
|
|
|
|
|
|
|
|
# Used by JSBSim
|
|
|
|
AC_DEFINE([FGFS], 1, [Define so that JSBSim compiles in 'library' mode])
|
|
|
|
|
2002-09-06 17:30:21 +00:00
|
|
|
|
2002-08-27 23:52:15 +00:00
|
|
|
# Used on the Irix platform
|
|
|
|
AR="ar"
|
2002-09-06 17:30:21 +00:00
|
|
|
ARFLAGS="cru"
|
2002-08-27 23:52:15 +00:00
|
|
|
OS=`uname -s`
|
|
|
|
if test "$OS" = "IRIX" -o "$OS" = "IRIX64"; then
|
|
|
|
if test "$CXX" = "CC"; then
|
|
|
|
AR="CC -ar"
|
2002-09-06 17:30:21 +00:00
|
|
|
ARFLAGS="-o"
|
2002-08-27 23:52:15 +00:00
|
|
|
fi
|
|
|
|
fi
|
2002-09-06 17:30:21 +00:00
|
|
|
AC_SUBST(AR)
|
|
|
|
AC_SUBST(ARFLAGS)
|
2002-08-27 23:52:15 +00:00
|
|
|
|
|
|
|
|
|
|
|
# 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_logging" = "xno" ; then
|
|
|
|
AC_DEFINE([FG_NDEBUG], 1, [Define for no logging output])
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Specify if we want to build with Oliver's networking support
|
|
|
|
# default to with_network=yes
|
|
|
|
AC_ARG_WITH(network_olk, [ --with-network-olk Include Oliver's multi-pilot networking support])
|
|
|
|
if test "x$with_network_olk" = "xno" ; then
|
|
|
|
echo "Building without Oliver's multi-pilot network support"
|
|
|
|
else
|
|
|
|
echo "Building with Oliver's multi-pilot network support"
|
|
|
|
AC_DEFINE([FG_NETWORK_OLK], 1, [Define to build with Oliver's networking])
|
|
|
|
fi
|
|
|
|
AM_CONDITIONAL(ENABLE_NETWORK_OLK, test "x$with_network_olk" != "xno")
|
|
|
|
|
|
|
|
|
|
|
|
# Specify if we want to use WeatherCM instead of FGEnvironment.
|
|
|
|
# default to with_weathercm=no
|
2002-08-29 16:00:17 +00:00
|
|
|
AC_ARG_WITH(new-environment, [ --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")
|
|
|
|
|
|
|
|
# Let the Win32 user specify if they want to build with the SGI
|
|
|
|
# opengl.dll as opposed to the more standard openg32.dll
|
|
|
|
AC_ARG_WITH(sgi-opengl, [ --with-sgi-opengl Build against SGI's opengl.dll glu.dll and glut.dll])
|
|
|
|
|
|
|
|
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"
|
|
|
|
AC_CHECK_HEADER(pthread.h)
|
|
|
|
fi
|
|
|
|
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
|
|
|
|
|
|
|
|
# specify the simgear location
|
2002-08-29 16:00:17 +00:00
|
|
|
AC_ARG_WITH(simgear, [ --with-simgear=PREFIX Specify the prefix path to simgear])
|
2002-08-27 23:52:15 +00:00
|
|
|
|
|
|
|
if test "x$with_simgear" != "x" ; then
|
|
|
|
echo "SimGear prefix path is $with_simgear"
|
|
|
|
EXTRA_DIRS="${EXTRA_DIRS} $with_simgear"
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Check for MS Windows environment
|
|
|
|
AC_CHECK_HEADER(windows.h)
|
|
|
|
|
|
|
|
# extra library and include directories
|
|
|
|
if test "x$ac_cv_header_windows_h" != "xyes" ; then
|
2002-09-14 16:15:43 +00:00
|
|
|
EXTRA_DIRS="${EXTRA_DIRS} /usr/X11R6"
|
2002-08-27 23:52:15 +00:00
|
|
|
|
|
|
|
if test -d /opt/X11R6 ; then
|
|
|
|
EXTRA_DIRS="${EXTRA_DIRS} /opt/X11R6"
|
|
|
|
fi
|
|
|
|
else
|
|
|
|
if test "x$is_cygwin" = "xyes" ; then
|
|
|
|
EXTRA_DIRS="${EXTRA_DIRS} /usr/local"
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
|
|
|
wi_EXTRA_DIRS(no, ${EXTRA_DIRS})
|
|
|
|
|
|
|
|
# Using AM_CONDITIONAL is a step out of the protected little
|
|
|
|
# automake fold so it is potentially dangerous. But, we are
|
|
|
|
# beginning to run into cases where the standard checks are not
|
|
|
|
# enough. AM_CONDITIONALS are then referenced to conditionally
|
|
|
|
# build a Makefile.in from a Makefile.am which lets us define custom
|
|
|
|
# includes, compile alternative source files, etc.
|
|
|
|
|
|
|
|
# Check for external variables daylight and timezone.
|
|
|
|
AC_EXT_DAYLIGHT
|
|
|
|
if test "$have_daylight" = yes; then
|
|
|
|
AC_DEFINE([HAVE_DAYLIGHT], 1, [Define if system has daylight variable])
|
|
|
|
fi
|
|
|
|
# AM_CONDITIONAL(HAVE_DAYLIGHT, test "$have_daylight" = yes )
|
|
|
|
|
|
|
|
AC_EXT_TIMEZONE
|
|
|
|
if test "$have_timezone" = yes; then
|
|
|
|
AC_DEFINE([HAVE_TIMEZONE], 1, [Define if system has timezone variable])
|
|
|
|
fi
|
|
|
|
# AM_CONDITIONAL(HAVE_TIMEZONE, test "$have_timezone" = yes )
|
|
|
|
|
|
|
|
# Check for audio support
|
|
|
|
AC_MSG_CHECKING(for audio support)
|
|
|
|
audio_LIBS=""
|
|
|
|
if test -r /usr/include/soundcard.h \
|
|
|
|
-o -r /usr/include/linux/soundcard.h \
|
|
|
|
-o -r /usr/include/machine/soundcard.h \
|
|
|
|
-o -r /usr/include/audio.h \
|
|
|
|
-o "x$ac_cv_header_windows_h" = "xyes" \
|
|
|
|
-o "$HOSTTYPE" = "macintosh"; then
|
|
|
|
|
|
|
|
AC_DEFINE([ENABLE_AUDIO_SUPPORT], 1, [Define for audio support])
|
|
|
|
audio_LIBS="-lplibsl -lplibsm"
|
|
|
|
AC_MSG_RESULT(yes)
|
|
|
|
if test -r /usr/include/audio.h; then
|
|
|
|
audio_LIBS="$audio_LIBS -laudio"
|
|
|
|
fi
|
|
|
|
|
|
|
|
if test "x$ac_cv_header_windows_h" = "xyes"; then
|
|
|
|
audio_LIBS="$audio_LIBS -lwinmm"
|
|
|
|
fi
|
|
|
|
|
|
|
|
if test "$HOSTTYPE" = "macintosh"; then
|
|
|
|
audio_LIBS="$audio_LIBS -framework Carbon"
|
|
|
|
fi
|
|
|
|
else
|
|
|
|
AC_MSG_RESULT(no)
|
|
|
|
fi
|
|
|
|
AC_SUBST(audio_LIBS)
|
|
|
|
|
|
|
|
# Check for X11 (fancy)
|
|
|
|
if test "x$no_x" != "xyes"; then
|
|
|
|
AC_PATH_XTRA
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Checks for libraries.
|
|
|
|
|
|
|
|
null_LIBS="$LIBS"
|
|
|
|
|
|
|
|
AC_CHECK_LIB(m, cos)
|
|
|
|
|
|
|
|
dnl MINGW requires libwsock32
|
|
|
|
if test "x$is_mingw" = "xyes" ; then
|
|
|
|
LIBS="$LIBS -lws2_32"
|
|
|
|
fi
|
|
|
|
|
|
|
|
base_LIBS="$LIBS"
|
|
|
|
|
|
|
|
dnl Mesa >= 3.2 requires pthreads
|
|
|
|
AC_CHECK_LIB(pthread, pthread_exit)
|
|
|
|
AC_CHECK_LIB(socket, socket)
|
|
|
|
|
|
|
|
dnl Skip X library tests.
|
|
|
|
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
|
|
|
|
|
|
|
|
# check for OpenGL related libraries
|
|
|
|
|
|
|
|
if test "$HOSTTYPE" = "macintosh"; then
|
|
|
|
LIBS="$LIBS -framework OpenGL -framework GLUT -lobjc"
|
|
|
|
elif test "x$ac_cv_header_windows_h" != "xyes" ; then
|
|
|
|
# Reasonable stuff for non-windoze variants ... :-)
|
|
|
|
|
|
|
|
AC_CHECK_LIB(GLcore, glNewList)
|
|
|
|
if test "x$ac_cv_lib_GLcore_glNewList" = "xno" ; then
|
|
|
|
# if no GLcore, check for GL
|
|
|
|
AC_CHECK_LIB(GL, glNewList)
|
|
|
|
if test "x$ac_cv_lib_GL_glNewList" = "xno" ; then
|
|
|
|
# if no GL, check for MesaGL
|
|
|
|
AC_CHECK_LIB(MesaGL, glNewList)
|
|
|
|
fi
|
|
|
|
else
|
|
|
|
# if GLcore found, then also check for GL
|
|
|
|
AC_CHECK_LIB(GL, glXCreateContext)
|
|
|
|
fi
|
|
|
|
|
|
|
|
# check for xmesa.h and if found enable XMESA / FX
|
|
|
|
AC_CHECK_HEADER(GL/fxmesa.h)
|
|
|
|
if test "x$ac_cv_header_GL_fxmesa_h" = "xyes"; then
|
|
|
|
save_LIBS="$LIBS"
|
|
|
|
AC_CHECK_LIB(GL, XMesaSetFXmode)
|
|
|
|
if test "x$ac_cv_lib_GL_XMesaSetFXmode" = "xyes" ; then
|
|
|
|
AC_DEFINE([XMESA], 1, [Define for Mesa FX mode])
|
|
|
|
AC_DEFINE([FX], 1, [Define for Mesa FX mode])
|
|
|
|
else
|
|
|
|
AC_CHECK_LIB(MesaGL, XMesaSetFXmode)
|
|
|
|
if test "x$ac_cv_lib_MesaGL_XMesaSetFXmode" = "xyes" ; then
|
|
|
|
AC_DEFINE([XMESA], 1, [Define for Mesa FX mode])
|
|
|
|
AC_DEFINE([FX], 1, [Define for Mesa FX mode])
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
LIBS="$save_LIBS"
|
|
|
|
fi
|
|
|
|
|
|
|
|
AC_CHECK_LIB(GLU, gluLookAt)
|
|
|
|
if test "x$ac_cv_lib_GLU_gluLookAt" = "xno" ; then
|
|
|
|
# if no GLU, check for MesaGLU
|
|
|
|
AC_CHECK_LIB(MesaGLU, gluLookAt)
|
|
|
|
fi
|
|
|
|
|
|
|
|
# check for glut
|
|
|
|
AC_CHECK_LIB(glut, glutGetModifiers)
|
|
|
|
|
|
|
|
# test for glutGameModeString, but avoid adding glut a second time into
|
|
|
|
# the list of libraries
|
|
|
|
save_LIBS="$LIBS"
|
|
|
|
AC_CHECK_LIB(glut, glutGameModeString)
|
|
|
|
LIBS="$save_LIBS"
|
|
|
|
else
|
|
|
|
# Win32 is a little wierd because it has to try to handle the various
|
|
|
|
# winbloze-isms. We'll just do this manually for now.
|
|
|
|
|
|
|
|
echo Win32 specific hacks...
|
|
|
|
AC_DEFINE([WIN32], 1, [Define if building on a Win32 platform])
|
|
|
|
|
|
|
|
# just define these to true and hope for the best
|
|
|
|
ac_cv_lib_glut_glutGetModifiers="yes"
|
|
|
|
ac_cv_lib_glut_glutGameModeString="yes"
|
|
|
|
|
|
|
|
if test "x$with_sgi_opengl" = "xyes" ; then
|
|
|
|
echo "Building with glut.dll, glu.dll, and opengl.dll"
|
|
|
|
WIN32_GLUT=glut
|
|
|
|
WIN32_GLU=glu
|
|
|
|
WIN32_OPENGL=opengl
|
|
|
|
else
|
|
|
|
echo "Building with glut32.dll, glu32.dll, and opengl32.dll"
|
|
|
|
WIN32_GLUT=glut32
|
|
|
|
WIN32_GLU=glu32
|
|
|
|
WIN32_OPENGL=opengl32
|
|
|
|
fi
|
|
|
|
|
|
|
|
LIBS="$LIBS -l${WIN32_GLUT} -l${WIN32_GLU} -l${WIN32_OPENGL}"
|
|
|
|
LIBS="$LIBS -luser32 -lgdi32"
|
|
|
|
echo "Will link apps with $LIBS"
|
|
|
|
fi
|
|
|
|
|
|
|
|
if test "x$ac_cv_lib_glut_glutGetModifiers" = "xno"; then
|
|
|
|
echo
|
|
|
|
echo "Unable to find the necessary OpenGL or GLUT libraries."
|
|
|
|
echo "See config.log for automated test details and results ..."
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
|
|
|
|
if test "x$ac_cv_lib_glut_glutGameModeString" = "xno"; then
|
|
|
|
echo
|
|
|
|
echo "Your version of glut doesn't support game mode."
|
|
|
|
echo "You need to install the latest version. If your distribution doesn't"
|
|
|
|
echo "provide a newer version, you can get the latest source code from:"
|
|
|
|
echo
|
|
|
|
echo " http://reality.sgi.com/opengl/glut3/glut3.html"
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
|
|
|
|
opengl_LIBS="$LIBS"
|
|
|
|
LIBS="$base_LIBS"
|
|
|
|
|
|
|
|
AC_SUBST(base_LIBS)
|
|
|
|
AC_SUBST(opengl_LIBS)
|
|
|
|
|
|
|
|
AM_CONDITIONAL(HAVE_XWINDOWS, test "x$ac_cv_lib_X11_XCreateWindow" = "xyes" )
|
|
|
|
|
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
|
|
|
|
|
|
|
# If we get here then plib is available, so force use of plib joystick lib
|
|
|
|
AC_DEFINE([ENABLE_PLIB_JOYSTICK], 1, [Define to enable plib joystick support])
|
|
|
|
|
|
|
|
# Do we have a new CVS plib version with jsJoystick::getName?
|
|
|
|
echo -n "Testing for Plib joystick getName support: "
|
|
|
|
AC_EGREP_HEADER( getName, plib/js.h,
|
|
|
|
plib_js_has_getname=yes, plib_js_has_getname=no )
|
|
|
|
echo $plib_js_has_getname
|
|
|
|
if test $plib_js_has_getname = 'yes'; then
|
|
|
|
AC_DEFINE([FG_PLIB_JOYSTICK_GETNAME], 1,
|
|
|
|
[Define to enable plib joystick name support])
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Check for the presence of SimGear
|
|
|
|
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-09-07 20:33:00 +00:00
|
|
|
AC_MSG_CHECKING([for simgear 0.2.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-09-07 20:33:00 +00:00
|
|
|
#define MIN_MINOR 2
|
|
|
|
#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)
|
|
|
|
)
|
|
|
|
|
|
|
|
# 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
|
|
|
|
fi
|
|
|
|
|
2002-09-03 01:12:26 +00:00
|
|
|
AC_MSG_CHECKING([for metakit 2.4.3 or newer])
|
2002-08-29 20:43:19 +00:00
|
|
|
saved_LIBS="$LIBS"
|
|
|
|
LIBS="$saved_LIBS -lmk4"
|
2002-08-28 03:34:31 +00:00
|
|
|
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...])],
|
|
|
|
AC_MSG_RESULT(yes)
|
|
|
|
)
|
2002-08-29 20:43:19 +00:00
|
|
|
LIBS="$saved_LIBS"
|
|
|
|
|
|
|
|
# Check if SimGear was built with Norman JPEG factory support
|
|
|
|
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-08-27 23:52:15 +00:00
|
|
|
# Check for system installed zlib
|
|
|
|
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
|
|
|
|
|
|
|
|
# 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 )
|
|
|
|
|
|
|
|
# Checks for typedefs, structures, and compiler characteristics.
|
|
|
|
AC_C_CONST
|
|
|
|
AC_TYPE_SIZE_T
|
|
|
|
AC_HEADER_TIME
|
|
|
|
AC_STRUCT_TM
|
|
|
|
|
|
|
|
# Checks for library functions.
|
|
|
|
AC_TYPE_SIGNAL
|
|
|
|
AC_FUNC_VPRINTF
|
|
|
|
AC_CHECK_FUNCS( ftime gettimeofday timegm memcpy bcopy mktime strstr rand \
|
|
|
|
random setitimer getitimer signal GetLocalTime rint getrusage )
|
|
|
|
|
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 \
|
|
|
|
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 \
|
|
|
|
src/Main/Makefile \
|
|
|
|
src/Main/runfgfs \
|
|
|
|
src/Main/runfgfs.bat \
|
|
|
|
src/Model/Makefile \
|
|
|
|
src/Navaids/Makefile \
|
|
|
|
src/Network/Makefile \
|
|
|
|
src/NetworkOLK/Makefile \
|
|
|
|
src/Objects/Makefile \
|
|
|
|
src/Scenery/Makefile \
|
|
|
|
src/Sound/Makefile \
|
|
|
|
src/Time/Makefile \
|
|
|
|
src/WeatherCM/Makefile \
|
|
|
|
tests/Makefile \
|
|
|
|
])
|
|
|
|
AC_OUTPUT
|
|
|
|
|
|
|
|
AC_OUTPUT_COMMANDS([chmod 755 src/Main/runfgfs])
|
|
|
|
|
|
|
|
echo ""
|
|
|
|
echo "Configure Summary"
|
|
|
|
echo "================="
|
|
|
|
|
|
|
|
echo "Prefix: $prefix"
|
|
|
|
|
|
|
|
if test "x$with_logging" != "x"; then
|
|
|
|
echo "Debug messages: $with_logging"
|
|
|
|
else
|
|
|
|
echo "Debug messages: yes"
|
|
|
|
fi
|
|
|
|
|
|
|
|
echo -n "Automake version: ($AUTO_MAKE_VERSION) "
|
|
|
|
automake --version | head -1
|
|
|
|
|
|
|
|
echo "New plib joystick name support: $plib_js_has_getname"
|
|
|
|
|
|
|
|
if test "x$with_weathercm" != "x"; then
|
|
|
|
echo "WeatherCM instead of FGEnvironment: $with_weathercm"
|
|
|
|
else
|
|
|
|
echo "Using FGEnvironment"
|
|
|
|
fi
|
|
|
|
|
|
|
|
if test "x$with_threads" = "xyes"; then
|
|
|
|
echo "threads: yes"
|
|
|
|
else
|
|
|
|
echo "threads: no"
|
|
|
|
fi
|