From: Stefano Lattarini Date: Wed, 15 May 2013 22:00:13 +0000 (+0200) Subject: Merge branch 'master' into ng/master X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=05f889a017a262a40459d94c6e20e6c2b4579f5d;p=thirdparty%2Fautomake.git Merge branch 'master' into ng/master * master: post-release: micro version bump (1.13.2a) release: stable micro release 1.13.2 vala tests: skip in a cross compiler setup HACKING: miscellaneous fixes, updates and enhancements NEWS: minor improvements to wording (about new versioning scheme) THANKS: update Akim's e-mail address tests: less uses of "make -e"; avoid spurious failures in 'check-cc-no-c-o' build: be more respectful of user-specified verbosity check-cc-no-c-o: unify initializations in a single place check-cc-no-c-o: avoid a spurious failure build: fixup for building in a VPATH setup Use AC_DEFUN_ONCE to define AM_PROG_CC_C_O compile: avoid AC_PROG_CC messy rewrite options: tiny simplification in dealing with incompatible versions Signed-off-by: Stefano Lattarini --- 05f889a017a262a40459d94c6e20e6c2b4579f5d diff --cc HACKING index 1bf135169,435eb7777..57a93ddc1 --- a/HACKING +++ b/HACKING @@@ -68,17 -66,22 +67,16 @@@ * Always use $(...) and not ${...} - * Use ':', not 'true'. Use 'exit 1', not 'false'. + * Prefer ':' over 'true', mostly for consistency with existing code. - * Use '##' comments liberally. Comment anything even remotely - unusual. + * Use '##' comments liberally. Comment anything even remotely unusual. - * Never use basename or dirname. Instead use sed. + * Never use basename or dirname. Instead, use sed. -* Do not use 'cd' within back-quotes, use '$(am__cd)' instead. - Otherwise the directory name may be printed, depending on CDPATH. - More generally, do not ever use plain 'cd' together with a relative - directory that does not start with a dot, or you might end up in one - computed with CDPATH. - * For install and uninstall rules, if a loop is required, it should be - silent. Then the body of the loop itself should print each - "important" command it runs. The printed commands should be preceded - by a single space. + silent. Then the body of the loop itself should print each "important" + command it runs. The printed commands should be preceded by a single + space. * Ensure install rules do not create any installation directory where nothing is to be actually installed. See automake bug#11030. diff --cc bin/Makefile.inc index 595882978,5842b7109..34b990f15 --- a/bin/Makefile.inc +++ b/bin/Makefile.inc @@@ -51,11 -51,14 +51,12 @@@ uninstall-hook done # These files depend on Makefile so they are rebuilt if $(VERSION), -# $(datadir) or other do_subst'ituted variables change. -%D%/automake: %D%/automake.in -%D%/aclocal: %D%/aclocal.in -%D%/automake %D%/aclocal: Makefile %D%/gen-perl-protos +# $(datadir) or other do_subst'd variables change. +%D%/automake %D%/aclocal: %: %.in Makefile %D%/gen-perl-protos $(AM_V_GEN)rm -f $@ $@-t $@-t2 \ + && $(MKDIR_P) $(@D) \ ## Common substitutions. - && in=$@.in && $(do_subst) <$(srcdir)/$$in >$@-t \ + && $(do_subst) \ ## Auto-compute prototypes of perl subroutines. && $(PERL) -w $(srcdir)/%D%/gen-perl-protos $@-t > $@-t2 \ && mv -f $@-t2 $@-t \ diff --cc m4/init.m4 index 8a01b8cad,ec193f70c..a2f301c5c --- a/m4/init.m4 +++ b/m4/init.m4 @@@ -101,7 -106,19 +101,13 @@@ AC_PROVIDE_IFELSE([AC_PROG_OBJCXX] [m4_define([AC_PROG_OBJCXX], m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl ]) + dnl Automatically invoke AM_PROG_CC_C_O as necessary. Since AC_PROG_CC is + dnl usually called after AM_INIT_AUTOMAKE, we arrange for the test to be + dnl done later by AC_CONFIG_COMMANDS_PRE. + AC_CONFIG_COMMANDS_PRE([AC_PROVIDE_IFELSE( + [AC_PROG_CC], + [AC_LANG_PUSH([C]) AM_PROG_CC_C_O AC_LANG_POP([C])])])dnl AC_REQUIRE([AM_SILENT_RULES])dnl -dnl The testsuite driver may need to know about EXEEXT, so add the -dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This -dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below. -AC_CONFIG_COMMANDS_PRE(dnl -[m4_provide_if([_AM_COMPILER_EXEEXT], - [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl # POSIX will say in a future version that running "rm -f" with no argument # is OK; and we want to be able to make that assumption in our Makefile @@@ -145,52 -162,12 +151,6 @@@ EN fi fi]) - dnl We have to redefine AC_PROG_CC to allow our compile rules to use - dnl "-c -o" together also with losing compilers. - dnl FIXME: Add references to the original discussion and bug report. - dnl FIXME: Shameless copy & paste from Autoconf internals, since trying to - dnl play smart among tangles of AC_REQUIRE, m4_defn, m4_provide and - dnl other tricks was proving too difficult, and in the end, likely - dnl more brittle too. And this should anyway be just a temporary - dnl band-aid, until Autoconf provides the semantics and/or hooks we - dnl need (hint hint, nudge nudge) ... - AC_DEFUN([AC_PROG_CC], - m4_defn([AC_PROG_CC]) - [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl - AC_REQUIRE_AUX_FILE([compile])dnl - dnl FIXME The following abomination is expected to disappear in - dnl Automake 1.14. - AC_MSG_CHECKING([whether $CC understands -c and -o together]) - set dummy $CC; am__cc=`AS_ECHO(["$[2]"]) | \ - sed 's/[[^a-zA-Z0-9_]]/_/g;s/^[[0-9]]/_/'` - AC_CACHE_VAL([am_cv_prog_cc_${am__cc}_c_o], - [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])]) - # Make sure it works both with $CC and with simple cc. - # We do the test twice because some compilers refuse to overwrite an - # existing .o file with -o, though they will create one. - ac_try='$CC -c conftest.$ac_ext -o conftest2.$ac_objext >&AS_MESSAGE_LOG_FD' - rm -f conftest2.* - if _AC_DO_VAR(ac_try) && test -f conftest2.$ac_objext - then - eval am_cv_prog_cc_${am__cc}_c_o=yes - else - eval am_cv_prog_cc_${am__cc}_c_o=no - fi - rm -f core conftest* - ])dnl - if eval test \"\$am_cv_prog_cc_${am__cc}_c_o\" = yes; then - AC_MSG_RESULT([yes]) - else - AC_MSG_RESULT([no]) - # Losing compiler, so wrap it with the 'compile' script. - # FIXME: It is wrong to rewrite CC. - # But if we don't then we get into trouble of one sort or another. - # A longer-term fix would be to have automake use am__CC in this case, - # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" - CC="$am_aux_dir/compile $CC" - fi - ]) -dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not -dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further -dnl mangled by Autoconf and run in a shell conditional statement. -m4_define([_AC_COMPILER_EXEEXT], -m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])]) -- # When config.status generates a header, we must update the stamp-h file. # This file resides in the same directory as the config header # that is generated. The stamp files are numbered to have different names. diff --cc t/Makefile.inc index 05c9edb2b,f979c66dc..0fe591e26 --- a/t/Makefile.inc +++ b/t/Makefile.inc @@@ -256,7 -224,7 +256,7 @@@ check-local: check-tests-synta # that helps catching such problems in Automake-generated recipes. # See automake bug#10436. check-no-trailing-backslash-in-recipes: - $(AM_V_at)$(MAKE) check \ - $(AM_V_GEN)$(MAKE) $(AM_MAKEFLAGS) check \ ++ $(AM_V_GEN)$(MAKE) check \ CONFIG_SHELL='$(abs_top_builddir)/%D%/ax/shell-no-trail-bslash' .PHONY: check-no-trailing-backslash-in-recipes @@@ -266,27 -234,25 +266,25 @@@ # otherwise only present themselves later "in the wild". See also the # long discussion about automake bug#13378. check-cc-no-c-o: - $(AM_V_at)$(MAKE) check \ - CC='$(abs_top_builddir)/%D%/ax/cc-no-c-o' \ - GNU_CC='$(abs_top_builddir)/%D%/ax/cc-no-c-o' - $(AM_V_GEN)$(MAKE) $(AM_MAKEFLAGS) check \ - AM_TESTSUITE_SIMULATING_NO_CC_C_O=yes ++ $(AM_V_GEN)$(MAKE) check AM_TESTSUITE_SIMULATING_NO_CC_C_O=yes .PHONY: check-cc-no-c-o -## Checking the list of tests. -test_subdirs = %D% %D%/pm contrib/%D% -include %D%/CheckListOfTests.am - # Run the testsuite with the installed aclocal and automake. installcheck-local: installcheck-testsuite installcheck-testsuite: - am_running_installcheck=yes $(MAKE) check - $(AM_V_GEN)$(MAKE) $(AM_MAKEFLAGS) check \ - am_running_installcheck=yes ++ $(AM_V_GEN)$(MAKE) check am_running_installcheck=yes +# Run the testsuite without skipping expensive tests by default. +check-expensive installcheck-expensive: %-expensive: - $(MAKE) $* RUN_EXPENSIVE_TESTS=yes ++ $(AM_V_GEN)$(MAKE) $* RUN_EXPENSIVE_TESTS=yes + # Performance tests. -.PHONY: perf perf: all - $(MAKE) TEST_SUITE_LOG='$(PERF_TEST_SUITE_LOG)' \ - TESTS='$(perf_TESTS)' check - $(AM_V_GEN)$(MAKE) $(AM_MAKEFLAGS) check \ ++ $(AM_V_GEN)$(MAKE) check \ + TEST_SUITE_LOG='$(PERF_TEST_SUITE_LOG)' TESTS='$(perf_TESTS)' +.PHONY: perf - perf_TESTS = $(wildcard $(srcdir)/t/perf/*.sh) \ - $(wildcard $(srcdir)/t/perf/*.tap) ++perf_TESTS = $(wildcard $(srcdir)/%D%/perf/*.sh) \ ++ $(wildcard $(srcdir)/%D%/perf/*.tap) PERF_TEST_SUITE_LOG = %D%/perf/test-suite.log CLEANFILES += $(PERF_TEST_SUITE_LOG) EXTRA_DIST += $(perf_TESTS) diff --cc t/instdir-ltlib.sh index bb6e82245,273206cba..6a4911f88 --- a/t/instdir-ltlib.sh +++ b/t/instdir-ltlib.sh @@@ -65,9 -66,16 +65,10 @@@ cd buil ../configure --prefix="$instdir" PYTHON="echo" \ am_cv_python_pythondir="$instdir/python" \ am_cv_python_pyexecdir="$instdir/pyexec" -xMAKE () -{ - # Early line break here to please maintainer-check. - $MAKE \ - bindir= libdir= pyexecdir= \ - AM_MAKEFLAGS='bindir= libdir= pyexecdir=' \ - "$@" -} + -xMAKE +$MAKE + +xMAKE() { $MAKE bindir= libdir= pyexecdir= "$@"; } xMAKE install test ! -e "$instdir" diff --cc t/instdir-prog.sh index a5adfa61c,f2b96b8ee..0286f7e34 --- a/t/instdir-prog.sh +++ b/t/instdir-prog.sh @@@ -64,11 -65,18 +64,11 @@@ cd buil ../configure --prefix="$instdir" PYTHON="echo" \ am_cv_python_pythondir="$instdir/python" \ am_cv_python_pyexecdir="$instdir/pyexec" + -xMAKE () -{ - # Early line break here to please maintainer-check. - $MAKE \ - bindir= libdir= pyexecdir= \ - AM_MAKEFLAGS='bindir= libdir= pyexecdir=' \ - "$@" -} +$MAKE -xMAKE +xMAKE () { $MAKE bindir= libdir= pyexecdir= "$@"; } - export bindir libdir pyexecdir xMAKE install test ! -e "$instdir" xMAKE install DESTDIR="$destdir"