]> git.ipfire.org Git - thirdparty/automake.git/log
thirdparty/automake.git
10 years ago[ng] tests: fix spurious failure due to non-POSIX shells ng/master
Stefano Lattarini [Wed, 7 Jan 2015 10:59:03 +0000 (11:59 +0100)] 
[ng] tests: fix spurious failure due to non-POSIX shells

Seen on, e.g., Solaris 10.

* t/internals.tap: Here, by making sure a POSIX shell is used to
run the recipe in the Makefiles running our unit tests.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years ago[ng] vala tests: avoid spurious failure with Sun C/C++ compilers
Stefano Lattarini [Wed, 7 Jan 2015 10:35:48 +0000 (11:35 +0100)] 
[ng] vala tests: avoid spurious failure with Sun C/C++ compilers

* t/vala-mix2.sh: Here, by forcing the use of the GNU C/C++ compilers.
If we don't, our dependency-tracking code forces 'make' to try to rebuild
spurious binaries or object files when the Sun C compiler is in use, with
reasons like:
  '/opt/SUNWspro/prod/include/CC/Cstd/./istream.cc' is newer \
      than target '/opt/SUNWspro/prod/include/CC/Cstd/./istream'
Go figure.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years ago[ng] tests: avoid a spurious failure with ${CC} lacking dep-tracking support
Stefano Lattarini [Wed, 7 Jan 2015 10:02:46 +0000 (11:02 +0100)] 
[ng] tests: avoid a spurious failure with ${CC} lacking dep-tracking support

* t/subobj-indir-pr13928.sh: Here: do not expect .Po files to be created in
the .deps directories if the compiler is found not to support generation of
dependency tracking information.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years ago[ng] cosmetics: adjust few comments, fix indentation
Stefano Lattarini [Tue, 6 Jan 2015 21:45:46 +0000 (22:45 +0100)] 
[ng] cosmetics: adjust few comments, fix indentation

