]> git.ipfire.org Git - thirdparty/automake.git/commitdiff
Merge branch 'master' into ng/master
authorStefano Lattarini <stefano.lattarini@gmail.com>
Wed, 7 Nov 2012 20:39:04 +0000 (21:39 +0100)
committerStefano Lattarini <stefano.lattarini@gmail.com>
Wed, 7 Nov 2012 20:39:04 +0000 (21:39 +0100)
* 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 <stefano.lattarini@gmail.com>
12 files changed:
1  2 
.gitignore
Makefile.am
doc/automake-ng.texi
t/silent-c-gcc.sh
t/silent-c-generic.sh
t/silent-custom.sh
t/silent-cxx-gcc.sh
t/silent-cxx-generic.sh
t/silent-f77.sh
t/silent-f90.sh
t/silent-lt-gcc.sh
t/silent-lt-generic.sh

diff --cc .gitignore
index 6aab89648b6eb2abc739d5f96100841e8397aee3,62d326e626fc6f25d324568b767ef680fc68b21c..0c80ef7c93d6ee2b06357251a915fcf6546b8722
@@@ -40,7 -39,8 +40,8 @@@
  /t/wrap/aclocal-1.*
  /t/wrap/automake-1.*
  /t/ax/test-defs.sh
 -/t/testsuite-part.am
 +/testsuite-autodeps.am
+ /t/ax/shell-no-trail-bslash
  /t/*-w.tap
  /t/*-w.sh
  /t/depcomp-*.tap
diff --cc Makefile.am
index 813eb5b5b716ed44ccbc5c57356c5f60ff439c1a,065500f90c011750c187b8abb34895e73dc9335b..b8ea0ce14e40f1aa19617fe8a81cfeb56814fa97
@@@ -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
  
 -## Checking the list of tests.
 -test_subdirs = t t/pm contrib/t
 -include $(srcdir)/t/CheckListOfTests.am
 -
+ # 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
  # Run the testsuite with the installed aclocal and automake.
  installcheck-local: installcheck-testsuite
  installcheck-testsuite:
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index 474c4cc19486095b2f8a1fee6ece4c51f91b60ab,766d3f9953e01e36387ee1cf84ff713463e46d31..ea8c5586601b4f437ad7094bd2ea5d7439a43ac0
@@@ -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 <http://www.gnu.org/licenses/>.
  
 -# 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-f77.sh
Simple merge
diff --cc t/silent-f90.sh
Simple merge
Simple merge
index b79f7f9f5af6ee2bfb06f667d144480e65c28e59,013460334c7a1545a8c696bd2dddb09992dda19e..d1cc5e269310fde6531366fb0df874e3c4a93d86
@@@ -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
  
  :