platform/upstream/automake.git
11 years agomake flags analysis: use simpler variable names
Stefano Lattarini [Fri, 3 May 2013 11:01:35 +0000 (13:01 +0200)]
make flags analysis: use simpler variable names

* lib/am/header-vars.am (am__make_running_with_option): Here.  Now
that we expect to be run in a subshell, we don't have to worry about
being namespace-safe.  And '$foo' is much more pleasant to read than
'$am__foo' -- and pleasant code tends to be more correct.
(am__make_dryrun, am__make_keepgoing): Adjust.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agomake flags analysis: whitespace changes
Stefano Lattarini [Fri, 3 May 2013 10:52:14 +0000 (12:52 +0200)]
make flags analysis: whitespace changes

* lib/am/header-vars.am (am__make_running_with_option): Here.
No semantic change is intended.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agomake flags analysis: embed in a subshell
Stefano Lattarini [Fri, 3 May 2013 10:47:59 +0000 (12:47 +0200)]
make flags analysis: embed in a subshell

So that we won't have to worry about leaking temporary variables,
and similar stuff.

* lib/am/header-vars.am (am__make_dryrun, am__make_keepgoing): Here.
(am__make_running_with_option): Minor adjustments.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agomake flags analysis: be more robust
Stefano Lattarini [Thu, 2 May 2013 17:41:24 +0000 (19:41 +0200)]
make flags analysis: be more robust

In particular, catering to option-with-argument bundled together
with options-without-arguments, as in:

   # With GNU make 3.82:
   $ make -f- <<<'all:; echo "$$MFLAGS"' -s -k -I none
   -skiI none

   # With development version of GNU make (Git commit b5ea49b):
   $ make -f- <<<'all:; @echo "$$MFLAGS"' -I none
   -skiI none

This fixes some lingering failures in the testsuite; precisely, in
tests 'make-dryrun.tap' and 'make-keepgoing.tap'.

* t/header-vars.am (am__make_running_with_option): Enhance.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agomake flags analysis: cater to GNU make 3.83 (still unreleased as of now)
Stefano Lattarini [Wed, 1 May 2013 23:10:13 +0000 (01:10 +0200)]
make flags analysis: cater to GNU make 3.83 (still unreleased as of now)

The current development version of GNU make (that is planned to become
GNU make 3.83, sooner or later) has changed the format its $(MFLAGS)
variable slightly, removing the space between an option and its argument:

   # With GNU make 3.82, compiled from official tarball:
   $ make -f- <<<'all:; @echo "$$MFLAGS"' -I none
   -I none

   # With development version of GNU make (Git commit b5ea49b):
   $ make -f- <<<'all:; @echo "$$MFLAGS"' -I none
   -Inone

This was done on purpose, in order to support more easily the new
option '-O', which takes an optional argument; see:

  <http://lists.gnu.org/archive/html/bug-make/2013-05/msg00001.html>

So Just adapt to the new format as well.

* t/header-vars.am (am__make_running_with_option): Adjust to cater
to the new GNU make behaviour.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: expose weaknesses in make flags analysis
Stefano Lattarini [Wed, 1 May 2013 22:43:33 +0000 (00:43 +0200)]
tests: expose weaknesses in make flags analysis

This introduces some failures in the testsuite, that will be fixed
soon enough by follow-up patches.

* t/make-dryrun.tap: Enhance and extend.
* t/make-keepgoing.tap: Likewise.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: improve debugging output in checks on make flags analysis
Stefano Lattarini [Wed, 1 May 2013 22:27:46 +0000 (00:27 +0200)]
tests: improve debugging output in checks on make flags analysis

* t/make-dryrun.tap: Here.
* t/make-keepgoing.tap: And here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agomake flags analysis: refactor, to reduce code duplication
Stefano Lattarini [Wed, 1 May 2013 21:26:42 +0000 (23:26 +0200)]
make flags analysis: refactor, to reduce code duplication

And make it a little more reliable.

* t/header-vars.am (am__make_running_with_option): Here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: avoid one tricky use of "make -e"
Stefano Lattarini [Wed, 1 May 2013 15:06:42 +0000 (17:06 +0200)]
tests: avoid one tricky use of "make -e"

Which was causing a spurious failure on FreeBSD.  Not particularly
surprising, given how brittle "make -e" is in general ...

* t/cxx-lt-demo.sh: Instead of forcing $(CC) to be 'false' by
exporting "CC=false" in the environment and then passing the '-e'
option to make, do so by passing "CC=false" on the make command
line, both directly and using AM_MAKEFLAGS.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoMerge branch 'fix-pr12554' into branch-1.13.2
Stefano Lattarini [Tue, 30 Apr 2013 21:55:47 +0000 (23:55 +0200)]
Merge branch 'fix-pr12554' into branch-1.13.2

* fix-pr12554:
  tests: avoid a spurious error with Solaris make
  subdirs: don't return false positives for the '-k' option's presence
  header-vars: recognize more make flags ('-k' in particular)
  header-vars: simplify how make flags are determined
  tests: remove dead code from t/make-dryrun.tap
  header-vars: new variable $(am__running_with_option)
  tests: expose bug#12554 (false positives for presence of '-k' make option)

11 years agocosmetics: remove few trailing whitespace occurrences
Stefano Lattarini [Tue, 30 Apr 2013 21:00:53 +0000 (23:00 +0200)]
cosmetics: remove few trailing whitespace occurrences

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotypofix: in NEWS (extra whitespace)
Stefano Lattarini [Tue, 30 Apr 2013 20:59:30 +0000 (22:59 +0200)]
typofix: in NEWS (extra whitespace)

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoMerge branch 'fix-pr13588-pax-hangs' into branch-1.13.2
Stefano Lattarini [Tue, 30 Apr 2013 12:48:45 +0000 (14:48 +0200)]
Merge branch 'fix-pr13588-pax-hangs' into branch-1.13.2

* fix-pr13588-pax-hangs:
  tar: format 'ustar' cannot support UID/GID longer than 21 bits

11 years agotests: avoid a spurious error with Solaris make
Stefano Lattarini [Mon, 29 Apr 2013 18:43:02 +0000 (20:43 +0200)]
tests: avoid a spurious error with Solaris make

* t/make-keepgoing.tap (Makefile.am): Here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agosubdirs: don't return false positives for the '-k' option's presence
Stefano Lattarini [Mon, 29 Apr 2013 14:12:34 +0000 (16:12 +0200)]
subdirs: don't return false positives for the '-k' option's presence

This change fixes automake bug#12554.

The old implementation of the code descending into $(SUBDIRS)
entries used the following snippet to decide whether make is running
with the '-k' a.k.a. '--keep-going' option, and thus whether a failure
in a subdirectory should prevent the descent in the following ones:

    fail= failcom='exit 1'; \
    for f in x $$MAKEFLAGS; do \
      case $$f in \
        *=* | --[!k]*);; \
        *k*) failcom='fail=yes';; \
      esac; \
    done

