X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=configure.in;h=5c8f4a208e0a4d003fe20ffc6d31a9f9ca1f87b3;hb=9a4152eb2d60eb9d3157cf4ae00a3e4700f31a74;hp=fbd3deb809170e0e3101a702958ae6bd5efd1644;hpb=c4127390404a0c2386d226b5173263873f175395;p=simgear.git diff --git a/configure.in b/configure.in index fbd3deb8..5c8f4a20 100644 --- a/configure.in +++ b/configure.in @@ -6,7 +6,7 @@ dnl $Id$ AC_INIT(simgear/bucket/newbucket.cxx) dnl Initialize the automake stuff -AM_INIT_AUTOMAKE(SimGear, 0.0.15) +AM_INIT_AUTOMAKE(SimGear, 0.0.17) dnl Specify KAI C++ compiler and flags. dnl Borrowed with slight modification from blitz distribution. @@ -28,18 +28,38 @@ echo CC = $CC dnl 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 +# Check to see if this `configure' is being run in the `Cygwin32' environment +AC_CYGWIN +AC_MINGW32 +AC_EXEEXT + +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 + if echo $includedir | egrep "simgear$" > /dev/null; then echo "includedir is" $includedir "libdir is" $libdir else includedir="${includedir}/simgear" echo "includedir changed to" $includedir "libdir is" $libdir fi - + +# Determine version of automake ... important because 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) # set logging default value # with_logging=yes @@ -48,29 +68,55 @@ if test "x$with_logging" = "xno" ; then AC_DEFINE(FG_NDEBUG) fi -dnl specify if we are building with "checker" +dnl specify if we are building with "electric fence" AC_ARG_WITH(efence, [ --with-efence Specify if we are building with "electric-fence"]) if test "x$with_efence" = "xyes" ; then echo "Building with efence" - LIBS= "$LIBS -lefence" + LIBS="$LIBS -lefence" +fi + +# Specify if we want to build with Norman's jpeg image server support. +# This requires libjpeg to be installed and available. +# Default to with_jpeg_server=no +JPEGLIB='' +AC_ARG_WITH(jpeg_factory, [ --with-jpeg-factory Include Norman's jpeg image factory support code]) +if test "x$with_jpeg_factory" = "xyes" ; then + echo "Building with Norman's jpeg image factory support" + AC_CHECK_LIB(jpeg, jpeg_start_compress) + if test "x$ac_cv_lib_jpeg_jpeg_start_compress" != "xyes" ; then + echo + echo "In order to build the jpeg factory code you need libjpeg installed." + echo "otherwise please configure with the --with-jpeg-sever=no option" + echo + echo "libjpeg is available at :" + echo " ftp://ftp.uu.net in the directory graphics/jpeg" + exit 1 + fi +else + echo "Building without Norman's jpeg image server support" fi +AM_CONDITIONAL(ENABLE_JPEG_SERVER, test "x$with_jpeg_factory" = "xyes") + dnl Check for MS Windows environment AC_CHECK_HEADER(windows.h) -dnl extra library and include directories -EXTRA_DIRS="/usr/local /usr/local/plib /usr/X11R6" +if test "x$HOSTTYPE" != "xmacintosh" ; then + dnl extra library and include directories + EXTRA_DIRS="/usr/local /usr/local/plib /usr/X11R6" -if test -d /opt/X11R6 ; then - EXTRA_DIRS="$EXTRA_DIRS /opt/X11R6" -fi + if test -d /opt/X11R6 ; then + EXTRA_DIRS="$EXTRA_DIRS /opt/X11R6" + fi -if test "x$ac_cv_header_windows_h" = "xyes" ; then - EXTRA_DIRS="${EXTRA_DIRS} `pwd`/Win32" -# elif test `uname -s` = "SunOS" ; then -# EXTRA_DIRS="${EXTRA_DIRS} `pwd`/SunOS" + if test "x$ac_cv_header_windows_h" = "xyes" ; then + if test -d /usr/mingw/usr ; then + EXTRA_DIRS="$EXTRA_DIRS /usr/mingw/usr" + fi + fi fi + wi_EXTRA_DIRS(no, ${EXTRA_DIRS}) dnl Using AM_CONDITIONAL is a step out of the protected little @@ -83,8 +129,11 @@ dnl includes, compile alternative source files, etc. dnl Enable serial support on Unix type systems AM_CONDITIONAL(ENABLE_UNIX_SERIAL, true) -dnl Check for X11 (fancy) -AC_PATH_XTRA +dnl X11 might be installed on Mac OS X, don't want to use it if it is. +if test "x$HOSTTYPE" != "xmacintosh" ; then + dnl Check for X11 (fancy) + AC_PATH_XTRA +fi dnl Checks for libraries. @@ -92,21 +141,41 @@ null_LIBS="$LIBS" AC_CHECK_LIB(m, cos) +if test "x$ac_cv_mingw32" = "xyes" ; then + LIBS="$LIBS -lwsock32" +fi + 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 + CXXFLAGS="$CXXFLAGS -D_REENTRANT" + CFLAGS="$CFLAGS -D_REENTRANT" +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) -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) + +dnl X11 might be installed, but we don't want to use it for OSX -dw- +if test "x$HOSTTYPE" != "xmacintosh" ; 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 dnl check for OpenGL related libraries -if test "x$ac_cv_header_windows_h" != "xyes" ; then - dnl Reasonable stuff for non-windoze variants ... :-) +if test "x$HOSTTYPE" = "xmacintosh" ; then + dnl Macintosh OSX + LIBS="$LIBS -framework OpenGL -framework GLUT" +elif test "x$ac_cv_header_windows_h" != "xyes" ; then + dnl Reasonable stuff for X-Windows based machines AC_CHECK_LIB(GLcore, glNewList) if test "x$ac_cv_lib_GLcore_glNewList" = "xno" ; then @@ -145,8 +214,7 @@ if test "x$ac_cv_header_windows_h" != "xyes" ; then AC_CHECK_LIB(glut, glutGameModeString) LIBS="$save_LIBS" else - dnl Win32 is a little wierd because it has to try to handle the various - dnl winbloze-isms. We'll just do this manually for now. + dnl Win32 libs echo Win32 specific hacks... AC_DEFINE(WIN32) @@ -172,6 +240,9 @@ else LIBS="$LIBS -l${WIN32_GLUT} -l${WIN32_GLU} -l${WIN32_OPENGL}" LIBS="$LIBS -luser32 -lgdi32" + if test "x$ac_cv_mingw32" = "xyes" ; then + LIBS="$LIBS -wsock32" + fi echo "Will link apps with $LIBS" fi @@ -212,41 +283,34 @@ if test "x$ac_cv_header_plib_pu_h" != "xyes"; then exit fi -# dnl Check for system installed gdbm -# AC_CHECK_HEADER(gdbm.h) -# if test "x$ac_cv_header_gdbm_h" = "xyes"; then -# AC_DEFINE( HAVE_GDBM ) -# else -# echo "no gdbm found, configuring and building." -# fi -# AM_CONDITIONAL(HAVE_GDBM, test "x$ac_cv_header_gdbm_h" = "xyes" ) - dnl Check for system installed metakit AC_CHECK_HEADER(mk4.h) if test "x$ac_cv_header_mk4_h" != "xyes"; then - echo "no metakit found, configuring and building." - # Run configure in the metakit subdir - AC_CONFIG_SUBDIRS( simgear/metakit/unix ) + echo "Metakit not found, you will need to install this first." + echo "Please read the README.metakit for more information." + exit fi -AM_CONDITIONAL(HAVE_METAKIT, test "x$ac_cv_header_mk4_h" = "xyes" ) dnl Specify if we want logging (testing build) or not (release build) dnl Check for system installed zlib AC_CHECK_HEADER(zlib.h) -if test "x$ac_cv_header_zlib_h" = "xyes"; then - AC_DEFINE( HAVE_ZLIB ) -else - echo "no zlib found, building." +if test "x$ac_cv_header_zlib_h" != "xyes"; then + echo "zlib not found, you will need to install this first." + echo "Please read the README.zlib for more information." + exit fi -AM_CONDITIONAL(HAVE_ZLIB, test "x$ac_cv_header_zlib_h" = "xyes" ) dnl 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 ) + fcntl.h getopt.h malloc.h memory.h stdint.h stdlib.h sys/param.h \ + sys/stat.h sys/time.h sys/timeb.h unistd.h windows.h winbase.h values.h ) + +if test "x$ac_cv_header_stdint_h" = "xyes"; then + AC_DEFINE( HAVE_STDINT_H ) +fi dnl Checks for typedefs, structures, and compiler characteristics. AC_C_CONST @@ -260,7 +324,7 @@ AC_FUNC_VPRINTF AC_CHECK_FUNCS( ftime gettimeofday timegm memcpy bcopy mktime strstr rand \ random setitimer getitimer signal GetLocalTime rint getrusage ) -AM_CONFIG_HEADER(simgear/config.h) +AM_CONFIG_HEADER(simgear/simgear_config.h) AC_OUTPUT( \ Makefile \ @@ -273,22 +337,19 @@ AC_OUTPUT( \ simgear/io/Makefile \ simgear/magvar/Makefile \ simgear/math/Makefile \ + simgear/metar/Makefile \ simgear/misc/Makefile \ simgear/route/Makefile \ simgear/screen/Makefile \ simgear/serial/Makefile \ simgear/sky/Makefile \ + simgear/threads/Makefile \ simgear/timing/Makefile \ simgear/xgl/Makefile \ simgear/xml/Makefile \ - simgear/zlib/Makefile \ ) -AC_OUTPUT_COMMANDS([ -# if test "x$ac_cv_header_windows_h" = "xyes" ; then -# cp simgear/gdbm/autoconf.h.cygwin32 simgear/gdbm/autoconf.h -# fi -]) +# AC_OUTPUT_COMMANDS([]) echo "" echo "Configure Summary" @@ -308,14 +369,23 @@ else echo "Electric fence: no" fi -# if test "x$ac_cv_header_gdbm_h" != "xyes"; then -# echo "Building gdbm" -# fi +echo -n "Automake version: ($AUTO_MAKE_VERSION) " +automake --version | head -1 -if test "x$ac_cv_header_mk4_h" != "xyes"; then - echo "Building metakit" +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_header_zlib_h" != "xyes"; then - echo "Building zlib" +if test "x$ac_cv_lib_pthread_pthread_exit" = "xyes" -a "x$ac_cv_header_pthread_h" = "xyes"; then + echo "Threads: pthread lib found." +else + echo "Threads: no threads (pthread lib not found.)" +fi + +if test "$OS" = "IRIX" -o "$OS" = "IRIX64"; then + if test "$CXX" = "CC"; then + echo "\nRemember to run: sh ../FlightGear/irix-hack.sh!\07\n" + fi fi