]> git.ipfire.org Git - thirdparty/automake.git/log
thirdparty/automake.git
12 years agocompat: substitute '@mkdir_p@' as '$(MKDIR_P)' unconditionally
Stefano Lattarini [Tue, 30 Apr 2013 20:26:46 +0000 (22:26 +0200)] 
compat: substitute '@mkdir_p@' as '$(MKDIR_P)' unconditionally

We had started to do so only when the obsolete AM_PROG_MKDIR_P variable
was used, but that has recently turned out not to be not good enough,
because Gettext 0.18.2 (the latest one at the moment of writing) is using
the modern macro AC_PROG_MKDIR_P in its '*.m4' files, but at the same time
is still using the obsolete make variable '$(mkdir_p)' in its Makefile
fragments.  This has been causing failures in real-world packages
bootstrapped with latest Gettext (0.18.2) and with bleeding-edge automake.

See for example:

  <http://lists.gnu.org/archive/html/bug-tar/2013-04/msg00009.html>

And the worst things is that those failures have been basically silent
and unnoticeable up until the final "make install" --- that is, after
the affected package had been bootstrapped, configured and built.  Yikes!

This issue has been reported to the Gettext developers:

  <http://lists.gnu.org/archive/html/bug-gettext/2013-04/msg00044.html>

But even if they will quickly fix it, Gettext 0.18.2 will remain
affected.

The fix we can implement in Automake is small and unobtrusive enough,
definitely worth having in order to save the users and developers from
having to deal with this hard-to-spot issue.

* m4/init.m4 (AM_INIT_AUTOMAKE): AC_SUBST '@mkdir_p@' to '$(MKDIR_P)'.
* t/am-prog-mkdir-p.sh: Enhance.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoMerge branch 'maint'
Stefano Lattarini [Tue, 30 Apr 2013 14:24:41 +0000 (16:24 +0200)] 
Merge branch 'maint'

