Merge branch 'master' into test-protocols
authorStefano Lattarini <stefano.lattarini@gmail.com>
Tue, 6 Sep 2011 09:02:38 +0000 (11:02 +0200)
committerStefano Lattarini <stefano.lattarini@gmail.com>
Tue, 6 Sep 2011 09:02:38 +0000 (11:02 +0200)
* master:
  * tests/amhello-binpkg.test: Add missing $EXEEXT usage.
  fix: list test 'vala-vpath.test' in XFAIL_TESTS
  tests: simplify wrapper for aclocal
  fix: minor typo in ChangeLog
  automake: fix regression due to de-ansification support removal
  coverage: vala support failing for VPATH from-scratch builds
  docs: report few more automake parsing limitations
  automake: cleanups after de-ansification support removal (2)
  automake: cleanups after de-ansification support removal (1)
  ansi: remove obsolete code/files for de-ANSI-fication support
  ansi: reject attempts to use automatic de-ANSI-fication support
  tests: remove tests about obsolete de-ANSI-fication support
  docs: remove description of de-ANSI-fication support from manual

1  2 
ChangeLog
NEWS
automake.in
doc/automake.texi
lib/Makefile.am
lib/Makefile.in
tests/Makefile.am
tests/Makefile.in
tests/defs-static.in

