From 5bab565cfe4c30d6cf08ecaba50af74d5e4f0c98 Mon Sep 17 00:00:00 2001 From: curt Date: Fri, 28 Dec 2001 21:27:19 +0000 Subject: [PATCH] Updates to build system to better support automake-1.5 - automake-1.4 sets default values for INCLUDES which we can't overwrite. - automake-1.5 renames this to DEFAULT_INCLUDES and leaves INCLUDES open for the developer to use. Thus for automake-1.4 we are forced to 'append' to INCLUDES and in automake-1.5 we can just set the value to whatever we like. Unfortunately, the behaviors of the two versions are mutually incompatible. The solution I am committing now works for both versions but automake-1.5 generates a lot of spurious warning messages that are annoying, but not fatal. --- aclocal.m4 | 140 ---------------------------------- configure.in | 11 ++- simgear/bucket/Makefile.am | 4 + simgear/debug/Makefile.am | 4 + simgear/ephemeris/Makefile.am | 4 + simgear/io/Makefile.am | 4 + simgear/magvar/Makefile.am | 4 + simgear/math/Makefile.am | 4 + simgear/metar/Makefile.am | 4 + simgear/misc/Makefile.am | 4 + simgear/route/Makefile.am | 4 + simgear/screen/Makefile.am | 4 + simgear/serial/Makefile.am | 4 + simgear/sky/Makefile.am | 4 + simgear/threads/Makefile.am | 4 + simgear/timing/Makefile.am | 4 + simgear/xgl/Makefile.am | 4 + simgear/xml/Makefile.am | 6 +- 18 files changed, 73 insertions(+), 144 deletions(-) delete mode 100644 aclocal.m4 diff --git a/aclocal.m4 b/aclocal.m4 deleted file mode 100644 index 7d5836b9..00000000 --- a/aclocal.m4 +++ /dev/null @@ -1,140 +0,0 @@ -dnl aclocal.m4 generated automatically by aclocal 1.4-p4 - -dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. -dnl This file is free software; the Free Software Foundation -dnl gives unlimited permission to copy and/or distribute it, -dnl with or without modifications, as long as this notice is preserved. - -dnl This program is distributed in the hope that it will be useful, -dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without -dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A -dnl PARTICULAR PURPOSE. - -# Do all the work for Automake. This macro actually does too much -- -# some checks are only needed if your package does certain things. -# But this isn't really a big deal. - -# serial 1 - -dnl Usage: -dnl AM_INIT_AUTOMAKE(package,version, [no-define]) - -AC_DEFUN(AM_INIT_AUTOMAKE, -[AC_REQUIRE([AC_PROG_INSTALL]) -PACKAGE=[$1] -AC_SUBST(PACKAGE) -VERSION=[$2] -AC_SUBST(VERSION) -dnl test to see if srcdir already configured -if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then - AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) -fi -ifelse([$3],, -AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package]) -AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])) -AC_REQUIRE([AM_SANITY_CHECK]) -AC_REQUIRE([AC_ARG_PROGRAM]) -dnl FIXME This is truly gross. -missing_dir=`cd $ac_aux_dir && pwd` -AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir) -AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir) -AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir) -AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir) -AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir) -AC_REQUIRE([AC_PROG_MAKE_SET])]) - -# -# Check to make sure that the build environment is sane. -# - -AC_DEFUN(AM_SANITY_CHECK, -[AC_MSG_CHECKING([whether build environment is sane]) -# Just in case -sleep 1 -echo timestamp > conftestfile -# Do `set' in a subshell so we don't clobber the current shell's -# arguments. Must try -L first in case configure is actually a -# symlink; some systems play weird games with the mod time of symlinks -# (eg FreeBSD returns the mod time of the symlink's containing -# directory). -if ( - set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null` - if test "[$]*" = "X"; then - # -L didn't work. - set X `ls -t $srcdir/configure conftestfile` - fi - if test "[$]*" != "X $srcdir/configure conftestfile" \ - && test "[$]*" != "X conftestfile $srcdir/configure"; then - - # If neither matched, then we have a broken ls. This can happen - # if, for instance, CONFIG_SHELL is bash and it inherits a - # broken ls alias from the environment. This has actually - # happened. Such a system could not be considered "sane". - AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken -alias in your environment]) - fi - - test "[$]2" = conftestfile - ) -then - # Ok. - : -else - AC_MSG_ERROR([newly created file is older than distributed files! -Check your system clock]) -fi -rm -f conftest* -AC_MSG_RESULT(yes)]) - -dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY) -dnl The program must properly implement --version. -AC_DEFUN(AM_MISSING_PROG, -[AC_MSG_CHECKING(for working $2) -# Run test in a subshell; some versions of sh will print an error if -# an executable is not found, even if stderr is redirected. -# Redirect stdin to placate older versions of autoconf. Sigh. -if ($2 --version) < /dev/null > /dev/null 2>&1; then - $1=$2 - AC_MSG_RESULT(found) -else - $1="$3/missing $2" - AC_MSG_RESULT(missing) -fi -AC_SUBST($1)]) - -# Define a conditional. - -AC_DEFUN(AM_CONDITIONAL, -[AC_SUBST($1_TRUE) -AC_SUBST($1_FALSE) -if $2; then - $1_TRUE= - $1_FALSE='#' -else - $1_TRUE='#' - $1_FALSE= -fi]) - -# Like AC_CONFIG_HEADER, but automatically create stamp file. - -AC_DEFUN(AM_CONFIG_HEADER, -[AC_PREREQ([2.12]) -AC_CONFIG_HEADER([$1]) -dnl When config.status generates a header, we must update the stamp-h file. -dnl This file resides in the same directory as the config header -dnl that is generated. We must strip everything past the first ":", -dnl and everything past the last "/". -AC_OUTPUT_COMMANDS(changequote(<<,>>)dnl -ifelse(patsubst(<<$1>>, <<[^ ]>>, <<>>), <<>>, -<>CONFIG_HEADERS" || echo timestamp > patsubst(<<$1>>, <<^\([^:]*/\)?.*>>, <<\1>>)stamp-h<<>>dnl>>, -<>; do - case " <<$>>CONFIG_HEADERS " in - *" <<$>>am_file "*<<)>> - echo timestamp > `echo <<$>>am_file | sed -e 's%:.*%%' -e 's%[^/]*$%%'`stamp-h$am_indx - ;; - esac - am_indx=`expr "<<$>>am_indx" + 1` -done<<>>dnl>>) -changequote([,]))]) - diff --git a/configure.in b/configure.in index 8a282009..03ceaa1a 100644 --- a/configure.in +++ b/configure.in @@ -50,6 +50,12 @@ else echo "includedir changed to" $includedir "libdir is" $libdir fi +# 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) + # set logging default value # with_logging=yes AC_ARG_WITH(logging, [ --with-logging Include logging output (default)]) @@ -346,9 +352,8 @@ 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" diff --git a/simgear/bucket/Makefile.am b/simgear/bucket/Makefile.am index 1016b336..b021a225 100644 --- a/simgear/bucket/Makefile.am +++ b/simgear/bucket/Makefile.am @@ -14,4 +14,8 @@ libsgbucket_a_SOURCES = newbucket.cxx # $(top_builddir)/bucket/libsgbucket.a \ # $(top_builddir)/misc/libsgmisc.a +if OLD_AUTOMAKE INCLUDES += -I$(top_srcdir) +else +INCLUDES = -I$(top_srcdir) +endif diff --git a/simgear/debug/Makefile.am b/simgear/debug/Makefile.am index aa9f1a16..4f7ef2ae 100644 --- a/simgear/debug/Makefile.am +++ b/simgear/debug/Makefile.am @@ -8,4 +8,8 @@ include_HEADERS = debug_types.h logstream.hxx libsgdebug_a_SOURCES = logstream.cxx +if OLD_AUTOMAKE INCLUDES += -I$(top_srcdir) +else +INCLUDES = -I$(top_srcdir) +endif diff --git a/simgear/ephemeris/Makefile.am b/simgear/ephemeris/Makefile.am index a119f964..7e544487 100644 --- a/simgear/ephemeris/Makefile.am +++ b/simgear/ephemeris/Makefile.am @@ -31,4 +31,8 @@ libsgephem_a_SOURCES = \ uranus.cxx \ venus.cxx +if OLD_AUTOMAKE INCLUDES += -I$(top_srcdir) +else +INCLUDES = -I$(top_srcdir) +endif diff --git a/simgear/io/Makefile.am b/simgear/io/Makefile.am index 17261e94..c6af4897 100644 --- a/simgear/io/Makefile.am +++ b/simgear/io/Makefile.am @@ -20,7 +20,11 @@ libsgio_a_SOURCES = \ sg_socket.cxx \ sg_socket_udp.cxx +if OLD_AUTOMAKE INCLUDES += -I$(top_srcdir) +else +INCLUDES = -I$(top_srcdir) +endif noinst_PROGRAMS = decode_binobj socktest lowtest diff --git a/simgear/magvar/Makefile.am b/simgear/magvar/Makefile.am index 21dfc6a1..a74711dd 100644 --- a/simgear/magvar/Makefile.am +++ b/simgear/magvar/Makefile.am @@ -14,4 +14,8 @@ testmagvar_SOURCES = testmagvar.cxx testmagvar_LDADD = $(top_builddir)/simgear/magvar/libsgmagvar.a +if OLD_AUTOMAKE INCLUDES += -I$(top_srcdir) +else +INCLUDES = -I$(top_srcdir) +endif diff --git a/simgear/math/Makefile.am b/simgear/math/Makefile.am index ef081362..794664d8 100644 --- a/simgear/math/Makefile.am +++ b/simgear/math/Makefile.am @@ -30,4 +30,8 @@ libsgmath_a_SOURCES = \ sg_random.c \ vector.cxx +if OLD_AUTOMAKE INCLUDES += -I$(top_srcdir) $(ZLIB_INCL) +else +INCLUDES = -I$(top_srcdir) $(ZLIB_INCL) +endif diff --git a/simgear/metar/Makefile.am b/simgear/metar/Makefile.am index e6c07316..be44d958 100644 --- a/simgear/metar/Makefile.am +++ b/simgear/metar/Makefile.am @@ -11,4 +11,8 @@ libsgmetar_a_SOURCES = \ MetarStation.cpp \ Prtdmetr.cpp Stspack2.cpp Stspack3.cpp +if OLD_AUTOMAKE INCLUDES += -I$(top_srcdir) +else +INCLUDES = -I$(top_srcdir) +endif diff --git a/simgear/misc/Makefile.am b/simgear/misc/Makefile.am index 514b9c6b..1be88870 100644 --- a/simgear/misc/Makefile.am +++ b/simgear/misc/Makefile.am @@ -35,4 +35,8 @@ noinst_PROGRAMS = props_test props_test_SOURCES = props_test.cxx props_test_LDADD = libsgmisc.a ../xml/libsgxml.a ../debug/libsgdebug.a +if OLD_AUTOMAKE INCLUDES += -I$(top_srcdir) $(ZLIB_INCL) +else +INCLUDES = -I$(top_srcdir) $(ZLIB_INCL) +endif diff --git a/simgear/route/Makefile.am b/simgear/route/Makefile.am index b905f6ed..c1492f4b 100644 --- a/simgear/route/Makefile.am +++ b/simgear/route/Makefile.am @@ -8,7 +8,11 @@ libsgroute_a_SOURCES = \ route.cxx \ waypoint.cxx +if OLD_AUTOMAKE INCLUDES += -I$(top_srcdir) +else +INCLUDES = -I$(top_srcdir) +endif noinst_PROGRAMS = waytest routetest diff --git a/simgear/screen/Makefile.am b/simgear/screen/Makefile.am index 5c618a3a..d1f3637d 100644 --- a/simgear/screen/Makefile.am +++ b/simgear/screen/Makefile.am @@ -10,4 +10,8 @@ libsgscreen_a_SOURCES = \ tr.cxx \ win32-printer.h +if OLD_AUTOMAKE INCLUDES += -I$(top_srcdir) +else +INCLUDES = -I$(top_srcdir) +endif diff --git a/simgear/serial/Makefile.am b/simgear/serial/Makefile.am index 7d4a64ca..7536cce8 100644 --- a/simgear/serial/Makefile.am +++ b/simgear/serial/Makefile.am @@ -14,4 +14,8 @@ testserial_LDADD = \ $(top_builddir)/simgear/serial/libsgserial.a \ $(top_builddir)/simgear/debug/libsgdebug.a +if OLD_AUTOMAKE INCLUDES += -I$(top_srcdir) +else +INCLUDES = -I$(top_srcdir) +endif diff --git a/simgear/sky/Makefile.am b/simgear/sky/Makefile.am index 7264dd2e..3d5adc7a 100644 --- a/simgear/sky/Makefile.am +++ b/simgear/sky/Makefile.am @@ -20,4 +20,8 @@ libsgsky_a_SOURCES = \ sphere.cxx \ stars.cxx +if OLD_AUTOMAKE INCLUDES += -I$(top_srcdir) +else +INCLUDES = -I$(top_srcdir) +endif diff --git a/simgear/threads/Makefile.am b/simgear/threads/Makefile.am index 16e559bf..a8e76a1d 100644 --- a/simgear/threads/Makefile.am +++ b/simgear/threads/Makefile.am @@ -10,4 +10,8 @@ include_HEADERS = \ libsgthreads_a_SOURCES = \ SGThread.cxx +if OLD_AUTOMAKE INCLUDES += -I$(top_srcdir) +else +INCLUDES = -I$(top_srcdir) +endif diff --git a/simgear/timing/Makefile.am b/simgear/timing/Makefile.am index c90b9367..73bd1dc2 100644 --- a/simgear/timing/Makefile.am +++ b/simgear/timing/Makefile.am @@ -16,4 +16,8 @@ libsgtiming_a_SOURCES = \ timestamp.cxx \ timezone.cxx +if OLD_AUTOMAKE INCLUDES += -I$(top_srcdir) +else +INCLUDES = -I$(top_srcdir) +endif diff --git a/simgear/xgl/Makefile.am b/simgear/xgl/Makefile.am index 5381436a..3ade8f2d 100644 --- a/simgear/xgl/Makefile.am +++ b/simgear/xgl/Makefile.am @@ -6,4 +6,8 @@ include_HEADERS = xgl.h libsgxgl_a_SOURCES = xgl.c xglUtils.c +if OLD_AUTOMAKE INCLUDES += -I$(top_srcdir) +else +INCLUDES = -I$(top_srcdir) +endif diff --git a/simgear/xml/Makefile.am b/simgear/xml/Makefile.am index 035d4e7b..bc01b91b 100644 --- a/simgear/xml/Makefile.am +++ b/simgear/xml/Makefile.am @@ -3,7 +3,7 @@ includedir = @includedir@/xml if HAVE_ZLIB ZLIB_INCL = else -XLIB_INCL = -I$(top_srcdir)/src/zlib +ZLIB_INCL = -I$(top_srcdir)/src/zlib endif lib_LIBRARIES = libsgxml.a @@ -24,4 +24,8 @@ libsgxml_a_SOURCES = \ xmltok.h xmltok.c \ xmltok_impl.h +if OLD_AUTOMAKE INCLUDES += -I$(top_srcdir) $(ZLIB_INCL) +else +INCLUDES = -I$(top_srcdir) $(ZLIB_INCL) +endif -- 2.39.5