1
0
Fork 0

Merge branch 'tat/configure'

This commit is contained in:
Tim Moore 2009-09-20 22:44:58 +02:00
commit 6db8687a75
9 changed files with 253 additions and 65 deletions

View file

@ -1,4 +1,4 @@
dnl Process this file with autoget.sh to produce a working configure
dnl Process this file with autogen.sh to produce a working configure
dnl script.
AC_INIT
@ -51,6 +51,53 @@ if test "x$with_osg" != "x" ; then
EXTRA_DIRS="${EXTRA_DIRS} $with_osg"
fi
# specify framework related locations for Mac OS X
case "${host}" in
*-apple-darwin*)
dnl Thank you Christian Bauer from SheepSaver
dnl Modified by Tatsuhiro Nishioka for accepting a given framework path
dnl AC_CHECK_FRAMEWORK($1=NAME, $2=INCLUDES, $3=FRAMEWORK_PATH) ; $3 is optional
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"
FRAMEWORKS="$FRAMEWORKS -framework $1"
if test "$3" = ""; then
FRAMEWORKS="$FRAMEWORKS $ADD2LD"
elif test "`echo $FRAMEWORKS | grep -- -F$3`" = ""; then
FRAMEWORKS="$FRAMEWORKS -F$3"
CXXFLAGS="$CXXFLAGS -F$3"
CCFLAGS="$CCFLAGS -F$3"
dnl This is needed for AC_TRY_LINK when a framework path is specified
export DYLD_FRAMEWORK_PATH="${DYLD_FRAMEWORK_PATH}:$3"
fi
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
])
# Mac OS X specific configure options
AC_ARG_WITH(osg_framework, [ --with-osg-framework=PREFIX Specify the prefix path to osg frameworks [default=standard framework paths]])
if test "x$with_plib_framework" != "x" ; then
echo "plib prefix is $with_plib_framework"
fi
AC_ARG_WITH(plib_framework, [ --with-plib-framework=PREFIX Specify the prefix path to PLIB framework [default=standard framework paths]])
if test "x$with_osg_framework" != "x" ; then
echo "osg prefix is $with_osg_framework"
fi
;;
esac
dnl Determine an extra directories to add to include/lib search paths
case "${host}" in
*-apple-darwin* | *-*-mingw32*)
@ -117,6 +164,30 @@ dnl EXPERIMENTAL generic event driven input device
AC_ARG_WITH(eventinput, [ --with-eventinput Include event driven input (EXPERIMENTAL) [default=no]], [], [with_eventinput=no])
if test "x$with_eventinput" = "xyes"; then
AC_DEFINE([WITH_EVENTINPUT], 1, [Define to enable generic event driven input device])
case "${host}" in
dnl OS specific sources for event driven input
dnl Linux and Mac OS X are supported at this moment
*-apple-darwin*)
eventinput_EXTRA_OBJS="FGMacOSXEventInput.o"
eventinput_INCUDES=""
eventinput_LIBS=""
;;
*linux*)
dnl
dnl FIXME: include paths for dbus are hard-coded at this moment.
dnl FIXME: these must be found in configure
dnl
eventinput_EXTRA_OBJS="FGLinuxEventInput.o"
eventinput_INCLUDES="-I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/lib/dbus-1.0/include"
eventinput_LIBS="-ldbus-1 -lhal"
;;
*)
echo "Event driven input is not supported on ${host}."
;;
esac
AC_SUBST(eventinput_EXTRA_OBJS)
AC_SUBST(eventinput_INCLUDES)
AC_SUBST(eventinput_LIBS)
fi
AM_CONDITIONAL(WITH_EVENTINPUT, test "x$with_eventinput" = "xyes")
@ -468,6 +539,18 @@ 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
case "${host}" in
*-apple-darwin*)
if test "x$with_plib_framework" != "x"; then
AC_CHECK_FRAMEWORK(PLIB, [#include <plib/ul.h>], $with_plib_framework, no)
plib_FRAMEWORK="$FRAMEWORKS"
AC_SUBST(plib_FRAMEWORK)
FRAMEWORKS=""
fi
;;
esac
AM_CONDITIONAL(HAVE_FRAMEWORK_PLIB, test "x$ac_cv_framework_PLIB" != "x")
AC_CHECK_HEADER(plib/ul.h)
if test "x$ac_cv_header_plib_ul_h" != "xyes"; then
echo
@ -480,6 +563,7 @@ if test "x$ac_cv_header_plib_ul_h" != "xyes"; then
exit
fi
echo "$DYLD_FRAMEWORK_PATH"
AC_MSG_CHECKING([for plib 1.8.5 or newer])
AC_TRY_RUN([
#include <plib/ul.h>
@ -520,48 +604,58 @@ 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)
if test "x$with_osg_framework" = "x"; then
if test "x$enable_osgdebug" = "xyes"; then
# debug version of osg libs
AC_CHECK_LIB(OpenThreadsd,OpenThreadsGetVersion)
openthreads_LIBS="$LIBS"
LIBS=""
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)
OSG_LIBS="$LIBS -losgFXd $openthreads_LIBS"
LIBS=""
else
# release version of osg libs
AC_CHECK_LIB(OpenThreads,OpenThreadsGetVersion)
openthreads_LIBS="$LIBS"
LIBS=""
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)
OSG_LIBS="$LIBS -losgFX $openthreads_LIBS"
LIBS=""
# echo $LIBS
fi
AC_SUBST(openthreads_LIBS)
AC_SUBST(OSG_LIBS)
else
AC_CHECK_FRAMEWORK(osgViewer, [#include <osgViewer/Version>])
AC_CHECK_FRAMEWORK(osgGA, [#include <osgGA/Version>])
AC_CHECK_FRAMEWORK(osgText, [#include <osgText/Version>])
AC_CHECK_FRAMEWORK(osgFX, [#include <osgFX/AnisotropicLighting>])
AC_CHECK_FRAMEWORK(osgUtil, [#include <osgUtil/Version>])
AC_CHECK_FRAMEWORK(osgDB, [#include <osgDB/Version>])
AC_CHECK_FRAMEWORK(osgSim, [#include <osgSim/Version>])
AC_CHECK_FRAMEWORK(osgParticle, [#include <osgParticle/Version>])
AC_CHECK_FRAMEWORK(osg, [#include <osg/Version>])
AC_CHECK_FRAMEWORK(OpenThreads, [#include <OpenThreads/Version>])
# Checking osg frameworks.
AC_CHECK_FRAMEWORK(osgViewer, [#include <osgViewer/Version>], $with_osg_framework)
AC_CHECK_FRAMEWORK(osgGA, [#include <osgGA/Version>], $with_osg_framework)
AC_CHECK_FRAMEWORK(osgText, [#include <osgText/Version>], $with_osg_framework)
AC_CHECK_FRAMEWORK(osgFX, [#include <osgFX/AnisotropicLighting>], $with_osg_framework)
AC_CHECK_FRAMEWORK(osgUtil, [#include <osgUtil/Version>], $with_osg_framework)
AC_CHECK_FRAMEWORK(osgDB, [#include <osgDB/Version>], $with_osg_framework)
AC_CHECK_FRAMEWORK(osgSim, [#include <osgSim/Version>], $with_osg_framework)
AC_CHECK_FRAMEWORK(osgParticle, [#include <osgParticle/Version>], $with_osg_framework)
AC_CHECK_FRAMEWORK(osg, [#include <osg/Version>], $with_osg_framework)
osg_FRAMEWORKS="$FRAMEWORKS"
FRAMEWORKS=""
AC_CHECK_FRAMEWORK(OpenThreads, [#include <OpenThreads/Version>], $with_osg_framework)
openthreads_FRAMEWORK="$FRAMEWORKS"
AC_SUBST(osg_FRAMEWORKS)
AC_SUBST(openthreads_FRAMEWORK)
fi
;;
*)
@ -590,6 +684,7 @@ case "${host}" in
fi
;;
esac
AM_CONDITIONAL(HAVE_FRAMEWORK_OSG, test "x$ac_cv_framework_osg" != "x")
AC_LANG_POP
@ -735,7 +830,7 @@ AC_CONFIG_FILES([ \
utils/propmerge/Makefile \
utils/TerraSync/Makefile \
utils/xmlgrep/Makefile \
utils/fgviewer/Makefile \
utils/fgviewer/Makefile
])
AC_OUTPUT

View file

@ -46,9 +46,17 @@ noinst_PROGRAMS = proptest
yasim_SOURCES = yasim-test.cpp $(SHARED_SOURCE_FILES)
yasim_LDADD = -lsgxml -lsgprops -lsgdebug -lsgmisc -lsgstructure $(base_LIBS)
yasim_LDADD = -lsgxml -lsgprops -lsgdebug -lsgmisc -lsgstructure -lsgtiming $(base_LIBS)
proptest_SOURCES = proptest.cpp $(SHARED_SOURCE_FILES)
proptest_LDADD = -lsgxml -lsgprops -lsgdebug -lsgmisc -lsgstructure $(base_LIBS)
proptest_LDADD = -lsgxml -lsgprops -lsgdebug -lsgmisc -lsgstructure -lsgtiming $(base_LIBS)
if HAVE_FRAMEWORK_OSG
yasim_LDFLAGS = $(openthreads_FRAMEWORKS)
proptest_LDFLAGS = $(openthreads_FRAMEWORKS)
else
yasim_LDFLAGS = $(openthreads_LIBS)
proptest_LDFLAGS = $(openthreads_LIBS)
endif
INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/src

View file

@ -1,6 +1,18 @@
noinst_LIBRARIES = libGUI.a
noinst_PROGRAMS = layout-test
if HAVE_FRAMEWORK_PLIB
layout_test_PLIB_FW = $(plib_FRAMEWORK)
else
layout_test_PLIB_LIBS = -lplibpw -lplibpu -lplibfnt -lplibul
endif
if HAVE_FRAMEWORK_OSG
layout_test_OSG_LIBS = $(openthreads_FRAMEWORK)
else
layout_test_OSG_LIBS = $(openthreads_LIBS)
endif
libGUI_a_SOURCES = \
new_gui.cxx new_gui.hxx \
dialog.cxx dialog.hxx \
@ -17,5 +29,8 @@ INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/src
layout_test_SOURCES = layout-test.cxx
layout_test_LDADD = libGUI.a \
-lsgprops -lsgdebug -lsgstructure -lsgmisc -lsgxml \
-lplibpw -lplibpu -lplibfnt -lplibul $(opengl_LIBS)
-lsgprops -lsgdebug -lsgstructure -lsgmisc -lsgxml -lsgtiming \
$(layout_test_PLIB_LIBS) $(opengl_LIBS)
# mainly for Macs
layout_test_LDFLAGS = $(layout_test_PLIB_FW) $(layout_test_OSG_LIBS)

View file

@ -3,13 +3,33 @@ AM_CXXFLAGS = -DPKGLIBDIR=\"$(pkgdatadir)\"
noinst_LIBRARIES = libInput.a
if WITH_EVENTINPUT
libInput_Event_SOURCES = FGEventInput.cxx FGEventInput.hxx FGLinuxEventInput.cxx FGLinuxEventInput.hxx
libInput_Event_INCLUDES = -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/lib/dbus-1.0/include
EXTRA_libInput_a_SOURCES = FGLinuxEventInput.cxx FGLinuxEventInput.hxx \
FGMacOSXEventInput.cxx FGMacOSXEventInput.hxx
libInput_Event_SOURCES = FGEventInput.cxx FGEventInput.hxx
libInput_Event_INCLUDES = $(eventinput_INCLUDES)
libInput_a_LIBADD = $(eventinput_EXTRA_OBJS)
libInput_a_DEPENDENCIES = $(eventinput_EXTRA_OBJS)
else
libInput_Event_SOURCES =
libInput_Event_INCLUDES =
endif
if HAVE_FRAMEWORK_PLIB
js_demo_LDFLAGS = $(plib_FRAMEWORK)
fgjs_LDFLAGS = $(plib_FRAMEWORK)
else
js_demo_PLIB_LIBS = -lplibjs -lplibul
fgjs_PLIB_LIBS = -lplibjs -lplibul
js_demo_LDFLAGS =
fgjs_LDFLAGS=
endif
if HAVE_FRAMEWORK_OSG
fgjs_LDFLAGS = $(openthreads_FRAMEWORK)
else
fgjs_LDFLAGS = $(openthreads_LIBS)
endif
libInput_a_SOURCES = input.cxx input.hxx FGCommonInput.cxx FGCommonInput.hxx \
FGDeviceConfigurationMap.cxx FGDeviceConfigurationMap.hxx \
FGButton.cxx FGButton.hxx \
@ -22,11 +42,11 @@ bin_PROGRAMS = js_demo fgjs
js_demo_SOURCES = js_demo.cxx
js_demo_LDADD = -lplibjs $(base_LIBS) $(joystick_LIBS) -lplibul
js_demo_LDADD = $(js_demo_PLIB_LIBS) $(base_LIBS) $(joystick_LIBS)
fgjs_SOURCES = fgjs.cxx jsinput.cxx jsinput.h jssuper.cxx jssuper.h
fgjs_LDADD = -lplibjs -lplibul $(base_LIBS) $(joystick_LIBS) \
fgjs_LDADD = $(js_demo_PLIB_LIBS) $(base_LIBS) $(joystick_LIBS) \
-lsgprops -lsgmisc -lsgio -lsgdebug -lsgstructure -lsgxml -lz
INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/src -I$(top_srcdir)/src/Main \

View file

@ -16,11 +16,24 @@ THREAD_LIBS =
endif
if WITH_EVENTINPUT
EVENT_LIBS = -ldbus-1 -lhal
EVENT_LIBS = $(eventinput_LIBS)
else
EVENT_LIBS =
endif
if HAVE_FRAMEWORK_PLIB
fgfs_PLIB_FW = $(plib_FRAMEWORK)
metar_PLIB_FW = $(plib_FRAMEWORK)
else
fgfs_PLIB_LIBS = -lplibpuaux -lplibpu -lplibfnt -lplibjs -lplibnet \
-lplibsg -lplibul
metar_PLIB_LIBS = -lplibnet -lplibul
endif
if HAVE_FRAMEWORK_OSG
fgfs_OSG_FW = $(osg_FRAMEWORKS) $(openthreads_FRAMEWORK)
endif
GFX_CODE = fg_os_osgviewer.cxx fg_os_common.cxx fg_os.hxx
JSBSIM_LIBS = \
@ -104,8 +117,7 @@ fgfs_LDADD = \
-lsgmaterial -lsgutil -lsgtiming -lsgio -lsgscreen -lsgmath -lsgbucket \
-lsgprops -lsgdebug -lsgmagvar -lsgmisc -lsgnasal -lsgxml -lsgsound \
-lsgserial -lsgstructure -lsgenvironment \
-lplibpuaux -lplibpu -lplibfnt -lplibjs -lplibnet \
-lplibsg -lplibul \
$(fgfs_PLIB_LIBS) \
$(OSG_LIBS) \
$(THREAD_LIBS) \
$(network_LIBS) \
@ -114,11 +126,15 @@ fgfs_LDADD = \
$(openal_LIBS) \
$(EVENT_LIBS)
fgfs_LDFLAGS = $(fgfs_PLIB_FW) $(fgfs_OSG_FW)
metar_SOURCES = metar_main.cxx
metar_LDADD = \
-lsgenvironment -lsgio -lsgbucket -lsgmisc -lsgstructure -lsgdebug \
-lplibnet -lplibul $(network_LIBS) \
$(metar_PLIB_LIBS) $(network_LIBS) \
-lz $(base_LIBS)
metar_LDFLAGS = $(metar_PLIB_FW)
INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/src -I$(top_srcdir)/src/FDM/JSBSim

View file

@ -1,11 +1,22 @@
noinst_PROGRAMS = GPSsmooth MIDGsmooth UGsmooth
if HAVE_FRAMEWORK_PLIB
GPSsmooth_LDFLAGS = $(plib_FRAMEWORK)
MIDGsmooth_LDFLAGS = $(plib_FRAMEWORK)
UGsmooth_LDFLAGS = $(plib_FRAMEWORK)
else
GPSsmooth_PLIB_LIBS = -lplibnet -lplibul
MIDGsmooth_PLIB_LIBS = -lplibnet -lplibul
UGsmooth_PLIB_LIBS = -lplibnet -lplibul
endif
GPSsmooth_SOURCES = \
gps.cxx gps.hxx \
gps_main.cxx
GPSsmooth_LDADD = \
-lsgtiming -lsgmisc -lsgdebug -lplibnet -lplibul \
$(GPSsmooth_PLIB_LIBS) -lsgtiming -lsgmisc -lsgdebug \
$(joystick_LIBS) $(network_LIBS) $(base_LIBS) -lz
MIDGsmooth_SOURCES = \
@ -13,9 +24,8 @@ MIDGsmooth_SOURCES = \
MIDG_main.cxx
MIDGsmooth_LDADD = \
-lsgio -lsgserial -lsgtiming -lsgmath -lsgbucket -lsgmisc -lsgdebug \
-lsgstructure \
-lplibnet -lplibul \
$(MIDGsmooth_PLIB_LIBS) -lsgio -lsgserial -lsgtiming \
-lsgmath -lsgbucket -lsgmisc -lsgdebug -lsgstructure \
$(joystick_LIBS) $(network_LIBS) $(base_LIBS) -lz
UGsmooth_SOURCES = \
@ -26,9 +36,8 @@ UGsmooth_SOURCES = \
UGear_telnet.cxx UGear_telnet.hxx
UGsmooth_LDADD = \
-lsgio -lsgserial -lsgtiming -lsgmath -lsgbucket -lsgmisc -lsgdebug \
-lplibnet -lplibul \
$(UGsmooth_PLIB_LIBS) -lsgio -lsgserial -lsgtiming \
-lsgmath -lsgbucket -lsgmisc -lsgdebug \
$(joystick_LIBS) $(network_LIBS) $(base_LIBS) -lz
INCLUDES = -I$(top_srcdir)/src

View file

@ -6,4 +6,10 @@ terrasync_SOURCES = terrasync.cxx
AM_CPPFLAGS = $(svn_CPPFLAGS)
terrasync_LDADD = -lplibnet -lplibul -lsgmisc -lsgdebug $(network_LIBS) $(svn_LIBS)
if HAVE_FRAMEWORK_PLIB
terrasync_LDFLAGS = $(plib_FRAMEWORK)
else
terrasync_PLIB_LIBS = -lplibnet -lplibul
endif
terrasync_LDADD = $(terrasync_PLIB_LIBS) -lsgmisc -lsgdebug $(network_LIBS) $(svn_LIBS)

View file

@ -3,8 +3,21 @@ AM_CXXFLAGS = -DPKGDATADIR=\"$(pkgdatadir)\"
bin_PROGRAMS = fgviewer
if HAVE_FRAMEWORK_PLIB
fgviewer_LDFLAGS = $(plib_FRAMEWORK)
else
fgviewer_PLIB_LIBS = -lplibul
fgviewer_LDFLAGS =
endif
if HAVE_FRAMEWORK_OSG
fgviewer_LDFLAGS += $(osg_FRAMEWORKS) $(openthreads_FRAMEWORK)
else
fgviewer_LDFLAGS += $(osg_LIBS) $(openthreads_LIBS)
endif
fgviewer_SOURCES = fgviewer.cxx
fgviewer_LDADD = \
-lsgtgdb -lsgmaterial -lsgmodel -lsgbvh -lsgutil -lsgio -lsgbucket \
-lsgmath -lsgprops -lsgdebug -lsgmisc -lsgxml -lsgstructure \
-lplibul $(OSG_LIBS) $(opengl_LIBS) $(THREAD_LIBS) -lz
$(fgviewer_PLIB_LIBS) $(OSG_LIBS) $(opengl_LIBS) $(THREAD_LIBS) -lz

View file

@ -1,4 +1,10 @@
noinst_PROGRAMS = js_server
if HAVE_FRAMEWORK_PLIB
js_server_LDFLAGS = $(plib_FRAMEWORK)
else
js_server_PLIB_LIBS = -lplibjs -lplibnet -lplibul
endif
js_server_SOURCES = js_server.cxx
js_server_LDADD = -lplibjs -lplibnet -lplibul $(base_LIBS) $(joystick_LIBS) $(network_LIBS)
js_server_LDADD = $(js_server_PLIB_LIBS) $(base_LIBS) $(joystick_LIBS) $(network_LIBS)