platform/upstream/automake.git
11 years agocoverage: obsolete macro AM_PROG_CC_C_O should cause no warning nor errors
Stefano Lattarini [Sat, 12 Jan 2013 11:30:15 +0000 (12:30 +0100)]
coverage: obsolete macro AM_PROG_CC_C_O should cause no warning nor errors

Suggested by Eric Blake.

* t/am-prog-cc-c-o.sh: New test.
* t/list-of-tests.mk: Add it.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoINSTALL: update copyright years
Stefano Lattarini [Sat, 12 Jan 2013 11:10:39 +0000 (12:10 +0100)]
INSTALL: update copyright years

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoithreads: use runtime (not configure time) detection of perl threads
Mike Frysinger [Sat, 12 Jan 2013 05:19:40 +0000 (00:19 -0500)]
ithreads: use runtime (not configure time) detection of perl threads

I can't imagine the runtime checks being a big runtime penalty, so there
shouldn't be a need to do the checks at configure check and hardcode the
result in the generated automake.

With the current system, it means if you change your perl config (build
perl w/threads, build automake, build perl w/out threads), or deploy a
compiled automake package on a different system (build had threads, but
deployed system does not), you get errors when trying to run automake.

So take the logic from configure.ac and move it to the one place where
PERL_THREADS is used (lib/Automake/Config.in) and do the version/config
checking at runtime.

* bootstrap.sh (PERL_THREADS): Delete assignment and use in sed.
* configure.ac (am_cv_prog_PERL_ithreads, PERL_THREADS): Delete all code
related to these two variables.
* lib/Automake/Config.in (perl_threads): Initialize to 0, and only set to
1 if the perl version is at least 5.007_002, and useithreads is in Config.

Copyright-paperwork-exempt: yes
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agocopyright: add few missing copyright notices
Stefano Lattarini [Sat, 12 Jan 2013 10:26:36 +0000 (11:26 +0100)]
copyright: add few missing copyright notices

Issue revealed by warnings from "make update-copyright".

* maintainer/am-ft: Add copyright notice.
* maintainer/am-xft: Likewise.
* maintainer/rename-tests: Likewise.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agomaint: files in PLANS are to be exempted from copyright notice
Stefano Lattarini [Sat, 12 Jan 2013 10:22:10 +0000 (11:22 +0100)]
maint: files in PLANS are to be exempted from copyright notice

* maintainer/maint.mk (update-copyright): Adjust.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agomaint: consistently honor the UPDATE_COPYRIGHT_YEAR environment variable
Stefano Lattarini [Sat, 12 Jan 2013 10:16:44 +0000 (11:16 +0100)]
maint: consistently honor the UPDATE_COPYRIGHT_YEAR environment variable

* maintainer/maint.mk (update-copyright): Here.  The 'lib/update-copyright'
already honoured it, but some parts of our recipe didn't.  This has caused
the incomplete copyright bump that was fixed by the previous patch.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agocopyright: update some copyright years
Stefano Lattarini [Sat, 12 Jan 2013 10:09:14 +0000 (11:09 +0100)]
copyright: update some copyright years

With "make update-copyright".  Apparently they were missed in the
last bump.

* bootstrap.sh, configure.ac, t/txinfo-builddir.sh: In these files.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agocompile: use 'compile' script when "-c -o" is used with losing compilers
Stefano Lattarini [Wed, 9 Jan 2013 22:16:53 +0000 (23:16 +0100)]
compile: use 'compile' script when "-c -o" is used with losing compilers

Do so seen when only source files in the "current" directory are present.

This commit is part of a series of related changes addressing automake
bug#13378 (see also the plan 'PLANS/subdir-objects.txt').

Before this change, Automake-generated C compilation rules mistakenly
passed the "-c -o" options combination unconditionally (even to losing
compiler) when the 'subdir-objects' was used but sources were only
present in the top-level directory.  Issue spotted by Nick Bowler:

  <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=13378#35>
  <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=13378#44>

We fix this by having Automake redefine AC_PROG_CC to take over the role
of AM_PROG_CC_C_O and to require the 'compile' script unconditionally
(albeit that will continue to be invoked only when inferior compilers
are detected).

Among other things, this means AM_PROG_CC_C_O explicitly is no longer
required; that macro is still supported for backward-compatibility, but
calling it is basically a no-op now.

This change has some pros and some cons (obviously, we believe the former
outweighs the latter).  Here are the most relevant ones:

+ Pros 1:
  Some logic in the Automake script has been simplified.
+ Pros 2:
  That simplification has automatically fixed an actual bug (see
  Nick's mails referenced above; admittedly, that was present only in
  corner-case situations, but still); the test 't/ccnoco4.sh', which
  demonstrated the bug and has been failing so far, now passes.
+ Pros 3:
  Things works more "automagically" now (no need to manually add the
  AM_PROG_CC_C_O macro to configure.ac anymore).

* Cons 1:
  The 'compile' script will be required in all projects using C
  compilation; this will only be a problem for packages not using
  '--add-missing'.  However, such packages are definitely more rare
  than the ones using '--add-missing', and adjusting them will be
  trivial -- just copy the compile script over from the new Automake
  installation.