* maint:
  sync: update files from upstream with "make fetch"
  maintcheck: remove outdated whitelisting
  tar: format 'ustar' cannot support UID/GID longer than 21 bits
  docs: issues with configure substitutions in TESTS
  tests: avoid possible autotools caching issues (automake bug#13832)
  tests: rename some with more descriptive names
  docs: add myself and Ralf Wildenhues as authors
  authors: add myself
  dry-run: don't get confused by '-I' option
  tests: avoid a spurious failure with the Korn Shell
  dry-run: with GNU make, prefer $(MFLAGS) over $(MAKEFLAGS)
  header vars: can determine whether we are running under GNU make
  NEWS: improve wording for automake bug#13514 fix
  NEWS: document fix for automake bug#13514

12 years agoMerge branch 'branch-1.13.2' into maint
Stefano Lattarini [Tue, 30 Apr 2013 13:35:46 +0000 (15:35 +0200)] 
Merge branch 'branch-1.13.2' into maint

* branch-1.13.2:
  sync: update files from upstream with "make fetch"
  maintcheck: remove outdated whitelisting
  tar: format 'ustar' cannot support UID/GID longer than 21 bits

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 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

12 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>
12 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>
12 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>
12 years agoMerge branch 'branch-1.13.2' into maint
Stefano Lattarini [Fri, 26 Apr 2013 18:39:40 +0000 (20:39 +0200)] 
Merge branch 'branch-1.13.2' into maint

* branch-1.13.2:
  docs: issues with configure substitutions in TESTS
  tests: avoid possible autotools caching issues (automake bug#13832)
  docs: add myself and Ralf Wildenhues as authors
  authors: add myself
  dry-run: don't get confused by '-I' option
  tests: avoid a spurious failure with the Korn Shell
  dry-run: with GNU make, prefer $(MFLAGS) over $(MAKEFLAGS)
  header vars: can determine whether we are running under GNU make
  NEWS: improve wording for automake bug#13514 fix
  NEWS: document fix for automake bug#13514

12 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

12 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>
12 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>
12 years agotests: rename some with more descriptive names
Stefano Lattarini [Thu, 25 Apr 2013 20:02:14 +0000 (22:02 +0200)] 
tests: rename some with more descriptive names

* t/tar3.sh: Rename ...
* t/tar-opts-errors.sh: ... like this.
* t/tar2.sh: Rename...
* t/tar-pax.sh: ... like this.
* t/tar.sh: Rename ...
* t/tar-ustar.sh: ... like this.
* t/list-of-tests.mk: Adjust.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 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>
12 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>
12 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>
12 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>
12 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>
12 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>
12 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>
12 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>
12 years agoMerge branch 'maint'
Stefano Lattarini [Sat, 20 Apr 2013 19:55:02 +0000 (21:55 +0200)] 
Merge branch 'maint'

* maint:
  INSTALL: regen
  sync: update files from upstream with "make fetch"
  tests: tweaks and minimal improvements to t/insthook.sh
  typofix: in comments in t/extra2.sh
  tests: fix botched cross-reference in a heading comment

12 years agoMerge branch 'branch-1.13.2' into maint
Stefano Lattarini [Sat, 20 Apr 2013 19:54:40 +0000 (21:54 +0200)] 
Merge branch 'branch-1.13.2' into maint

* branch-1.13.2:
  INSTALL: regen
  sync: update files from upstream with "make fetch"
  tests: tweaks and minimal improvements to t/insthook.sh

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 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>
12 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>
12 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>
12 years agotypofix: in comments in t/extra2.sh
Stefano Lattarini [Sat, 20 Apr 2013 12:46:33 +0000 (14:46 +0200)] 
typofix: in comments in t/extra2.sh

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agotests: fix botched cross-reference in a heading comment
Stefano Lattarini [Sat, 20 Apr 2013 12:44:41 +0000 (14:44 +0200)] 
tests: fix botched cross-reference in a heading comment

* t/extra-dist-wildcards.sh: Here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agocompat: reinstate support for obsolete $(INCLUDES) variable
Stefano Lattarini [Fri, 19 Apr 2013 16:40:49 +0000 (18:40 +0200)] 
compat: reinstate support for obsolete $(INCLUDES) variable

Since INCLUDES and AM_CPPFLAGS can be both used at the same time in a
single project, and interact in a non-obvious way, switching away from
INCLUDES is, unfortunately, not simply a matter of doing a mindless
INCLUDES -> AM_CPPFLAGS substitution.  In fact, the transition from a
"INCLUDES + CPPFLAGS" setup to a "AM_CPPFLAGS only" setup could cause
subtle bugs to sneak into the build systems of the client packages
doing the transition.  Forcing this risk upon our users is definitely
not worth the small enhancement in consistency and cleanliness that
the removal of INCLUDES would give us.

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

This change basically reverts commit v1.13-8-g880595d.

* automake.in: Re-introduce support for INCLUDES (its use will cause
warnings in the 'obsolete' category rather than fatal errors).
* doc/automake.texi: Adjust to re-add mention of INCLUDES.
* t/includes-no-more.sh: Rename ...
* t/includes-deprecation.sh: ... like this, and adjust.
* t/list-of-tests.mk: Update.
* t/warnopts.sh: Minor fixlet while at it.

Suggested-by: Peter Rosin <peda@lysator.liu.se>
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoMerge branch 'maint'
Stefano Lattarini [Fri, 19 Apr 2013 16:13:30 +0000 (18:13 +0200)] 
Merge branch 'maint'

* maint:
  automake: refactoring: factor out common cpp-like flags

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoautomake: refactoring: factor out common cpp-like flags
Stefano Lattarini [Fri, 19 Apr 2013 15:41:22 +0000 (17:41 +0200)] 
automake: refactoring: factor out common cpp-like flags

* automake.in (@cpplike_flags): In this new variable...
(C, C++, Objective C, Objective C++, Unified Parallel C, Preprocessed
Assembler, Preprocessed Fortran, Preprocessed Fortran 77): ... to be
used by registration (with the 'register_language' subroutine) of these
languages.

This is a refactoring meant to simplify future changes; no semantic
change is intended.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoMerge branch 'maint'
Stefano Lattarini [Fri, 19 Apr 2013 14:13:41 +0000 (16:13 +0200)] 
Merge branch 'maint'

* maint:
  NEWS (mint): reflect new Automake versioning scheme

12 years agoNEWS (mint): reflect new Automake versioning scheme
Stefano Lattarini [Fri, 19 Apr 2013 14:12:48 +0000 (16:12 +0200)] 
NEWS (mint): reflect new Automake versioning scheme

The next minor Automake version will be 1.14, and *not* 1.13.2 -- that
will be the next bug-fixing version.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoNEWS (master): reflect new Automake versioning scheme
Stefano Lattarini [Fri, 19 Apr 2013 14:01:12 +0000 (16:01 +0200)] 
NEWS (master): reflect new Automake versioning scheme

The next minor Automake version will be 1.14 (not 1.13.2 -- that will
be the next bug-fixing version).  And the next major Automake version
will be 2.0.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoMerge branch 'maint'
Stefano Lattarini [Fri, 19 Apr 2013 13:46:54 +0000 (15:46 +0200)] 
Merge branch 'maint'

* maint:
  Add missing '$' for variable expansion in depout.m4
  maintcheck: avoid spurious failure
  perl: perl subroutine prototypes are problematic, don't use them
  fixup: one stray reference to older versioning scheme

12 years agoMerge branch 'branch-1.13.2' into maint
Stefano Lattarini [Fri, 19 Apr 2013 13:46:36 +0000 (15:46 +0200)] 
Merge branch 'branch-1.13.2' into maint

* branch-1.13.2:
  Add missing '$' for variable expansion in depout.m4
  fixup: one stray reference to older versioning scheme

12 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>
12 years agoMerge branch 'preproc' into maint
Stefano Lattarini [Fri, 19 Apr 2013 13:12:09 +0000 (15:12 +0200)] 
Merge branch 'preproc' into maint

* preproc:
  maintcheck: avoid spurious failure

12 years agomaintcheck: avoid spurious failure
Stefano Lattarini [Fri, 19 Apr 2013 12:15:17 +0000 (14:15 +0200)] 
maintcheck: avoid spurious failure

* t/preproc-errmsg.sh: Here, breaking up a sed command to avoid spuriously
triggering a failure in the 'sc_tests_logs_duplicate_prefixes' maintainer
check.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoMerge branch 'no-perl-protos' into maint
Stefano Lattarini [Fri, 19 Apr 2013 09:28:16 +0000 (11:28 +0200)] 
Merge branch 'no-perl-protos' into maint

* no-perl-protos:
  perl: perl subroutine prototypes are problematic, don't use them

12 years agoperl: perl subroutine prototypes are problematic, don't use them
Stefano Lattarini [Tue, 5 Mar 2013 17:30:03 +0000 (18:30 +0100)] 
perl: perl subroutine prototypes are problematic, don't use them

Basically, in perl, "subroutine prototypes" are not prototypes at all;
rather, they are a trick to allow user-defined subroutines that behave
like perl built-in functions.  For example, prototyped subroutines can
be called without parentheses, and can impose context on their arguments.

Such semantics can be useful in some selected situations, but might also
easily cause unexpected and harmful behaviours and side effects if we
try to use perl prototypes as we would use C prototypes.

See the excellent article "Far More than Everything You've Ever Wanted
to Know about Prototypes in Perl" by Tom Christiansen for more detailed
information:

    <http://www.perlmonks.org/?node_id=861966>
    <http://web.archive.org/web/20080421062920/\
     library.n0i.net/programming/perl/articles/fm_prototypes>

It is important to note that modern perl allows a non-predeclared
subroutine to be called without the '&' character, as long as its
call uses proper parentheses:

    foo 'str', 2;   # will trigger errors if foo is not predeclared
    foo('str', 2);  # ok even if foo is not predeclared
    &foo('str', 2); # ditto; but the '&' is old-style and redundant

Note also that the prototype indicating "no argument":

    sub func() { ... }

can actually be useful, and has no discernible downsides, so we'll
keep using it where it makes sense.

Also, in few, selected cases, we *want* to have subroutines behave like
perl builtins (e.g., we want the 'append_exeext' function to be able
to take a code block as first argument).  In such cases, we will of
course continue to make use of perl subroutine prototypes.

Let's finally see an example that might clarify the kind of problems the
use of subroutine prototypes in perl can cause.  This is just scratching
the surface; there are several other aspects, typically subtler and more
dangerous, that are not touched here.

If you have the prototyped subroutine definition:

    sub foo ($@)
    {
        my $s = shift;
        print "SCALAR: $s\n";
        print "ARRAY: @_\n";
    }

and call 'foo' in code like:

    @list = (-1, 0, 1);
    foo(@list);

you won't get a compile-time nor a runtime error (as a naive interpretation
of the "prototype" characterization would let you think).  Rather, the
prototype will cause the array '@list' will be coerced into scalar context
before being passed too 'foo', which means that its *length* (3) will be
passed to 'foo' as first argument; and since no further arguments are
present after '@list', that *void* will be coerced to an empty list before
being passed to 'foo'.

So code above will have the result of printing:

  SCALAR: 3
  ARRAY:

Quite tricky, and definitely a behaviour we don't want to rely on.

* automake.in: Delete most subroutine prototypes.  Fix few of the
remaining ones.  Related minor simplifications and adjustments.
* lib/gen-perl-protos: Adjust.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoMerge branch 'maint'
Stefano Lattarini [Tue, 5 Mar 2013 15:32:55 +0000 (16:32 +0100)] 
Merge branch 'maint'

* maint:
  preproc: enhance and extend tests
  preproc: add support for relative names in included fragments

12 years agoMerge branch 'preproc' into maint
Stefano Lattarini [Tue, 5 Mar 2013 14:58:49 +0000 (15:58 +0100)] 
Merge branch 'preproc' into maint

* preproc:
  preproc: enhance and extend tests
  preproc: add support for relative names in included fragments

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 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>
12 years agoMerge branch 'maint' into master
Stefano Lattarini [Thu, 21 Feb 2013 15:39:22 +0000 (16:39 +0100)] 
Merge branch 'maint' into master

* maint:
  maint: more adjustments to the new versioning scheme
  aclocal: fix for more-than-once specified directories
  aclocal: just warn if the primary local m4 dir doesn't exist (don't error)
  coverage: expose automake bug#13760
  tests: refactor/enhance tests about make dry-run mode
  maint: describe new versioning and branching scheme, and adjust to it
  cosmetics: fix some "docstring-like" comments in automake

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoMerge branch 'branch-1.13.2' into maint
Stefano Lattarini [Thu, 21 Feb 2013 15:10:16 +0000 (16:10 +0100)] 
Merge branch 'branch-1.13.2' into maint

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