It's clear that the second pattern in the 'case' construct could possibly
match false positives, for examples in these two cases:

    make check TESTS="x.test k.test"
    make -I /usr/local/kool-fragments

which are somewhat unusual, but not invalid.  So we need a more resilient
implementation, as we did for the detection of the '-n' flag.

This implementation is now provided by the new private macro
'$(am__make_keepgoing)' (introduced in recent commits); so we can
just us that to fix the bug.

* lib/am/subdirs.am ($(am__recursive_targets)): Use '$(am__make_keepgoing)'
instead of ad-hoc and more brittle checks.
* t/list-of-tests.mk (XFAIL_TESTS): Remove the now-passing test case
't/subdir-keep-going-pr12554.sh'.

Reported-by: Michael Daniels <mdaniels@rim.com>
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoheader-vars: recognize more make flags ('-k' in particular)
Stefano Lattarini [Mon, 29 Apr 2013 13:22:10 +0000 (15:22 +0200)]
header-vars: recognize more make flags ('-k' in particular)

* lib/am/header-vars.am (am__running_with_option): Here.
Few improvements to comments, while at it.
(am__make_keepgoing): New, tell whther make is being runt with
the '-k' option.
* t/make-keepgoing.tap: New test.
* t/list-of-tests.mk: Add it.
* t/make-dryrun.tap: Minor edits to keep it more in sync with
the new test.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agosync: update files from upstream with "make fetch"
Stefano Lattarini [Mon, 29 Apr 2013 14:44:00 +0000 (16:44 +0200)]
sync: update files from upstream with "make fetch"

* lib/config.guess: Likewise.
* lib/config.sub: Likewise.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agomaintcheck: remove outdated whitelisting
Stefano Lattarini [Mon, 29 Apr 2013 14:39:47 +0000 (16:39 +0200)]
maintcheck: remove outdated whitelisting

* syntax-checks.mk (sc_tests_overriding_macros_on_cmdline): Here.
The test 'make-dryrun.sh' has been since long rewritten as the TAP
test 'make-dryrun.tap', and no longer spuriously triggers this
maintainer check.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoheader-vars: simplify how make flags are determined
Stefano Lattarini [Sat, 27 Apr 2013 14:09:43 +0000 (16:09 +0200)]
header-vars: simplify how make flags are determined

Actually, son far only the '-n' option ("dry mode") was detected,
but this change will allow us to soon detect more options.

* lib/am/header-vars.am (am__running_with_option): Even when $MAKEFLAGS
appears to contain definition of variables with embedded whitespace,
use simple textual pre-processing over $MAKEFLAGS rather than tricky
recursive invocations of make to determine whether the '-n' option was
given.  This is enough to correctly handle all the tricky usages covered
in the testsuite.
* t/nodep.sh: Adjust to avoid a spurious failure.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: remove dead code from t/make-dryrun.tap
Stefano Lattarini [Sat, 27 Apr 2013 13:49:52 +0000 (15:49 +0200)]
tests: remove dead code from t/make-dryrun.tap

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoheader-vars: new variable $(am__running_with_option)
Stefano Lattarini [Sat, 27 Apr 2013 13:25:06 +0000 (15:25 +0200)]
header-vars: new variable $(am__running_with_option)

This is a preparatory refactoring, needed by later patches.
No semantic change is intended.

* lib/am/header-vars.am (am__running_with_option): New, contains
shell code that determines whether the current make instance is
running with a given one-letter option (e.g., -k, -n) that takes
no argument.  Actually, the only supported option at the moment
is '-n' (support for '-k' will be added soon).
(am__make_dryrun): Rewrite as a thin wrapper around
'$(am__make_running_with_option)'.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: expose bug#12554 (false positives for presence of '-k' make option)
Stefano Lattarini [Tue, 2 Oct 2012 19:27:28 +0000 (21:27 +0200)]
tests: expose bug#12554 (false positives for presence of '-k' make option)

The current implementation of the code descending into $(SUBDIRS)
entries uses the following snippet to decide whether make is running
with the '-k' a.k.a. '--keep-going' option, and thus whether a failure
in a subdirectory should prevent the descent in the following ones:

    fail= failcom='exit 1'; \
    for f in x $$MAKEFLAGS; do \
      case $$f in \
        *=* | --[!k]*);; \
        *k*) failcom='fail=yes';; \
      esac; \
    done

It's clear that the second pattern in the 'case' construct can possibly
match false positives, for examples in these two cases:

    make check TESTS="x.test k.test"
    make -I /usr/local/kool-fragments

which are somewhat unusual, but not invalid.  So we need a more resilient
implementation, as we did for the detection of the '-n' flag.

But alas, such an implementation seems quite tricky to obtain in portable
make.  So for the moment we content ourselves with exposing the bug, with
the hope of being able to fix soon enough.

* t/subdir-keep-going-pr12554.sh: New test.
* t/list-of-tests.mk (handwritten_TESTS, XFAIL_TESTS): Add it.
* THANKS: Update

Reported-by: Michael Daniels <mdaniels@rim.com>
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotar: format 'ustar' cannot support UID/GID longer than 21 bits
Stefano Lattarini [Sun, 17 Feb 2013 15:42:46 +0000 (16:42 +0100)]
tar: format 'ustar' cannot support UID/GID longer than 21 bits

See automake bug#8343 and bug#13588.

POSIX 1988 'ustar' format is defined with *fixed-size* fields. There
is notably a 21 bits limit (2097151) for the UID and the GID.