* Cons 2:
  The copy & paste of autoconf internals hack this change has introduced
  in our "rewrite" of AC_PROG_CC is really an egregious abomination.  It
  can only be justified with the fact that we expect future versions of
  autoconf to implement the semantics we need directly in AC_PROG_CC, so
  that we'll be able to leverage that (since Automake 1.14 will require
  the latest Autoconf version released).

Now, the detailed list of file-by-file changes ...

* automake.in ($seen_cc_c_o): Remove this global variable.
(scan_autoconf_traces): Don't set it, and do not trace the
'AM_PROG_CC_C_O' m4 macro.
(lang_c_rewrite): Remove, no longer needed.
* doc/automake.texi: Adjust expected "autoreconf --install" output
in the amhello example.  Remove statements about the need for the
AM_PROG_CC_C_O macro.  Report it is obsolete now.
* m4/init.m4: Re-write AC_PROG_CC to append checks about whether the
C compiler supports "-c -o" together.  These checks have basically
been ripped out (with adaptations) from the 'AC_PROG_CC_C_O' macro
of Autoconf and ...
* m4/minuso.m4 (AM_PROG_CC_C_O): ... this macro of ours, which has
thus basically become a no-op.
* t/ax/am-test-lib.sh (am_setup_testdir): Also copy the 'compile'
script in the test directory; if we don't do so, every test using
AC_PROG_CC should call automake with the "--add-missing" option, or
copy the 'compile' script itself.
* t/cond11.sh: No need to create a dummy 'compile' script: that is
already brought in by 'am_setup_testdir()', that is automatically
invoked when 'test-lib.sh' is sourced.
* t/add-missing.tap: Adjust: we expect the 'compile' script to be
required by a mere AC_PROG_CC call now.
* t/dist-auxdir-many-subdirs.sh: Likewise.
* t/specflg6.sh: Likewise.
* t/subobj4.sh: Likewise.
* t/cxx-lt-demo.sh: Likewise, and update comments to match.
* t/distcom2.sh: Enhance a little.
* t/dollarvar2.sh: Adjust.
* t/extra-portability.sh: Likewise.
* t/libobj19.sh: Likewise.
* t/per-target-flags.sh: Likewise.
* t/repeated-options.sh: Likewise.
* t/subobj.sh: Likewise, and enhance a little.
* t/ccnoco2.sh: Remove as obsolete.
* t/list-of-tests.mk (handwritten_TESTS): Adjust.
(XFAIL_TESTS): Remove 't/ccnoco4.sh'.
* NEWS: Update.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoHACKING: suggest more checks before releasing
Stefano Lattarini [Fri, 11 Jan 2013 17:57:28 +0000 (18:57 +0100)]
HACKING: suggest more checks before releasing

In particular, "make check-no-trailing-backslash-in-recipes",
"make check-cc-no-c-o" and "make maintainer-check" should also
be run.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: can fake a compiler not grasping "-c -o" -- globally in all tests
Stefano Lattarini [Fri, 11 Jan 2013 17:26:03 +0000 (18:26 +0100)]
tests: can fake a compiler not grasping "-c -o" -- globally in all tests

The ability to easily do so will be quite important in upcoming changes
about C compilation handling and semantics of the 'subdir-objects'
option.  Refer to the extensive discussion about automake bug#13378 for
more details: <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=13378>.

See also commit 'v1.13.1-34-g744cd57' of 2013-01-08, "coverage: compile
rules used "-c -o" also with losing compilers".

* t/ax/cc-no-c-o.in: New, a "C compiler" that chokes when the '-c' and
'-o' options are passed together to it on the command line.
* Makefile.am (t/ax/cc-no-c-o): Generate this script from it.
(noinst_SCRIPTS, CLEANFILES): Add it.
(EXTRA_DIST): Add 't/ax/cc-no-c-o.in'.
(check-cc-no-c-o): New target, runs the whole testsuite with 'cc-no-c-o'
as the C compiler (bot GNU and non-GNU).
* .gitignore: Update.
* t/ccnoco.sh: Use the new script instead of duplicating it.
* t/ccnoco3.sh: Likewise.
* t/ccnoco4.sh: Likewise.
* t/self-check-cc-no-c-o.sh: New testsuite self-check.
* t/list-of-tests.mk: Adjust.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agosync: update files from upstream with "make fetch"
Stefano Lattarini [Fri, 11 Jan 2013 16:38:58 +0000 (17:38 +0100)]
sync: update files from upstream with "make fetch"

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

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotypofix: in comments in GNUmakefile
Stefano Lattarini [Thu, 10 Jan 2013 22:44:33 +0000 (23:44 +0100)]
typofix: in comments in GNUmakefile

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoRename 'maint/' -> 'maintainer/', for Git's sake
Stefano Lattarini [Thu, 10 Jan 2013 22:40:26 +0000 (23:40 +0100)]
Rename 'maint/' -> 'maintainer/', for Git's sake

Otherwise, Git gets confused by the fact that a directory ('maint')
is named like a branch, and forces me to tweak the command line to
resolve the ambiguity for it.