12 years agomaint: more adjustments to the new versioning scheme
Stefano Lattarini [Thu, 21 Feb 2013 14:52:22 +0000 (15:52 +0100)] 
maint: more adjustments to the new versioning scheme

This is a follow-up to commit 'v1.13.1b-11-g97aaf12'.

* automake.in: Adjust a comment.
* PLANS: Adjust several files in here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 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)

12 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>
12 years agoMerge branch 'docstrings-tweaks' into maint
Stefano Lattarini [Wed, 20 Feb 2013 21:15:21 +0000 (22:15 +0100)] 
Merge branch 'docstrings-tweaks' into maint

* docstrings-tweaks:
  cosmetics: fix some "docstring-like" comments in automake

12 years agoMerge branch 'branch-1.13.2' into maint
Stefano Lattarini [Wed, 20 Feb 2013 21:14:55 +0000 (22:14 +0100)] 
Merge branch 'branch-1.13.2' into maint

* branch-1.13.2:
  coverage: expose automake bug#13760
  tests: refactor/enhance tests about make dry-run mode
  maint: describe new versioning and branching scheme, and adjust to it

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 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

12 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>
12 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>
12 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>
12 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>
12 years agocosmetics: fix some "docstring-like" comments in automake
Stefano Lattarini [Sat, 16 Feb 2013 23:04:28 +0000 (00:04 +0100)] 
cosmetics: fix some "docstring-like" comments in automake