Tom Rini tom_rini@mentor.com says (in bug#8343):

    When the user has a UID or GID that is larger than the ustar format
    supports, pax does not error out gracefully in some cases (FC13).

Marc Herbert <marc.herbert@intel.com> adds (in bug#8343):

    When "configure" is run by a user with an UID bigger than 21 bits,
    BSD pax 3.4 aborts when trying to create the 'conftest.tar' test
    archive and leaves an empty or corrupted conftest.tar file behind.
    In the next step, pax tries to extract this incomplete or corrupted
    archive and this *** hangs the whole ./configure script ***.

    Note: GNU cpio 2.9 pretends to pass the test but it is a LIE: it
    silently truncates any big UID to its lower 21 bits. I don't know
    what can be the consequences of this lie.

    I think there is currently a design issue in automake/m4/tar.m4
    considering that a ustar archive should should *never* succeed when
    ./configure is run from a big user ID.

Months later, Petr Hracek <phracek@redhat.com> reports a similar issue
(in bug#13588) for Fedora 17:

    I am trying to solve problem in case a user is created with big
    UID and during configuration pax hangs with message

        ATTENTION! pax archive volume change required.
        Ready for archive volume: 1
        Input archive name or "." to quit pax.
        Archive name >

    and needs user interaction.

    Reference: <https://bugzilla.redhat.com/show_bug.cgi?id=843376>

Time to fix this issue, on the line of a preliminary patch provided by
Petr Hracek in bug#13588.  The final patch ended up being remarkably
different from that original proposition, though.

* m4/tar.m4 (_AM_PROG_TAR): If the UID or GID of the current user is
too high (> 2097151), the 'ustar' format cannot work.  Adjust checks
accordingly.  Some related code reordering and clean-up.
* t/tar-ustar-id-too-high.sh: New test.
* t/list-of-tests.mk: Add it.
* t/tar.sh: While at it, tweak and enhance a little.
* t/tar2.sh: Likewise.
* t/tar3.sh: Likewise.
* t/tar-override.sh: Likewise.
* NEWS: Update.
* THANKS: Likewise.

Helped-by: Pavel Raiskup <praiskup@redhat.com>
Helped-by: Petr Hracek <phracek@redhat.com>
Helped-by: Marc Herbert <marc.herbert@intel.com>
Helped-by: Tom Rini <tom_rini@mentor.com>
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoMerge few bug-fixing branches into branch-1.13.2
Stefano Lattarini [Fri, 26 Apr 2013 18:22:24 +0000 (20:22 +0200)]
Merge few bug-fixing branches into branch-1.13.2

* fix-part-pr13832:
  tests: avoid possible autotools caching issues (automake bug#13832)

* fix-pr13760:
  dry-run: don't get confused by '-I' option
  dry-run: with GNU make, prefer $(MFLAGS) over $(MAKEFLAGS)
  header vars: can determine whether we are running under GNU make

* fix-doc-pr14019:
  docs: issues with configure substitutions in TESTS

* news-wording-improve:
  NEWS: improve wording for automake bug#13514 fix

11 years agodocs: issues with configure substitutions in TESTS
Stefano Lattarini [Thu, 25 Apr 2013 19:03:40 +0000 (21:03 +0200)]
docs: issues with configure substitutions in TESTS

Motivated by automake bug#14019.

* doc/automake.texi: Currently, when the parallel test harness is in use,
configure substitutions in TESTS definitions can only work if they expand
to tests that ends with a suffix listed in TEST_EXTENSIONS.  Document this
limitation.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: avoid possible autotools caching issues (automake bug#13832)
Stefano Lattarini [Sat, 20 Apr 2013 20:46:30 +0000 (22:46 +0200)]
tests: avoid possible autotools caching issues (automake bug#13832)

* t/ar-lib4.sh: Here, by removing the autom4te cache before editing
configure.ac and re-running the autotools.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agodocs: add myself and Ralf Wildenhues as authors
Stefano Lattarini [Thu, 25 Apr 2013 19:34:17 +0000 (21:34 +0200)]
docs: add myself and Ralf Wildenhues as authors

* doc/automake.texi: Here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoauthors: add myself
Stefano Lattarini [Thu, 25 Apr 2013 19:20:11 +0000 (21:20 +0200)]
authors: add myself

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agodry-run: don't get confused by '-I' option
Stefano Lattarini [Mon, 22 Apr 2013 16:02:07 +0000 (18:02 +0200)]
dry-run: don't get confused by '-I' option

Fixes automake bug#13760 for non-GNU make implementations that still
support the option '-I'.  So far, the only such make implementation
are FreeBSD (8.x) make and NetBSD (5.x) make.

* lib/am/header-vars.am (am__make_dryrun): If a non-GNU make is being
used, try to handle the '-I' option in $MAKEFLAGS correctly.  For GNU
make, that is already done by the proper use of the $MFLAGS variable.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: avoid a spurious failure with the Korn Shell
Stefano Lattarini [Mon, 22 Apr 2013 21:37:11 +0000 (23:37 +0200)]
tests: avoid a spurious failure with the Korn Shell

* t/list-flags.sh: Ensure the EMACS variable is set before unsetting it.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agodry-run: with GNU make, prefer $(MFLAGS) over $(MAKEFLAGS)
Stefano Lattarini [Mon, 22 Apr 2013 13:07:43 +0000 (15:07 +0200)]
dry-run: with GNU make, prefer $(MFLAGS) over $(MAKEFLAGS)

Fixes automake bug#13760 for GNU make.

* lib/am/header-vars.am (am__make_dryrun): If GNU make is being used, rely
on the contents of the $(MFLAGS) variable rather than of the $(MAKEFLAGS)
to decide whther make is being executed in "dry run" mode.  Not only this
makes the code possibly faster and less brittle, but also fixes automake
bug#13760 (at least when GNU make is in use).
* t/make-dryrun.tap: Adjust: some tests that were xfailing now pass.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoheader vars: can determine whether we are running under GNU make
Stefano Lattarini [Mon, 22 Apr 2013 12:53:14 +0000 (14:53 +0200)]
header vars: can determine whether we are running under GNU make

This is mostly a preparatory patch in view of future changes.

* lib/am/header-vars.am (am__is_gnu_make): New, contains shell code that
determines whether we are running under GNU make.
* t/make-is-gnu.sh: New test.
* t/list-of-tests.mk: Add it.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoNEWS: improve wording for automake bug#13514 fix
Stefano Lattarini [Sun, 21 Apr 2013 14:59:05 +0000 (16:59 +0200)]
NEWS: improve wording for automake bug#13514 fix

Helped-by: Jack Kelly <jack@jackkelly.name>
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoNEWS: document fix for automake bug#13514
Stefano Lattarini [Sun, 21 Apr 2013 08:38:29 +0000 (10:38 +0200)]
NEWS: document fix for automake bug#13514

It was fixed by commit v1.13.1b-5-g7a3d7ce.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoINSTALL: regen
Stefano Lattarini [Sat, 20 Apr 2013 18:56:18 +0000 (20:56 +0200)]
INSTALL: regen

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agosync: update files from upstream with "make fetch"
Stefano Lattarini [Sat, 20 Apr 2013 16:10:28 +0000 (18:10 +0200)]
sync: update files from upstream with "make fetch"

* lib/INSTALL: Update.
* lib/config.guess: Likewise.
* lib/config.sub: Likewise.
* lib/gendocs.sh: Likewise.
* lib/gendocs_template: Likewise.
* lib/gitlog-to-changelog: Likewise.
* lib/gnupload: Likewise.
* lib/texinfo.tex: Likewise.
* lib/update-copyright: Likewise.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: tweaks and minimal improvements to t/insthook.sh
Stefano Lattarini [Sat, 20 Apr 2013 15:03:51 +0000 (17:03 +0200)]
tests: tweaks and minimal improvements to t/insthook.sh

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoAdd missing '$' for variable expansion in depout.m4
Gavin Smith [Fri, 19 Apr 2013 13:16:26 +0000 (15:16 +0200)]
Add missing '$' for variable expansion in depout.m4

* m4/depout.m4: "am__include" appeared where "$am__include" was meant.

Reference:
<http://lists.gnu.org/archive/html/automake-patches/2013-04/msg00000.html>

Copyright-paperwork-exempt: yes
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agofixup: one stray reference to older versioning scheme
Stefano Lattarini [Thu, 21 Feb 2013 18:25:55 +0000 (19:25 +0100)]
fixup: one stray reference to older versioning scheme

* lib/Automake/Options.pm: Here, in a FIXME comment: reference
"Automake 3.0" rather than "Automake 1.15".

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoMerge branch 'fix-pr13514' into branch-1.13.2
Stefano Lattarini [Thu, 21 Feb 2013 14:35:04 +0000 (15:35 +0100)]
Merge branch 'fix-pr13514' into branch-1.13.2

* fix-pr13514:
  aclocal: fix for more-than-once specified directories
  aclocal: just warn if the primary local m4 dir doesn't exist (don't error)

11 years agoaclocal: fix for more-than-once specified directories
Pavel Raiskup [Mon, 11 Feb 2013 12:11:52 +0000 (13:11 +0100)]
aclocal: fix for more-than-once specified directories

Related to automake bug#13514.

Do not consider directories for extra m4 files multiple times in
'aclocal'.  Doing so caused problems on older packages that specify

    configure.ac:  AC_CONFIG_MACRO_DIRS([m4])
    Makefile.am:   ACLOCAL_AMFLAGS = -I m4

if the 'm4' directory does not exist when aclocal is called the first
time by autoreconf.

See:
<http://lists.gnu.org/archive/html/bug-automake/2013-01/msg00115.html>

* aclocal.in (scan_m4_files): Remove duplicates in @user_includes.
* t/aclocal-macrodir.tap: Extend.
* t/aclocal-macrodirs.tap: Likewise.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoMerge branch 'new-versioning-scheme' into branch-1.13.2
Stefano Lattarini [Wed, 20 Feb 2013 21:13:34 +0000 (22:13 +0100)]
Merge branch 'new-versioning-scheme' into branch-1.13.2

* new-versioning-scheme:
  maint: describe new versioning and branching scheme, and adjust to it

11 years agoaclocal: just warn if the primary local m4 dir doesn't exist (don't error)
Pavel Raiskup [Mon, 11 Feb 2013 12:11:51 +0000 (13:11 +0100)]
aclocal: just warn if the primary local m4 dir doesn't exist (don't error)

Related to automake bug#13514.

Every package which does not need to have the local m4 macro
directory pre-existing in the version control system (because
e.g., it does not have nor need any private m4 macros) would
fail during the "autoreconf -vfi" phase if AC_CONFIG_MACRO_DIRS([m4])
is specified in configure.ac (it could be to instruct tools like
'autopoint' and 'libtoolize' to use 'm4' as the local directory
where to install definitions of their m4 macros, and to instruct
aclocal to look into it).  The failure would go like this:

  autoreconf: Entering directory `.'
  autoreconf: running: aclocal --force
  aclocal: error: couldn't open directory 'm4': No such file or directory
  autoreconf: aclocal failed with exit status: 1

The problem is that when 'aclocal' is run for the first time during
'autoreconf', the directory 'm4' does not exist yet.  It will be
created by e.g., 'libtoolize' or 'autopoint' later on.  During the
second 'aclocal' run, the 'm4' directory exists and aclocal does not
complain.

To work around this issue, we degrade the error to a simple warning.
The warning is still quite useful when aclocal is run by hand - so
we are not removing completely.

See also:
<http://lists.gnu.org/archive/html/bug-automake/2013-01/msg00115.html>
<http://lists.gnu.org/archive/html/automake-patches/2010-02/msg00030.html>
<http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=565663>
<https://bugzilla.redhat.com/show_bug.cgi?id=901333>

* aclocal.in (SCAN_M4_DIRS_SILENT, SCAN_M4_DIRS_WARN)
(SCAN_M4_DIRS_ERROR): New constants.
(scan_m4_dirs): Change the second parameter name to $ERR_LEVEL to
better reflect new semantic. Use new constants.
(scan_m4_files): Adjust to reflect the new 'scan_m4_dirs' semantics.
* t/aclocal-macrodir.tap: Adjust.
* t/aclocal-macrodirs.tap: Likewise.
* THANKS: Update.
* NEWS: Likewise.

Suggested-by: Ben Pfaff <blp@cs.stanford.edu>
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agocoverage: expose automake bug#13760
Stefano Lattarini [Wed, 20 Feb 2013 12:25:39 +0000 (13:25 +0100)]
coverage: expose automake bug#13760

* t/make-dryrun.tap: Here.
* THANKS: Update with the name of the bug reporter.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: refactor/enhance tests about make dry-run mode
Stefano Lattarini [Wed, 20 Feb 2013 11:44:50 +0000 (12:44 +0100)]
tests: refactor/enhance tests about make dry-run mode

* t/make-dryrun.tap: Here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agomaint: describe new versioning and branching scheme, and adjust to it
Stefano Lattarini [Sun, 17 Feb 2013 09:25:29 +0000 (10:25 +0100)]
maint: describe new versioning and branching scheme, and adjust to it

See discussion about automake bug#13578 for more details and background.

Basically, for the versioning scheme:

  - micro versions only for bug and regression fixing;
  - minor versions for new backward-compatible features, and new
    non-fatal deprecations;
  - major versions for backward-incompatibilities, complex new
    features, and major refactoring.

And for the git branching scheme:

  + branch 'next' is for the upcoming major version;
  + branch 'master' is now for the upcoming minor version;
  + branch 'maint' is for the upcoming micro (bug-fixing) version;
  + the merging hierarchy is: 'maint' -> 'master' -> 'next'.

* HACKING (Automake versioning and compatibility scheme): New.
(Working with git): Adjust.
* NEWS: Update and fix.
* aclocal.in: Adjust some "FIXME" messages.
* automake.in: Likewise.
* m4/mkdirp.m4: Likewise.
* t/aclocal-acdir.sh: Likewise.
* t/aclocal-macrodir.tap: Likewise.
* t/aclocal-macrodirs.tap: Likewise.
* lib/Automake/Options.pm: Likewise.
* m4/internal/ac-config-macro-dirs.m4: Likewise.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotypofix: in comments in 't/ax/test-lib.sh'
Stefano Lattarini [Tue, 29 Jan 2013 12:24:50 +0000 (13:24 +0100)]
typofix: in comments in 't/ax/test-lib.sh'

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests on TAP: don't run the driver with perl unconditionally
Stefano Lattarini [Thu, 14 Feb 2013 11:32:27 +0000 (12:32 +0100)]
tests on TAP: don't run the driver with perl unconditionally

* t/ax/tap-setup.sh: When a 'Makefile.am' was pre-existent in the
test directory at the moment the client test script sourced this
file, said 'Makefile.am' was tweaked to provide it with a proper
definition of TEST_LOG_DRIVER.  However, there was an error in this
automatic definition, since it caused the TAP test driver to be
unconditionally invoked with perl.  This wasn't an issue in most
situations, since perl is smart enough to re-execute a given script
with the proper interpreter if it sees a she-bang line that doesn't
seem to point to perl itself.  Still, there is no reason to do
something blatantly wrong even if our tools correct the dumb mistake
for us.  So fix the TEST_LOG_DRIVER definition.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotypofix: in comments in 'automake.in'
Stefano Lattarini [Thu, 14 Feb 2013 11:09:43 +0000 (12:09 +0100)]
typofix: in comments in 'automake.in'

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: remove obsolete (and now wrong) comment
Stefano Lattarini [Thu, 14 Feb 2013 10:46:58 +0000 (11:46 +0100)]
tests: remove obsolete (and now wrong) comment

* t/ax/am-test-lib.sh: Here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotypofix: in diagnostic in test 't/tap-realtime.sh'
Stefano Lattarini [Thu, 14 Feb 2013 10:46:49 +0000 (11:46 +0100)]
typofix: in diagnostic in test 't/tap-realtime.sh'

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoautomake: fix reference to relevant tests in comments
Stefano Lattarini [Sun, 3 Feb 2013 19:44:32 +0000 (20:44 +0100)]
automake: fix reference to relevant tests in comments

Some of those tests had been renamed in recent or less-recent changes.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoNEWS: we no longer plan to drop $(INCLUDES) support in next major version
Stefano Lattarini [Sun, 3 Feb 2013 19:16:01 +0000 (20:16 +0100)]
NEWS: we no longer plan to drop $(INCLUDES) support in next major version

For a rationale and related discussion, see:
<http://lists.gnu.org/archive/html/automake/2013-02/msg00001.html>

And note that support for INCLUDES has not been re-introduced in the
master branch yet, at the moment of writing; but we plan to definitely
do so before the next major release.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoNEWS: IRIX is still supported; only SGI C compiler depcomp no longer is
Stefano Lattarini [Mon, 28 Jan 2013 12:22:12 +0000 (13:22 +0100)]
NEWS: IRIX is still supported; only SGI C compiler depcomp no longer is

This change is for the maint branch.

The only IRIX-specific support that is going to actually be removed in
the next major Automake versions is the depcomp support for the SGI
compiler.  That means that automatic dependency tracking will no
longer work with that compiler, but "normal" compilation should still
work, at least until the compiler is supported by Autoconf.

So there is no point in alarming our users by stating in the NEWS file
that "support for IRIX and the SGI compilers is going to be removed";
after all, while we don't test on nor particularly care about IRIX
anymore, that doesn't mean we are deliberately breaking it, and the
likelihood of an intended breakage there is very low.

See:
<http://lists.gnu.org/archive/html/automake-patches/2013-01/msg00164.html>
<http://lists.gnu.org/archive/html/automake-patches/2013-01/msg00165.html>

* NEWS (Future backward-incompatibilities: Adjust.  Improve explanation
of our rationale for dropping SGI support. Fix an unrelated typo while
at it.

Suggested-by: Peter Rosin <peda@lysator.liu.se>
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agomaint: version bump after beta release 1.13.1b
Stefano Lattarini [Wed, 23 Jan 2013 10:38:33 +0000 (11:38 +0100)]
maint: version bump after beta release 1.13.1b

* configure.ac (AC_INIT): Bump version number to 1.13.1c.
* m4/amversion.m4: Likewise (autoupdated by "make bootstrap").

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoNEWS: typofix
Stefano Lattarini [Wed, 23 Jan 2013 10:33:09 +0000 (11:33 +0100)]
NEWS: typofix

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agorelease: beta release 1.13.1b (will become 1.13.2) v1.13.1b
Stefano Lattarini [Wed, 23 Jan 2013 10:05:01 +0000 (11:05 +0100)]
release: beta release 1.13.1b (will become 1.13.2)

* configure.ac (AC_INIT): Bump version number to 1.13.1b.
* m4/amversion.m4: Likewise (auto-updated by "make bootstrap").

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agodocs: '.txi' and '.texinfo' extensions are deprecated
Stefano Lattarini [Tue, 22 Jan 2013 12:28:38 +0000 (13:28 +0100)]
docs: '.txi' and '.texinfo' extensions are deprecated

And Automake will warn about them (since commit 'v1.13.1-6-ge1ed314').

* doc/automake.texi (Texinfo): Adjust.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoNEWS: document recent documentation improvements
Stefano Lattarini [Tue, 22 Jan 2013 12:14:41 +0000 (13:14 +0100)]
NEWS: document recent documentation improvements

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agodocs: more precise cross reference
Stefano Lattarini [Tue, 22 Jan 2013 12:02:25 +0000 (13:02 +0100)]
docs: more precise cross reference

See automake bug#13520.

* doc/automake.texi (The Types of Distributions): Here,
cross-reference "List of Automake options" rather then
the more generic node "Options".  Improve wording while
at it.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agodocs: 'dist-shar' and 'dist-tarZ' are obsolescent today
Stefano Lattarini [Tue, 22 Jan 2013 11:30:15 +0000 (12:30 +0100)]
docs: 'dist-shar' and 'dist-tarZ' are obsolescent today

Both the options and the formats; and they might be deprecated
and removed in future automake versions (see discussion on
automake bug#13324).

In any case, it's better if the documentation starts advising
against their use right now.

* doc/automake.texi (The Types of Distributions): Here.
(List of Automake options): And here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agodocs: improve documentation of 'dist-*' targets slightly
Stefano Lattarini [Tue, 22 Jan 2013 11:14:20 +0000 (12:14 +0100)]
docs: improve documentation of 'dist-*' targets slightly

* doc/automake.texi (The Types of Distributions): Here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agodocs: make even clearer 'dist-gzip' is the default.
Stefano Lattarini [Tue, 22 Jan 2013 11:08:43 +0000 (12:08 +0100)]
docs: make even clearer 'dist-gzip' is the default.

See automake bug#13520.

* doc/automake.texi (The Types of Distributions): Here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agodocs: document 'dist-xz' together with the other 'dist-*' options
Stefano Lattarini [Tue, 22 Jan 2013 11:03:35 +0000 (12:03 +0100)]
docs: document 'dist-xz' together with the other 'dist-*' options

See automake bug#13520.

* doc/automake.texi (List of Automake options): Here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agodocs: 'no-define' option and AM_INIT_AUTOMAKE three-args usage: fixlets
Stefano Lattarini [Tue, 22 Jan 2013 09:56:57 +0000 (10:56 +0100)]
docs: 'no-define' option and AM_INIT_AUTOMAKE three-args usage: fixlets

See automake bug#13519.

* doc/automake.texi: Adjust.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agowarn: correct broken hyperlink in warning message
Stefano Lattarini [Tue, 22 Jan 2013 09:49:17 +0000 (10:49 +0100)]
warn: correct broken hyperlink in warning message

* automake.in (scan_autoconf_traces): Here, when an use of the
deprecated two- and three-arguments forms of AM_INIT_AUTOMAKE
is detected.

Fixes automake bug#13519.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agomaint: update copyright in files generated by automake and aclocal
Stefano Lattarini [Mon, 21 Jan 2013 13:47:00 +0000 (14:47 +0100)]
maint: update copyright in files generated by automake and aclocal

* bootstrap.sh ($RELEASE_YEAR): Bump top 2013.
* configure.ac ($RELEASE_YEAR): Likewise.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: avoid a spurious failure when running inside Emacs
Thien-Thi Nguyen [Mon, 21 Jan 2013 12:35:03 +0000 (13:35 +0100)]
tests: avoid a spurious failure when running inside Emacs

Some versions of Emacs set the environment variable 'EMACS' to 't'
for child processes.  Thus, when running from inside Emacs, "$(MAKE) -e"
erroneously allows the 't' to override the one in the Makefile.

* t/lisp-flags.sh: Unset var 'EMACS', fixing the issue.

Copyright-paperwork-exempt: yes
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: make two new test executable
Stefano Lattarini [Thu, 3 Jan 2013 12:42:20 +0000 (13:42 +0100)]
tests: make two new test executable

* t/backslash-issues.sh: This.
* t/extra-data.sh: And this.

Issue revealed by the 'sc_tests_executable' maintainer check.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agom4: rename an m4 file to a more appropriate name
Stefano Lattarini [Fri, 18 Jan 2013 12:39:38 +0000 (13:39 +0100)]
m4: rename an m4 file to a more appropriate name

* m4/obsolete-err.m4: Rename ...
* m4/obsolete.m4: ... like this.
* Makefile.am (dist_automake_ac_DATA): Adjust.
* t/ansi2knr-no-more.sh: Likewise.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoNEWS: update w.r.t. recent documentation fixes
Stefano Lattarini [Fri, 18 Jan 2013 12:32:12 +0000 (13:32 +0100)]
NEWS: update w.r.t. recent documentation fixes

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agocompat: reinstate AM_CONFIG_HEADER and AM_PROG_CC_STDC
Stefano Lattarini [Fri, 18 Jan 2013 12:13:30 +0000 (13:13 +0100)]
compat: reinstate AM_CONFIG_HEADER and AM_PROG_CC_STDC

Make them give runtime warnings in the obsolete category, but apart
from that, make them behave as they did in Automake 1.12.x and earlier.

While removing those macros seemed quite harmless, because it didn't put
a real burden on the developers (requiring them just to do a quick edit
to configure.ac), it turned out to place an unsustainable burden (or at
least, a burden perceived as such) on distro packagers who use the latest
Automake to bootstrap existing packages.  Many of those packages, while
having likely updated to AC_CONFIG_HEADERS in their development version,
still used AM_CONFIG_HEADER in their existing released versions, and the
removal of this macro would have thus forced the Fedora packagers to
patch all of them.  References:

  <http://www.mail-archive.com/devel@lists.fedoraproject.org/msg52840.html>
  <http://www.spinics.net/lists/fedora-devel/msg175922.html>
  <http://blog.flameeyes.eu/2013/01/autotools-mythbuster-automake-pains>

In addition, the Fedora packagers have already decided to patch their
Automake 1.13.1 to reinstate the AM_CONFIG_HEADER and AM_PROG_CC_STDC
macros (plus other macros that I don't believe it's worth worrying about):

  <http://www.spinics.net/lists/fedora-devel/msg176098.html>
  <http://www.mail-archive.com/devel@lists.fedoraproject.org/msg53030.html>
  <http://pkgs.fedoraproject.org/cgit/automake.git/commit/?id=ffe6bc39>

So, rather than having one more incompatibility floating around, we
better mirror that change (or, actually, its relevant parts) in the
upstream.

* m4/obsolete-err.m4 (AM_CONFIG_HEADER, AM_PROG_CC_STDC): Revert to the
older semantics, plus a runtime warning in the 'obsolete' category.
* t/backcompat6.sh: Use AM_CONFIG_HEADER once again.
* t/am-config-header-no-more.sh: Rename ...
* t/am-config-header.sh: ... like this, and adjust.
* t/am-prog-cc-stdc-no-more.sh: Rename ...
* t/am-prog-cc-stdc.sh: ... like this, and adjust.
* t/list-of-tests.mk: Adjust.
* NEWS: Update.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agodocs: parallel-tests is no longer experimental
Stefano Lattarini [Fri, 18 Jan 2013 11:02:23 +0000 (12:02 +0100)]
docs: parallel-tests is no longer experimental

So don't declare it as such in the documentation.

Reported by Brandon Black:
<http://lists.gnu.org/archive/html/automake/2013-01/msg00052.html>

* doc/automake.texi: Adjust.
* THANKS: Update.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agodocs: serial-tests are not deprecated, just discouraged
Stefano Lattarini [Fri, 18 Jan 2013 10:39:28 +0000 (11:39 +0100)]
docs: serial-tests are not deprecated, just discouraged

We don't plan to remove support for them, nor to have the serial-tests
option give any kind of runtime warning, so don't alarm the users
still using serial tests with pointless "deprecation" or "obsolescence"
warnings.

Fixes automake bug#13478.

See also:
<http://lists.gnu.org/archive/html/automake/2013-01/msg00058.html>

* doc/automake.texi: Adjust.
* THANKS: Update.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoNEWS: we are not going to remove AM_PROG_MKDIR_P in Automake 1.14
Stefano Lattarini [Fri, 18 Jan 2013 10:04:25 +0000 (11:04 +0100)]
NEWS: we are not going to remove AM_PROG_MKDIR_P in Automake 1.14

See commit v1.13.1-109-g030ecb4 of 2013-01-16, "compat: restore
AM_PROG_MKDIR, again", for the rationale.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: reorganize tests on backslash issues
Stefano Lattarini [Wed, 2 Jan 2013 13:29:46 +0000 (14:29 +0100)]
tests: reorganize tests on backslash issues

* t/backsl.sh, t/backsl2.sh, t/backsl3.sh: Merge ...
* t/backslash-issues.sh: ... into this test.
* t/backsl4.sh: Rename ...
* t/backslash-before-trailing-whitespace.sh: ... like this.
* t/list-of-tests.mk: Adjust.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agostyle: add trailing ':' to some test cases
Stefano Lattarini [Wed, 2 Jan 2013 12:55:13 +0000 (13:55 +0100)]
style: add trailing ':' to some test cases

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: tweak tests on obsolete EXTRA_DATA variable
Stefano Lattarini [Wed, 2 Jan 2013 12:35:58 +0000 (13:35 +0100)]
tests: tweak tests on obsolete EXTRA_DATA variable

* t/extra3.sh, t/extra4.sh: Merge ....
* t/extra-data.sh: ... into this, with updated comments.
* t/list-of-tests.mk: Adjust.  Also Tweak the order in
which some other tests are listed.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: more significant names for some tests
Stefano Lattarini [Wed, 2 Jan 2013 12:31:31 +0000 (13:31 +0100)]
tests: more significant names for some tests

* t/extra5.sh: Rename ....
* t/extra-dist-vpath-dir.sh: ... like this.
* t/extra6.sh: Rename ....
* t/extra-dist-dirs-and-subdirs.sh: ... like this.
* t/extra7.sh: Rename ....
* t/extra-dist-vpath-dir-merge.sh: ... like this.
* t/extra8.sh: Rename ....
* t/extra-programs-misc.sh: ... like this.
* t/extra9.sh: Rename ....
* t/extra-programs-and-libs.sh: ... like this.
* t/extra10.sh: Rename ....
* t/extra-dist-wildcards.sh: ... like this.
* t/extra11.sh: Rename ....
* t/extra-dist-wildcards-gnu.sh: ... like this.
* t/extra12.sh: Rename ....
* t/extra-dist-wildcards-vpath.sh: ... like this.
* t/extradep.sh: Rename ....
* t/extra-deps.sh: ... like this, and adjust heading comments.
* t/extradep2.sh: Rename ....
* t/extra-deps-lt.sh: ... like this, and adjust heading comments.
* t/list-of-tests.mk: Adjust.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agocosmetics: remove few occurrences of trailing whitespace
Stefano Lattarini [Tue, 1 Jan 2013 22:29:02 +0000 (23:29 +0100)]
cosmetics: remove few occurrences of trailing whitespace

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agodocs: re-introduce mention of two-args AM_INIT_AUTOMAKE invocation
Stefano Lattarini [Tue, 1 Jan 2013 22:06:36 +0000 (23:06 +0100)]
docs: re-introduce mention of two-args AM_INIT_AUTOMAKE invocation

Albeit obsolescent and raising warnings in the 'obsolete' category,
that usage is still supported, and will need to be until Autoconf
improves its handling of configure-time-generated package version
numbers.  So it's better to explicitly document it again, stating
that it is obsoleted but still working (and why), rather then leaving
it as Yet Another Undocumented Feature (that will mysteriously and
suddenly break some random day in the future).

It's worth giving some background about how we ended up in the
situation that this patch fixes.

We had originally removed support for the long-deprecated two-args
AM_INIT_AUTOMAKE invocation (see commit v1.12-67-ge186355).  Before
that removal could land in a released Automake version, Bob Friesenhahn
made a quite compelling point that the two-args AM_INIT_AUTOMAKE
invocation could still be useful for modern, maintained packages like
GraphicsMagick, at least until Autoconf is fixed to offer better support
for "dynamic" package versions (see commit v1.12.2-245-g2abe183 for more
in-depth rationales and references).  However, in that commit we didn't
revert the removal of the *documentation* for this two-arguments
AM_INIT_AUTOMAKE invocation (and no rationale for not doing so was given
in the commit message).  Time to remedy that.

Indirectly suggested by Diego Elio Pattenò:
<http://blog.flameeyes.eu/2013/01/autotools-mythbuster-automake-pains>

* doc/automake.texi: Adjust.
* NEWS: Update.
* THANKS: Likewise.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotexi: warn against '.txi' and '.texinfo' input suffixes
Stefano Lattarini [Tue, 1 Jan 2013 21:34:15 +0000 (22:34 +0100)]
texi: warn against '.txi' and '.texinfo' input suffixes

The warning being in the 'obsolete' category.  This is mostly to
ease transition to Automake-NG (see commit v1.12.1-416-gd5459b9),
and to discourage use of seldom-tested setups.

* automake.in (handle_texinfo_helper): Warn against Texinfo input
files with '.txi' or '.texinfo' suffixes.
* NEWS: Update.
* t/txinfo-other-suffixes.sh: Adjust and enhance.
* t/txinfo-no-repeated-targets.sh: No longer use '.txi' and
'.texinfo' extensions.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agocleanup: remove two lines of dead code in automake
Stefano Lattarini [Tue, 1 Jan 2013 20:31:01 +0000 (21:31 +0100)]
cleanup: remove two lines of dead code in automake

* automake.in (scan_texinfo_file): Here, the definition and
munging of '$infobase'.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotexi: warn against suffix-less info files
Stefano Lattarini [Tue, 1 Jan 2013 19:59:53 +0000 (20:59 +0100)]
texi: warn against suffix-less info files

The warning being in the 'obsolete' category.  This is mostly to
ease transition to Automake-NG (see commit v1.12.1-392-ga0c7b6a),
and to discourage use of seldom-tested setups.

* automake.in (scan_texinfo_file): Warn against '@setfilename'
directives that specify suffix-less output info files.
* t/txinfo-without-info-suffix.sh: Adjust and enhance.
* t/txinfo-makeinfo-error-no-clobber.sh: No longer use suffix-less
info files in '@setfilename' directives.
* t/primary-prefix-valid-couples.sh: Likewise.
* t/txinfo-setfilename-repeated.sh: Likewise.
* t/txinfo-vtexi2.sh : Likewise.
* t/mdate2.sh: Likewise.
* NEWS: Update.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agobuild: respect silent rules in generation of "amhello" example tarball
Stefano Lattarini [Tue, 1 Jan 2013 17:03:53 +0000 (18:03 +0100)]
build: respect silent rules in generation of "amhello" example tarball

* Makefile.am ($(srcdir)/doc/amhello-1.0.tar.gz): Here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoNEWS: fixlets and updates
Stefano Lattarini [Tue, 1 Jan 2013 12:56:32 +0000 (13:56 +0100)]
NEWS: fixlets and updates

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agopost-release: minor version bump (1.13.1a)
Stefano Lattarini [Tue, 1 Jan 2013 12:33:27 +0000 (13:33 +0100)]
post-release: minor version bump (1.13.1a)

* configure.ac, m4/amversion.m4: Bump version to 1.13.1a.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agorelease: stable minor release 1.13.1 v1.13.1
Stefano Lattarini [Tue, 1 Jan 2013 11:57:10 +0000 (12:57 +0100)]
release: stable minor release 1.13.1

* configure.ac (AC_INIT): Bump version number to 1.13.1.
* m4/amversion.m4: Likewise (auto-updated by "make bootstrap").

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: don't always look for a C++ compiler named 'RCC'
Stefano Lattarini [Tue, 1 Jan 2013 00:20:49 +0000 (01:20 +0100)]
tests: don't always look for a C++ compiler named 'RCC'

On MacOS X (10.8), since the file system is case-insensitive, RCC
can point to the "Resource Compiler" of the Qt4 Toolkit:

    <http://doc.qt.digia.com/4.2/rcc.html>

That mismatch causes our configure script to erroneously think that
no working C++ compiler is present, and that is thus necessary to
skip all the test cases requiring such a compiler.

So only look for a compiler named 'RCC' if the file system is
case-sensible.

Issue spotted analyzing the testsuite logs reported in bug#13317.

* configure.ac: Adjust.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: fix bug in pkg-config-macros.sh, could cause spurious SKIPs
Stefano Lattarini [Mon, 31 Dec 2012 23:51:37 +0000 (00:51 +0100)]
tests: fix bug in pkg-config-macros.sh, could cause spurious SKIPs

Issue spotted perusing the testsuite logs reported in bug#13317.

* t/pkg-config-macros.sh: Don't use (uninitialized) '$dir' where '$d'
should have been used instead.  Set IFS to ':' before looping on the
$PATH expansion.  Fix typo: 'alocal' instead of 'aclocal'.  These
issues were causing the location in PATH of the 'pkg-config' program
not to be found even when the program was present.
* THANKS: Update.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agodocs: autom4te cache can break CONFIGURE_DEPENDENCIES
Stefano Lattarini [Mon, 31 Dec 2012 23:47:33 +0000 (00:47 +0100)]
docs: autom4te cache can break CONFIGURE_DEPENDENCIES

In fact, the new test 'remake-configure-dependencies.sh' only
works because it disables the autom4te cache :-(  That is more
of an AUtotools design issue than an Automake bug, so better
just document it ...

* doc/automake.texi (Rebuilding): ... here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agocoverage: test CONFIGURE_DEPENDENCIES
Stefano Lattarini [Mon, 31 Dec 2012 23:32:34 +0000 (00:32 +0100)]
coverage: test CONFIGURE_DEPENDENCIES

* t/remake-configure-dependencies.sh: New test.
* t/list-of-tests.mk: Add it.
* doc/automake.texi: Reference it in comments.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agocoverage: test CONFIG_STATUS_DEPENDENCIES
Stefano Lattarini [Mon, 31 Dec 2012 22:29:24 +0000 (23:29 +0100)]
coverage: test CONFIG_STATUS_DEPENDENCIES

* t/remake-config-status-dependencies.sh: New test.
* t/list-of-tests.mk: Add it.
* doc/automake.texi: Reference it in comments.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: fix reference to related tests in some comments
Stefano Lattarini [Mon, 31 Dec 2012 20:11:00 +0000 (21:11 +0100)]
tests: fix reference to related tests in some comments

* t/acloca10.sh: Here.
* t/check2.sh: And here.
* t/remake-deleted-m4-file.sh: And here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: some enhancements to texinfo tests (from Automake-NG)
Stefano Lattarini [Mon, 31 Dec 2012 18:18:42 +0000 (19:18 +0100)]
tests: some enhancements to texinfo tests (from Automake-NG)

* t/txinfo-many-output-formats.sh: Backport improvements, almost verbatim,
from Automake-NG commit 'v1.13-768-gb434acc' (plus minor tweaks for the
sake of non-GNU make implementation).
* t/txinfo-many-output-formats-vpath.sh: New test, backported almost
verbatim from that same Automake-NG commit (again, with minor tweaks for
the sake of non-GNU make implementations).
* t/lsit-of-tests.mk: Adjust.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: fix reference to sister tests in two heading comments
Stefano Lattarini [Mon, 31 Dec 2012 18:54:24 +0000 (19:54 +0100)]
tests: fix reference to sister tests in two heading comments

* t/color-tests.sh: Here.
* t/color-tests2.sh: And here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agomaint: update copyright year for 2013 (in branch maint)
Stefano Lattarini [Mon, 31 Dec 2012 17:18:37 +0000 (18:18 +0100)]
maint: update copyright year for 2013 (in branch maint)

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agodocs: adjust comment w.r.t. recent tests renaming
Stefano Lattarini [Mon, 31 Dec 2012 13:16:01 +0000 (14:16 +0100)]
docs: adjust comment w.r.t. recent tests renaming

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: some more renames for texinfo tests
Stefano Lattarini [Mon, 31 Dec 2012 12:57:29 +0000 (13:57 +0100)]
tests: some more renames for texinfo tests

* t/txinfo.sh: Rename ...
* t/txinfo-tex-dist.sh: ... like this.
* t/txinfo10.sh: Rename ...
* t/txinfo-dvi-recurs.sh: ... like this.
* t/txinfo20.sh: Rename ...
* t/txinfo-makeinfo-error-no-clobber.sh: ... like this.
* t/txinfo-setfilename-suffix-match.sh: Rename ...
* t/txinfo-setfilename-suffix-strip.sh: ... like this.
* t/txinfo-suffix-less-info.sh: Rename ...
* t/txinfo-without-info-suffix.sh: ... like this.
* t/vtexi.sh: Rename ...
* t/txinfo-vtexi.sh: ... like this.
* t/vtexi2.sh: Rename ...
* t/txinfo-vtexi2.sh: ... like this.
* t/vtexi3.sh: Rename ...
* t/txinfo-vtexi3.sh: ... like this, and adjust heading comments.
* t/vtexi4.sh: Rename ...
* t/txinfo-vtexi4.sh: ... like this, and adjust heading comments.
* t/list-of-tests.mk: Adjust.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: enhance and tweak some texinfo tests
Stefano Lattarini [Mon, 31 Dec 2012 12:30:51 +0000 (13:30 +0100)]
tests: enhance and tweak some texinfo tests

* t/txinfo-subdir-pr343.sh: Move the tests checking that '.info.bak'
files in subdirs are not unduly distributed into ...
* t/txinfo-no-extra-dist.sh: ... in here.  Enhance a little while
at it.
* t/txinfo-other-suffixes.sh: Also check that the '.texinfo' suffix
is accepted and works.
* t/txinfo-setfilename-suffix-match.sh: Remove useless call to
autoconf, enhance a little.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>