* maint/: Rename ...
* maintainer/: ... like this.
* Makefile.am, GNUmakefile: Adjust.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoHACKING: minor typofix
Stefano Lattarini [Thu, 10 Jan 2013 22:28:45 +0000 (23:28 +0100)]
HACKING: minor typofix

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoHACKING: bug-tracker, the PLANS directory, and how to plan "big" changes
Stefano Lattarini [Thu, 10 Jan 2013 22:27:21 +0000 (23:27 +0100)]
HACKING: bug-tracker, the PLANS directory, and how to plan "big" changes

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoHACKING: rewindable branches should live in the 'experimental/*' namespace
Stefano Lattarini [Thu, 10 Jan 2013 22:16:37 +0000 (23:16 +0100)]
HACKING: rewindable branches should live in the 'experimental/*' namespace

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoHACKING: fixlets about git branch rewinding policy
Stefano Lattarini [Thu, 10 Jan 2013 22:10:58 +0000 (23:10 +0100)]
HACKING: fixlets about git branch rewinding policy

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoHACKING: commit messages are not to follow GCS ChangeLog rules too strongly
Stefano Lattarini [Thu, 10 Jan 2013 22:10:02 +0000 (23:10 +0100)]
HACKING: commit messages are not to follow GCS ChangeLog rules too strongly

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoHACKING: "detailed explanation" in commit messages is almost mandatory
Stefano Lattarini [Thu, 10 Jan 2013 22:06:27 +0000 (23:06 +0100)]
HACKING: "detailed explanation" in commit messages is almost mandatory

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoHACKING: we use "merge --log" even when merging master
Stefano Lattarini [Thu, 10 Jan 2013 22:04:06 +0000 (23:04 +0100)]
HACKING: we use "merge --log" even when merging master

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoHACKING: typofix
Stefano Lattarini [Thu, 10 Jan 2013 22:01:28 +0000 (23:01 +0100)]
HACKING: typofix

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agodepend2.am: fix comments on verbosity of compilation rules
Stefano Lattarini [Wed, 9 Jan 2013 21:17:53 +0000 (22:17 +0100)]
depend2.am: fix comments on verbosity of compilation rules

The situation and decisions described on those comments have become
quite outdated since the introduction of the silent-rules support.
Today, the general idea is to have nice, terse output if silent rules
are enabled, and complete, faithful, very verbose output if they are
not -- without trying to "massage" this verbose output in a more
pleasant form if that would cause complication in the affected code.

So it's better to just drop the obsolescent comments.

Note that we don't start simplifying the existing rules according
to this new philosophy; that will only be done when touching some
existing code (for the 'depend2.am' code, that will probably happen
on the master branch).

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agodepend2.am: improve comments a little
Stefano Lattarini [Wed, 9 Jan 2013 21:01:45 +0000 (22:01 +0100)]
depend2.am: improve comments a little

* lib/am/depend2.am: The "fastdep" mode is supported not only for
gcc 3.x, but for gcc 3.x or later, in particular, for all gcc in
the 4.x series (at the time of writing, the latest release is 4.72).
Adjust the comments to match, and re-wrap them while at it.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoplans: automake 1.14 is to assume "rm -f" with no args is OK
Stefano Lattarini [Wed, 9 Jan 2013 19:11:31 +0000 (20:11 +0100)]
plans: automake 1.14 is to assume "rm -f" with no args is OK

See automake bug#10828.

* PLANS/rm-f-without-args.txt: New.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoplans: we want to active subdir-objects unconditionally in automake 1.14
Stefano Lattarini [Wed, 9 Jan 2013 18:57:27 +0000 (19:57 +0100)]
plans: we want to active subdir-objects unconditionally in automake 1.14

See automake bug#13378.

* PLANS/subdir-objects.txt: New.
* t/ccnoco4.sh: Improve heading comments a little.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: adjust stale references to old test names
Stefano Lattarini [Tue, 8 Jan 2013 20:52:07 +0000 (21:52 +0100)]
tests: adjust stale references to old test names

* t/remake-renamed-m4-macro-and-file.sh: Adjust to reflect to old
"acloca22 -> t/aclocal-deleted-header.sh" test rename.
* t/aclocal-pr450.sh (configure.ac): Use '$me' in the AC_INIT call,
instead of hard-coding the old name of this test, i.e., "acloca19".

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: rename the last aclocal test with dumb name
Stefano Lattarini [Tue, 8 Jan 2013 20:47:40 +0000 (21:47 +0100)]
tests: rename the last aclocal test with dumb name

* t/acloca10.sh: Rename ...
* t/aclocal-I-install.sh: ... to this saner and slightly more
self-explanatory name.
* t/list-of-tests.mk: Adjust.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: fix an old botched change to an aclocal test
Stefano Lattarini [Tue, 8 Jan 2013 20:40:23 +0000 (21:40 +0100)]
tests: fix an old botched change to an aclocal test

* t/acloca10.sh (configure.ac): Here, invoke the m4 macro 'MACRO2'
before the macro 'MACRO1' (the related test 't/aclocal-I-order-2.sh'
does the opposite).  This reverts a botched edit done (by myself,
oops) in commit 'v1.11-1335-gefdc3e1' of 2011-09-11, "tests: minor
optimizations/simplifications in some aclocal tests", and makes the
behaviour of the test match once again what is stated in the
heading comments.  While at it, improve those same heading comments
a little.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: fix some botched inter-test references in heading comments
Stefano Lattarini [Tue, 8 Jan 2013 19:42:28 +0000 (20:42 +0100)]
tests: fix some botched inter-test references in heading comments