* automake.in: Here.  And remove some redundant ones.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoMerge branch 'maint'
Stefano Lattarini [Sat, 16 Feb 2013 18:39:07 +0000 (19:39 +0100)] 
Merge branch 'maint'

* maint:
  style: call perl functions 'like_this()', not '&like_this()'
  maint: use more perl subroutines prototypes in the automake script
  build: auto-generate perl subroutines prototypes for automake and aclocal
  refactor: rip module Automake::Language out of automake script

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoMerge branch 'perl-sub-protos' into maint
Stefano Lattarini [Sat, 16 Feb 2013 17:54:19 +0000 (18:54 +0100)] 
Merge branch 'perl-sub-protos' into maint

* perl-sub-protos:
  style: call perl functions 'like_this()', not '&like_this()'
  maint: use more perl subroutines prototypes in the automake script
  build: auto-generate perl subroutines prototypes for automake and aclocal
  refactor: rip module Automake::Language out of automake script

12 years agoMerge branch 'maint'
Stefano Lattarini [Fri, 15 Feb 2013 14:39:02 +0000 (15:39 +0100)] 
Merge branch 'maint'

* maint:
  typofix: in comments in 't/ax/test-lib.sh'
  tests on TAP: don't run the driver with perl unconditionally
  typofix: in comments in 'automake.in'
  tests: remove obsolete (and now wrong) comment
  typofix: in diagnostic in test 't/tap-realtime.sh'
  automake: fix reference to relevant tests in comments
  NEWS: we no longer plan to drop $(INCLUDES) support in next major version