diff --cc ChangeLog
+++ b/ChangeLog
+ 2011-09-05  Peter Rosin  <peda@lysator.liu.se>
+       * tests/amhello-binpkg.test: Add missing $EXEEXT usage.
+ 2011-09-04  Stefano Lattarini  <stefano.lattarini@gmail.com>
+       fix: list test 'vala-vpath.test' in XFAIL_TESTS
+       * tests/Makefile.am (XFAIL_TESTS): Update.
+ 2011-09-02  Stefano Lattarini  <stefano.lattarini@gmail.com>
+       tests: simplify wrapper for aclocal
+       * tests/aclocal.in: Remove use of $ACLOCAL_TESTSUITE_FLAGS and
+       extra `-I' flags; they are not really required, since the file
+       `m4/amversion.m4' is generated in the srcdir anyway.
+       * tests/acloca10.test: Remove use of $ACLOCAL_TESTSUITE_FLAGS.
+       * tests/acloca18.test: Likewise.
+       * tests/defs.in: Don't nullify $ACLOCAL_TESTSUITE_FLAGS, and do
+       not export it.
+ 2011-09-01  Stefano Lattarini  <stefano.lattarini@gmail.com>
+       automake: fix regression due to de-ansification support removal
+       The last change `v1.11-947-g136b489' removed code that automake
+       was using to decide whether binary objects were built by the
+       generated Makefile.in, so that it could avoid to emit unneeded
+       code when this was not the case.  Re-introduce such code in a
+       less-obfuscated form, and add a test to ensure we don't regress
+       again.
+       * automake.in ($must_handle_compiled_objects): New global
+       variable, telling whether the generated Makefile has to build
+       compiled objects.
+       (initialize_per_input): Reset it.
+       (handle_programs, handle_libraries, handle_ltlibraries): Set
+       it to a true value when required.
+       (handle_compile): Don't generate any code if the variable
+       `$must_handle_compiled_objects' is not set to a true value.
+       * tests/no-extra-makefile-code.test: New test.
+       * tests/Makefile.am (TESTS): Add it.
+ 2011-08-28  Stefano Lattarini  <stefano.lattarini@gmail.com>
+       automake: cleanups after de-ansification support removal (2)
+       * automake.in ($get_object_extension_was_run): Remove, it's not
+       really needed anymore.
+       (&get_object_extension): Remove, it's a no-op now.
+       All callers adjusted.
+ 2011-08-28  Stefano Lattarini  <stefano.lattarini@gmail.com>
+       automake: cleanups after de-ansification support removal (1)
+       * automake.in (lang_c_rewrite, handle_single_transform): Rename 
+       variable `$nonansi_obj' to `$obj'.
+ 2011-08-28  Stefano Lattarini  <stefano.lattarini@gmail.com>
+       ansi: remove obsolete code/files for de-ANSI-fication support
+       * lib/ansi2knr.1, lib/ansi2knr.c: Deleted.
+       * lib/Makefile.am (dist_pkgvdata_DATA): Do not list them anymore.
+       * lib/am/ansi2knr.am: Delete.
+       * lib/am/Makefile.am (dist_am_DATA): Do not list it anymore.
+       * lib/Automake/Variable.pm (%_am_macro_for_var): Remove entries for
+       `ANSI2KNR' and `U'.
+       * m4/depout.m4 (_AM_OUTPUT_DEPENDENCY_COMMANDS): Don't care anymore
+       about possible definition of the `$U' variable.
+       * automake.in (@common_files): Drop `ansi2knr.1' and `ansi2knr.c'.
+       (struct): Remove scalar field `ansi'.
+       All callers adjusted.
+       (&lang_c_finish, %de_ansi_files): Remove, they're not required
+       anymore.
+       All callers adjusted.
+       ($get_object_extension_was_run): Fix typo in comment.
+       (&get_object_extension): Drop code dealing with de-ansification;
+       this function basically a no-op now, but is required to properly
+       initialize `$get_object_extension_was_run' variable.
+       (&handle_languages, &handle_compile, &lang_c_rewrite): Drop code
+       dealing with de-ansification.
+ 2011-08-28  Stefano Lattarini  <stefano.lattarini@gmail.com>
+       ansi: reject attempts to use automatic de-ANSI-fication support
+       * tests/protos.m4 (AM_C_PROTOTYPES): Error out whenever called.
+       * lib/Automake/Options.pm (_process_option_list ): Error out
+       with a proper error message when the `ansi2knr' option is used.
+       Related updates to comments.
+       * tests/depacl2.test: Update.
+       * tests/ansi2knr-no-more.test: New test.
+       * tests/Makefile.am (TESTS): Add it.
+       * NEWS: Update.
+ 2011-08-28  Stefano Lattarini  <stefano.lattarini@gmail.com>
+       tests: remove tests about obsolete de-ANSI-fication support
+       * tests/ansi.test: Delete.
+       * tests/ansi10.test: Likewise.
+       * tests/ansi2.test: Likewise.
+       * tests/ansi2knr-deprecation.test: Likewise.
+       * tests/ansi3.test: Likewise.
+       * tests/ansi3b.test: Likewise.
+       * tests/ansi4.test: Likewise.
+       * tests/ansi5.test: Likewise.
+       * tests/ansi6.test: Likewise.
+       * tests/ansi7.test: Likewise.
+       * tests/ansi8.test: Likewise.
+       * tests/ansi9.test: Likewise.
+       * tests/cxxansi.test: Likewise.
+       * tests/libobj8.test: Likewise.
+       * tests/subobj3.test: Likewise.
+       * tests/Makefile.am (TESTS): Update.
+ 2011-08-28  Stefano Lattarini  <stefano.lattarini@gmail.com>
+       docs: remove description of de-ANSI-fication support from manual
+       * doc/automake.texi (Auxiliary Programs): Remove mention of
+       `ansi2knr.c' and `ansi2knr.1'.
+       (Obsolete Macros): Remove mention of `AM_C_PROTOTYPES'.  Do not
+       index it nor variables `ANSI2KNR' and `U' anymore.
+       (List of Automake options): Remove mention of `ansi2knr' option,
+       and obsolete entries for concept and option indexes.
+       (Optional): Remove entry about `AM_C_PROTOTYPES'.
+       (@c LocalWords): Remove `ansi' and `knr'.
+       (@menu, @detailmenu): Remove entries about de-ANSI-fication
+       support.
+ 2011-09-02  Stefano Lattarini  <stefano.lattarini@gmail.com>
+       coverage: vala support failing for VPATH from-scratch builds
+       * tests/vala-vpath.test: New test, xfailing.
+       * tests/Makefile.am (TESTS): Update.
+       * THANKS: Update.
+       From a report by Zbigniew JÄ™drzejewski-Szmek.
+       Related to automake bug#8753.
+ 2011-09-01  Stefano Lattarini  <stefano.lattarini@gmail.com>
+       docs: report few more automake parsing limitations
+       Partly motivated by automake bug#8360.
+       * doc/automake.texi (General Operation): Report few more automake
+       limitations w.r.t. parsing of unusual makefile constructs.  Related
+       minor reorderings.
+       * tests/doc-parsing-buglets-colneq-subst.test: New test.
+       * tests/doc-parsing-buglets-tabs.test: Likewise.
+       * tests/Makefile.am (TESTS): Update.
 +2011-08-29  Stefano Lattarini  <stefano.lattarini@gmail.com>
 +
 +      tests: prefer AM_... variables to user-reserved ones in Makefile
 +      * tests/Makefile.am (TAP_LOG_DRIVER_FLAGS): Renamed ...
 +      (AM_TAP_LOG_DRIVER_FLAGS): ... to this.
 +
 +2011-08-29  Stefano Lattarini  <stefano.lattarini@gmail.com>
 +
 +      tests: some minor fixlets w.r.t. TAP-based tests
 +      The variable that is used by our test scripts to decide whether
 +      they are "plain" or TAP-based is `using_tap'; however, some
 +      peripheral sanity checks and sanitization code in our testsuite
 +      were erroneously using the `use_tap' variable instead.  Fix that.
 +      * tests/Makefile.am (AM_TESTS_ENVIRONMENT): Nullify `using_tap',
 +      not `use_tap'.
 +      * tests/defs-static.in: Check that `using_tap', not `use_tap',
 +      is not exported.
 +      * tests/self-check-env-sanitize.test: Update.
 +
 +2011-08-29  Stefano Lattarini  <stefano.lattarini@gmail.com>
 +
 +      tests: avoid re-running a test with the 'parallel-tests' option
 +      * tests/backcompat5.test (parallel_tests): Define to "no", to
 +      prevent the generation of a sibling test script that uses the
 +      'parallel-tests' driver.  That would be useless anyway, since
 +      we manually override the contents of configure.in, thus clobbering
 +      the `parallel-tests' option in AM_INIT_AUTOMAKE.
 +      Fix a typo in comments since we are at it.
 +
 +2011-08-29  Stefano Lattarini  <stefano.lattarini@gmail.com>
 +
 +      tests: defaults to awk+shell driver in tests on TAP support
 +      * tests/defs ($am_tap_implementation): Default to "shell", not
 +      to "perl".
 +
  2011-08-25  Stefano Lattarini  <stefano.lattarini@gmail.com>
  
        tests: list "forgotten" test script in TESTS
diff --cc NEWS
--- 1/NEWS
--- 2/NEWS
+++ b/NEWS
@@@ -11,83 -11,6 +11,78 @@@ New in 1.11a
  
    - New `cscope' target to build a cscope database for the source tree.
  