* t/aclocal-I-order-2.sh: Here.
* t/aclocal-I-order-2.sh: And here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agocoverage: compile rules used "-c -o" also with losing compilers
Stefano Lattarini [Tue, 8 Jan 2013 19:19:04 +0000 (20:19 +0100)]
coverage: compile rules used "-c -o" also with losing compilers

If the 'subdir-objects' option is used, Automake-generated rules for
C compilation pass both the "-c" and "-o" options to the C compiler,
*unconditionally*.  There are some compilers that choke on such an
usage, but the AM_PROG_CC_C_O macro takes care of them (it does so by
redefining $CC to use the Automake-provided 'compile' wrapper script
automatically, if a losing compiler is detected at configure runtime).

Unfortunately, in case the 'subdir-objects' option is specified in a
Makefile.am, but all the source files resided anyway in the top-level
directory (relative to the Makefile.am), Automake do *not* complain
if AM_PROG_CC_C_O wasn't invoked in 'configure.ac' -- all the while
still passing "-c -o" to the compiler invocations.  This could cause
compilation failures with losing compilers if the user forget to call
AM_PROG_CC_C_O in 'configure.ac' (and Automake would not warn him of
the issue).

Expose this bug in the testsuite.

Issue identified by Nick Bowler in the discussion on automake bug#13378:
<http://debbugs.gnu.org/cgi/bugreport.cgi?bug=13378#35>
<http://debbugs.gnu.org/cgi/bugreport.cgi?bug=13378#44>

* t/ccnoco4.sh: New test.
* t/list-of-tests.mk (XFAIL_TESTS, handwritten_TESTS): List it.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotexi: remove extra verbosity in creation of dirstamp directory
Stefano Lattarini [Sat, 5 Jan 2013 11:12:56 +0000 (12:12 +0100)]
texi: remove extra verbosity in creation of dirstamp directory

* lib/am/texi-vers.am (%STAMPVTI%): Here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agocoverage: user can avoid distributing '.info' pages
Stefano Lattarini [Sat, 5 Jan 2013 11:00:36 +0000 (12:00 +0100)]
coverage: user can avoid distributing '.info' pages

Can be done like this:

        AUTOMAKE_OPTIONS = info-in-builddir
        dist-info:
            @:

Note that this usage is not yet documented: we might decide to go
for a fully-fledged 'no-dist-info' flag, or something like that, in
future automake version (this is not yet decided); in which case,
it's better not to have people start to rely on the hack above.
Still, there's no good reason to break it gratuitously, hence this
test coverage.

* t/txinfo-nodist-info.sh: New test.
* t/list-of-tests.mk: Add it.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoMerge branch 'plans' into maint
Stefano Lattarini [Fri, 4 Jan 2013 17:03:50 +0000 (18:03 +0100)]
Merge branch 'plans' into maint

* plans:
  plans: add some on-going plans (already registered on the bug tracker)

11 years agoplans: add some on-going plans (already registered on the bug tracker)
Stefano Lattarini [Fri, 4 Jan 2013 10:48:33 +0000 (11:48 +0100)]
plans: add some on-going plans (already registered on the bug tracker)

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoMerge branch 'plans' into maint
Stefano Lattarini [Fri, 4 Jan 2013 09:23:36 +0000 (10:23 +0100)]
Merge branch 'plans' into maint

* plans:
  plans: add the "PLANS" directory

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

11 years agodocs: mention dist-hook help for EXTRA_DIST
Karl Berry [Thu, 3 Jan 2013 23:09:23 +0000 (16:09 -0700)]
docs: mention dist-hook help for EXTRA_DIST

* automake.texi (Basics of Distribution): mention dist-hook
as working around the problems of whole directories in EXTRA_DIST.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotexi: remove workaround for older Texinfo (4.1)
Stefano Lattarini [Thu, 3 Jan 2013 22:10:42 +0000 (23:10 +0100)]
texi: remove workaround for older Texinfo (4.1)

* lib/am/texibuild.am: Here, in the rules generating HTML output.
We can do so because, since Automake 1.13, we require Texinfo >= 4.9
anyway.

Basically a backport of Automake-NG commit '1.12.2-879-ge6caf5e'.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoNEWS: improve wordings in entry deprecating suffix-less info files
Stefano Lattarini [Thu, 3 Jan 2013 18:02:52 +0000 (19:02 +0100)]
NEWS: improve wordings in entry deprecating suffix-less info files

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agobuild: don't enable 'color-tests' automake option explicitly
Stefano Lattarini [Thu, 3 Jan 2013 13:39:39 +0000 (14:39 +0100)]
build: don't enable 'color-tests' automake option explicitly

It's enabled by default since commit 'v1.12.2-136-g2d5571e' (this
change appeared in Automake 1.13).

* configure.ac (AM_INIT_AUTOMAKE): Drop 'color-tests'.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agobuild: enable all warnings as fatal in our own build system
Stefano Lattarini [Thu, 3 Jan 2013 13:32:54 +0000 (14:32 +0100)]
build: enable all warnings as fatal in our own build system

Automake should of course be able to bootstrap itself in a
warning-free manner w.r.t. the Autotools.  So make any failure
to do so fatal.  Not doing so caused the regression fixed by
previous commit 'v1.13.1-22-ga790fae' to go unnoticed.