12 years agoMerge branch 'branch-1.13.2' into maint
Stefano Lattarini [Fri, 15 Feb 2013 14:06:19 +0000 (15:06 +0100)] 
Merge branch 'branch-1.13.2' into maint

* branch-1.13.2:
  typofix: in comments in 't/ax/test-lib.sh'
  tests on TAP: don't run the driver with perl unconditionally
  typofix: in comments in 'automake.in'
  tests: remove obsolete (and now wrong) comment
  typofix: in diagnostic in test 't/tap-realtime.sh'
  automake: fix reference to relevant tests in comments
  NEWS: we no longer plan to drop $(INCLUDES) support in next major version

12 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>
12 years agostyle: call perl functions 'like_this()', not '&like_this()'
Stefano Lattarini [Wed, 13 Feb 2013 18:39:38 +0000 (19:39 +0100)] 
style: call perl functions 'like_this()', not '&like_this()'

We can do so now that our build rules auto-generate a list of
prototypes for all functions ins our scripts.

* automake.in: Adjust throughout.
* HACKING: Adjust advises.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agopreproc: enhance and extend tests
Stefano Lattarini [Fri, 8 Feb 2013 08:17:10 +0000 (09:17 +0100)] 
preproc: enhance and extend tests

* t/preproc-demo.sh: New test, a "demo" of how the new pre-processing
feature could be used in a real-world package.
* t/preproc-errmsg.sh: New test, check that error messages remain
useful when the new pre-processing features are involved.
* t/preproc-reldir.sh: Split up ...
* t/preproc-basics.sh, t/preproc-c-compile.sh: ... into these two
tests, with some refactorings, clean-up and enhancements.
* t/list-of-tests.mk: Adjust.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agopreproc: add support for relative names in included fragments
Peter Rosin [Fri, 8 Feb 2013 08:11:45 +0000 (09:11 +0100)] 
preproc: add support for relative names in included fragments

The rationale for this change is that it is annoying to have
to repeat the directory name when including a Makefile fragment.
For deep directory structures these repeats can generate a lot
of bloat.  It also hinders reuse and easy directory restructuring
if all Makefile fragments have to know exactly where they live.

Suggested by Bob Friesenhahn, and later discussed in bug#13524.

In the course of discussion, the following notations were rejected:
&{reldir}& - to hard to type, {reldir} - interferes with ${reldir},
{am_reldir} - short form {D} interferes with ${D}, @am_reldir@ - short
form @D@ interferes with AC_SUBST([D]) as well as invading the
config.status turf. Other notations were also suggested...

* automake.in (read_am_file): Add third argument specifying the
relative directory of this Makefile fragment compared to the
main Makefile.  Replace %reldir% and %canon_reldir% in the
fragment with this relative directory (with slashes etc, or
canonicalized).
(read_main_am_file): Adjust.
* t/preproc-reldir.sh: New test.
* t/list-of-tests.mk: Augment.
* doc/automake.texi (Include): Document the new feature.
NEWS: Add new feature.

Co-authored-by: Stefano Lattarini <stefano.lattarini@gmail.com>
Signed-off-by: Peter Rosin <peda@lysator.liu.se>
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 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>
12 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>
12 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>
12 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>
12 years agomaint: use more perl subroutines prototypes in the automake script
Stefano Lattarini [Mon, 4 Feb 2013 22:37:23 +0000 (23:37 +0100)] 
maint: use more perl subroutines prototypes in the automake script