* bin/automake.in (handle_languages): Here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMerge branch 'master' into ng/master (bug#13928 fixed by this)
Stefano Lattarini [Tue, 6 Jan 2015 21:03:06 +0000 (22:03 +0100)] 
Merge branch 'master' into ng/master (bug#13928 fixed by this)

Part of this merge is actually a no-op, since we had already fixed
Automake-NG so that the 'subdir-object' option (enabled by default)
would work when foo_SOURCES contains $(var).

OTOH, even Automake-NG suffered of the bug where built object files,
as well as dependency-tracking makefile fragments, could be placed
in $(srcdir) when a source file was specified as '$(srdir)/foo.c' or
'$(top_srcdir)/bar.c'. See bug#16375 and bug#15293.

* master:
  deps: fix corner-case "make distclean" bug
  compile: don't place built object files in $(srcdir), ever ...
  tests: fix some bugs in an XFAILing test
  deps: 'subdir-object' option now works when foo_SOURCES contains $(var)
  NEWS: fix a typo

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMerge branch 'minor'
Stefano Lattarini [Tue, 6 Jan 2015 12:17:23 +0000 (13:17 +0100)] 
Merge branch 'minor'

* minor:
  deps: fix corner-case "make distclean" bug
  compile: don't place built object files in $(srcdir), ever ...
  tests: fix some bugs in an XFAILing test
  deps: 'subdir-object' option now works when foo_SOURCES contains $(var)
  NEWS: fix a typo

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMerge branch 'deps-pr13928' into minor
Stefano Lattarini [Tue, 6 Jan 2015 10:26:48 +0000 (11:26 +0100)] 
Merge branch 'deps-pr13928' into minor

* deps-pr13928:
  deps: fix corner-case "make distclean" bug
  compile: don't place built object files in $(srcdir), ever ...
  tests: fix some bugs in an XFAILing test
  deps: 'subdir-object' option now works when foo_SOURCES contains $(var)

10 years agoMerge branch 'micro' into minor
Stefano Lattarini [Tue, 6 Jan 2015 10:26:32 +0000 (11:26 +0100)] 
Merge branch 'micro' into minor

* micro:
  NEWS: fix a typo

10 years agodeps: fix corner-case "make distclean" bug
Stefano Lattarini [Sat, 3 Jan 2015 00:33:45 +0000 (01:33 +0100)] 
deps: fix corner-case "make distclean" bug

Assume we have package satisfying the following conditions:
  (1) automatic dependency tracking is enabled;
  (2) the 'subdir-objects' Automake option is enabled;
  (3) the package uses a recursive make setup.

Also assume that:
  (a) a subdir Makefile declares a foo_SOURCES variable containing
      a source file in the parent directory;
  (b) that parent Makefile declare a compiled program itself.

Then BSD and Solaris make used to fail when running "make distclean",
because the 'distclean' target of the subdir Makefile removed the
whole '.deps' directory before the parent Makefile was done with the
included '.Po' makefile fragments in that directory. This issue was
revealed by failures in the 'subobj-vpath-pr13928.sh' test when those
make implementations were used.

We fix the issue by ensuring the 'distclean' target of any Makefile
only removed the '.Po' makefile fragments included by it, rather than
the whole '.deps' directory where such files resides.

This change should be the last step in fixing automake bug#13928
for good.

* bin/automake.in (handle_languages), lib/am/depend.am: Adjust
to implement the new 'distclean' logic.
* t/pr224.sh: Adjust to avoid a spurious failure.
* PLANS/subdir-objects.txt: Update.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agocompile: don't place built object files in $(srcdir), ever ...
Stefano Lattarini [Fri, 2 Jan 2015 13:47:36 +0000 (14:47 +0100)] 
compile: don't place built object files in $(srcdir), ever ...

... even when a source file is specified as '$(srdir)/foo.c' or
'$(top_srcdir)/bar.c'. And ditto for dependency-tracking makefile
fragments (those under '.deps' directories).

Such issues used to occur when the 'subdir-objects' option was given.

This change should fix the second and last part of automake bug#13928.
See also bug#16375 and bug#15293.

* NEWS: Update.
* bin/automake.in (handle_single_transform): Make sure object files
and dependency-tracking makefile fragments coming from source like
'$(srcdir)/foo.c' and '$(top_srcdir)/bar.c' are placed respectively
under $(builddir) and $(top_builddir).
* t/subobj-vpath-pr13928.sh: Enhance to expose even more aspects
of the bug we've just fixed.
* t/subobj-pr13928-more-langs.sh: New test, similar to the one above,
but with non-C languages as well.
* t/list-of-tests.mk (XFAIL_TESTS): Remove 'subobj-vpath-pr13928.sh',
it's now supposed to pass.
(handwritten_TESTS): Add 'subobj-pr13928-more-langs.sh'.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agotests: fix some bugs in an XFAILing test
Stefano Lattarini [Fri, 2 Jan 2015 14:26:12 +0000 (15:26 +0100)] 
tests: fix some bugs in an XFAILing test

* t/subobj-vpath-pr13928.sh: This one. The test would have failed (or
hung!) even if the bug it was testing against were fixed.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agodeps: 'subdir-object' option now works when foo_SOURCES contains $(var)
Stefano Lattarini [Wed, 24 Dec 2014 09:57:17 +0000 (10:57 +0100)] 
deps: 'subdir-object' option now works when foo_SOURCES contains $(var)

Following a suggestions of Johan Kristensen, we have config.status use
'make' invocations rather than Makefile-parsing 'sed' hacks to bootstrap
the dependency-tracking '.Po' and '.Plo' makefile fragments. To handle
the inclusion of such files that are still missing when make is first
we basically generate a temporary Makefile without these includes, and
call 'make' on that Makefile.

This fixes the serious bug bug#13928, which was an hard blocker to make the
behavior mandated by the 'subdir-object' active by default (which we want
to do in Automake 2.0).

The issue has also been reported in bug#15919.

* NEWS, THANKS: Update.
* bin/automake.in (handle_languages): Add a trailing "marking" comment
("# am--include-marker") to the generated Makefile lines issuing 'include'
directives for the dependency-tracking '.Po' and '.Plo' makefile fragments.
Also rename the generated Makefile variable 'am__depfiles_maybe' to the
clearer 'am__maybe_remake_depfiles'.
Minor unrelated refactoring.
* lib/am/configure.am: Adjust to account for the 'am__depfiles_maybe' ->
'am__maybe_remake_depfiles' renaming.
* lib/am/depend.am: Add rules to generate a dummy version of all the
dependency-tracking '.Po' and '.Plo' makefile fragments.
* m4/depout.m4: Use make invocations rather than Makefile-parsing sed hacks
to bootstrap the dependency-tracking '.Po' and '.Plo' makefile fragments.
We still use some sed trickery in order to remove the inclusion of the
still non existing .Po and .Plo files from the Makefile we invoke make
upon; this is done stripping lines that contain the magic string
"# am--include-marker".
* m4/make.m4 (AM_MAKE_INCLUDE): Given that now automake generates Makefiles
containing include statements with trailing comment, adjust the checks done
here to make sure $MAKE support that; e.g., "include foo.mk # comment"
rather than just "include foo.mk".
Also refactor and adjust to leave better debugging info in config.log.
* t/postproc.sh: Rename ...
* t/depend-postproc.sh: ... to this, and adjust and enhance.
* t/list-of-tests.mk (handwritten_TESTS): Adjust.
(XFAIL_TESTS): Remove 't/subobj-indir-pr13928.sh', which is now succeeding.
* t/subobj-indir-pr13928.sh: Simplify slightly, now that we expect it to
pass.
* t/depcomp8a.sh: Adjust grepping check to account for the changes in
the generated Makefile, and tp be somewhat more robust in light of possible
future modifications.
* t/depcomp8b.sh: Likewise.
* t/subobj11b.sh: Likewise.
* t/subobj11c.sh: Likewise.
* t/extra-sources.sh: Likewise.
* t/lex-depend-grep.sh: Likewise.
* t/lex-depend-cxx.sh: Add a command to help debugging in case of test
failure.

Helped-by: Johan Kristensen <johankristensen@gmail.com>
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoNEWS: fix a typo
Stefano Lattarini [Tue, 6 Jan 2015 10:18:43 +0000 (11:18 +0100)] 
NEWS: fix a typo

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years ago[ng] maint: update copyright years to 2015 (branch 'ng/master')
Stefano Lattarini [Mon, 5 Jan 2015 22:13:47 +0000 (23:13 +0100)] 
[ng] maint: update copyright years to 2015 (branch 'ng/master')

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMerge branch 'master' into ng/master
Stefano Lattarini [Mon, 5 Jan 2015 22:09:00 +0000 (23:09 +0100)] 
Merge branch 'master' into ng/master

* master:
  maint: update copyright years to 2015 (branch 'master')
  maint: update copyright years to 2015 (branch 'micro')

10 years agomaint: update copyright years to 2015 (branch 'master')
Stefano Lattarini [Mon, 5 Jan 2015 22:01:38 +0000 (23:01 +0100)] 
maint: update copyright years to 2015 (branch 'master')

* t/am-prog-mkdir-p.sh: Here.
* t/txinfo-no-split.sh: And here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMerge branch 'minor'
Stefano Lattarini [Mon, 5 Jan 2015 21:55:51 +0000 (22:55 +0100)] 
Merge branch 'minor'

* minor:
  maint: update copyright years to 2015 (branch 'micro')

10 years agoMerge branch 'micro' into minor
Stefano Lattarini [Mon, 5 Jan 2015 21:52:39 +0000 (22:52 +0100)] 
Merge branch 'micro' into minor

* micro:
  maint: update copyright years to 2015 (branch 'micro')

10 years agomaint: update copyright years to 2015 (branch 'micro')
Stefano Lattarini [Mon, 5 Jan 2015 21:48:33 +0000 (22:48 +0100)] 
maint: update copyright years to 2015 (branch 'micro')

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMerge branch 'master' into ng/master
Stefano Lattarini [Mon, 5 Jan 2015 21:47:59 +0000 (22:47 +0100)] 
Merge branch 'master' into ng/master

* master:
  sync: update third-part files from upstream
  maint: fix typo in error message of a maintainer-only rule
  maint: bump version number 1.15 -> 1.15a ('minor' Git branch)
  release: stable minor release 1.15
  NEWS: minor improvements and fixed some typos and grammaros

10 years agoMerge branch 'minor'
Stefano Lattarini [Mon, 5 Jan 2015 21:47:06 +0000 (22:47 +0100)] 
Merge branch 'minor'

* minor:
  sync: update third-part files from upstream
  maint: fix typo in error message of a maintainer-only rule
  maint: bump version number 1.15 -> 1.15a ('minor' Git branch)
  release: stable minor release 1.15
  NEWS: minor improvements and fixed some typos and grammaros

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMerge branch 'micro' into minor
Stefano Lattarini [Mon, 5 Jan 2015 21:44:37 +0000 (22:44 +0100)] 
Merge branch 'micro' into minor

* micro:
  sync: update third-part files from upstream
  maint: fix typo in error message of a maintainer-only rule

10 years agosync: update third-part files from upstream
Stefano Lattarini [Mon, 5 Jan 2015 21:30:30 +0000 (22:30 +0100)] 
sync: update third-part files from upstream

* lib/config.sub: This.
* lib/INSTALL, lib/config.guess, lib/gitlog-to-changelog, lib/gnupload,
lib/update-copyright: And this (but only for copyright year update, no
real semantic change)

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agomaint: fix typo in error message of a maintainer-only rule
Stefano Lattarini [Mon, 5 Jan 2015 21:25:21 +0000 (22:25 +0100)] 
maint: fix typo in error message of a maintainer-only rule

* maintainer/maint.mk (web-manual-update): Here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agomaint: bump version number 1.15 -> 1.15a ('minor' Git branch)
Stefano Lattarini [Mon, 5 Jan 2015 21:05:49 +0000 (22:05 +0100)] 
maint: bump version number 1.15 -> 1.15a ('minor' Git branch)

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

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMerge branch 'minor' into micro after 1.15 release
Stefano Lattarini [Mon, 5 Jan 2015 20:54:00 +0000 (21:54 +0100)] 
Merge branch 'minor' into micro after 1.15 release

And bump version number: 1.15 -> 1.15.0a

* minor:
  release: stable minor release 1.15
  NEWS: minor improvements and fixed some typos and grammaros
  docs: "make distcheck" implementation details are not to be abused
  NEWS: improve and adjust in light of the oncoming 1.15 release
  Fix dumb logic error preventing $install_sh from being be overridden
  Expose automake bug#19311
  build: fix race in parallel builds
  init: ensure $ac_aux_dir is defined before being used
  plans: enabling subdir-object by default is blocked on bug#13928
  maint: update copyright years
  maint: sync files from upstream ("make fetch")
  Typofixes in warning messages and manual
  NEWS: a typofix, and better word wrapping
  parallel-tests: avoid possible implicit "make all" in test-suite.log rule
  Allow user to extend .PRECIOUS target
  cosmetics: remove a couple of extra trailing white spaces
  tests: fix a spurious failure on Mac OS X
  docs: make clear the JAVA primary is frozen
  install-sh: a slightly better diagnostic, and tests enhancements
  install-sh: be stricter in catching invalid usages
  tests: more significant names for some tests
  tests: some cosmetic fixes
  tests: more significant names for a test
  docs: drop a few obsolescent FIXME/TODO comments, and associated text
  testsuite harness: report test exit status in log file
  TAP driver: no need to invoke AC_PROG_AWK directly
  TAP driver: remove perl implementation (move it into contrib/)
  NEWS: stop reporting "new" Automake versioning scheme
  cosmetics: untabify the install-sh script
  install-sh: assume that "set -f" and "set +f" work...
  install-sh: assume ${var:-value} works as expected
  install-sh: assume 'dirname' is available and working correctly
  post-release: micro version bump (1.14a)

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agorelease: stable minor release 1.15 v1.15
Stefano Lattarini [Tue, 30 Dec 2014 23:05:23 +0000 (00:05 +0100)] 
release: stable minor release 1.15

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

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoNEWS: minor improvements and fixed some typos and grammaros
Stefano Lattarini [Tue, 30 Dec 2014 23:02:30 +0000 (00:02 +0100)] 
NEWS: minor improvements and fixed some typos and grammaros

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMerge branch 'master' into ng/master
Stefano Lattarini [Tue, 30 Dec 2014 21:51:26 +0000 (22:51 +0100)] 
Merge branch 'master' into ng/master

* master:
  docs: "make distcheck" implementation details are not to be abused
  NEWS: improve and adjust in light of the oncoming 1.15 release
  shell-no-trail-bslash: improve diagnostic in case of failure

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMerge branch 'minor'
Stefano Lattarini [Tue, 30 Dec 2014 19:59:22 +0000 (20:59 +0100)] 
Merge branch 'minor'

* minor:
  docs: "make distcheck" implementation details are not to be abused
  NEWS: improve and adjust in light of the oncoming 1.15 release
  shell-no-trail-bslash: improve diagnostic in case of failure

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agodocs: "make distcheck" implementation details are not to be abused
Stefano Lattarini [Tue, 30 Dec 2014 19:45:48 +0000 (20:45 +0100)] 
docs: "make distcheck" implementation details are not to be abused

* doc/automake.texi: State explicitly and in detail that the exact location
and the exact structure of the subdirectory used by "make distcheck" is to
be considered an implementation detail, which can change at any time.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoNEWS: improve and adjust in light of the oncoming 1.15 release
Stefano Lattarini [Tue, 30 Dec 2014 14:20:00 +0000 (15:20 +0100)] 
NEWS: improve and adjust in light of the oncoming 1.15 release

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMerge branch 'micro' into minor
Stefano Lattarini [Tue, 30 Dec 2014 13:49:46 +0000 (14:49 +0100)] 
Merge branch 'micro' into minor

* micro:
  shell-no-trail-bslash: improve diagnostic in case of failure

10 years agoshell-no-trail-bslash: improve diagnostic in case of failure
Stefano Lattarini [Tue, 30 Dec 2014 13:28:52 +0000 (14:28 +0100)] 
shell-no-trail-bslash: improve diagnostic in case of failure

* t/ax/shell-no-trail-bslash.in: Here, by fixing a typo in a
variable name and a logic error.
* t/self-check-shell-no-trail-bslash.sh: Enhance to catch the
issue.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years ago[ng] tex, tags, install: make sure recipes don't end with '\' (backslash char)
Stefano Lattarini [Tue, 30 Dec 2014 11:22:07 +0000 (12:22 +0100)] 
[ng] tex, tags, install: make sure recipes don't end with '\' (backslash char)

Some shells are unable to handle that.  Issue revealed by failures of the
"check-no-trailing-backslash-in-recipes" rule.

* lib/am/texinfos.mk, lib/am/tags.mk, lib/am/scripts.am: Adjust.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMerge branch 'master' into ng/master
Stefano Lattarini [Sun, 28 Dec 2014 18:13:40 +0000 (19:13 +0100)] 
Merge branch 'master' into ng/master

* master:
  tests: make script 'shell-no-trail-bslash' simpler and more robust
  texinfo: remove hack about info files in CLEANFILES variables

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMerge branches 'texi-in-builddir-remove-distclean-hack' and 'minor'
Stefano Lattarini [Sun, 28 Dec 2014 15:54:41 +0000 (16:54 +0100)] 
Merge branches 'texi-in-builddir-remove-distclean-hack' and 'minor'

* texi-in-builddir-remove-distclean-hack:
  texinfo: remove hack about info files in CLEANFILES variables

* minor:
  tests: make script 'shell-no-trail-bslash' simpler and more robust

10 years agoMerge branch 'micro' into minor
Stefano Lattarini [Sun, 28 Dec 2014 15:25:28 +0000 (16:25 +0100)] 
Merge branch 'micro' into minor

* micro:
  tests: make script 'shell-no-trail-bslash' simpler and more robust

10 years agotests: make script 'shell-no-trail-bslash' simpler and more robust
Stefano Lattarini [Sun, 28 Dec 2014 13:02:30 +0000 (14:02 +0100)] 
tests: make script 'shell-no-trail-bslash' simpler and more robust

This solves spurious failure in the 'check-no-trailing-backslash-in-recipes'
target for Automake-NG.

This is basically a backport of Automake-NG commit v1.14.1-1010-g85aae58;
the point is to minimize the amount of spurious diffs between the mainline
Automake and the Automake-NG source trees.

* t/ax/shell-no-trail-bslash.in: Simplify and fortify.
* t/self-check-shell-no-trail-bslash.sh: Enhance.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agotests: make script 'shell-no-trail-bslash' simpler and more robust
Stefano Lattarini [Sun, 28 Dec 2014 13:02:30 +0000 (14:02 +0100)] 
tests: make script 'shell-no-trail-bslash' simpler and more robust

This solves spurious failure in the 'check-no-trailing-backslash-in-recipes'
target for Automake-NG.

* t/ax/shell-no-trail-bslash.in: Simplify and fortify.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMerge branch 'master' into ng/master
Stefano Lattarini [Sun, 28 Dec 2014 10:56:32 +0000 (11:56 +0100)] 
Merge branch 'master' into ng/master

* master:
  tests: avoid a possible failure due to autom4te cache staleness
  tests: fix spurious failure in test on TEXINFO_TEX overriding
  tests: avoid some spurious failures on AIX 7.1

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agotexinfo: remove hack about info files in CLEANFILES variables
Stefano Lattarini [Mon, 24 Dec 2012 10:23:06 +0000 (11:23 +0100)] 
texinfo: remove hack about info files in CLEANFILES variables

Automake used to implement an undocumented hack causing '.info' files
that appeared to be cleaned (by e.g. being listed in the CLEANFILES
variable) to also be built in the builddir rather than in the srcdir;
this was for backward compatibility with packages such as Texinfo,
which did things like:

    info_TEXINFOS = texinfo.txi info-stnd.texi info.texi
    DISTCLEANFILES = texinfo texinfo-* info*.info*
    # Do not create info files for distribution.
    dist-info:

in order not to distribute .info files.

Now that we have the 'info-in-builddir' option that explicitly causes
generated '.info' files to be placed in the builddir, this hack is no
longer necessary, and we can remove it (after having deprecated it in
the Automake 1.14 release already).

* bin/automake.in (handle_texinfo_helper): Remove the hack.  Adjust
comments accordingly.
* NEWS: Update.
* t/txinfo23.sh: Delete as obsolete.
* t/txinfo25.sh: Likewise.
* t/txinfo24.sh: Likewise.
* t/txinfo28.sh: Delete as mostly obsolete, its only still relevant
parts moved ...
* t/mdate5.sh: ... into this test.
* t/txinfo-clean.sh: Remove references to deleted tests.
* t/list-of-tests.mk: Adjust.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agotests: avoid a possible failure due to autom4te cache staleness
Stefano Lattarini [Sat, 27 Dec 2014 22:20:12 +0000 (23:20 +0100)] 
tests: avoid a possible failure due to autom4te cache staleness

* t/includes-deprecation.sh: Here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMerge branch 'minor'
Stefano Lattarini [Sat, 27 Dec 2014 17:41:56 +0000 (18:41 +0100)] 
Merge branch 'minor'

* minor:
  tests: fix spurious failure in test on TEXINFO_TEX overriding
  tests: avoid some spurious failures on AIX 7.1

10 years agoMerge branch 'micro' into minor
Stefano Lattarini [Sat, 27 Dec 2014 15:33:12 +0000 (16:33 +0100)] 
Merge branch 'micro' into minor

* micro:
  tests: fix spurious failure in test on TEXINFO_TEX overriding
  tests: avoid some spurious failures on AIX 7.1

10 years agotests: fix spurious failure in test on TEXINFO_TEX overriding
Stefano Lattarini [Sat, 27 Dec 2014 14:49:36 +0000 (15:49 +0100)] 
tests: fix spurious failure in test on TEXINFO_TEX overriding

* t/txinfo-override-texinfo-tex.sh: Here.  The issue was pre-existing, but
has been only recently exposed by the fix for automake bug#18286 "distcheck
fails to detect missing files" (see commit v1.14.1-4-g01a7a4a) and by the
BSD make semantics.  To convince yourself this change actually makes sense
semantically, see https://sourceware.org/ml/binutils/2012-06/msg00004.html

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMerge branch 'aix-testsuite-failures' into micro
Stefano Lattarini [Sat, 27 Dec 2014 14:38:21 +0000 (15:38 +0100)] 
Merge branch 'aix-testsuite-failures' into micro

* aix-testsuite-failures:
  tests: avoid some spurious failures on AIX 7.1

10 years agotests: avoid some spurious failures on AIX 7.1
Stefano Lattarini [Sat, 27 Dec 2014 12:52:55 +0000 (13:52 +0100)] 
tests: avoid some spurious failures on AIX 7.1

* t/lex-noyywrap.sh: Here.
* t/instmany-mans.sh: And here.
* t/instmany-python.sh: And here.
* t/instmany.sh: And here.
* t/parallel-tests-concurrency.sh: And here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years ago[ng] cleanup: after the merge master -> ng/master done recently
Stefano Lattarini [Wed, 24 Dec 2014 00:13:04 +0000 (01:13 +0100)] 
[ng] cleanup: after the merge master -> ng/master done recently

* t/distcheck-pr18286.sh: Slightly simplify and tighten by assuming
that $MAKE is GNU make.
* lib/am/configure.am: Use $(am.chars.empty) rather than $(am__empty)
for the internal variable always expansing to the empty string.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMerge branch 'master' into ng/master
Stefano Lattarini [Tue, 23 Dec 2014 23:59:09 +0000 (00:59 +0100)] 
Merge branch 'master' into ng/master

* master:
  dist: fix bug#18286 "distcheck fails to detect missing files"
  tests: expose automake bug#18286 "distcheck fails to detect missing files"
  include: fix bug in handling of user-defined makefile fragments generation
  tests: expose bug in handling of user-defined makefile fragments generation

+ Extra non-trivial changes:

* lib/am/distcheck.mk: Backport the changes done to lib/am/distdir.am
in commit v1.14.1-4-g01a7a4a (fix for automake bug#18286 "distcheck
fails to detect missing files").

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMerge branch 'minor'
Stefano Lattarini [Tue, 23 Dec 2014 21:45:13 +0000 (22:45 +0100)] 
Merge branch 'minor'

* minor:
  dist: fix bug#18286 "distcheck fails to detect missing files"
  tests: expose automake bug#18286 "distcheck fails to detect missing files"
  include: fix bug in handling of user-defined makefile fragments generation
  tests: expose bug in handling of user-defined makefile fragments generation

10 years agoMerge branch 'micro' into minor
Stefano Lattarini [Tue, 23 Dec 2014 20:15:18 +0000 (21:15 +0100)] 
Merge branch 'micro' into minor

* micro:
  dist: fix bug#18286 "distcheck fails to detect missing files"
  tests: expose automake bug#18286 "distcheck fails to detect missing files"
  include: fix bug in handling of user-defined makefile fragments generation
  tests: expose bug in handling of user-defined makefile fragments generation

10 years agoMerge branch 'distcheck-pr18286' into micro
Stefano Lattarini [Tue, 23 Dec 2014 19:24:46 +0000 (20:24 +0100)] 
Merge branch 'distcheck-pr18286' into micro

* distcheck-pr18286:
  dist: fix bug#18286 "distcheck fails to detect missing files"
  tests: expose automake bug#18286 "distcheck fails to detect missing files"

10 years agodist: fix bug#18286 "distcheck fails to detect missing files"
Stefano Lattarini [Tue, 23 Dec 2014 17:39:32 +0000 (18:39 +0100)] 
dist: fix bug#18286 "distcheck fails to detect missing files"

BTW, this issue had been already reported in the past:
http://lists.gnu.org/archive/html/automake/2006-09/msg00008.html
http://lists.gnu.org/archive/html/automake/2013-01/msg00049.html

"make distcheck" could sometimes fail to detect missing files in the
distribution tarball, especially in those cases where both the generated
files and their dependencies are explicitly in $(srcdir).  An important
example of this are *generated* makefile fragments included at Automake
time in Makefile.am.  A basic example:

    # -*- Makefile.am -*-

    $(srcdir)/fragment.am: $(srcdir)/data.txt $(srcdir)/preproc.sh
        cd $(srcdir) && $(SHELL) preproc.sh <data.txt >fragment.am

    include $(srcdir)/fragment.am

    ...

If the use forgot to add data.txt and/or preproc.sh in the distribution
tarball, "make distcheck" would have erroneously succeeded!

The reason is that, while $(srcdir)/data.txt does not exist, make also
looks in $(srcdir)/$(srcdir)/data.txt, and in the distcheck-issued
VPATH build where $(srcdir) is '..', that file exists, as it is
part of the original development directory.

* t/distdir.am (distcheck): Adjust to have the build directory be
'$(distdir)/_build/sub' rather than just '$(distdir)/_build'.  Thanks
Nicola Fontana for the suggestion.
* t/distcheck-pr18286.sh: Enhance and tighten a little.
* t/list-of-tests.mk (XFAIL_TESTS): Remove 't/distcheck-pr18286.sh',
as it's now passing.
* t/subdir-am-cond.sh: Adjust to avoid a fully spurious failure due
to the new distcheck semantics.
* t/subdir-ac-subst.sh: Likewise.
* t/dejagnu-relative-srcdir.sh: Likewise.
* t/txinfo-builddir.sh: Likewise.
* NEWS: Update.

Helped-by: Nicola Fontana <ntd@entidi.it>
Helped-by: Peter Johansson <trojkan@gmail.com>
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agotests: expose automake bug#18286 "distcheck fails to detect missing files"
Stefano Lattarini [Tue, 23 Dec 2014 10:36:20 +0000 (11:36 +0100)] 
tests: expose automake bug#18286 "distcheck fails to detect missing files"

* t/distcheck-pr18286.sh: New test, still XFAILing.
* t/list-of-tests.mk: Add it.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMerge branch 'am-deps' into micro
Stefano Lattarini [Tue, 23 Dec 2014 16:27:30 +0000 (17:27 +0100)] 
Merge branch 'am-deps' into micro

* am-deps:
  include: fix bug in handling of user-defined makefile fragments generation
  tests: expose bug in handling of user-defined makefile fragments generation

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoinclude: fix bug in handling of user-defined makefile fragments generation
Stefano Lattarini [Tue, 23 Dec 2014 12:10:21 +0000 (13:10 +0100)] 
include: fix bug in handling of user-defined makefile fragments generation

If a user defined one single Makefile fragment to be included (via Automake
includes) in his main Makefile.am, and gave a rule to generate that file
from other data, Automake used to spuriously complain about with something
like "overrides Automake target '$(srcdir)/foo.am".  This change remove that
spurious error (via a simple hack rather than a systematic change, but oh
well).

* lib/am/configure.am (%MAKEFILE-IN-DEPS%) [?HAVE-MAKEFILE-IN-DEPS?]: Add
a trailing "$(am__empty)" to the list of targets, which is enough to trick
Automake into not complaining about "duplicated targets" in case the
'%MAKEFILE-IN-DEPS%' list expands to a single target that is also declared
in some user-defined rule.
* t/list-of-tests.mk (XFAIL_TESTS): Remove now-passing test
't/am-include-only-one-generated-fragment.sh'.
* NEWS: Update.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agotests: expose bug in handling of user-defined makefile fragments generation
Stefano Lattarini [Tue, 23 Dec 2014 11:11:58 +0000 (12:11 +0100)] 
tests: expose bug in handling of user-defined makefile fragments generation

If a user defines one single Makefile fragment to be included (via Automake
includes) in his main Makefile.am, and givse a rule to generate that file
from other data, Automake will spuriously complain about with something
like "overrides Automake target '$(srcdir)/foo.am".

* t/am-include-only-one-generated-fragment.sh: Expose the bug (this test
is still XFAILing).
* t/list-of-tests.mk: Add the new test.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years ago[ng] tests: fix two spurious failures
Stefano Lattarini [Tue, 23 Dec 2014 10:20:06 +0000 (11:20 +0100)] 
[ng] tests: fix two spurious failures

* t/self-check-dir.tap: Here (where we didn't account for VPATH builds).
* t/subpkg.sh: And here (where we were trying to copy the 'compile'
build-aux script on a pre-existing, read-only one).

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMerge branch 'fix-dryrun-detection' into ng/master
Stefano Lattarini [Tue, 23 Dec 2014 01:19:36 +0000 (02:19 +0100)] 
Merge branch 'fix-dryrun-detection' into ng/master

* fix-dryrun-detection:
  make flags analysis: fix bug in $(MFLAGS) parsing (typo-induced)
  make flags analysis: expose bug in dry-run recognition

10 years agomake flags analysis: fix bug in $(MFLAGS) parsing (typo-induced)
Stefano Lattarini [Tue, 23 Dec 2014 00:44:08 +0000 (01:44 +0100)] 
make flags analysis: fix bug in $(MFLAGS) parsing (typo-induced)

* header-vars.mk (am.make.is-running-with-option): Here.

This change fixes the failures in test 'make-dryrun.tap' (exposed by
previous commit v1.13.1d-928-g723f6d9), and also fixes a long-standing
failure of the test 'remake-gnulib-add-acsubst.sh'.  Yay!

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agomake flags analysis: expose bug in dry-run recognition
Stefano Lattarini [Tue, 23 Dec 2014 00:29:23 +0000 (01:29 +0100)] 
make flags analysis: expose bug in dry-run recognition

* t/make-dryrun.tap: Here.  If, e.g., the '--no-print-directory' option is
given, the $(am.make.dry-run) variable will erroneously set to 'true',
even when make is *not* running in dry mode :-(

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years ago[ng] parallel-tests: improve detection of circular dependencies
Stefano Lattarini [Mon, 22 Dec 2014 20:34:36 +0000 (21:34 +0100)] 
[ng] parallel-tests: improve detection of circular dependencies

* lib/am/parallel-tests.mk (am.test-suite.runtest): Here.
($(TEST_SUITE_LOG)): Drop redundant and non-workinf code.

Fixes a long-standing failure in test 't/parallel-tests-fork-bomb.sh'.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years ago[ng] Remove subdirectory 'old/', not really relevant for Automake NG
Stefano Lattarini [Mon, 22 Dec 2014 20:12:50 +0000 (21:12 +0100)] 
[ng] Remove subdirectory 'old/', not really relevant for Automake NG

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years ago[ng] tests: auxdir-pr19311.sh is still XFAIL, declare it as such
Stefano Lattarini [Mon, 22 Dec 2014 20:11:20 +0000 (21:11 +0100)] 
[ng] tests: auxdir-pr19311.sh is still XFAIL, declare it as such

* t/Makefile.in: Here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMerge branch 'master' into ng/master
Stefano Lattarini [Mon, 22 Dec 2014 19:25:13 +0000 (20:25 +0100)] 
Merge branch 'master' into ng/master

* master:
  cleanup: refactor code to initialize DIST_COMMON
  dist: ordering of files in DIST_COMMON is deterministic now
  tests: refactor some tests on DIST_COMMON
  maint: make output of 'gen-testsuite-part' deterministic
  When computing lispdir, don't load emacs site wide init file.
  PATH: quote $(PATH_SEPARATOR) as well
  Improve detection of GNU make, avoiding "Arg list too long" errors.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMerge branch 'minor'
Stefano Lattarini [Mon, 22 Dec 2014 18:10:55 +0000 (19:10 +0100)] 
Merge branch 'minor'

* minor:
  cleanup: refactor code to initialize DIST_COMMON
  dist: ordering of files in DIST_COMMON is deterministic now
  tests: refactor some tests on DIST_COMMON
  maint: make output of 'gen-testsuite-part' deterministic
  When computing lispdir, don't load emacs site wide init file.
  PATH: quote $(PATH_SEPARATOR) as well
  Improve detection of GNU make, avoiding "Arg list too long" errors.

10 years agoMerge branch 'micro' into minor
Stefano Lattarini [Mon, 22 Dec 2014 16:56:22 +0000 (17:56 +0100)] 
Merge branch 'micro' into minor

* micro:
  cleanup: refactor code to initialize DIST_COMMON
  dist: ordering of files in DIST_COMMON is deterministic now
  tests: refactor some tests on DIST_COMMON
  maint: make output of 'gen-testsuite-part' deterministic
  When computing lispdir, don't load emacs site wide init file.
  PATH: quote $(PATH_SEPARATOR) as well
  Improve detection of GNU make, avoiding "Arg list too long" errors.

10 years agocleanup: refactor code to initialize DIST_COMMON
Stefano Lattarini [Mon, 22 Dec 2014 12:39:30 +0000 (13:39 +0100)] 
cleanup: refactor code to initialize DIST_COMMON

There is not need to make that an Automake variable early,
only to later get and munge its contents, and use the new
content to redefine the variable.

* bin/automake.in (@dist_common): New global variable.
(push_dist_common, handle_dist): Use it.
(handle_dist): Define am__DIST_COMMON instead of DIST_COMMON
directly.
(initialize_per_input): Reset it to empty.
($configure_dist_common): Turn this scalar variable ...
(@configure_dist_common): ... into this array variable.
(handle_dist): Adjust.
(required_file_check_or_copy): Update and wrap some comments.
* lib/am/distdir.am (DIST_COMMON): Append $(am__DIST_COMMON).
* t/distcom2.sh: Tighten a little.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agodist: ordering of files in DIST_COMMON is deterministic now
Stefano Lattarini [Mon, 22 Dec 2014 10:20:14 +0000 (11:20 +0100)] 
dist: ordering of files in DIST_COMMON is deterministic now

It had likely stopped being deterministic due to the new perl behavior
of having non-deterministic order of numerating hash keys:
<http://search.cpan.org/dist/perl-5.18.0/pod/perldelta.pod#Hash_randomization>
<http://onionstand.blogspot.ie/2012/12/are-you-relying-on-hash-keys-being.html>
See also similar commit v1.14-19-g52e6404, albeit in this case the issue
is likely coming from autom4te/autoconf, not from automake itself.

Fixes automake bug http://debbugs.gnu.org/17908

* bin/automake.in (handle_dist): Sort @dist_common.
(print_autodist_files): Swap invocations of 'sort' and 'uniq', for
consistency with the new code in 'handle_dist' and to get rid of a
minor hack.
* NEWS: Update.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agotests: refactor some tests on DIST_COMMON
Stefano Lattarini [Mon, 22 Dec 2014 15:59:38 +0000 (16:59 +0100)] 
tests: refactor some tests on DIST_COMMON

So that they prefer checking the semantics of the generated Makefiles,
rather than grepping their content.  This will be useful in an upcoming
refactoring.

* t/distcom-subdir.sh: Adjust this test.
* t/distcom2.sh: And this.
* t/distcom3.sh: And this.
* t/distcom4.sh: And this.
* t/distcom5.sh: And this.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agomaint: make output of 'gen-testsuite-part' deterministic
Stefano Lattarini [Mon, 22 Dec 2014 11:39:05 +0000 (12:39 +0100)] 
maint: make output of 'gen-testsuite-part' deterministic

So that diffs displayed by the 'compare-autodiffs' target are
less spurious and more useful.

* gen-testsuite-part: Sort keys of %deps_extractor, %wrapper_setups
and %depmodes before iterating on them.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMerge branch 'master' into ng/master
Stefano Lattarini [Fri, 19 Dec 2014 23:01:15 +0000 (00:01 +0100)] 
Merge branch 'master' into ng/master

* master:
  Fix stupid typo in test, causing spurious failure
  sync: update third-part files from upstream
  Make sure AM_INIT_AUTOMAKE has a trailing newline
  dist: adjust warning messages about shar and tarZ deprecation
  docs: improve description of ${PACKAGE}, ${VERSION}, and similar variables
  Fix dumb logic error preventing $install_sh from being be overridden
  Automake docs: fix typos and use of British English
  Expose automake bug#19311
  build: fix race in parallel builds
  build: fix race in parallel builds
  init: ensure $ac_aux_dir is defined before being used
  plans: enabling subdir-object by default is blocked on bug#13928
  maint: update copyright (for files in 'master' only)
  maint: update copyright years
  maint: sync files from upstream ("make fetch")
  Typofixes in warning messages and manual
  doc: fix encoding error with UTF-8 characters
  NEWS: a typofix, and better word wrapping
  parallel-tests: avoid possible implicit "make all" in test-suite.log rule
  Allow user to extend .PRECIOUS target
  cosmetics: remove a couple of extra trailing white spaces
  tests: fix a spurious failure on Mac OS X
  docs: make clear the JAVA primary is frozen
  install-sh: a slightly better diagnostic, and tests enhancements
  install-sh: be stricter in catching invalid usages
  tests: more significant names for some tests
  tests: some cosmetic fixes
  tests: more significant names for a test
  docs: drop a few obsolescent FIXME/TODO comments, and associated text
  testsuite harness: report test exit status in log file
  TAP driver: no need to invoke AC_PROG_AWK directly
  TAP driver: remove perl implementation (move it into contrib/)
  NEWS: stop reporting "new" Automake versioning scheme
  post-release: micro version bump to 1.14.1a devel version
  release: stable micro release 1.14.1
  HACKING: minor clarification
  tests: make install-info-dir.sh print more debugging info
  tests: remove too-brittle test tap-realtime.sh
  maintainer: am-ft: add option to cater to clock skews
  sync: update INSTALL, config.guess and config.sub from upstream
  TAP driver: cosmetic fixes
  cosmetics: fix typo in a user-facing message in tests
  automake: account for perl hash order randomization
  tests: avoid use of intervals to capitalize letters
  cosmetics: untabify the install-sh script
  install-sh: assume that "set -f" and "set +f" work...
  install-sh: assume ${var:-value} works as expected
  install-sh: assume 'dirname' is available and working correctly
  distcheck: don't allow overriding of --prefix and --srcdir by the user
  tests: expose bug#14991 (relates to 'distcheck')
  tests: fix spurious failure when zip is present but unzip is not
  tests: fix spurious failure due to localization issues
  NEWS: update with the changes since v1.14
  docs: correct typos in the fix-timestamp.sh script
  python: byte-compile nobase_*_PYTHON files only once
  cosmetics: typofix in the 'missing' script
  test: avoid false positives in 'cc-no-c-o' script
  test harness: improve catching of usage errors in script 'test-driver'
  tests: fix a spurious failure on NetBSD-current
  am-ft: make the environment available earlier
  NEWS: post-release tweaks (for 1.14.x series)
  tests: avoid a spurious failure on MacOS X 10.6.8
  tests: don't risk hanging on the 'cl' requirement
  post-release: micro version bump (1.14a)
  post-release: micro version bump (1.14.0a)
  release: stable minor release 1.14

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoupdate copyright years in all files
Stefano Lattarini [Fri, 19 Dec 2014 21:50:20 +0000 (22:50 +0100)] 
update copyright years in all files

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoWhen computing lispdir, don't load emacs site wide init file.
Andrew Burgess [Wed, 30 Jul 2014 16:41:15 +0000 (17:41 +0100)] 
When computing lispdir, don't load emacs site wide init file.

When computing the lispdir emacs was previously invoked with the '-q'
option to avoid loading the users initialisation files, however, the
site wide initialisation file was still loaded, in some cases this can
cause emacs to hang, with the result that a configure can also hang.

The lisp code that aclocal causes to be executed reduces the load-path
list (in emacs) to empty.  The load-path is used by emacs to find
packages which it wants to load.  Currently, if emacs tries to auto
load a package during shut down, and the package is not found, then
emacs will hang.  This does seem like an emacs bug, but protecting
against this in aclocal is simply a case of not loading the site wide
initialisation file.

In this patch then the '-q' option to emacs is replaced with '-Q',
this has the same, the '-Q' option is similar to '-q --no-site-file
--no-splash'.

* doc/automake.texi (Hard-Coded Install Paths): Update explanation of
emacs code used to get lispdir.
* m4/lispdir.m4 (AM_PATH_LISPDIR): Update emacs flags.

Copyright-paperwork-exempt: yes
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoPATH: quote $(PATH_SEPARATOR) as well
KO Myung-Hun [Fri, 7 Nov 2014 14:41:28 +0000 (23:41 +0900)] 
PATH: quote $(PATH_SEPARATOR) as well

On OS/2, $(PATH_SEPARATOR) is ';'. Without quote, it is recognized as
a mark of end of sentence.

* Makefile.am: quote $(PATH_SEPARATOR) as well.
* t/Makefile.inc: Likewise.

Copyright-paperwork-exempt: yes
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoImprove detection of GNU make, avoiding "Arg list too long" errors.
Stefano Lattarini [Fri, 19 Dec 2014 14:10:09 +0000 (15:10 +0100)] 
Improve detection of GNU make, avoiding "Arg list too long" errors.

Such errors could take place when the main makefile included too many
sub-makefiles, making $(MAKEFILE_LIST) too long and causing the
recipes $(am__is_gnu_make) to exceed the shell's command-line length
limits.  This is not a theoretical issue: it could happen for projects
having lots of C/C++ sources and using automatic dependency tracking,
which created an included .Po sub-makefile for each of such sources.

Fixes http://debbugs.gnu.org/18744

* lib/am/header-vars.am (am__is_gnu_make): Fix the logic to avoid
the use of $(MAKEFILE_LIST).
* NEWS: Update.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMerge branch 'minor'
Stefano Lattarini [Fri, 19 Dec 2014 12:31:46 +0000 (13:31 +0100)] 
Merge branch 'minor'

* minor:
  Fix stupid typo in test, causing spurious failure
  sync: update third-part files from upstream
  Make sure AM_INIT_AUTOMAKE has a trailing newline
  dist: adjust warning messages about shar and tarZ deprecation
  docs: improve description of ${PACKAGE}, ${VERSION}, and similar variables

10 years agoMerge branch 'micro' into minor
Stefano Lattarini [Fri, 19 Dec 2014 12:31:21 +0000 (13:31 +0100)] 
Merge branch 'micro' into minor

* micro:
  Fix stupid typo in test, causing spurious failure

10 years agoFix stupid typo in test, causing spurious failure
Stefano Lattarini [Fri, 19 Dec 2014 12:30:36 +0000 (13:30 +0100)] 
Fix stupid typo in test, causing spurious failure

* t/aminit-trailing-dnl-comment-pr16841.sh: s/greop/grep/

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMerge branch 'micro' into minor
Stefano Lattarini [Fri, 19 Dec 2014 12:09:39 +0000 (13:09 +0100)] 
Merge branch 'micro' into minor

* micro:
  sync: update third-part files from upstream
  Make sure AM_INIT_AUTOMAKE has a trailing newline
  dist: adjust warning messages about shar and tarZ deprecation
  docs: improve description of ${PACKAGE}, ${VERSION}, and similar variables

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMerge branch 'pr16841' into micro
Stefano Lattarini [Fri, 19 Dec 2014 11:45:16 +0000 (12:45 +0100)] 
Merge branch 'pr16841' into micro

* pr16841:
  Make sure AM_INIT_AUTOMAKE has a trailing newline

10 years agosync: update third-part files from upstream
Stefano Lattarini [Fri, 19 Dec 2014 11:43:47 +0000 (12:43 +0100)] 
sync: update third-part files from upstream

* lib/config.guess: This.
* lib/config.sub: And this.
* lib/gitlog-to-changelog: And this.
* lib/gnupload: And this.
* lib/update-copyright: And this.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMake sure AM_INIT_AUTOMAKE has a trailing newline
Stefano Lattarini [Fri, 19 Dec 2014 10:44:12 +0000 (11:44 +0100)] 
Make sure AM_INIT_AUTOMAKE has a trailing newline

This used to be the case until Automke 1.13, but we broke it in
Automake 1.14 (see commit v1.13.1-71-gf78b0f0).  This caused
issues like http://debbugs.gnu.org/16841

* m4/init.m4 (AM_INIT_AUTOMAKE): Adjust.
* t/aminit-trailing-dnl-comment-pr16841.sh: New test.
* t/list-of-tests.mk: Add it.
* NEWS, THANKS: Update.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMerge branches 'dist-warn-pr19108' and 'docs-pr16623' into micro
Stefano Lattarini [Fri, 19 Dec 2014 10:09:45 +0000 (11:09 +0100)] 
Merge branches 'dist-warn-pr19108' and 'docs-pr16623' into micro

* dist-warn-pr19108:
  dist: adjust warning messages about shar and tarZ deprecation

* docs-pr16623:
  docs: improve description of ${PACKAGE}, ${VERSION}, and similar variables

10 years agodist: adjust warning messages about shar and tarZ deprecation
Aharon Robbins [Fri, 19 Dec 2014 10:08:15 +0000 (11:08 +0100)] 
dist: adjust warning messages about shar and tarZ deprecation

They were swapped.  Reported in http://debbugs.gnu.org/19108.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agodocs: improve description of ${PACKAGE}, ${VERSION}, and similar variables
Stefano Lattarini [Wed, 17 Dec 2014 19:45:47 +0000 (20:45 +0100)] 
docs: improve description of ${PACKAGE}, ${VERSION}, and similar variables

In particular, suggesting that $PACKAGE and $VERSION should be aliases of
the $PACKAGE_TARNAME and $PACKAGE_VERSION definitions coming from AC_INIT,
and not be defined via an obsolete 2-argument invocation of AM_INIT_AUTOMAKE;
and why that is the best default, given all our historical baggage.

See discussion in http://debbugs.gnu.org/16623 for more information and
background.

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

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMerge branch 'minor'
Stefano Lattarini [Wed, 17 Dec 2014 17:21:04 +0000 (18:21 +0100)] 
Merge branch 'minor'

* minor:
  Fix dumb logic error preventing $install_sh from being be overridden
  Automake docs: fix typos and use of British English
  Expose automake bug#19311
  build: fix race in parallel builds
  build: fix race in parallel builds

10 years agoFix dumb logic error preventing $install_sh from being be overridden
Thomas Jahns [Thu, 7 Aug 2014 09:03:06 +0000 (11:03 +0200)] 
Fix dumb logic error preventing $install_sh from being be overridden

* m4/install-sh.m4: Here.
* THANKS: Update.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoMerge branches 'pr19311' and 'micro' into minor
Stefano Lattarini [Wed, 17 Dec 2014 16:53:32 +0000 (17:53 +0100)] 
Merge branches 'pr19311' and 'micro' into minor

* pr19311:
  Expose automake bug#19311
  build: fix race in parallel builds

* micro:
  Automake docs: fix typos and use of British English
  build: fix race in parallel builds

10 years agoAutomake docs: fix typos and use of British English
Karl Berry [Wed, 17 Dec 2014 16:47:59 +0000 (17:47 +0100)] 
Automake docs: fix typos and use of British English

* doc/automake.texi: Here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agoExpose automake bug#19311
Stefano Lattarini [Wed, 17 Dec 2014 14:14:16 +0000 (15:14 +0100)] 
Expose automake bug#19311

AC_PROG_CC called before AC_CONFIG_AUX_DIR can silently force wrong
$ac_aux_dir definition.

* t/auxdir-pr19311.sh: New.
* t/list-of-tests.mk: Add it as an XFAIL test.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
10 years agobuild: fix race in parallel builds
Paul Eggert [Sat, 23 Aug 2014 14:55:28 +0000 (07:55 -0700)] 
build: fix race in parallel builds

Reported by Friedrich Beckmann in: http://bugs.gnu.org/18301
* lib/am/texi-vers.am (?DIRSTAMP?): Put the process-ID into the
temporary file name.  Use a similar temporary in the source dir.

10 years agobuild: fix race in parallel builds
Paul Eggert [Sat, 23 Aug 2014 14:55:28 +0000 (07:55 -0700)] 
build: fix race in parallel builds

Reported by Friedrich Beckmann in: http://bugs.gnu.org/18301
* lib/am/texi-vers.am (?DIRSTAMP?): Put the process-ID into the
temporary file name.  Use a similar temporary in the source dir.

11 years agoMerge branch 'minor'
Stefano Lattarini [Tue, 22 Apr 2014 20:48:53 +0000 (21:48 +0100)] 
Merge branch 'minor'

* minor:
  init: ensure $ac_aux_dir is defined before being used

11 years agoinit: ensure $ac_aux_dir is defined before being used
Stefano Lattarini [Mon, 21 Apr 2014 16:12:41 +0000 (17:12 +0100)] 
init: ensure $ac_aux_dir is defined before being used

Since we use '$ac_aux_dir' to define '$am_aux_dir', we need
to ensure the former has been initialized before we try to
define the latter, otherwise the definition:

   am_aux_dir=`cd $ac_aux_dir && pwd`

will set '$am_aux_dir' to '$HOME', likely causing weird and
unexpected behaviours.

This change fixes automake bug#15981.

* m4/auxdir.m4 (AM_AUX_DIR_EXPAND): AC_REQUIRE expansion
of 'AC_CONFIG_AUX_DIR_DEFAULT'. Fix redundant comment and
AC_PREREQ, add extra quoting around '$ac_aux_dir'.
* t/auxdir-pr15981.sh: New test.
* t/auxdir-cc-pr15981.sh: Likewise.
* t/list-of-tests.mk (handwritten_TESTS): Add them.
* THANKS, NEWS: Update.
* bin/automake.in: Fix a harmless typo in comments, that
I happened to notice while writing this patch.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoMerge branch 'minor'
Stefano Lattarini [Mon, 21 Apr 2014 15:05:09 +0000 (16:05 +0100)] 
Merge branch 'minor'

* minor:
  plans: enabling subdir-object by default is blocked on bug#13928

11 years agoplans: enabling subdir-object by default is blocked on bug#13928
Stefano Lattarini [Mon, 21 Apr 2014 14:31:49 +0000 (15:31 +0100)] 
plans: enabling subdir-object by default is blocked on bug#13928

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agomaint: update copyright (for files in 'master' only)
Stefano Lattarini [Mon, 21 Apr 2014 14:13:58 +0000 (15:13 +0100)] 
maint: update copyright (for files in 'master' only)

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoMerge branch 'minor'
Stefano Lattarini [Mon, 21 Apr 2014 14:12:29 +0000 (15:12 +0100)] 
Merge branch 'minor'

* minor:
  maint: update copyright years
  maint: sync files from upstream ("make fetch")

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