* configure.ac (AM_INIT_AUTOMAKE): Add '-Werror' and '-Wall'.
* bootstrap.sh: Pass the '-Wall -Werror' options to aclocal,
automake and autoconf invocations.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotexi: Texinfo sources and CLEANFILES definition should co-exist peacefully
Stefano Lattarini [Thu, 3 Jan 2013 13:05:31 +0000 (14:05 +0100)]
texi: Texinfo sources and CLEANFILES definition should co-exist peacefully

But they don't now, due to a regression introduced in commit
'v1.13.1-4-gc1a8f56'.  Fix it.  The regression was hitting our
own build system!

* automake.in (handle_texinfo_helper): Only complain if the
'info-in-builddir' is not active and a '.info' file (not any
random file!) is listed in CLEANFILES or DISTCLEANFILES.

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

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

Issue revealed by the 'sc_tests_executable' maintainer check.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoMerge branch 'info-in-builddir' into maint
Stefano Lattarini [Thu, 3 Jan 2013 12:27:26 +0000 (13:27 +0100)]
Merge branch 'info-in-builddir' into maint

* info-in-builddir:
  texi: deprecate hack about info files in CLEANFILES variables
  texi: info files can be generated in the builddir

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoruntest: better command line API
Stefano Lattarini [Thu, 3 Jan 2013 12:16:14 +0000 (13:16 +0100)]
runtest: better command line API

* t/ax/runtest.in: Accept options '-k' and '--keep-testdirs' (same
as exporting '$keep_testdirs' to "yes").  To improve compatibility
with the "make check" interface, allow environment variables to be
passes on the command line.  Minor adjustments while at it.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: move runtest.in away from the top-lever directory
Stefano Lattarini [Thu, 3 Jan 2013 11:54:07 +0000 (12:54 +0100)]
tests: move runtest.in away from the top-lever directory

Not only this leaves the top-lever directory less cluttered, but
helps in keeping the testsuite-related files more "centralized".

* runtest.in: Move ...
* t/ax/runtest.in: ... here.  While at it, add customary
'@configure_input@' comment line.
* Makefile.am (runtest, EXTRA_DIST): Adjust.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agomaint: move more maintainer files in the 'maint/' subdir
Stefano Lattarini [Thu, 3 Jan 2013 11:23:51 +0000 (12:23 +0100)]
maint: move more maintainer files in the 'maint/' subdir

* maint.mk: Move ...
* maint/maint.mk: ... here.
* syntax-checks.mk: Move ...
* maint/syntax-checks.mk: ... here.
* Makefile.am: Adjust.
* GNUmakefile: Likewise.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoplans: add the "PLANS" directory
Stefano Lattarini [Thu, 3 Jan 2013 11:03:37 +0000 (12:03 +0100)]
plans: add the "PLANS" directory

Individual files or sub-directories about future and on-going
development plans in Automake will be added in follow-up commits.

This new set of documents is meant to help ensure a more controlled
and smooth development and evolution for Automake, in several ways.

 - Having the plans clearly spelled out should will avoid messy
   roadmaps with no clear way forward or with muddy or ill-defined
   aims or purposes; a trap this is too easy to fall into.

 - Keeping planned changes cooking and re-hashed for a while should
   ensure rough edges are smoothed up, transitions are planned in a
   proper way (hopefully avoiding debacles like the AM_MKDIR_PROG_P
   deprecation and the AM_CONFIG_HEADER too-abrupt removal), and
   "power users" have more chances of getting informed in due time,
   thus having all the time to prepare for the changes or raise
   objections against them.

 - Having the plans clearly stated and registered in a "centralized"
   location should make it more difficult to them to slip through
   the cracks, getting forgotten or (worse) only half-implemented.

 - Even for discussions and plans registered on the Bug Tracker
   as well, a corresponding entry in the PLANS directory can help
   in keeping main ideas summarized, and consensus and/or objections
   registered and easily compared.

Motivation:
<http://blog.flameeyes.eu/2013/01/autotools-mythbuster-automake-pains>
Not a flatting picture for us (and maybe a little too harsh), but
basically true and even spot-on in some regards.

* PLANS/README: New.
* Makefile.am (EXTRA_DIST): Distribute the whole PLANS directory.

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

* t/spy.sh: Rename...
* t/spy-double-colon.sh: ... like this.
* t/yacc4.sh: Rename...
* t/yacc-misc.sh: ... like this.
* t/yaccdry.sh: Rename...
* t/yacc-dry.sh: ... like this.
* t/yaccpp.sh: Rename...
* t/yacc-cxx-grepping.sh: ... like this.
* t/yaccvpath.sh: Rename...
* t/yacc-vpath.sh: ... like this.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agomaint: add some of my maintainer-specific scripts
Stefano Lattarini [Wed, 2 Jan 2013 20:08:27 +0000 (21:08 +0100)]
maint: add some of my maintainer-specific scripts

They are likely not general enough for widespread use, but they
are useful nonetheless.

In the best-case scenario, they will start to be used by other
people, and thus accordingly improved and made more general and
flexible.

In the worst case scenario, well, I still get to keep them in a
centralized, blessed place, simplifying the deployment and use
of them; so still a win for me :-)