* automake.in: Throughout this file.  Note that these new prototypes
are not much useful, since many subroutine calls still use the old
'&foo' form; but we'll take care of that in later patches.
* lib/Automake/Language.pm (target_hook): Call the '_target_hook'
of the given language in a more modern form, avoiding '&'.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agobuild: auto-generate perl subroutines prototypes for automake and aclocal
Stefano Lattarini [Mon, 4 Feb 2013 22:04:18 +0000 (23:04 +0100)] 
build: auto-generate perl subroutines prototypes for automake and aclocal

This will allow us to avoid either using the '&foo' invocation form when
invoking a subroutine before its definition, or having to maintain the
list of prototypes by hand (with the risk of having it become incomplete
or fall out-of-sync when future edits to the automake and aclocal scripts
are done).

* Makefile.am (automake, aclocal): Automatically generate a list of
prototypes by looking at the subroutines definitions.
* bootstrap.sh: Likewise, when generating the temporary automake and
aclocal scripts used for bootstrapping.
* automake.in: Add a placeholder that will be tracked by the new recipes
and substituted with the computed prototypes.  Remove existing prototypes,
that are now superfluous. Some adjustments required by the new, more
comprehensive prototypes declarations.
* aclocal.in: Likewise.
* maintainer/syntax-checks.mk (sc_diff_automake, sc_diff_aclocal): Adjust.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agorefactor: rip module Automake::Language out of automake script
Stefano Lattarini [Mon, 4 Feb 2013 18:34:03 +0000 (19:34 +0100)] 
refactor: rip module Automake::Language out of automake script

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

* lib/Automake/Language.pm: New module, ripped out from ...
* automake.in: ... here.  Related adjustments.
* Makefile.am (dist_perllib_DATA): List the new module.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 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>
12 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>
12 years agoNEWS: IRIX is still supported; only SGI depmode no longer is
Stefano Lattarini [Mon, 28 Jan 2013 12:41:55 +0000 (13:41 +0100)] 
NEWS: IRIX is still supported; only SGI depmode no longer is

This change is for the master branch (see the similar commit
'v1.13.1b-3-g97f04a5' on the maint branch).

The only IRIX-specific support that is actually removed in master (and
thus in the next major Automake version) 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 has been 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: Adjust.  Improve explanation of our rationale for dropping
support for the SGI compilers.

Suggested-by: Peter Rosin <peda@lysator.liu.se>
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoMerge branch 'maint'
Stefano Lattarini [Mon, 28 Jan 2013 12:35:40 +0000 (13:35 +0100)] 
Merge branch 'maint'

* maint:
  NEWS: IRIX is still supported; only SGI C compiler depcomp no longer is
  maint: version bump after beta release 1.13.1b
  NEWS: typofix
  release: beta release 1.13.1b (will become 1.13.2)

12 years agoMerge branch 'branch-1.13.2' into maint
Stefano Lattarini [Mon, 28 Jan 2013 12:33:00 +0000 (13:33 +0100)] 
Merge branch 'branch-1.13.2' into maint

* branch-1.13.2:
  NEWS: IRIX is still supported; only SGI C compiler depcomp no longer is
  maint: version bump after beta release 1.13.1b
  NEWS: typofix
  release: beta release 1.13.1b (will become 1.13.2)

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 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>
12 years agocoverage: split info files are not installed nor distributed
Stefano Lattarini [Wed, 23 Jan 2013 11:00:04 +0000 (12:00 +0100)] 
coverage: split info files are not installed nor distributed

See automake bugs #12320 and #13351.

* t/txinfo-no-extra-dist.sh: Enhance.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 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>
12 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>
12 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>
12 years agoMerge branch 'maint'
Stefano Lattarini [Tue, 22 Jan 2013 12:49:02 +0000 (13:49 +0100)] 
Merge branch 'maint'

* maint:
  docs: '.txi' and '.texinfo' extensions are deprecated
  NEWS: document recent documentation improvements
  docs: more precise cross reference
  docs: 'dist-shar' and 'dist-tarZ' are obsolescent today
  docs: improve documentation of 'dist-*' targets slightly
  docs: make even clearer 'dist-gzip' is the default.
  docs: document 'dist-xz' together with the other 'dist-*' options
  docs: 'no-define' option and AM_INIT_AUTOMAKE three-args usage: fixlets
  warn: correct broken hyperlink in warning message

