From: Stefano Lattarini Date: Wed, 7 Nov 2012 20:39:04 +0000 (+0100) Subject: Merge branch 'master' into ng/master X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=036f7d879d98851e82b174a68048abac5dbf28d8;p=thirdparty%2Fautomake.git Merge branch 'master' into ng/master * master: tests: rename few tests (on silent-rules support) tests: merge two tests on silent-rules with libtool vala tests: source test-init.sh, not ./defs tests: fix a spurious typo-related failure tests: remove spurious leftover use of 'Exit' tests: can check our recipes avoid trailing backslashes vala: improve comments to AM_PROG_VALAC news: update w.r.t. recent vala changes vala: if no proper compiler found, set $(VALAC) to 'valac' vala: AM_PROG_VALAC should not produce an error for tool-old valac docs: document recent changes to AM_PROG_VALAC tests: enhance tests on AM_PROG_VALAC vala: style fixes in vala.m4 vala: add action arguments, for when no proper vala compiler is found Signed-off-by: Stefano Lattarini --- 036f7d879d98851e82b174a68048abac5dbf28d8 diff --cc .gitignore index 6aab89648,62d326e62..0c80ef7c9 --- a/.gitignore +++ b/.gitignore @@@ -40,7 -39,8 +40,8 @@@ /t/wrap/aclocal-1.* /t/wrap/automake-1.* /t/ax/test-defs.sh +/testsuite-autodeps.am + /t/ax/shell-no-trail-bslash -/t/testsuite-part.am /t/*-w.tap /t/*-w.sh /t/depcomp-*.tap diff --cc Makefile.am index 813eb5b5b,065500f90..b8ea0ce14 --- a/Makefile.am +++ b/Makefile.am @@@ -428,10 -423,25 +428,23 @@@ EXTRA_DIST += t/ax/test-defs.i CLEANFILES += t/ax/test-defs.sh nodist_noinst_DATA = t/ax/test-defs.sh + noinst_SCRIPTS = # Will be updated soon. + + t/ax/shell-no-trail-bslash: t/ax/shell-no-trail-bslash.in Makefile + $(AM_V_at)rm -f $@ $@-t + $(AM_V_GEN)in=t/ax/shell-no-trail-bslash.in \ + && $(MKDIR_P) t/ax \ + && $(do_subst) <$(srcdir)/$$in >$@-t \ + && chmod a+x $@-t + $(generated_file_finalize) + EXTRA_DIST += t/ax/shell-no-trail-bslash.in + CLEANFILES += t/ax/shell-no-trail-bslash + noinst_SCRIPTS += t/ax/shell-no-trail-bslash + runtest: runtest.in Makefile $(AM_V_at)rm -f $@ $@-t - $(AM_V_GEN)in=runtest.in \ - && $(MKDIR_P) t/ax \ - && $(do_subst) <$(srcdir)/runtest.in >$@-t \ - && chmod a+x $@-t + $(AM_V_GEN)$(do_subst) + $(AM_V_at)chmod a+x $@-t $(generated_file_finalize) EXTRA_DIST += runtest.in CLEANFILES += runtest @@@ -487,6 -497,21 +500,17 @@@ check-tests-syntax check-local: check-tests-syntax .PHONY: check-tests-syntax + # Recipes with a trailing backslash character (possibly followed by + # blank characters only) can cause spurious syntax errors with at + # least older bash versions (e.g., bash 2.05b), and can be potentially + # be unportable to other weaker shells. Run the testsuite in a way + # that helps catching such problems in Automake-generated recipes. + # See automake bug#10436. + check-no-trailing-backslash-in-recipes: + $(AM_V_at)$(MAKE) $(AM_MAKEFLAGS) check \ + CONFIG_SHELL='$(abs_top_builddir)/t/ax/shell-no-trail-bslash' + .PHONY: check-no-trailing-backslash-in-recipes + -## Checking the list of tests. -test_subdirs = t t/pm contrib/t -include $(srcdir)/t/CheckListOfTests.am - # Run the testsuite with the installed aclocal and automake. installcheck-local: installcheck-testsuite installcheck-testsuite: diff --cc t/silent-cxx-generic.sh index 474c4cc19,766d3f995..ea8c55866 --- a/t/silent-cxx-generic.sh +++ b/t/silent-cxx-generic.sh @@@ -14,8 -14,9 +14,8 @@@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . -# Check silent-rules mode for C++. # This test should work with generic C++ compilers; keep it in sync with - # sister test 'silentcxx-gcc.sh', which requires the GNU C++ compiler + # sister test 'silent-cxx-gcc.sh', which requires the GNU C++ compiler # and forces the use of gcc depmode. required=c++ diff --cc t/silent-lt-generic.sh index b79f7f9f5,013460334..d1cc5e269 --- a/t/silent-lt-generic.sh +++ b/t/silent-lt-generic.sh @@@ -49,26 -61,37 +49,36 @@@ $ACLOCA $AUTOMAKE --add-missing $AUTOCONF - ./configure --enable-silent-rules - $MAKE >stdout || { cat stdout; exit 1; } - cat stdout - $EGREP ' (-c|-o)|(mv|mkdir) ' stdout && exit 1 - grep ' CC *libfoo\.lo' stdout - grep ' CC *libbar_la-libbar\.lo' stdout - grep ' CC *sub/libbaz\.lo' stdout - grep ' CC *sub/sub_libbla_la-libbla\.lo' stdout - grep ' CCLD *libfoo\.la' stdout - grep ' CCLD *libbar\.la' stdout - grep ' CCLD *sub/libbaz\.la' stdout - grep ' CCLD *sub/libbla\.la' stdout + for config_args in \ + '--enable-dependency-tracking' \ + '--disable-dependency-tracking' \ + ; do - $MAKE clean - $MAKE V=1 >stdout || { cat stdout; exit 1; } - cat stdout - grep ' -c' stdout - grep ' -o libfoo' stdout - grep ' -o sub/libbaz' stdout - # The libtool command line can contain e.g. a '--tag=CC' option. - sed 's/--tag=[^ ]*/--tag=x/g' stdout | $EGREP '(CC|LD) ' && exit 1 + ./configure --enable-silent-rules $config_args + + $MAKE >stdout || { cat stdout; exit 1; } + cat stdout - - $EGREP ' (-c|-o)' stdout && exit 1 - grep 'mv ' stdout && exit 1 - grep ' CC .*foo\.' stdout - grep ' CC .*bar\.' stdout - grep ' CC .*baz\.' stdout - grep ' CC .*bla\.' stdout - grep ' CCLD .*foo' stdout - grep ' CCLD .*bar' stdout - grep ' CCLD .*baz' stdout - grep ' CCLD .*bla' stdout ++ $EGREP ' (-c|-o)|(mv|mkdir) ' stdout && exit 1 ++ grep ' CC *libfoo\.lo' stdout ++ grep ' CC *libbar_la-libbar\.lo' stdout ++ grep ' CC *sub/libbaz\.lo' stdout ++ grep ' CC *sub/sub_libbla_la-libbla\.lo' stdout ++ grep ' CCLD *libfoo\.la' stdout ++ grep ' CCLD *libbar\.la' stdout ++ grep ' CCLD *sub/libbaz\.la' stdout ++ grep ' CCLD *sub/libbla\.la' stdout + + $MAKE clean + $MAKE V=1 >stdout || { cat stdout; exit 1; } + cat stdout + grep ' -c' stdout + grep ' -o libfoo' stdout ++ grep ' -o sub/libbaz' stdout + # The libtool command line can contain e.g. a '--tag=CC' option. + sed 's/--tag=[^ ]*/--tag=x/g' stdout | $EGREP '(CC|LD) ' && exit 1 + + $MAKE distclean + + done :