* maint/am-ft: New script.
* maint/am-xft: Likewise.
* maint/rename-tests: Likewise.
* Makefile.am (EXTRA_DIST): Add them.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotexi: deprecate hack about info files in CLEANFILES variables
Stefano Lattarini [Tue, 1 Jan 2013 23:33:42 +0000 (00:33 +0100)]
texi: deprecate hack about info files in CLEANFILES variables

For quite a long time, Automake has been implementing an undocumented
hack which ensured that '.info' files which appeared to be cleaned (by
e.g. being listed in the CLEANFILES or DISTCLEANFILES variables) were
built in the builddir rather than in the srcdir; this hack was introduced
to ensure better 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 should
be longer necessary, so we deprecate it with runtime warnings.  It is
scheduled to be removed altogether in Automake 1.14.

* automake.in (handle_texinfo_helper): Raise proper runtime warnings
if the hack is triggered.
* NEWS: Update.
* t/txinfo28.sh: Adjust.
* t/txinfo23.sh: Likewise.
* t/txinfo25.sh: Adjust and extend.
* t/txinfo24.sh: Likewise.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotexi: info files can be generated in the builddir
Stefano Lattarini [Tue, 3 Apr 2012 20:02:55 +0000 (22:02 +0200)]
texi: info files can be generated in the builddir

User can now ask info files to be built in the $(builddir), rather than
the $(srcdir), by specifying the Automake option 'info-in-builddir'.
This feature was requested by the developers of GCC, GDB, GNU binutils
and the GNU bfd library.  See the extensive discussion about automake
bug#11034 for more details.

OK, to be honest, having '.info' files built in the builddir was
*already* possible, but only using ugly and undocumented hacks involving
definition of the CLEANFILES and/or DISTCLEANFILES.  For example, the
binutils project did something like this in the relevant 'Makefile.am':

    # Automake 1.9 will only build info files in the objdir if they are
    # mentioned in DISTCLEANFILES.  It doesn't have to be unconditional,
    # though, so we use a bogus condition.
    if GENINSRC_NEVER
    DISTCLEANFILES = binutils.info
    endif

See also the extensive discussion about automake bug#11034; in
particular, the following messages:
<http://debbugs.gnu.org/cgi/bugreport.cgi?bug=11034#65>
<http://debbugs.gnu.org/cgi/bugreport.cgi?bug=11034#80>
<http://debbugs.gnu.org/cgi/bugreport.cgi?bug=11034#86>
<http://debbugs.gnu.org/cgi/bugreport.cgi?bug=11034#101>

* lib/Automake/Options.pm (_is_valid_easy_option): Recognize the
new 'info-in-builddir' option.
* automake.in (handle_texinfo_helper): If that option is set,
initialize '$insrc' to '0', so that info files will be generated
in the builddir.  Adjust comments to match.
* t/txinfo-builddir.sh: New test.
* t/list-of-tests.mk: Add it.
* NEWS: Update.
* doc/automake.texi: Document the new options.

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

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

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

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

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

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

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

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

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

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

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

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

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

* configure.ac: Adjust.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: remove a redundant texinfo test
Stefano Lattarini [Mon, 31 Dec 2012 11:58:59 +0000 (12:58 +0100)]
tests: remove a redundant texinfo test

* t/txinfo-add-missing.sh: This one, its checks being already covered
by the more extensive 't/add-missing.tap' test.
* t/txinfo-add-missing2.sh: Rename ...
* t/txinfo-add-missing-and-dist.sh: Like this.
* t/list-of-tests.mk: Adjust.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: don't list a removed tests in XFAIL_TESTS
Stefano Lattarini [Mon, 31 Dec 2012 11:49:27 +0000 (12:49 +0100)]
tests: don't list a removed tests in XFAIL_TESTS

* t/list-of-tests.mk (XFAIL_TESTS): No longer list 't/txinfo5.sh' here,
it has been removed together with the Cygnus support.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: more explicative names for some tests
Stefano Lattarini [Mon, 31 Dec 2012 11:48:36 +0000 (12:48 +0100)]
tests: more explicative names for some tests

Do so for several Texinfo-related tests.  Note that some of such tests
with suboptimal names are *not* renamed; that's because they are going
to be removed in the master branch anyway (since they check from some
soon-to-be-removed features), so renaming them would be wasted work,
and could even create useless merge conflicts.