- * WARNING: Future backward-incompatibilities!
-   - The Automake support for automatic de-ANSI-fication will be removed in
-     the next major Automake release (1.12).
 +* Changes to Automake-generated testsuite harnesses:
 +
 +  - Test scripts that exit with status 99 to signal an "hard error" (e.g.,
 +    and unexpected or internal error, or a failure to set up the test case
 +    scenario) have their outcome reported as an 'ERROR' now.  Previous
 +    versions of automake reported such an outcome as a 'FAIL' (the only
 +    difference with normal failures being that hard errors were counted
 +    as failures even when the test originating them was listed in
 +    XFAIL_TESTS).
 +
 +  - The testsuite summary displayed by the parallel-test harness has a
 +    completely new format, that always list the numbers of passed, failed,
 +    xfailed, xpassed, skipped and errored tests, even when these numbers
 +    are zero (but using smart coloring when the color-tests option is in
 +    effect).
 +
 +  - The default testsuite driver offered by the 'parallel-tests' option is
 +    now implemented (partly at least) with the help of automake-provided
 +    auxiliary scripts (e.g., `test-driver'), instead of relying entirely
 +    on code in the generated Makefile.in.
 +    This has two noteworthy implications.  The first one is that projects
 +    using the `parallel-tests' option should now either run automake with
 +    the `--add-missing' option, or manually copy the `test-driver' script
 +    into their tree.  The second, and more important, implication is that
 +    now, when the `parallel-tests' option is in use, TESTS_ENVIRONMENT can
 +    not be used anymore to define a test runner, and the command specified
 +    in LOG_COMPILER (and <ext>_LOG_COMPILER) must be a *real* executable
 +    program or script.  For example, this is still a valid usage (albeit
 +    a little contorted):
 +
 +      TESTS_ENVIRONMENT = \
 +        if test -n '$(STRICT_TESTS)'; then \
 +          maybe_errexit='-e'; \
 +        else \
 +          maybe_errexit=''; \
 +        fi;
 +      LOG_COMPILER = $(SHELL) $$maybe_errexit
 +
 +    while this is not anymore:
 +
 +      TESTS_ENVIRONMENT = \
 +        $(SHELL) `test -n '$(STRICT_TESTS_CHECKING)' && echo ' -e'`
 +
 +    neither is this:
 +
 +      TESTS_ENVIRONMENT = \
 +        run_with_perl_or_shell () \
 +        { \
 +          if grep -q '^#!.*perl' $$1; then
 +            $(PERL) $$1; \
 +          else \
 +            $(SHELL) $$1; \
 +          fi; \
 +        }
 +      LOG_COMPILER = run_with_per_or_shell
 +
 +  - The package authors can now use customary testsuite drivers within
 +    the framework provided by the 'parallel-tests' testsuite harness.
 +    Consistently with the existing syntax, this can be done by defining
 +    special makefile variables `LOG_DRIVER' and `<ext>_LOG_DRIVER'.
 +
 +  - A new developer-reserved variable `AM_TESTS_FD_REDIRECT' can be used
 +    to redirect/define file descriptors used by the test scripts.
 +
 +  - The parallel-tests harness generates now, in addition the `.log' files
 +    holding the output produced by the test scripts, a new set of `.trs'
 +    files, holding "metadata" derived by the execution of the test scripts;
 +    among such metadata are the outcomes of the test cases run by a script.
 +
 +  - Initial and still experimental support for the TAP test protocol is
 +    now provided.
 +
  * Miscellaneous changes:
  
    - The `dist' and `dist-all' targets now can run compressors in parallel.
diff --cc automake.in
Simple merge
Simple merge
diff --cc lib/Makefile.am
Simple merge
diff --cc lib/Makefile.in
@@@ -236,28 -236,11 +236,26 @@@ top_build_prefix = @top_build_prefix
  top_builddir = @top_builddir@
  top_srcdir = @top_srcdir@
  SUBDIRS = Automake am
- dist_pkgvdata_DATA = COPYING INSTALL texinfo.tex ansi2knr.c ansi2knr.1 \
-   config-ml.in
+ dist_pkgvdata_DATA = COPYING INSTALL texinfo.tex config-ml.in
  scriptdir = $(pkgvdatadir)
 -dist_script_DATA = config.guess config.sub install-sh mdate-sh missing \
 -  mkinstalldirs elisp-comp ylwrap acinstall depcomp compile py-compile \
 -  symlink-tree ar-lib
 +dist_script_DATA = \
 +  config.guess \
 +  config.sub \
 +  install-sh \
 +  mdate-sh \
 +  missing \
 +  mkinstalldirs \
 +  elisp-comp \
 +  ylwrap \
 +  acinstall \
 +  depcomp \
 +  compile \
 +  py-compile \
 +  symlink-tree \
 +  ar-lib \
 +  test-driver \
 +  tap-driver.sh \
 +  tap-driver.pl
  
  EXTRA_DIST = gnupload
  all: all-recursive
Simple merge
@@@ -278,26 -293,21 +278,26 @@@ target_alias = @target_alias
  top_build_prefix = @top_build_prefix@
  top_builddir = @top_builddir@
  top_srcdir = @top_srcdir@
 +TEST_EXTENSIONS = .test .tap
 +TAP_LOG_DRIVER = AM_TAP_AWK='$(AWK)' $(SHELL) $(top_srcdir)/lib/tap-driver.sh
 +AM_TAP_LOG_DRIVER_FLAGS = --merge
  MAINTAINERCLEANFILES = $(parallel_tests) $(instspc_tests)
  EXTRA_DIST = ChangeLog-old gen-parallel-tests instspc-tests.sh \
 -      $(TESTS)
 +      $(TESTS) tap-functions.sh plain-functions.sh \
 +      trivial-test-driver testsuite-summary-checks.sh \
 +      extract-testsuite-summary tap-setup.sh tap-summary-aux.sh
  XFAIL_TESTS = all.test auxdir2.test cond17.test gcj6.test \
        override-conditional-2.test pr8365-remake-timing.test \
-       yacc-dist-nobuild-subdir.test txinfo5.test \
+       yacc-dist-nobuild-subdir.test vala-vpath.test txinfo5.test \
        $(instspc_xfail_tests)
 -parallel_tests = backcompat5-p.test check-concurrency-bug9245-p.test \
 -      check-exported-srcdir-p.test check-tests-in-builddir-p.test \
 -      check-tests_environment-p.test check-p.test check10-p.test \
 -      check11-p.test check12-p.test check2-p.test check3-p.test \
 -      check4-p.test check5-p.test check6-p.test check7-p.test \
 -      check8-p.test check9-p.test color-p.test color2-p.test \
 -      comment9-p.test dejagnu-p.test exeext4-p.test maken3-p.test \
 -      maken4-p.test posixsubst-tests-p.test
 +parallel_tests = check-concurrency-bug9245-p.test \
 +      check-exported-srcdir-p.test check-fd-redirect-p.test \
 +      check-tests-in-builddir-p.test check-p.test check11-p.test \
 +      check12-p.test check2-p.test check3-p.test check4-p.test \
 +      check5-p.test check6-p.test check7-p.test check8-p.test \
 +      check9-p.test color-p.test color2-p.test comment9-p.test \
 +      dejagnu-p.test exeext4-p.test maken3-p.test maken4-p.test \
 +      posixsubst-tests-p.test tests-environment-p.test
  instspc_tests = instspc-squote-build.test instspc-squote-install.test \
        instspc-dquote-build.test instspc-dquote-install.test \
        instspc-bquote-build.test instspc-bquote-install.test \
Simple merge