]> git.mxchange.org Git - flightgear.git/commitdiff
Modernize the autoconf/automake files.
authorcurt <curt>
Tue, 27 Aug 2002 23:52:15 +0000 (23:52 +0000)
committercurt <curt>
Tue, 27 Aug 2002 23:52:15 +0000 (23:52 +0000)
acconfig.h [deleted file]
configure.ac [new file with mode: 0644]
src/Main/Makefile.am
src/Main/options.cxx

diff --git a/acconfig.h b/acconfig.h
deleted file mode 100644 (file)
index 74d70ca..0000000
+++ /dev/null
@@ -1,330 +0,0 @@
-/* acconfig.h
-   This file is in the public domain.
-
-   Descriptive text for the C preprocessor macros that
-   the distributed Autoconf macros can define.
-   No software package will use all of them; autoheader copies the ones
-   your configure.in uses into your configuration header file templates.
-
-   The entries are in sort -df order: alphabetical, case insensitive,
-   ignoring punctuation (such as underscores).  Although this order
-   can split up related entries, it makes it easier to check whether
-   a given entry is in the file.
-
-   Leave the following blank line there!!  Autoheader needs it.  */
-\f
-
-/* Define if on AIX 3.
-   System headers sometimes define this.
-   We just want to avoid a redefinition error message.  */
-#ifndef _ALL_SOURCE
-#undef _ALL_SOURCE
-#endif
-
-/* Define if using alloca.c.  */
-#undef C_ALLOCA
-
-/* Define if type char is unsigned and you are not using gcc.  */
-#ifndef __CHAR_UNSIGNED__
-#undef __CHAR_UNSIGNED__
-#endif
-
-/* Define if the closedir function returns void instead of int.  */
-#undef CLOSEDIR_VOID
-
-/* Define to empty if the keyword does not work.  */
-#undef const
-
-/* Define to one of _getb67, GETB67, getb67 for Cray-2 and Cray-YMP systems.
-   This function is required for alloca.c support on those systems.  */
-#undef CRAY_STACKSEG_END
-
-/* Define for DGUX with <sys/dg_sys_info.h>.  */
-#undef DGUX
-
-/* Define if you have <dirent.h>.  */
-#undef DIRENT
-
-/* Define to enable audio support */
-#undef ENABLE_AUDIO_SUPPORT
-
-/* Define to enable GLUT joystick support (limited to 3 axes) */
-#undef ENABLE_GLUT_JOYSTICK
-   
-/* Define to enable plib joystick support (recommended) */
-#undef ENABLE_PLIB_JOYSTICK
-/* Define to enable http jpeg server code */
-#undef FG_JPEG_SERVER
-
-/* Define to eliminate all trace of debugging messages such as for a 
-   release build */
-#undef FG_NDEBUG
-   
-/* Define to include Oliver's networking support */
-#undef FG_NETWORK_OLK
-   
-/* Define to use Christian's old weather code */
-#undef FG_WEATHERCM
-
-/* Define to enable new Plib joystick features (post 1.4) */
-#undef FG_PLIB_JOYSTICK_GETNAME
-
-/* Define if we are building FGFS (should always be defined) */
-#undef FGFS
-   
-/* Define to enable 3dfx/glide render in a window hack under unix.
-   This probably won't work under windows. */
-#undef XMESA
-#undef FX
-
-/* Define to the type of elements in the array set by `getgroups'.
-   Usually this is either `int' or `gid_t'.  */
-#undef GETGROUPS_T
-
-/* Define if the `getloadavg' function needs to be run setuid or setgid.  */
-#undef GETLOADAVG_PRIVILEGED
-
-/* Define if the `getpgrp' function takes no argument.  */
-#undef GETPGRP_VOID
-
-/* Define to `int' if <sys/types.h> doesn't define.  */
-#undef gid_t
-
-/* Define if you have alloca, as a function or macro.  */
-#undef HAVE_ALLOCA
-
-/* Define if you have <alloca.h> and it should be used (not on Ultrix).  */
-#undef HAVE_ALLOCA_H
-
-/* Define if you external variables daylight.  */
-#undef HAVE_DAYLIGHT
-
-/* Define if you don't have vprintf but do have _doprnt.  */
-#undef HAVE_DOPRNT
-
-/* Define if your system has a working fnmatch function.  */
-#undef HAVE_FNMATCH
-
-/* Define if your system has its own `getloadavg' function.  */
-#undef HAVE_GETLOADAVG
-
-/* Define if you have getrusage() */
-#undef HAVE_GETRUSAGE
-
-/* Define if you have the getmntent function.  */
-#undef HAVE_GETMNTENT
-
-/* Define if you have the gpc library and headers installed.  */
-#undef HAVE_GPC_H
-
-/* Define if the `long double' type works.  */
-#undef HAVE_LONG_DOUBLE
-
-/* Define if you support file names longer than 14 characters.  */
-#undef HAVE_LONG_FILE_NAMES
-
-/* Define if you have a working `mmap' system call.  */
-#undef HAVE_MMAP
-
-/* Define if system calls automatically restart after interruption
-   by a signal.  */
-#undef HAVE_RESTARTABLE_SYSCALLS
-
-/* Define if you have rint() which rounds to closest int but returns
-   result as a double data type.  */
-#undef HAVE_RINT
-
-/* Define if your struct stat has st_blksize.  */
-#undef HAVE_ST_BLKSIZE
-
-/* Define if your struct stat has st_blocks.  */
-#undef HAVE_ST_BLOCKS
-
-/* Define if you have the strcoll function and it is properly defined.  */
-#undef HAVE_STRCOLL
-
-/* Define if your struct stat has st_rdev.  */
-#undef HAVE_ST_RDEV
-
-/* Define if you have the strftime function.  */
-#undef HAVE_STRFTIME
-
-/* Define if you have <sys/param.h>  */
-#undef HAVE_SYS_PARAM_H
-
-/* Define if you have <sys/stat.h> that is POSIX.1 compatible.  */
-#undef HAVE_SYS_STAT_H
-
-/* Define if you have <sys/wait.h> that is POSIX.1 compatible.  */
-#undef HAVE_SYS_WAIT_H
-
-/* Define if you have timegm() */
-#undef HAVE_TIMEGM
-
-/* Define if you external variables timezone.  */
-#undef HAVE_TIMEZONE
-
-/* Define if your struct tm has tm_zone.  */
-#undef HAVE_TM_ZONE
-
-/* Define if you don't have tm_zone but do have the external array
-   tzname.  */
-#undef HAVE_TZNAME
-
-/* Define if you have <unistd.h>.  */
-#undef HAVE_UNISTD_H
-
-/* Define if utime(file, NULL) sets file's timestamp to the present.  */
-#undef HAVE_UTIME_NULL
-
-/* Define if you have <vfork.h>.  */
-#undef HAVE_VFORK_H
-
-/* Define if you have the vprintf function.  */
-#undef HAVE_VPRINTF
-
-/* Define if you have the wait3 system call.  */
-#undef HAVE_WAIT3
-
-/* Define as __inline if that's what the C compiler calls it.  */
-#undef inline
-
-/* Define if int is 16 bits instead of 32.  */
-#undef INT_16_BITS
-
-/* Define if long int is 64 bits.  */
-#undef LONG_64_BITS
-
-/* Define if major, minor, and makedev are declared in <mkdev.h>.  */
-#undef MAJOR_IN_MKDEV
-
-/* Define if major, minor, and makedev are declared in <sysmacros.h>.  */
-#undef MAJOR_IN_SYSMACROS
-
-/* Define if on MINIX.  */
-#undef _MINIX
-
-/* Define to `int' if <sys/types.h> doesn't define.  */
-#undef mode_t
-
-/* Define if you don't have <dirent.h>, but have <ndir.h>.  */
-#undef NDIR
-
-/* Define if you have <memory.h>, and <string.h> doesn't declare the
-   mem* functions.  */
-#undef NEED_MEMORY_H
-
-/* Define if your struct nlist has an n_un member.  */
-#undef NLIST_NAME_UNION
-
-/* Define if you have <nlist.h>.  */
-#undef NLIST_STRUCT
-
-/* Define if your C compiler doesn't accept -c and -o together.  */
-#undef NO_MINUS_C_MINUS_O
-
-/* Define to `long' if <sys/types.h> doesn't define.  */
-#undef off_t
-
-/* Define to package name */
-#undef PACKAGE
-
-/* Define to `int' if <sys/types.h> doesn't define.  */
-#undef pid_t
-
-/* Define if the system does not provide POSIX.1 features except
-   with this defined.  */
-#undef _POSIX_1_SOURCE
-
-/* Define if you need to in order for stat and other things to work.  */
-#undef _POSIX_SOURCE
-
-/* Define as the return type of signal handlers (int or void).  */
-#undef RETSIGTYPE
-
-/* Define if the `setpgrp' function takes no argument.  */
-#undef SETPGRP_VOID
-
-/* Define if the setvbuf function takes the buffering type as its second
-   argument and the buffer pointer as the third, as on System V
-   before release 3.  */
-#undef SETVBUF_REVERSED
-
-/* Define to `unsigned' if <sys/types.h> doesn't define.  */
-#undef size_t
-
-/* If using the C implementation of alloca, define if you know the
-   direction of stack growth for your system; otherwise it will be
-   automatically deduced at run-time.
-       STACK_DIRECTION > 0 => grows toward higher addresses
-       STACK_DIRECTION < 0 => grows toward lower addresses
-       STACK_DIRECTION = 0 => direction of growth unknown
- */
-#undef STACK_DIRECTION
-
-/* Define if the `S_IS*' macros in <sys/stat.h> do not work properly.  */
-#undef STAT_MACROS_BROKEN
-
-/* Define if you have the ANSI C header files.  */
-#undef STDC_HEADERS
-
-/* Define on System V Release 4.  */
-#undef SVR4
-
-/* Define if you don't have <dirent.h>, but have <sys/dir.h>.  */
-#undef SYSDIR
-
-/* Define if you don't have <dirent.h>, but have <sys/ndir.h>.  */
-#undef SYSNDIR
-
-/* Define if `sys_siglist' is declared by <signal.h>.  */
-#undef SYS_SIGLIST_DECLARED
-
-/* Define if you can safely include both <sys/time.h> and <time.h>.  */
-#undef TIME_WITH_SYS_TIME
-
-/* Define if your <sys/time.h> declares struct tm.  */
-#undef TM_IN_SYS_TIME
-
-/* Define to `int' if <sys/types.h> doesn't define.  */
-#undef uid_t
-
-/* Define for Encore UMAX.  */
-#undef UMAX
-
-/* Define for Encore UMAX 4.3 that has <inq_status/cpustats.h>
-   instead of <sys/cpustats.h>.  */
-#undef UMAX4_3
-
-/* Define if you do not have <strings.h>, index, bzero, etc..  */
-#undef USG
-
-/* Define vfork as fork if vfork does not work.  */
-#undef vfork
-
-/* Define if the closedir function returns void instead of int.  */
-#undef VOID_CLOSEDIR
-
-/* Define if compiling on a Winbloze (95, NT, etc.) platform */
-#undef WIN32
-
-/* Define if your processor stores words with the most significant
-   byte first (like Motorola and SPARC, unlike Intel and VAX).  */
-#undef WORDS_BIGENDIAN
-
-/* Define if the X Window System is missing or not being used.  */
-#undef X_DISPLAY_MISSING
-
-/* Define if lex declares yytext as a char * by default, not a char[].  */
-#undef YYTEXT_POINTER
-
-/* Define to use tile loading threads */
-#undef ENABLE_THREADS
-
-\f
-/* Leave that blank line there!!  Autoheader needs it.
-   If you're adding to this file, keep in mind:
-   The entries are in sort -df order: alphabetical, case insensitive,
-   ignoring punctuation (such as underscores).  */
-
diff --git a/configure.ac b/configure.ac
new file mode 100644 (file)
index 0000000..b2f7478
--- /dev/null
@@ -0,0 +1,591 @@
+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])
+
+# Require at least automake 2.53
+AC_PREREQ(2.53)
+
+# Initialize the automake stuff
+AM_INIT_AUTOMAKE(FlightGear, 0.7.11pre1)
+
+# 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")
+
+# Determine version of automake ... important becuase of
+# incompatibilities between versions
+AUTO_MAKE_VERSION=`automake --version | head -1 | awk '{print $4}' | sed -e 's/\-p[[0-9]]$//' | sed -e 's/\.//'`
+AM_CONDITIONAL(ANCIENT_AUTOMAKE, test $AUTO_MAKE_VERSION -lt 14)
+AM_CONDITIONAL(OLD_AUTOMAKE, test $AUTO_MAKE_VERSION -lt 15)
+
+# Used by JSBSim
+AC_DEFINE([FGFS], 1, [Define so that JSBSim compiles in 'library' mode])
+
+# Used on the Irix platform
+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
+
+
+# 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")
+
+
+# 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")
+
+# Specify if we want to use WeatherCM instead of FGEnvironment.
+# default to with_weathercm=no
+AC_ARG_WITH(new-environment, [  --with-weathercm  Use WeatherCM instead of FGEnvironment])
+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
+AC_ARG_WITH(plib, [  --with-plib=prefix      Specify the prefix path to plib])
+
+if test "x$with_plib" != "x" ; then
+    echo "plib prefix is $with_plib"
+    EXTRA_DIRS="${EXTRA_DIRS} $with_plib"
+fi
+
+# specify the metakit location
+AC_ARG_WITH(metakit, [  --with-metakit=prefix   Specify the prefix path to metakit])
+
+if test "x$with_metakit" != "x" ; then
+    echo "metakit prefix is $with_metakit"
+    EXTRA_DIRS="${EXTRA_DIRS} $with_metakit"
+fi
+
+# 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
+
+# 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
+    EXTRA_DIRS="${EXTRA_DIRS} /usr/local /usr/X11R6"
+
+    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])
+
+    # force a failed check since we will be building under windoze
+    AM_CONDITIONAL(ENABLE_XMESA_FX, test "no" = "yes")
+
+    # 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" )
+
+# Check for "plib" without which we cannot go on
+AC_CHECK_HEADER(plib/pu.h)
+if test "x$ac_cv_header_plib_pu_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_LANG_SAVE
+AC_LANG_CPLUSPLUS
+# needed for plib 1.3.x and later
+AC_CHECK_LIB(plibul, ulInit,,,)
+
+if test "x$ac_cv_lib_plibul_ulInit" != "xyes"; then
+    echo
+    echo "You have an old version of plib, you need to upgrade to at least"
+    echo "plib-1.4.2"
+    exit
+fi
+
+AC_LANG_RESTORE
+
+# 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
+
+AC_MSG_CHECKING(for proper simgear version)
+
+AC_TRY_RUN([
+#include <simgear/version.h>
+
+#define STRINGIFY(X) XSTRINGIFY(X)
+#define XSTRINGIFY(X) #X
+
+#define MIN_MAJOR 0
+#define MIN_MINOR 0
+#define MIN_MICRO 18
+
+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, &micro );
+
+    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
+
+# 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 )
+
+AM_CONFIG_HEADER([src/Include/config.h])
+
+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
index 7acbdb1a493892f2d9bd9c592d0a37b9d1c87821..c1ca5fcfb2cb31a904b06890a3afb3e116542f87 100644 (file)
@@ -77,7 +77,7 @@ fgfs_LDADD = \
        -lsgmath -lsgbucket -lsgdebug -lsgmagvar -lsgmisc -lsgxml \
        -lsgserial \
        $(THREAD_LIBS) \
-       -lplibpu -lplibfnt -lplibnet -lplibssg -lplibsg \
+       -lplibssgaux -lplibpu -lplibfnt -lplibnet -lplibssg -lplibsg \
        -lmk4 -lz \
        $(opengl_LIBS) \
        $(audio_LIBS)
index 5d30b18365494b2bf7ace698dad779debf5c4ebe..a6b53934c6db57e57028bc3697db8c03cd094d62 100644 (file)
@@ -1159,7 +1159,7 @@ fgUsage (bool verbose)
     } catch (const sg_exception &ex) {
         cout << "Unable to read the help file." << endl;
         cout << "Make sure the file options.xml is located in the FlightGear base directory," << endl;
-        cout << "and the location of the base directory is specified bij setting $FG_ROOT or" << endl;
+        cout << "and the location of the base directory is specified by setting $FG_ROOT or" << endl;
         cout << "by adding --fg-root=path as a program argument." << endl;
         
         exit(-1);