* t/txinfo2.sh: Rename ...
* t/txinfo-no-extra-dist.sh: ... like this.
* t/txinfo3.sh: Rename ...
* t/txinfo-suffix-less-info.sh: ... like this.
* t/txinfo4.sh: Rename ...
* t/txinfo-unrecognized-info-suffix.sh: ... like this.
* t/txinfo6.sh: Rename ...
* t/txinfo-other-suffixes.sh: ... like this.
* t/txinfo7.sh: Rename ...
* t/txinfo-add-missing.sh: ... like this.
* t/txinfo8.sh: Rename ...
* t/txinfo-add-missing2.sh: ... like this.
* t/txinfo9.sh: Rename ...
* t/txinfo-no-repeated-targets.sh: ... like this.
* t/txinfo17.sh: Rename ...
* t/txinfo-setfilename-repeated.sh: ... like this.
* t/txinfo13.sh: Rename ...
* t/txinfo-subdir-pr343.sh: ... like this.
* t/txinfo16.sh: Rename ...
* t/txinfo-info-in-srcdir.sh: ... like this.
* t/txinfo21.sh: Rename ...
* t/txinfo-many-output-formats.sh: ... like this.
* t/txinfo22.sh: Rename ...
* t/txinfo-override-texinfo-tex.sh: ... like this.
* t/txinfo26.sh: Rename ...
* t/txinfo-absolute-srcdir-pr408.sh: ... like this.
* t/txinfo27.sh: Rename ...
* t/txinfo-no-installinfo.sh: ... like this.
* t/txinfo29.sh: Rename ...
* t/txinfo-override-infodeps.sh: ... like this.
* t/txinfo31.sh: Rename ...
* t/txinfo-setfilename-suffix-match.sh: ... like this.
* t/txinfo32.sh: Rename ...
* t/txinfo-bsd-make-recurs.sh: ... like this.
* t/txinfo33.sh: Rename ...
* t/txinfo-clean.sh: ... like this.
* t/list-of-tests.mk: Adjust.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agocleanup: drop a redundant %?FIRST% transform
Stefano Lattarini [Sat, 11 Aug 2012 17:36:08 +0000 (19:36 +0200)]
cleanup: drop a redundant %?FIRST% transform

* lib/am/texinfos.am: Here: this file is only included one time
per Makefile by Automake.

Cherry picked from Automake-NG commit 'v1.12.2-864-g5c580b0'.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agomaint: state when compatibility cruft should be removed or warned about
Stefano Lattarini [Mon, 31 Dec 2012 08:53:43 +0000 (09:53 +0100)]
maint: state when compatibility cruft should be removed or warned about

* automake.in: Here.
* lib/Automake/Options.pm: And here.
* m4/obsolete-err.m4: And here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agofixup: copyright yars in two recent tests
Stefano Lattarini [Sun, 30 Dec 2012 11:00:07 +0000 (12:00 +0100)]
fixup: copyright yars in two recent tests

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoobsolete: fixup: don't use AU_DEFUN where AC_DEFUN is required
Stefano Lattarini [Sun, 30 Dec 2012 10:58:52 +0000 (11:58 +0100)]
obsolete: fixup: don't use AU_DEFUN where AC_DEFUN is required

* m4/obsolete-err.m4: Here, for the definition of 'AM_PROG_CC_STDC'

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoNEWS: minor fixup
Stefano Lattarini [Sun, 30 Dec 2012 10:24:44 +0000 (11:24 +0100)]
NEWS: minor fixup

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoobsolete: better error message if AM_PROG_CC_STDC is used
Stefano Lattarini [Sun, 30 Dec 2012 10:04:39 +0000 (11:04 +0100)]
obsolete: better error message if AM_PROG_CC_STDC is used

In Automake 1.13, the long-deprecated (since 2002) macro AM_PROG_CC_STDC
has been removed.  Such a removal, albeit sensible and justified, was
probably done in a too-abrupt way, since it didn't turn the pre-existing
warning messages into fatal error messages, but simply dropped the macro
definition, so that remaining usages of it would cause unclear error
messages, e.g.:

    configure.ac:4: warning: macro 'AM_PROG_CC_STDC' not found in library

from aclocal, and:

    configure.ac:4: error: possibly undefined macro: AM_PROG_CC_STDC
      If this token and others are legitimate, please use m4_pattern_allow.
      See the Autoconf documentation.

from autoconf.

In an attempt to mitigate this issue, we re-add an AM_PROG_CC_STDC
definition that simply raises a *clear* error message when the macro
is used.

* t/am-prog-cc-stdc-no-more.sh: New test.
* t/list-of-tests.mk: Add it.
* m4/obsolete-err.m4: Add the new "error-raising" definition for
AM_PROG_CC_STDC; the error message is a variation of the one already
present in the older version of this macro, before it got removed in
commit 'v1.12-15-gd2ca168'.
* NEWS: Update.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoobsolete: better error message if AM_CONFIG_HEADER is used
Stefano Lattarini [Sun, 30 Dec 2012 09:33:23 +0000 (10:33 +0100)]
obsolete: better error message if AM_CONFIG_HEADER is used

In Automake 1.13, the long-deprecated macro AM_CONFIG_HEADER (deprecated
since 2002) has been removed in favour of AC_CONFIG_HEADERS.  However,
the removal was done without a proper deprecation period, and that
caused packages upgrading to Automake 1.13 to fail with very unclear
error messages, e.g.:

    configure.ac:4: warning: macro 'AM_CONFIG_HEADER' not found in library

from aclocal, and:

    configure.ac:4: error: possibly undefined macro: AM_CONFIG_HEADER
      If this token and others are legitimate, please use m4_pattern_allow.
      See the Autoconf documentation.

from autoconf.

In an attempt to mitigate this issue, we re-add an AM_CONFIG_HEADER
definition that simply raises a *clear* error message when the macro
is used.

Report by Paolo Bonzini:
<http://lists.gnu.org/archive/html/automake/2012-12/msg00039.html>

