]> git.ipfire.org Git - thirdparty/automake.git/log
thirdparty/automake.git
12 years agoMerge branch 'maint'
Stefano Lattarini [Sun, 19 May 2013 20:18:54 +0000 (22:18 +0200)] 
Merge branch 'maint'

* maint:
  tests: fix a spurious failure on NetBSD 5.1
  texi: build version.texi and stamp-vti in srcdir
  tests: fix a botched heading comment
  tests: fix another spurious with FreeBSD make
  tests: fix a spurious failure with FreeBSD make

12 years agotests: fix a spurious failure on NetBSD 5.1
Stefano Lattarini [Sun, 19 May 2013 20:10:23 +0000 (22:10 +0200)] 
tests: fix a spurious failure on NetBSD 5.1

* t/dist-shar.sh ($required): Also require the 'unshar' program.
Apparently, NetBSD has a 'shar' program but not the corresponding
'unshar' one.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agotexi: build version.texi and stamp-vti in srcdir
Stefano Lattarini [Sun, 19 May 2013 14:48:19 +0000 (16:48 +0200)] 
texi: build version.texi and stamp-vti in srcdir

Do so even when the 'info-in-builddir' option is present, or when
the corresponding '*.info' files are listed in $(CLEANFILES) or in
$(DISTCLEANFILES).

This fixes failures in the following tests, when they are run with
$MAKE pointing to FreeBSD make:

    - txinfo-nodist-info.sh
    - txinfo23.sh
    - txinfo24.sh
    - txinfo28.sh
    - txinfo25.sh