12 years agoMerge branch 'branch-1.13.2' into maint
Stefano Lattarini [Tue, 22 Jan 2013 12:37:41 +0000 (13:37 +0100)] 
Merge branch 'branch-1.13.2' into maint

* branch-1.13.2:
  docs: '.txi' and '.texinfo' extensions are deprecated
  NEWS: document recent documentation improvements
  docs: more precise cross reference
  docs: 'dist-shar' and 'dist-tarZ' are obsolescent today
  docs: improve documentation of 'dist-*' targets slightly
  docs: make even clearer 'dist-gzip' is the default.
  docs: document 'dist-xz' together with the other 'dist-*' options
  docs: 'no-define' option and AM_INIT_AUTOMAKE three-args usage: fixlets
  warn: correct broken hyperlink in warning message

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 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>
12 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>
12 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>
12 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>
12 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>
12 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>
12 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>
12 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>
12 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>
12 years agoMerge branch 'maint'
Stefano Lattarini [Mon, 21 Jan 2013 14:48:48 +0000 (15:48 +0100)] 
Merge branch 'maint'

* maint:
  tests: more information about Lex and Yacc programs
  lint: fix spurious failure for 'sc_rm_minus_f' syntax check
  maint: bump version 1.13.1a -> 1.13.2a
  maint: update copyright in files generated by automake and aclocal
  tests: avoid a spurious failure when running inside Emacs
  tests: make two new test executable
  m4: rename an m4 file to a more appropriate name
  NEWS: update w.r.t. recent documentation fixes
  compat: reinstate AM_CONFIG_HEADER and AM_PROG_CC_STDC
  docs: parallel-tests is no longer experimental
  docs: serial-tests are not deprecated, just discouraged
  plans: we are not going to remove AM_PROG_MKDIR_P in Automake 1.14
  NEWS: we are not going to remove AM_PROG_MKDIR_P in Automake 1.14
  init.m4: add probe to check "rm -f" without args work

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agotests: more information about Lex and Yacc programs
Stefano Lattarini [Mon, 21 Jan 2013 14:45:17 +0000 (15:45 +0100)] 
tests: more information about Lex and Yacc programs

* t/get-sysconf.sh: Try to also get the version of '$LEX' and '$YACC'.
This will help debugging of user-reported problems.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agolint: fix spurious failure for 'sc_rm_minus_f' syntax check
Stefano Lattarini [Mon, 21 Jan 2013 14:35:48 +0000 (15:35 +0100)] 
lint: fix spurious failure for 'sc_rm_minus_f' syntax check

* maintainer/syntax-checks.mk (sc_rm_minus_f): Also exempt
file 't/rm-f-probe.sh'.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agomaint: bump version 1.13.1a -> 1.13.2a
Stefano Lattarini [Mon, 21 Jan 2013 14:24:03 +0000 (15:24 +0100)] 
maint: bump version 1.13.1a -> 1.13.2a

The 1.13.2 bug-fixing release will ship from the 'branch-1.13.2' git
branch, not from the 'maint' one, since the latter contains changes
that are non-trivial and hasn't cooked enough yet.  The 'maint' branch
will give rise to the 1.13.3 release instead, eventually.  Adjust the
version number to match.

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

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoMerge branch 'branch-1.13.2' into maint
Stefano Lattarini [Mon, 21 Jan 2013 13:52:37 +0000 (14:52 +0100)] 
Merge branch 'branch-1.13.2' into maint

That branch is for the "emergency" bug-fixing release 1.13.2.

* branch-1.13.2:
  maint: update copyright in files generated by automake and aclocal
  tests: avoid a spurious failure when running inside Emacs
  tests: make two new test executable
  m4: rename an m4 file to a more appropriate name
  NEWS: update w.r.t. recent documentation fixes
  compat: reinstate AM_CONFIG_HEADER and AM_PROG_CC_STDC
  docs: parallel-tests is no longer experimental
  docs: serial-tests are not deprecated, just discouraged
  NEWS: we are not going to remove AM_PROG_MKDIR_P in Automake 1.14

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 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>
12 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>
12 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>