* t/am-config-header-no-more.sh: New test.
* t/list-of-tests.mk: Add it.
* m4/obsolete-err.m4: New file, contain the new AM_CONFIG_HEADER
"error-raising" definition, as well as the definition of the
similarly obsolete macros 'AM_C_PROTOTYPES' and 'fp_C_PROTOTYPES',
moved in from ...
* m4/protos.m4: ... this file, which has thus been removed.
* Makefile.am (dist_automake_ac_DATA): Adjust.
* t/ansi2knr-no-more.sh: Likewise.
* NEWS: Update.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agosync: update files from upstream with "make fetch"
Stefano Lattarini [Sat, 29 Dec 2012 14:28:41 +0000 (15:28 +0100)]
sync: update files from upstream with "make fetch"

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

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agotests: better names for temporary configure.ac files
Stefano Lattarini [Sat, 29 Dec 2012 08:47:33 +0000 (09:47 +0100)]
tests: better names for temporary configure.ac files

When editing a pre-existent 'configure.ac' file in a test script, name
the temporary file 'configure.tmp' rather than 'configure.int'; the
latter was a relict of the times when we used 'configure.in' as the
default name for the Autoconf input files throughout the testsuite.

* t/cond43.sh: Adjust.
* t/depcomp8a.sh: Likewise.
* t/depcomp8b.sh: Likewise.
* t/gettext.sh: Likewise.
* t/mmode.sh: Likewise.
* t/pr401.sh: Likewise.
* t/pr401b.sh: Likewise.
* t/pr401c.sh: Likewise.
* t/python11.sh: Likewise.
* t/cond42.sh: Likewise.  Also, while at it, rename ...
(edit_configure_in): ... this function ...
(edit_configure_ac): ... like this.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agopost-release: minor version bump
Stefano Lattarini [Fri, 28 Dec 2012 17:41:38 +0000 (18:41 +0100)]
post-release: minor version bump

This is for the maint branch.

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

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agorelease: stable major release 1.13 v1.13
Stefano Lattarini [Fri, 28 Dec 2012 17:12:33 +0000 (18:12 +0100)]
release: stable major release 1.13

* configure.ac (AC_INIT): Bump version number to 1.13.
* m4/amversion.m4 (AM_AUTOMAKE_VERSION): Likewise (regenerated
by "make bootstrap").

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agonews: fix botched URL
Stefano Lattarini [Mon, 24 Dec 2012 09:44:10 +0000 (10:44 +0100)]
news: fix botched URL

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoylwrap: various fixes
Akim Demaille [Wed, 19 Dec 2012 13:51:58 +0000 (14:51 +0100)]
ylwrap: various fixes

Rename properly header guards in generated header files, instead of
leaving Y_TAB_H.

Convert header guards in implementation files.  Because ylwrap failed
to rename properly #include in the implementation files, current
versions of Bison (e.g., 2.7) duplicate the generated header file in
the implementation file.  The header guard then protects the
implementation file from duplicate definitions from the header file.

Generate header guards with a single '_' for series of non alphabetic
characters, instead of several.  This is what Bison does.

Makes the test t/yacc-d-basic.sh pass again.

* lib/ylwrap (guard): Properly honor $1 to rename properly the
header guards.
Keep a single _ instead of several.
(rename_sed): Rename as...
(sed_fix_filenames): this.
Suggested by Stefano Lattarini.
(sed_fix_header_guards): New.
Use it.

11 years agotests: strengthen the ylwrap tests
Akim Demaille [Wed, 19 Dec 2012 13:30:06 +0000 (14:30 +0100)]
tests: strengthen the ylwrap tests

* t/yacc-d-basic.sh: Comment changes.
(generated): New.
Use it to factor various tests.
Check that Y_TAB_H is not issued.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoNEWS: we plan to ditch MS-DOS/DJGPP support in future Automake versions
Stefano Lattarini [Wed, 19 Dec 2012 17:19:42 +0000 (18:19 +0100)]
NEWS: we plan to ditch MS-DOS/DJGPP support in future Automake versions

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agomaint: typofixes in makefile comments
Stefano Lattarini [Wed, 19 Dec 2012 11:16:27 +0000 (12:16 +0100)]
maint: typofixes in makefile comments

* maint.mk (git-upload-release): Here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agomaint: remove extra verbosity from a maintainer rule
Stefano Lattarini [Wed, 19 Dec 2012 11:06:38 +0000 (12:06 +0100)]
maint: remove extra verbosity from a maintainer rule

* maint.mk (git-upload-release): Here, by adding a forgotten
'@' recipe modifier.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agoNEWS: fix grammaro
Stefano Lattarini [Wed, 19 Dec 2012 11:05:08 +0000 (12:05 +0100)]
NEWS: fix grammaro

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agomaint: version bump after beta release
Stefano Lattarini [Wed, 19 Dec 2012 11:02:21 +0000 (12:02 +0100)]
maint: version bump after beta release

* configure.ac (AC_INIT): Bump version number to 1.12c, as per
HACKING suggestion.
* m4/amversion.m4: Likewise (autoupdated by "make bootstrap").

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agorelease: beta release 1.12b (will become 1.13) v1.12b
Stefano Lattarini [Wed, 19 Dec 2012 10:18:53 +0000 (11:18 +0100)]
release: beta release 1.12b (will become 1.13)

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

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
11 years agocosmetics: comments fixlets in our Makefile
Stefano Lattarini [Wed, 19 Dec 2012 09:42:56 +0000 (10:42 +0100)]
cosmetics: comments fixlets in our Makefile

* Makefile.am: Prefer '#' comments over '##' ones where it makes sense.
Other minor style tweaks to comments about "updated later" variables.

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