BTW, notice that the test 'txinfo-builddir.sh' fails with FreeBSD make
as well, but that is due to a known FreeBSD make VPATH issue (the same
described in automake bug#7884).  But that is not a regression, since
the 'info-in-builddir' option will be new in Automake 1.14.  Moreover,
we already warn in the manual that the use of that option can indeed
cause problems with VPATH builds done by non-GNU make.

* bin/automake.in (handle_texinfo_helper): New local variable
'$soutdir'.  Use it instead of '$outdir' where appropriate (in
particular, in the transform used on file 'texi-vers.am'.
* t/txinfo-builddir.sh: Adjust to avoid spurious failures.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agotests: fix a botched heading comment
Stefano Lattarini [Sun, 19 May 2013 10:24:48 +0000 (12:24 +0200)] 
tests: fix a botched heading comment

* t/parallel-tests-recheck-pr11791.sh: Here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agotests: fix another spurious with FreeBSD make
Stefano Lattarini [Sun, 19 May 2013 10:22:22 +0000 (12:22 +0200)] 
tests: fix another spurious with FreeBSD make

* t/parallel-tests-recheck-pr11791.sh: Here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agotests: fix a spurious failure with FreeBSD make
Stefano Lattarini [Sat, 18 May 2013 22:07:33 +0000 (00:07 +0200)] 
tests: fix a spurious failure with FreeBSD make

Failures due to known VPATH support issues in that make implementation
(the same issues that have been causing the long-standing bug#7884).

* t/ltlibsrc.sh: Adjust.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agotests: fix a spurious failure with FreeBSD make
Stefano Lattarini [Sat, 18 May 2013 22:09:30 +0000 (00:09 +0200)] 
tests: fix a spurious failure with FreeBSD make

Failures due to known VPATH support issues in that make implementation
(the same issues that have been causing the long-standing bug#7884).

* t/lex-multiple.sh: Adjust.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoMerge branch 'subdir-objects-work'
Stefano Lattarini [Sat, 18 May 2013 18:28:20 +0000 (20:28 +0200)] 
Merge branch 'subdir-objects-work'

* subdir-objects-work:
  depend: reduce code duplication, de-uglify make verbose output
  depend: prefer $(...) over `...` in Cygwin-specific recipes
  depend: reduce code duplication
  depend: a preparatory refactoring
  depend: refactor and remove code duplication
  Automake::Language: drop unused fields 'compile_flag' and 'output_flag'
  depend: assume '-c' compiler flag always means to produce object files
  depend: assume we can always pass '-o' to the C compiler
  cleanup: having subdir-objects mandatory allow us some simplifications
  subdir-objects: enable unconditionally

12 years agoMerge branch 'maint'
Stefano Lattarini [Sat, 18 May 2013 17:27:28 +0000 (19:27 +0200)] 
Merge branch 'maint'

* maint:
  lisp: fix a failure with Solaris /usr/xpg4/bin/sh
  tests: sanitize 'unset' usages
  tests: fix some botched/outdated comments
  tests: use perl, not find+rm, to remove temporary directories

12 years agoMerge branch 'micro' into maint
Stefano Lattarini [Sat, 18 May 2013 13:23:20 +0000 (15:23 +0200)] 
Merge branch 'micro' into maint

* micro:
  lisp: fix a failure with Solaris /usr/xpg4/bin/sh
  tests: sanitize 'unset' usages
  tests: fix some botched/outdated comments
  tests: use perl, not find+rm, to remove temporary directories

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agolisp: fix a failure with Solaris /usr/xpg4/bin/sh
Stefano Lattarini [Sat, 18 May 2013 11:35:16 +0000 (13:35 +0200)] 
lisp: fix a failure with Solaris /usr/xpg4/bin/sh

* lib/am/lisp.am (.el.elc): By initializing the 'am__dir' properly
here.  For most shells, the lacking initialization, while technically
incorrect, didn't cause any issue in practice, because in those shells
"test -d" returns an exit status of 0. But with /usr/xpg4/bin/sh, the
shell complains like this: "test: argument expected", and returns a
non-zero exit status.  This caused testsuite failures in several lisp
tests.
Also, while we are at it, use more proper quoting in the recipe, to
ensure a missing initialization to now be caught by more forgiving
shells as well.
* NEWS: Update.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agotests: sanitize 'unset' usages
Stefano Lattarini [Fri, 17 May 2013 11:45:44 +0000 (13:45 +0200)] 
tests: sanitize 'unset' usages

In some shells (e.g., Solaris 10 /bin/ksh, or NetBSD 5.1 /bin/sh),
"unset VAR" returns a non-zero exit status in case the VAR variable
is already unset.  This doesn't interact well with our usage of
"set -e" in the testsuite.  So far, we've avoided spurious failures
by either explicitly ignoring the exit status from unset:

    unset VAR || :

or explicitly ensuring that a variable is set, before trying to
unset it:

    VAR=; unset VAR

But we can do better, by aliasing the 'unset' command to a custom
function that will take care of these details for us.  This will
avoid us annoying spurious failures in the future, failures that
have already bitten us too much times.  For an example, refer to
commit 'v1.12.2-88-g5b1dae5' of 2012-08-05 (tests: avoid tons of
spurious failures on NetBSD).

* t/ax/test-lib.sh (_am_unset): New function.
(unset): New alias to it.
(_am_exit): Adjust comments.
* t/ax/am-test-lib.sh: No need to temporary disable the 'errexit'
shell flag when unsetting variables that are potentially already
unset.
(am_process_requirements): Adjust to remove a now-useless
workaround related to unset.
* t/aclocal-macrodir.tap: Likewise.
* t/aclocal-macrodirs.tap: Likewise.
* t/auxdir-autodetect.sh: Likewise.
* t/ax/am-test-lib.sh: Likewise.
* t/ax/test-lib.sh: Likewise.
* t/check-tests-in-builddir.sh: Likewise.
* t/dist-formats.tap: Likewise.
* t/distcheck-configure-flags-am.sh: Likewise.
* t/distcheck-configure-flags.sh: Likewise.
* t/java-empty-classpath.sh: Likewise.
* t/javaflags.sh: Likewise.
* t/lflags.sh: Likewise.
* t/lflags2.sh: Likewise.
* t/lisp-flags.sh: Likewise.
* t/lisp6.sh: Likewise.
* t/missing-auxfile-stops-makefiles-creation.sh: Likewise.
* t/parallel-am.sh: Likewise.
* t/parallel-am2.sh: Likewise.
* t/parallel-am3.sh: Likewise.
* t/parallel-tests-log-override-recheck.sh: Likewise.
* t/pkg-config-macros.sh: Likewise.
* t/python-missing.sh: Likewise.
* t/python-too-old.sh: Likewise.
* t/python11.sh: Likewise.
* t/self-check-dir.tap: Likewise.
* t/self-check-report.sh: Likewise.
* t/self-check-seq.tap: Likewise.
* t/silent-configsite.sh: Likewise.
* t/suffix6c.sh: Likewise.
* t/tar-override.sh: Likewise.
* t/tests-environment-and-log-compiler.sh: Likewise.
* t/vala-configure.sh: Likewise.
* t/werror3.sh: Likewise.
* t/yflags-cmdline-override.sh: Likewise.
* t/yflags.sh: Likewise.
* t/yflags2.sh: Likewise.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agotests: fix some botched/outdated comments
Stefano Lattarini [Thu, 16 May 2013 12:49:44 +0000 (14:49 +0200)] 
tests: fix some botched/outdated comments

* t/ax/test-defs.in: Here.  Also, fix a couple of grammaros while at it.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agotests: use perl, not find+rm, to remove temporary directories
Stefano Lattarini [Thu, 16 May 2013 12:18:55 +0000 (14:18 +0200)] 
tests: use perl, not find+rm, to remove temporary directories

The File::Path::rmtree function from perl, if used right, is
more reliable and more portable of our past idiom:

    find $dirs -type d ! -perm -700 -exec chmod u+rwx {} ';';
    rm -rf $$dirs || exit 1

at least of the face of unreadable dirs/files and other similar
permission issues (and we have those in our test directories).

In fact, this change fixes some spurious failures seen in
"make distcheck" on Solaris 10.

* t/ax/deltree.pl: New.
* Makefile.am (EXTRA_DIST): Add it.
(clean-local-check): Use it.
* t/ax/test-lib.sh (rm_rf_): Use it.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agodepend: reduce code duplication, de-uglify make verbose output
Stefano Lattarini [Thu, 10 Jan 2013 20:52:18 +0000 (21:52 +0100)] 
depend: reduce code duplication, de-uglify make verbose output

Verbose output from compilation recipes had been made more messy by
the previous "simplifying" commit v1.13.1d-220-g1fa0c24.  With this
patch, not only we reduce some code duplication, but also improve
that output again, for the joy of users who dislike silent-rules :-)

* lib/am/depend2.am: Use the new '%XSOURCE%' transform, instead of
copying and pasting the idiom for VPATH rewrite emulation over and
over.  Fix some indentation and line-wrapping issues while at it.
* bin/automake.in (handle_languages): Implement the new transform.
* t/silent-nested-vars.sh: Adjust to avoid spurious failures.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agotests: remove remaining exec bits ('master' branch)
Stefano Lattarini [Thu, 16 May 2013 11:48:19 +0000 (13:48 +0200)] 
tests: remove remaining exec bits ('master' branch)

The executable bit gives the impression that the tests are directly
runnable, as with "./t/foo.sh", but it has been a while since that
was the case.  Today, tests are runnable only through "make check"
or "./runtest".

This change is for the 'master' branch (automake 1.99a), and is a
follow-up to commit 'v1.13.2-3-g74017b5', done on the 'micro' branch
(automake 1.13.2a) and to commit 'v1.13.2-221-g0985d67', done on the
'maint' branch (automake 1.13a).

* t/am-prog-mkdir-p.sh: Remove executable bit.
* t/txinfo-no-split.sh: Likewise.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoMerge branch 'maint'
Stefano Lattarini [Thu, 16 May 2013 11:46:17 +0000 (13:46 +0200)] 
Merge branch 'maint'

* maint:
  tests: remove remaining exec bits ('maint' branch)
  tests: remove exec bit from all of them ('micro' branch)
  maint: tests no longer need to have executable bit set
  PLANS: subdir-objects: various updates

12 years agotests: remove remaining exec bits ('maint' branch)
Stefano Lattarini [Thu, 16 May 2013 11:36:49 +0000 (13:36 +0200)] 
tests: remove remaining exec bits ('maint' branch)

The executable bit gives the impression that the tests are directly
runnable, as with "./t/foo.sh", but it has been a while since that
was the case.  Today, tests are runnable only through "make check"
or "./runtest".

This change is for the 'maint' branch (automake 1.13a), and is a
follow-up to commit 'v1.13.2-3-g74017b5', done on the 'micro' branch
(automake 1.13.2a).  It will soon be followed by a similar patch
for the 'master' branch (automake 1.99a).

* t/am-prog-cc-c-o.sh: Remove executable bit.
* t/ccnoco4.sh: Likewise.
* t/dist-shar.sh: Likewise.
* t/dist-tarZ.sh: Likewise.
* t/lex-multiple.sh: Likewise.
* t/preproc-basics.sh: Likewise.
* t/preproc-c-compile.sh: Likewise.
* t/preproc-demo.sh: Likewise.
* t/preproc-errmsg.sh: Likewise.
* t/rm-f-probe.sh: Likewise.
* t/self-check-cc-no-c-o.sh: Likewise.
* t/txinfo-builddir.sh: Likewise.
* t/txinfo-nodist-info.sh: Likewise.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoMerge branch 'micro' into maint
Stefano Lattarini [Thu, 16 May 2013 11:35:45 +0000 (13:35 +0200)] 
Merge branch 'micro' into maint

* micro:
  tests: remove exec bit from all of them ('micro' branch)
  maint: tests no longer need to have executable bit set

12 years agotests: remove exec bit from all of them ('micro' branch)
Stefano Lattarini [Thu, 16 May 2013 10:18:43 +0000 (12:18 +0200)] 
tests: remove exec bit from all of them ('micro' branch)

It gives the impression that they are directly runnable, as with
"./t/foo.sh", but it has been a while since that was the case.  Today,
tests are runnable only through "make check" or "./runtest".

This change is for the 'micro' branch (automake 1.13.2a).  It will
soon be followed by similar patches for the 'maint' branch (automake
1.13a) and the 'master' branch (automake 1.99a).

* t/*.sh, t/*.tap: Remove executable bit.
* maint.mk (sc_tests_executable): Remove.
(syntax_check_rules): Adjust.
* gen-testsuite-part: Set permissions of generated tests to
'444' (-r--r--r--), rather than 555 (-r-xr-xr-x).

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agomaint: tests no longer need to have executable bit set
Stefano Lattarini [Thu, 16 May 2013 10:13:32 +0000 (12:13 +0200)] 
maint: tests no longer need to have executable bit set

It has been a while since they are runnable only through "make check"
or "./runtest", and not directly.

* HACKING: Adjust.
* t/README: Likewise, and updated the surrounding text to get rid of
obsolete statements and advices.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoPLANS: subdir-objects: various updates
Stefano Lattarini [Wed, 15 May 2013 22:21:20 +0000 (00:21 +0200)] 
PLANS: subdir-objects: various updates

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoMerge branch 'maint'
Stefano Lattarini [Wed, 15 May 2013 21:31:54 +0000 (23:31 +0200)] 
Merge branch 'maint'

* maint:
  post-release: micro version bump (1.13.2a)
  release: stable micro release 1.13.2
  vala tests: skip in a cross compiler setup
  HACKING: miscellaneous fixes, updates and enhancements
  NEWS: minor improvements to wording (about new versioning scheme)
  THANKS: update Akim's e-mail address
  tests: less uses of "make -e"; avoid spurious failures in 'check-cc-no-c-o'
  build: be more respectful of user-specified verbosity
  check-cc-no-c-o: unify initializations in a single place
  check-cc-no-c-o: avoid a spurious failure

12 years agoMerge branch 'micro' into maint
Stefano Lattarini [Wed, 15 May 2013 20:54:15 +0000 (22:54 +0200)] 
Merge branch 'micro' into maint

* micro:
  post-release: micro version bump (1.13.2a)
  release: stable micro release 1.13.2
  vala tests: skip in a cross compiler setup
  HACKING: miscellaneous fixes, updates and enhancements
  NEWS: minor improvements to wording (about new versioning scheme)

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agopost-release: micro version bump (1.13.2a)
Stefano Lattarini [Wed, 15 May 2013 20:44:43 +0000 (22:44 +0200)] 
post-release: micro version bump (1.13.2a)

* configure.ac, m4/amversion.m4: Bump version: 1.13.2 -> 1.13.2a

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agorelease: stable micro release 1.13.2 v1.13.2
Stefano Lattarini [Wed, 15 May 2013 17:43:39 +0000 (19:43 +0200)] 
release: stable micro release 1.13.2

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

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agovala tests: skip in a cross compiler setup
Stefano Lattarini [Wed, 15 May 2013 20:05:21 +0000 (22:05 +0200)] 
vala tests: skip in a cross compiler setup

The "vala + pkg-config" doesn't interact well with cross-compilation:
<https://mail.gnome.org/archives/vala-list/2012-September/msg00094.html>

That is causing annoying failures in our testsuite when it's run in
cross-compilation mode.  It's not worth trying too be overly smart and
work around these problems; just skip the affected tests instead.

* t/ax/am-test-lib.sh (require_tool): A new requirement 'valac', telling
that the test needs to compile Vala-generated C files.  In particular,
this causes the test to be skipped when using a cross-compiler.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoHACKING: miscellaneous fixes, updates and enhancements
Stefano Lattarini [Wed, 15 May 2013 17:34:41 +0000 (19:34 +0200)] 
HACKING: miscellaneous fixes, updates and enhancements

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoNEWS: minor improvements to wording (about new versioning scheme)
Stefano Lattarini [Wed, 15 May 2013 17:13:13 +0000 (19:13 +0200)] 
NEWS: minor improvements to wording (about new versioning scheme)

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoTHANKS: update Akim's e-mail address
Stefano Lattarini [Wed, 15 May 2013 13:55:44 +0000 (15:55 +0200)] 
THANKS: update Akim's e-mail address

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agodepend: prefer $(...) over `...` in Cygwin-specific recipes
Stefano Lattarini [Thu, 10 Jan 2013 20:42:28 +0000 (21:42 +0100)] 
depend: prefer $(...) over `...` in Cygwin-specific recipes

On Cygwin, we can happily assume only POSIX-conforming shells exist.
This commit is useless by itself, but is useful as a preparatory
refactoring in view of a future change.

* lib/am/depend2.am: In recipes for producing '.obj' objects, use
the POSIX form $(...) for command substitution, rather than the
classic Bourne one `...`.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agodepend: reduce code duplication
Stefano Lattarini [Thu, 10 Jan 2013 20:31:57 +0000 (21:31 +0100)] 
depend: reduce code duplication

Just a simplification; no semantic change is intended.

* lib/am/depend2.am (am__set_depbase): New.  Use it in all the three
flavours of recipes (.o, .obj, .lo), instead of duplicating its code.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agodepend: a preparatory refactoring
Stefano Lattarini [Thu, 10 Jan 2013 19:47:57 +0000 (20:47 +0100)] 
depend: a preparatory refactoring

This is just a preparatory change in view of a future refactoring.
No semantic change is intended.

* lib/am/depend2.am: Adjust; for example, using '$@' in all recipes
to indicate the output file (rather than recipe-specific transforms
like '%OBJ%' and '%LTOBJ%'), and not assuming to know the exact
file extension of the output file (e.g., whether it's '.o' or '.lo').

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agodepend: refactor and remove code duplication
Stefano Lattarini [Thu, 10 Jan 2013 17:04:33 +0000 (18:04 +0100)] 
depend: refactor and remove code duplication

* lib/am/depend2.am: Here.  The obsolescent comments removed from this
same file in commit 'v1.13.1-42-g8f06bfb' of 2012-01-09, "depend2.am: fix
comments on verbosity of compilation rules", gave the rationale for why
that code duplication was there in the first place (rationale that, like
those comments, has been obsolete by the silent-rules introduction).
* bin/automake.in: Given the refactoring in 'depend2.am', there is no
longer need to add extra trailing whitespace to the entries of the
'%sourceflags' hash (which are used for the '%SOURCEFLAG%' transform
when 'depend2.am' is processed.
* t/fort2.sh: Adjust to avoid spurious failures.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoAutomake::Language: drop unused fields 'compile_flag' and 'output_flag'
Stefano Lattarini [Thu, 10 Jan 2013 18:54:13 +0000 (19:54 +0100)] 
Automake::Language: drop unused fields 'compile_flag' and 'output_flag'

They are unused after the recent flurry of changes.  This is just a
simplification; no semantic change is intended.

* lib/Automake/Language.pm (Class::Struct): Remove unused fields here.
* bin/automake.in: And here, in all the 'register_language()' invocations.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agodepend: assume '-c' compiler flag always means to produce object files
Stefano Lattarini [Thu, 10 Jan 2013 18:48:14 +0000 (19:48 +0100)] 
depend: assume '-c' compiler flag always means to produce object files

Rather than fully-fledged executables.  This is the case for all the
compilers of all languages supported by Automake.

This is just a simplification; no semantic changes are intended.

* bin/automake.in (handle_languages): Drop transform '%-c%'.
* lib/am/depend2.am: Adjust to just assume the '%-c%' transform
expands to "-c".

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agodepend: assume we can always pass '-o' to the C compiler
Stefano Lattarini [Thu, 10 Jan 2013 18:38:58 +0000 (19:38 +0100)] 
depend: assume we can always pass '-o' to the C compiler

This is the case after the change in commit v1.13.1-56-g34001a9 of
2013-01-09 (compile: use 'compile' script when "-c -o" is used with
losing compilers).

This is just a simplification; no semantic changes are intended.

* bin/automake.in (handle_languages): Drop transform '%-o%', and
definitions of '$output_flag'.
* lib/am/depend2.am: Adjust to just assume the '?-o?' transform is
true, and the '%-o%' transform expands to "-o".

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agocleanup: having subdir-objects mandatory allow us some simplifications
Stefano Lattarini [Tue, 8 Jan 2013 13:04:00 +0000 (14:04 +0100)] 
cleanup: having subdir-objects mandatory allow us some simplifications

Few minor cleanups made possible by earlier changes, plus other minor
cleanups triggered in cascade.  No semantic change is intended.

This is a follow-up on previous commit 'v1.13.1d-214-g3ad07d2', and
an adjusted backport of Automake-NG commit 'v1.12.1-315-gc97d41b'
of 2012-06-08 ([ng] cleanup: after enabling of subdir-objects
unconditionally).

* bin/automake.in (LANG_IGNORE, LANG_SUBDIR): Remove.
(handle_languages): Drop the '%DEPBASE%' transform when processing
the '$rule_file'.
(register_language ('name' => 'vala', ...)): Add '.vapi' to the entry
'extensions', and simplify the entry 'output_extensions' to point to
a dummy subroutine (since it wasn't really used anyway).
(handle_single_transform): No longer expect the 'lang_*_rewrite'
subroutines to return a 'LANG_*' constant, but only a transformed
extension, if required.  To decide whether further processing of the
source file should be stopped, rely on a new set of 'lang_*_ignore'
subroutines, defaulting to a subroutine that returns false.
Accordingly, don't special case the handling of '.vapi' files anymore,
instead rely on ...
(lang_vala_ignore, lang_header_ignore): ... these new subroutines to
avoid extra processing of C/C++ headers and Vala '.vapi' headers.
(lang_java_rewrite): Remove.
Remove an outdated comment.
* lib/am/depend2.am: Partial rewrite to reduce code duplication and
drop use of the '%DEPBASE%' transform.
* t/compile_f_c_cxx.sh: Adjust.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agosubdir-objects: enable unconditionally
Stefano Lattarini [Wed, 6 Jun 2012 08:27:46 +0000 (10:27 +0200)] 
subdir-objects: enable unconditionally

See automake bug#13378.

The fact that Automake-generated Makefiles places compiled object files
in the current directory by default, also when the corresponding source
file is in a subdirectory, is basically an historical accident, due to
the fact that the 'subdir-objects' option had only been introduced in
April 1999, starting with commit 'user-dep-gen-branchpoint-56-g88b5959',
and never made the default, likely to avoid backwards-compatibility
issues.

Since we believe the behaviour enabled by the 'subdir-objects' is the
only natural and most useful one, we make it the only only one available,
simplifying the Automake implementation and APIs a little in the process.

This change is basically an adjusted backport of Automake-NG commit
'v1.12.1-313-g14fe163' of 2012-06-07, "[ng] subdir-objects: enable
unconditionally".

* NEWS: Update.
* doc/automake.texi (Program and Library Variables): The output
object files are no longer placed in the current directory by
default, but rather in the same directory of the source file.
(LIBOBJS): Now the $(LIBOBJS) and $(ALLOCA) variables can also
be used outside of the directory where their sources lie.
(List of Automake options): Report the 'subdir-objects' option
as a no-op, existing only for compatibility with older versions
of Automake.
Other related minor adjustments.
* bin/automake.in (LANG_PROCESS): Remove, it's no longer needed.
(handle_languages): Don't test whether option 'subdir-objects'
is set (just assume it is), and do not use the '%SUBDIROBJ%'
transform when processing '.am' fragments.
(lang_sub_obj): Delete, it would just return 'LANG_SUBDIR'
unconditionally now.
(lang_lex_rewrite): Adjust.  Don't test whether the option
'subdir-objects' is set (just assume it is).
(lang_yacc_rewrite): Likewise.
(handle_single_transform): Likewise.  Remove an obsolete
comment.  Add a proper "FIXME" comments about a fragment
of code that might have become dead code now.
(handle_LIBOBJS_or_ALLOCA): Simplify assuming that the option
'subdir-objects' is always set.  Accordingly, there's no need
to warn anymore if '$(LIBOBJS)' or '$(ALLOCA)' are used outside
the '$config_libobj_dir' directory (as specified by autoconf
macro 'AC_CONFIG_LIBOBJ_DIR').
* lib/am/depend2.am: Assume the '?SUBDIROBJ?' Automake time
conditional is always true, and remove its uses accordingly.
* t/compile_f_c_cxx.sh: Adjust.
* t/cscope.tap: Likewise.
* t/depcomp8a.sh: Likewise.
* t/depcomp8b.sh: Likewise.
* t/libtool3.sh: Likewise.
* t/ltlibsrc.sh: Likewise.
* t/pr401.sh: Likewise.
* t/pr401b.sh: Likewise.
* t/pr401c.sh: Likewise.
* t/subobj.sh: Likewise.
* t/lex-line.sh: Likewise.
* t/yacc-line.sh: Likewise.
* t/yacc5.sh: Likewise.
* t/vala-libs.sh: Likewise.
* t/fort4.sh: Likewise, and extend a bit.
* t/fort5.sh: Likewise.
* t/gcj.sh: Likewise.
* t/subpkg.sh: Likewise.
* t/subpkg-yacc.sh: Likewise.
* t/xsource.sh: Likewise.
* t/libobj20a.sh: Remove as obsolete.
* t/libobj20b.sh: Adjust heading comments.
* t/libobj20c.sh: Likewise.
* t/subobj4.sh: Remove as obsolete.
* t/sourcefile-in-subdir.sh: Likewise.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agotests: less uses of "make -e"; avoid spurious failures in 'check-cc-no-c-o'
Stefano Lattarini [Tue, 14 May 2013 13:50:12 +0000 (15:50 +0200)] 
tests: less uses of "make -e"; avoid spurious failures in 'check-cc-no-c-o'

That is, when the testsuite is run using a fake C compiler that doesn't
grasp the '-c' and '-o' options together.

* t/instdir-prog.sh: Adjust.
* t/instdir-ltlib.sh: Likewise.
* t/python-virtualenv.sh: Likewise.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agobuild: be more respectful of user-specified verbosity
Stefano Lattarini [Tue, 14 May 2013 12:18:00 +0000 (14:18 +0200)] 
build: be more respectful of user-specified verbosity

* t/Makefile.in (check-cc-no-c-o, check-no-trailing-backslash-in-recipes,
installcheck-testsuite, perf): Here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agocheck-cc-no-c-o: unify initializations in a single place
Stefano Lattarini [Tue, 14 May 2013 11:40:48 +0000 (13:40 +0200)] 
check-cc-no-c-o: unify initializations in a single place

* t/ax/test-defs.in: That is, by setting CC and GNU_CC here, in accord
with the value of the variable 'AM_TESTSUITE_SIMULATING_NO_CC_C_O'.
* t/Makefile.in (check-cc-no-c-o) : No need to reset CC and GNU_CC any
longer in the recursive "make check" invocation.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agocheck-cc-no-c-o: avoid a spurious failure
Stefano Lattarini [Tue, 14 May 2013 11:17:50 +0000 (13:17 +0200)] 
check-cc-no-c-o: avoid a spurious failure

* t/am-prog-cc-c-o.sh: In this test, by relying on the knowledge
that we are running under the aegis of the 'check-cc-no-c-o'
maintainer-specific target, knowledge given us by ...
* t/Makefile.in (check-cc-no-c-o) : ... the new environment
variable 'AM_TESTSUITE_SIMULATING_NO_CC_C_O', set to a value
of "yes" by this rule.
* t/ax/test-defs.in: Initialize the new variable to "no" by
default, and add an explanatory comment.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoMerge branch 'maint'
Stefano Lattarini [Tue, 14 May 2013 10:15:07 +0000 (12:15 +0200)] 
Merge branch 'maint'

* maint:
  build: fixup for building in a VPATH setup

12 years agobuild: fixup for building in a VPATH setup
Stefano Lattarini [Tue, 14 May 2013 10:12:44 +0000 (12:12 +0200)] 
build: fixup for building in a VPATH setup

* bin/Makefile.inc (%D%/automake, %D%/aclocal): Make sure that the
directory where the targets scripts are going to be built exists,
before trying to create said scripts.

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

* maint:
  Use AC_DEFUN_ONCE to define AM_PROG_CC_C_O
  compile: avoid AC_PROG_CC messy rewrite
  options: tiny simplification in dealing with incompatible versions

12 years agoUse AC_DEFUN_ONCE to define AM_PROG_CC_C_O
Nick Bowler [Sat, 11 May 2013 09:45:16 +0000 (11:45 +0200)] 
Use AC_DEFUN_ONCE to define AM_PROG_CC_C_O

If AM_PROG_CC_C_O is expanded multiple times, and the compiler does not
support -c and -o together, each expansion of the macro will prepend
the compile script to CC.  This can result in the compile script
invoking the compile script, which at best pointless and silly.
Fortunately, there does not appear to be any serious problems as the
first compile invocation strips out -o options, causing subsequent
invocations of the script to merely exec their arguments.

Other than fixing the above, this should not normally cause any changes
to the resulting configure script, except in the (hopefully rare) case
where AM_PROG_CC_C_O is directly expanded (i.e., *not* using AC_REQUIRE)
in the body of a macro defined with AC_DEFUN.  In that case, the use of
AC_DEFUN_ONCE may cause the expansion of AM_PROG_CC_C_O to appear
earlier in the configure script.

* m4/minuso.m4: Change the definition of AM_PROG_CC_C_O to use
AC_DEFUN_ONCE, avoiding problems caused by multiple expansions.

Copyright-paperwork-exempt: yes
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agocompile: avoid AC_PROG_CC messy rewrite
Stefano Lattarini [Sat, 11 May 2013 09:03:41 +0000 (11:03 +0200)] 
compile: avoid AC_PROG_CC messy rewrite

Instead, add an hook to AC_OUTPUT to have AM_PROG_CC_C_O invoked
automatically.

See also the long-winded discussion about automake bug#13378.

* m4/minuso.m4 (AM_PROG_CC_C_O): Bring back the old implementation,
from commit v1.13.1-55-g1ab8fb6.
* m4/init.m4 (AC_PROG_CC): Remove this horrible, hacky re-write.
* (AM_INIT_AUTOMAKE): Arrange for AM_PROG_CC_C_O to be called if
necessary.
* t/am-prog-cc-c-o.sh: Adjust to avoid spurious failure.
* t/subobj.sh: Likewise.

Suggested-by: Nick Bowler <nbowler@elliptictech.com>
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agooptions: tiny simplification in dealing with incompatible versions
Stefano Lattarini [Sat, 11 May 2013 08:25:33 +0000 (10:25 +0200)] 
options: tiny simplification in dealing with incompatible versions

* lib/Automake/Options.pm (_process_option_list): Here, when an
incompatible version number option is detected, there's no need
to call error() with the "uniq_scope => US_GLOBAL" switch.
In fact, if the same incompatible version number is specified in
AUTOMAKE_OPTIONS in both (say) 'Makefile.am' and 'sub/Makefile.am',
we want each such erroneous usage reported separately, rather than
just the first time it is encountered (as we'd expect to happen
when "uniq_scope => US_GLOBAL" is used).
Ideally, this change should have been folded into the similar
commit 'v1.13.1d-129-gf7ef16f', but we noticed that too late.
Oh well.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agooptions: consistently use return statuses to report errors (more)
Stefano Lattarini [Fri, 10 May 2013 23:13:46 +0000 (01:13 +0200)] 
options: consistently use return statuses to report errors (more)

This is a follow-up to commit 'v1.13.1d-128-g6e486c5', needed to deal
with errors that are only present in the 'master' branch (while the
reported commit was on the 'maint' branch).

* lib/Automake/Options.pm (_process_option_list): Adjust, where dealing
with the removed options 'dist-shar' and 'dist-tarZ'.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoMerge branch 'maint'
Stefano Lattarini [Fri, 10 May 2013 23:06:58 +0000 (01:06 +0200)] 
Merge branch 'maint'

* maint:
  options: try to report as much errors as possible
  warns: don't tell AM_PROG_MKDIR_P is going to be removed
  refactor: fix few "inverted boolean" usages
  options: better name for an internal function
  options: more consistency in use of return statuses to report errors
  options: tiny simplification in dealing with erroneous opts
  options: consistently use return statuses to report errors
  options: re-enable some sanity checks
  THANKS: update Eric Blake's e-mail address
  NEWS: typofix

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agooptions: try to report as much errors as possible
Stefano Lattarini [Fri, 10 May 2013 22:28:15 +0000 (00:28 +0200)] 
options: try to report as much errors as possible

For example, if two invalid options are used in AUTOMAKE_OPTIONS, don't
report just the first one, but both of them.

* lib/Automake/Options.pm (_process_option_list): Do so by avoiding
early returns in here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoMerge branch 'branch-1.13.2' into maint
Stefano Lattarini [Fri, 10 May 2013 22:16:14 +0000 (00:16 +0200)] 
Merge branch 'branch-1.13.2' into maint

* branch-1.13.2:
  warns: don't tell AM_PROG_MKDIR_P is going to be removed

12 years agowarns: don't tell AM_PROG_MKDIR_P is going to be removed
Stefano Lattarini [Fri, 10 May 2013 21:59:02 +0000 (23:59 +0200)] 
warns: don't tell AM_PROG_MKDIR_P is going to be removed

That is no longer true.  For a more extended rationale, see file
'PLANS/obsolete-removed/am-prog-mkdir-p.txt' in the maint branch
(as of commit v1.13.1d-132-g90ec3fe).

* automake.in (scan_autoconf_traces): So adjust the warning message
here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agorefactor: fix few "inverted boolean" usages
Stefano Lattarini [Fri, 10 May 2013 21:50:25 +0000 (23:50 +0200)] 
refactor: fix few "inverted boolean" usages

In some subroutines, we used a return value of 0 to indicate success,
and a return status of 1 to indicate failure.  That was not very
consistent with the perl interpretation of 0 as a false value and 1 as
a true value.  So we now invert the meaning of the exit statuses.

* lib/Automake/Options.pm (_process_option_list): Here.
(process_global_option_list, process_option_list): And by reflex,
here as well.
* bin/automake.in (handle_options): And here.
(generate_makefile, scan_autoconf_traces): Adjust.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agooptions: better name for an internal function
Stefano Lattarini [Fri, 10 May 2013 21:29:04 +0000 (23:29 +0200)] 
options: better name for an internal function

* lib/Automake/Options.pm (_option_must_be_from_configure): Rename ...
(_option_is_from_configure): ... like this.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agooptions: more consistency in use of return statuses to report errors
Stefano Lattarini [Fri, 10 May 2013 21:08:28 +0000 (23:08 +0200)] 
options: more consistency in use of return statuses to report errors

* lib/Automake/Options.pm (_option_must_be_from_configure): By giving
a proper return status here.
(_process_option_list): And using it here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agooptions: tiny simplification in dealing with erroneous opts
Stefano Lattarini [Fri, 10 May 2013 21:01:27 +0000 (23:01 +0200)] 
options: tiny simplification in dealing with erroneous opts

* lib/Automake/Options.pm (_process_option_list): Here, when an
invalid option is detected, there's no need to call &error with
the "uniq_scope => US_GLOBAL" switch.  In fact, if the same
erroneous option is specified in AUTOMAKE_OPTIONS in both (say)
'Makefile.am' and 'sub/Makefile.am', we want each such erroneous
usage reported separately, rather than just the first time it is
encountered (as happens when "uniq_scope => US_GLOBAL" is used).

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agooptions: consistently use return statuses to report errors
Stefano Lattarini [Fri, 10 May 2013 20:50:54 +0000 (22:50 +0200)] 
options: consistently use return statuses to report errors

* lib/Automake/Options.pm (_process_option_list): Here.
(process_option_list, process_global_option_list): Remove
redundant use of 'return'.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agooptions: re-enable some sanity checks
Stefano Lattarini [Fri, 10 May 2013 20:34:21 +0000 (22:34 +0200)] 
options: re-enable some sanity checks

They had been unwittingly disabled by a slightly incorrect
code ordering.

* lib/Automake/Options.pm (process_option_list): Here.
(process_global_option_list): And here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoTHANKS: update Eric Blake's e-mail address
Stefano Lattarini [Fri, 10 May 2013 20:19:03 +0000 (22:19 +0200)] 
THANKS: update Eric Blake's e-mail address

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoNEWS: typofix
Stefano Lattarini [Fri, 10 May 2013 20:17:43 +0000 (22:17 +0200)] 
NEWS: typofix

Reported-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agodist: remove support for shar and tarZ formats
Stefano Lattarini [Fri, 10 May 2013 19:56:12 +0000 (21:56 +0200)] 
dist: remove support for shar and tarZ formats

See also discussion about automake wishlist bug#13324.

* lib/Automake/Options.pm: Give fatal errors (rather than warnings) if
the 'dist-shar' or 'dist-tarZ' options are used.
* lib/distdir.am: Remove the 'dist-tarZ' and 'dist-shar' targets, and
references to the '.tar.Z' and '.shar' archives.
* bin/automake.in (preprocess_file): Remove 'COMPRESS' and 'SHAR'
transforms.
(handle_dist): Remove lingering references to 'dist-tarZ' and 'dist-shar'
options.
* doc/automake.texi: Adjust, removing references to the removed targets
and distribution formats.
* t/dist-shar.sh: Adjust to expect fatal errors rather than warnings.
* t/dist-tarZ.sh: Likewise.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoMerge branch 'maint'
Stefano Lattarini [Fri, 10 May 2013 19:18:40 +0000 (21:18 +0200)] 
Merge branch 'maint'

* maint:
  news: document new 'subdir-objects' warning
  PLANS: one minor fixlet (mostly cosmetic)
  PLANS: we have already dropped support for split info files in master
  NEWS: fix a reference to Automake 1.14 where Automake 2.0 was intended
  PLANS: fix reference to non-existent 'next' branch
  PLANS: fix botched version reference
  maintcheck: fix two references to old location of aclocal and automake
  dist: deprecated shar and tar+compress formats

12 years agonews: document new 'subdir-objects' warning
Stefano Lattarini [Fri, 10 May 2013 19:17:30 +0000 (21:17 +0200)] 
news: document new 'subdir-objects' warning

* NEWS: Automake 1.14 will warn if a subdir source file is
specified but the 'subdir-objects' option is not given.  This
is done to smooth the transition to Automake 2.0, which will
unconditionally assume the behaviour now given only with the
'subdir-objects' option.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoPLANS: one minor fixlet (mostly cosmetic)
Stefano Lattarini [Fri, 10 May 2013 18:56:07 +0000 (20:56 +0200)] 
PLANS: one minor fixlet (mostly cosmetic)

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoPLANS: we have already dropped support for split info files in master
Stefano Lattarini [Fri, 10 May 2013 18:52:36 +0000 (20:52 +0200)] 
PLANS: we have already dropped support for split info files in master

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoNEWS: fix a reference to Automake 1.14 where Automake 2.0 was intended
Stefano Lattarini [Fri, 10 May 2013 18:35:21 +0000 (20:35 +0200)] 
NEWS: fix a reference to Automake 1.14 where Automake 2.0 was intended

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoPLANS: fix reference to non-existent 'next' branch
Stefano Lattarini [Fri, 10 May 2013 18:09:42 +0000 (20:09 +0200)] 
PLANS: fix reference to non-existent 'next' branch

* PLANS/obsolete-removed/configure.in.txt: Here.  We should refer
to the 'master' branch instead.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoPLANS: fix botched version reference
Stefano Lattarini [Fri, 10 May 2013 18:06:08 +0000 (20:06 +0200)] 
PLANS: fix botched version reference

* PLANS/rm-f-without-args.txt: Here.  The probe checking that "rm -f"
without arguments works will be introduced in Automake 1.14, not in
Automake 1.13.2.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agomaintcheck: fix two references to old location of aclocal and automake
Stefano Lattarini [Fri, 10 May 2013 17:32:20 +0000 (19:32 +0200)] 
maintcheck: fix two references to old location of aclocal and automake

* maintainer/syntax-checks.mk (sc_perl_at_substs): Here: it should
refer to 'bin/automake' and 'bin/aclocal', not 'automake' and
'alocal'.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agodist: deprecated shar and tar+compress formats
Stefano Lattarini [Fri, 10 May 2013 17:22:06 +0000 (19:22 +0200)] 
dist: deprecated shar and tar+compress formats

See also discussion about automake wishlist bug#13324.

* lib/Automake/Options.pm: Give proper warnings in the 'obsolete'
category if the 'dist-shar' or 'dist-tarZ' options are used.
* lib/distdir.am: When the 'dist-tarZ' or 'dist-shar' targets are
invoked, make them give a non-fatal warning.
* doc/automake.texi: Report the new deprecations.
* t/dist-shar.sh: New test.
* t/dist-tarZ.sh: Likewise.
* t/lzma.sh: While at it, rename ...
* t/dist-lzma.sh: ... like this, and tweak it to keep more in
sync with the new tests.
* t/dist-formats.tap: Remove references to deprecated formats.
* t/list-of-tests.mk: Adjust.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoMerge branch 'maint'
Stefano Lattarini [Fri, 10 May 2013 11:33:52 +0000 (13:33 +0200)] 
Merge branch 'maint'

* maint:
  automake: typofix in comments: s/AC_CONFIG_HEADER/AC_CONFIG_HEADERS/
  am: prefer a shorter idiom where possible
  cosmetics: fix few typos, grammaros and missing whitespace
  fixup: remove an obsolete comment
  docs: we still don't have the promised better Java interface
  build: move automake and aclocal in 'bin' subdir
  build: break up monolithic Makefile.am in subdir-specific fragments

+ Extra non-trivial edits:

* m4/Makefile.inc (dist_automake_ac_DATA): Drop lead-dot.m4 and
mkdirp.m4.
* lib/Automake/Makefile.inc (dist_perllib_DATA): Drop Configure_ac.pm.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoMerge branch 'dog-feeding' into maint
Stefano Lattarini [Fri, 10 May 2013 11:31:59 +0000 (13:31 +0200)] 
Merge branch 'dog-feeding' into maint

* dog-feeding:
  build: move automake and aclocal in 'bin' subdir
  build: break up monolithic Makefile.am in subdir-specific fragments

12 years agoMerge branch 'branch-1.13.2' into maint
Stefano Lattarini [Fri, 10 May 2013 11:31:45 +0000 (13:31 +0200)] 
Merge branch 'branch-1.13.2' into maint

* branch-1.13.2:
  automake: typofix in comments: s/AC_CONFIG_HEADER/AC_CONFIG_HEADERS/

12 years agoautomake: typofix in comments: s/AC_CONFIG_HEADER/AC_CONFIG_HEADERS/
Stefano Lattarini [Fri, 10 May 2013 10:13:00 +0000 (12:13 +0200)] 
automake: typofix in comments: s/AC_CONFIG_HEADER/AC_CONFIG_HEADERS/

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoam: prefer a shorter idiom where possible
Stefano Lattarini [Fri, 10 May 2013 08:57:38 +0000 (10:57 +0200)] 
am: prefer a shorter idiom where possible

That is, prefer:

    test -f FILE || do_action

over:

    if test ! -f FILE; then do_action; else :; fi

* lib/am/remake-hdr.am (%CONFIG_H%): Here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoMerge branch 'branch-1.13.2' into maint
Stefano Lattarini [Fri, 10 May 2013 08:53:15 +0000 (10:53 +0200)] 
Merge branch 'branch-1.13.2' into maint

* branch-1.13.2:
  cosmetics: fix few typos, grammaros and missing whitespace
  fixup: remove an obsolete comment
  docs: we still don't have the promised better Java interface

12 years agocosmetics: fix few typos, grammaros and missing whitespace
Stefano Lattarini [Fri, 10 May 2013 08:50:05 +0000 (10:50 +0200)] 
cosmetics: fix few typos, grammaros and missing whitespace

* lib/am/*.am: In comments in some of these files.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agofixup: remove an obsolete comment
Stefano Lattarini [Fri, 10 May 2013 08:35:26 +0000 (10:35 +0200)] 
fixup: remove an obsolete comment

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

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agodocs: we still don't have the promised better Java interface
Stefano Lattarini [Thu, 9 May 2013 18:23:40 +0000 (20:23 +0200)] 
docs: we still don't have the promised better Java interface

Reported by Michael Zucchi:
<http://lists.gnu.org/archive/html/automake/2013-05/threads.html>

See also automake bug#9088.

* doc/automake.texi (Java): Adjust and clarify.
* THANKS: Update.

Reported-by: Michael Zucchi <notzed@gmail.com>
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoMerge branch 'maint'
Stefano Lattarini [Thu, 9 May 2013 18:14:58 +0000 (20:14 +0200)] 
Merge branch 'maint'

* maint:
  maint: re-run "make update-copyright" ...

12 years agomaint: re-run "make update-copyright" ...
Stefano Lattarini [Thu, 9 May 2013 18:13:19 +0000 (20:13 +0200)] 
maint: re-run "make update-copyright" ...

* t/lex-multiple.sh: ... which updates the copyright years
of this test (they were somehow not bumped in the past).

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoMerge branch 'maint'
Stefano Lattarini [Thu, 9 May 2013 18:11:47 +0000 (20:11 +0200)] 
Merge branch 'maint'

* maint:
  tests: avoid spurious failure with older flex (2.5.4)
  announcement: cater to more flexible NEWS format

12 years agotests: avoid spurious failure with older flex (2.5.4)
Stefano Lattarini [Thu, 9 May 2013 17:50:38 +0000 (19:50 +0200)] 
tests: avoid spurious failure with older flex (2.5.4)

That old version is unfortunately still relevant, being the one
installed on NetBSD 5.1.

* t/lex-multiple.sh: Use the '-o' option rather than the longer
equivalent '--outfile'.  The latter is not supported by older
versions of flex (e.g., flex 2.5.4).

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoMerge branch 'branch-1.13.2' into maint
Stefano Lattarini [Thu, 9 May 2013 12:14:00 +0000 (14:14 +0200)] 
Merge branch 'branch-1.13.2' into maint

* branch-1.13.2:
  announcement: cater to more flexible NEWS format

12 years agoannouncement: cater to more flexible NEWS format
Stefano Lattarini [Thu, 9 May 2013 11:55:15 +0000 (13:55 +0200)] 
announcement: cater to more flexible NEWS format

* maint.mk (announcement): Here, be prepared to handle the case
in which the first section of the NEWS file is dedicated to report
future backward-incompatibilities and/or other warnings.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agobuild: move automake and aclocal in 'bin' subdir
Stefano Lattarini [Thu, 9 May 2013 09:57:20 +0000 (11:57 +0200)] 
build: move automake and aclocal in 'bin' subdir

* automake.in: Rename ...
* bin/automake.in: ... like this.
* aclocal.in: Rename ...
* bin/aclocal.in: ... like this.
* Makefile.am: Move parts that dealt with the building/distribution
of aclocal and Automake ..
* bin/Makefile.inc): ... in this new included fragment.  Adjust as
needed, and make deliberate use of the '%D%' substitution.
* lib/gen-perl-protos: Move ...
* bin/gen-perl-protos: ... here.
* bootstrap.sh, configure.ac, maintainer/rename-tests,
t/wrap/aclocal.in, t/wrap/automake.in, doc/Makefile.inc,
t/ax/tap-setup.sh, .gitignore: Adjust.
* maintainer/syntax-checks.mk: Likewise, and enhance a little.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agobuild: break up monolithic Makefile.am in subdir-specific fragments
Stefano Lattarini [Thu, 9 May 2013 09:17:47 +0000 (11:17 +0200)] 
build: break up monolithic Makefile.am in subdir-specific fragments

This is convenient to do, now that we have improved "relative directory"
support with the '%reladir%' (a.k.a. '%D%') and '%canon_reladir%' (a.k.a.
'%C%') Automake-time substitutions for included makefile fragments.

This move also satisfy our philosophy of using new Automake features in
our own build system, as a way of facilitating early discovery of possible
bugs or interface warts.

* Makefile.am: Break up ...
* doc/Makefile.inc, lib/Automake/Makefile.inc, lib/Makefile.inc,
lib/am/Makefile.inc, m4/Makefile.inc, t/Makefile.inc): ... in this
new included fragments.  Adjust as needed, and make deliberate use
of the '%D%' substitution.
* contrib/t/local.am: Rename ...
* contrib/t/Makefile.inc: ... like this.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agodocs: fix warnings given by Texinfo 5.x
Stefano Lattarini [Mon, 6 May 2013 09:21:57 +0000 (11:21 +0200)] 
docs: fix warnings given by Texinfo 5.x

These warnings:

  doc/automake.texi:3885: warning: node next `Public Macros' in menu \
    `Private Macros' and in sectioning `Obsolete Macros' differ
  doc/automake.texi:4050: warning: node `Private Macros' is next for \
    `Obsolete Macros' in sectioning but not in menu
  doc/automake.texi:4050: warning: node prev `Obsolete Macros' in menu \
    `Private Macros' and in sectioning `Public Macros' differ
  doc/automake.texi:4090: warning: node `Obsolete Macros' is next for \
    `Private Macros' in menu but not in sectioning
  doc/automake.texi:4090: warning: node prev `Private Macros' in menu \
    `Public Macros' and in sectioning `Obsolete Macros' differ

* doc/automake.texi: Adjust.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agofixlet: remove leftover comment fragment
Stefano Lattarini [Sat, 4 May 2013 23:09:20 +0000 (01:09 +0200)] 
fixlet: remove leftover comment fragment

* configure.ac: Here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agomaster branch: we are going to become Automake 2.0
Stefano Lattarini [Sat, 4 May 2013 22:58:00 +0000 (00:58 +0200)] 
master branch: we are going to become Automake 2.0

* configure.ac (AC_INIT): So adjust the beta version in here, from
1.13a to 1.99a.
* m4/amversion.m4: Regenerate.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoMerge branch 'maint'
Stefano Lattarini [Sat, 4 May 2013 22:55:26 +0000 (00:55 +0200)] 
Merge branch 'maint'

* maint:
  maint branch: we are going to become Automake 1.14
  maint: version bump after beta release 1.13.1d
  release: beta release 1.13.1d (will become 1.13.2)
  NEWS: document more robust handling/recognition of make options
  tests: typofixes in comments in t/preproc-c-compile.sh
  tests: remove bashism from a test

12 years agomaint branch: we are going to become Automake 1.14
Stefano Lattarini [Sat, 4 May 2013 22:53:27 +0000 (00:53 +0200)] 
maint branch: we are going to become Automake 1.14

* configure.ac (AC_INIT): So adjust beta version in here, from
1.13.2a to 1.13a.
* m4/amversion.m4: Regenerate.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoMerge branch 'branch-1.13.2' into maint
Stefano Lattarini [Sat, 4 May 2013 22:52:01 +0000 (00:52 +0200)] 
Merge branch 'branch-1.13.2' into maint

* branch-1.13.2:
  maint: version bump after beta release 1.13.1d
  release: beta release 1.13.1d (will become 1.13.2)
  NEWS: document more robust handling/recognition of make options

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agomaint: version bump after beta release 1.13.1d
Stefano Lattarini [Sat, 4 May 2013 22:46:54 +0000 (00:46 +0200)] 
maint: version bump after beta release 1.13.1d

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

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agorelease: beta release 1.13.1d (will become 1.13.2) v1.13.1d
Stefano Lattarini [Sat, 4 May 2013 21:19:36 +0000 (23:19 +0200)] 
release: beta release 1.13.1d (will become 1.13.2)

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

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agoNEWS: document more robust handling/recognition of make options
Stefano Lattarini [Sat, 4 May 2013 20:58:25 +0000 (22:58 +0200)] 
NEWS: document more robust handling/recognition of make options

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agotests: typofixes in comments in t/preproc-c-compile.sh
Stefano Lattarini [Sat, 4 May 2013 12:02:06 +0000 (14:02 +0200)] 
tests: typofixes in comments in t/preproc-c-compile.sh

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
12 years agotests: remove bashism from a test
Stefano Lattarini [Sat, 4 May 2013 11:59:19 +0000 (13:59 +0200)] 
tests: remove bashism from a test

* t/preproc-c-compile.sh (Makefile.am): Use "test foo = bar", not the
bash-specific "test foo == bar".

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