aclocal: modernize and simplify AC_CONFIG_MACRO_DIR* tracing
Do so by assuming that AC_CONFIG_MACRO_DIRS is defined, and that we can
handle it and AC_CONFIG_MACRO_DIR by tracing AC_CONFIG_MACRO_DIR_TRACE.
We can do so since Automake 1.14 will require Autoconf 2.70 or later.
* Makefile.am (automake_internal_acdir): Remove.
(dist_automake_internal_ac_DATA): Likewise.
* m4/internal/ac-config-macro-dirs.m4: Delete.
* aclocal.in (trace_used_macros): No longer pass the path of
'internal/ac-config-macro-dirs.m4' to the autom4te invocation.
No longer trace nor handle macros 'AC_CONFIG_MACRO_DIR' and
'_AM_CONFIG_MACRO_DIRS'.
No longer uniquify '@ac_config_macro_dirs' explicitly.
($ac_config_macro_dirs_fallback): Remove.
No longer emit its content in the generated aclocal.m4.
* t/aclocal-acdir.sh: Remove a now-unneeded workaround.
* maint:
maint: more adjustments to the new versioning scheme
aclocal: fix for more-than-once specified directories
aclocal: just warn if the primary local m4 dir doesn't exist (don't error)
coverage: expose automake bug#13760
tests: refactor/enhance tests about make dry-run mode
maint: describe new versioning and branching scheme, and adjust to it
cosmetics: fix some "docstring-like" comments in automake
* branch-1.13.2:
coverage: expose automake bug#13760
tests: refactor/enhance tests about make dry-run mode
maint: describe new versioning and branching scheme, and adjust to it
Pavel Raiskup [Mon, 11 Feb 2013 12:11:51 +0000 (13:11 +0100)]
aclocal: just warn if the primary local m4 dir doesn't exist (don't error)
Related to automake bug#13514.
Every package which does not need to have the local m4 macro
directory pre-existing in the version control system (because
e.g., it does not have nor need any private m4 macros) would
fail during the "autoreconf -vfi" phase if AC_CONFIG_MACRO_DIRS([m4])
is specified in configure.ac (it could be to instruct tools like
'autopoint' and 'libtoolize' to use 'm4' as the local directory
where to install definitions of their m4 macros, and to instruct
aclocal to look into it). The failure would go like this:
autoreconf: Entering directory `.'
autoreconf: running: aclocal --force
aclocal: error: couldn't open directory 'm4': No such file or directory
autoreconf: aclocal failed with exit status: 1
The problem is that when 'aclocal' is run for the first time during
'autoreconf', the directory 'm4' does not exist yet. It will be
created by e.g., 'libtoolize' or 'autopoint' later on. During the
second 'aclocal' run, the 'm4' directory exists and aclocal does not
complain.
To work around this issue, we degrade the error to a simple warning.
The warning is still quite useful when aclocal is run by hand - so
we are not removing completely.
See also:
<http://lists.gnu.org/archive/html/bug-automake/2013-01/msg00115.html>
<http://lists.gnu.org/archive/html/automake-patches/2010-02/msg00030.html>
<http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=565663>
<https://bugzilla.redhat.com/show_bug.cgi?id=901333>
* aclocal.in (SCAN_M4_DIRS_SILENT, SCAN_M4_DIRS_WARN)
(SCAN_M4_DIRS_ERROR): New constants.
(scan_m4_dirs): Change the second parameter name to $ERR_LEVEL to
better reflect new semantic. Use new constants.
(scan_m4_files): Adjust to reflect the new 'scan_m4_dirs' semantics.
* t/aclocal-macrodir.tap: Adjust.
* t/aclocal-macrodirs.tap: Likewise.
* THANKS: Update.
* NEWS: Likewise.
Suggested-by: Ben Pfaff <blp@cs.stanford.edu> Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
maint: describe new versioning and branching scheme, and adjust to it
See discussion about automake bug#13578 for more details and background.
Basically, for the versioning scheme:
- micro versions only for bug and regression fixing;
- minor versions for new backward-compatible features, and new
non-fatal deprecations;
- major versions for backward-incompatibilities, complex new
features, and major refactoring.
And for the git branching scheme:
+ branch 'next' is for the upcoming major version;
+ branch 'master' is now for the upcoming minor version;
+ branch 'maint' is for the upcoming micro (bug-fixing) version;
+ the merging hierarchy is: 'maint' -> 'master' -> 'next'.
* maint:
style: call perl functions 'like_this()', not '&like_this()'
maint: use more perl subroutines prototypes in the automake script
build: auto-generate perl subroutines prototypes for automake and aclocal
refactor: rip module Automake::Language out of automake script
* perl-sub-protos:
style: call perl functions 'like_this()', not '&like_this()'
maint: use more perl subroutines prototypes in the automake script
build: auto-generate perl subroutines prototypes for automake and aclocal
refactor: rip module Automake::Language out of automake script
* maint:
typofix: in comments in 't/ax/test-lib.sh'
tests on TAP: don't run the driver with perl unconditionally
typofix: in comments in 'automake.in'
tests: remove obsolete (and now wrong) comment
typofix: in diagnostic in test 't/tap-realtime.sh'
automake: fix reference to relevant tests in comments
NEWS: we no longer plan to drop $(INCLUDES) support in next major version
* branch-1.13.2:
typofix: in comments in 't/ax/test-lib.sh'
tests on TAP: don't run the driver with perl unconditionally
typofix: in comments in 'automake.in'
tests: remove obsolete (and now wrong) comment
typofix: in diagnostic in test 't/tap-realtime.sh'
automake: fix reference to relevant tests in comments
NEWS: we no longer plan to drop $(INCLUDES) support in next major version
tests on TAP: don't run the driver with perl unconditionally
* t/ax/tap-setup.sh: When a 'Makefile.am' was pre-existent in the
test directory at the moment the client test script sourced this
file, said 'Makefile.am' was tweaked to provide it with a proper
definition of TEST_LOG_DRIVER. However, there was an error in this
automatic definition, since it caused the TAP test driver to be
unconditionally invoked with perl. This wasn't an issue in most
situations, since perl is smart enough to re-execute a given script
with the proper interpreter if it sees a she-bang line that doesn't
seem to point to perl itself. Still, there is no reason to do
something blatantly wrong even if our tools correct the dumb mistake
for us. So fix the TEST_LOG_DRIVER definition.
maint: use more perl subroutines prototypes in the automake script
* automake.in: Throughout this file. Note that these new prototypes
are not much useful, since many subroutine calls still use the old
'&foo' form; but we'll take care of that in later patches.
* lib/Automake/Language.pm (target_hook): Call the '_target_hook'
of the given language in a more modern form, avoiding '&'.
build: auto-generate perl subroutines prototypes for automake and aclocal
This will allow us to avoid either using the '&foo' invocation form when
invoking a subroutine before its definition, or having to maintain the
list of prototypes by hand (with the risk of having it become incomplete
or fall out-of-sync when future edits to the automake and aclocal scripts
are done).
* Makefile.am (automake, aclocal): Automatically generate a list of
prototypes by looking at the subroutines definitions.
* bootstrap.sh: Likewise, when generating the temporary automake and
aclocal scripts used for bootstrapping.
* automake.in: Add a placeholder that will be tracked by the new recipes
and substituted with the computed prototypes. Remove existing prototypes,
that are now superfluous. Some adjustments required by the new, more
comprehensive prototypes declarations.
* aclocal.in: Likewise.
* maintainer/syntax-checks.mk (sc_diff_automake, sc_diff_aclocal): Adjust.
refactor: rip module Automake::Language out of automake script
This is just a preparatory patch in view of future changes.
* lib/Automake/Language.pm: New module, ripped out from ...
* automake.in: ... here. Related adjustments.
* Makefile.am (dist_perllib_DATA): List the new module.
NEWS: we no longer plan to drop $(INCLUDES) support in next major version
For a rationale and related discussion, see:
<http://lists.gnu.org/archive/html/automake/2013-02/msg00001.html>
And note that support for INCLUDES has not been re-introduced in the
master branch yet, at the moment of writing; but we plan to definitely
do so before the next major release.
NEWS: IRIX is still supported; only SGI depmode no longer is
This change is for the master branch (see the similar commit
'v1.13.1b-3-g97f04a5' on the maint branch).
The only IRIX-specific support that is actually removed in master (and
thus in the next major Automake version) is the depcomp support for the
SGI compiler. That means that automatic dependency tracking will no
longer work with that compiler, but "normal" compilation should still
work, at least until the compiler is supported by Autoconf.
So there is no point in alarming our users by stating in the NEWS file
that "support for IRIX and the SGI compilers has been removed"; after
all, while we don't test on nor particularly care about IRIX anymore,
that doesn't mean we are deliberately breaking it, and the likelihood
of an intended breakage there is very low.
* maint:
NEWS: IRIX is still supported; only SGI C compiler depcomp no longer is
maint: version bump after beta release 1.13.1b
NEWS: typofix
release: beta release 1.13.1b (will become 1.13.2)
* branch-1.13.2:
NEWS: IRIX is still supported; only SGI C compiler depcomp no longer is
maint: version bump after beta release 1.13.1b
NEWS: typofix
release: beta release 1.13.1b (will become 1.13.2)
NEWS: IRIX is still supported; only SGI C compiler depcomp no longer is
This change is for the maint branch.
The only IRIX-specific support that is going to actually be removed in
the next major Automake versions is the depcomp support for the SGI
compiler. That means that automatic dependency tracking will no
longer work with that compiler, but "normal" compilation should still
work, at least until the compiler is supported by Autoconf.
So there is no point in alarming our users by stating in the NEWS file
that "support for IRIX and the SGI compilers is going to be removed";
after all, while we don't test on nor particularly care about IRIX
anymore, that doesn't mean we are deliberately breaking it, and the
likelihood of an intended breakage there is very low.
* maint:
docs: '.txi' and '.texinfo' extensions are deprecated
NEWS: document recent documentation improvements
docs: more precise cross reference
docs: 'dist-shar' and 'dist-tarZ' are obsolescent today
docs: improve documentation of 'dist-*' targets slightly
docs: make even clearer 'dist-gzip' is the default.
docs: document 'dist-xz' together with the other 'dist-*' options
docs: 'no-define' option and AM_INIT_AUTOMAKE three-args usage: fixlets
warn: correct broken hyperlink in warning message
* branch-1.13.2:
docs: '.txi' and '.texinfo' extensions are deprecated
NEWS: document recent documentation improvements
docs: more precise cross reference
docs: 'dist-shar' and 'dist-tarZ' are obsolescent today
docs: improve documentation of 'dist-*' targets slightly
docs: make even clearer 'dist-gzip' is the default.
docs: document 'dist-xz' together with the other 'dist-*' options
docs: 'no-define' option and AM_INIT_AUTOMAKE three-args usage: fixlets
warn: correct broken hyperlink in warning message
* doc/automake.texi (The Types of Distributions): Here,
cross-reference "List of Automake options" rather then
the more generic node "Options". Improve wording while
at it.
* maint:
tests: more information about Lex and Yacc programs
lint: fix spurious failure for 'sc_rm_minus_f' syntax check
maint: bump version 1.13.1a -> 1.13.2a
maint: update copyright in files generated by automake and aclocal
tests: avoid a spurious failure when running inside Emacs
tests: make two new test executable
m4: rename an m4 file to a more appropriate name
NEWS: update w.r.t. recent documentation fixes
compat: reinstate AM_CONFIG_HEADER and AM_PROG_CC_STDC
docs: parallel-tests is no longer experimental
docs: serial-tests are not deprecated, just discouraged
plans: we are not going to remove AM_PROG_MKDIR_P in Automake 1.14
NEWS: we are not going to remove AM_PROG_MKDIR_P in Automake 1.14
init.m4: add probe to check "rm -f" without args work
The 1.13.2 bug-fixing release will ship from the 'branch-1.13.2' git
branch, not from the 'maint' one, since the latter contains changes
that are non-trivial and hasn't cooked enough yet. The 'maint' branch
will give rise to the 1.13.3 release instead, eventually. Adjust the
version number to match.
* configure.ac (AC_INIT): Bump version number to 1.13.2b.
* m4/amversion.m4: Likewise (auto-updated by "make bootstrap").
That branch is for the "emergency" bug-fixing release 1.13.2.
* branch-1.13.2:
maint: update copyright in files generated by automake and aclocal
tests: avoid a spurious failure when running inside Emacs
tests: make two new test executable
m4: rename an m4 file to a more appropriate name
NEWS: update w.r.t. recent documentation fixes
compat: reinstate AM_CONFIG_HEADER and AM_PROG_CC_STDC
docs: parallel-tests is no longer experimental
docs: serial-tests are not deprecated, just discouraged
NEWS: we are not going to remove AM_PROG_MKDIR_P in Automake 1.14
Thien-Thi Nguyen [Mon, 21 Jan 2013 12:35:03 +0000 (13:35 +0100)]
tests: avoid a spurious failure when running inside Emacs
Some versions of Emacs set the environment variable 'EMACS' to 't'
for child processes. Thus, when running from inside Emacs, "$(MAKE) -e"
erroneously allows the 't' to override the one in the Makefile.
* t/lisp-flags.sh: Unset var 'EMACS', fixing the issue.
compat: reinstate AM_CONFIG_HEADER and AM_PROG_CC_STDC
Make them give runtime warnings in the obsolete category, but apart
from that, make them behave as they did in Automake 1.12.x and earlier.
While removing those macros seemed quite harmless, because it didn't put
a real burden on the developers (requiring them just to do a quick edit
to configure.ac), it turned out to place an unsustainable burden (or at
least, a burden perceived as such) on distro packagers who use the latest
Automake to bootstrap existing packages. Many of those packages, while
having likely updated to AC_CONFIG_HEADERS in their development version,
still used AM_CONFIG_HEADER in their existing released versions, and the
removal of this macro would have thus forced the Fedora packagers to
patch all of them. References:
In addition, the Fedora packagers have already decided to patch their
Automake 1.13.1 to reinstate the AM_CONFIG_HEADER and AM_PROG_CC_STDC
macros (plus other macros that I don't believe it's worth worrying about):
So, rather than having one more incompatibility floating around, we
better mirror that change (or, actually, its relevant parts) in the
upstream.
* m4/obsolete-err.m4 (AM_CONFIG_HEADER, AM_PROG_CC_STDC): Revert to the
older semantics, plus a runtime warning in the 'obsolete' category.
* t/backcompat6.sh: Use AM_CONFIG_HEADER once again.
* t/am-config-header-no-more.sh: Rename ...
* t/am-config-header.sh: ... like this, and adjust.
* t/am-prog-cc-stdc-no-more.sh: Rename ...
* t/am-prog-cc-stdc.sh: ... like this, and adjust.
* t/list-of-tests.mk: Adjust.
* NEWS: Update.
docs: serial-tests are not deprecated, just discouraged
We don't plan to remove support for them, nor to have the serial-tests
option give any kind of runtime warning, so don't alarm the users
still using serial tests with pointless "deprecation" or "obsolescence"
warnings.
Fixes automake bug#13478.
See also:
<http://lists.gnu.org/archive/html/automake/2013-01/msg00058.html>
OK, this is getting ridiculous, but we cannot remove this macro yet
(and, yes, the fault for this mess lies entirely on me; let's not
dwell on that, thank you very much).
Gettext (so far the greatest "offender" in the use of AM_PROG_MKDIR), in
its latest release 0.18.2, has removed all the uses of that macro still
present in its code base. So I thought we could finally and safely
remove it. Wrong. If a package's 'configure.ac' contains a call like:
AM_GNU_GETTEXT_VERSION([0.18])
then the 'autopoint' script will bring the data files from the Gettext
release *1.18* into the package's tree -- yes, even even if the developer
has installed *and is using* Gettext 1.18.2! Now, these data files
comprise m4 files (that will be seen by subsequent aclocal and autoconf
calls), and of course, the pre-0.18.2 version of some of these files
still contains occurrences of AM_PROG_MKDIR_P -- so Automake 1.13 errors
out, and we lose. This has already happened in practice:
Moreover, while we might see it as not unreasonable to ask a developer
using Automake 1.14 to also update Gettext to 1.18.2, that would not
be enough; in order for gettext to use the correct data files, our
developer would have to update his configure.ac to read:
AM_GNU_GETTEXT_VERSION([0.18.2])
thus requiring *all* of his co-developers to install Gettext 1.18.2,
even if they are still using, say, Automake 1.13. Bad.
So we re-instate this macro as a simple alias for AC_PROG_MKDIR (plus
a non-fatal runtime warning in the 'obsolete' category), and drop any
plan to remove it (see how much good those plans have done us so far).
Note that NEWS is not yet adjusted, since we'll have to adjust it in
maint before (to minimize spurious merge conflicts).
* doc/automake.texi: Update.
* PLANS/obsolete-removed/am-prog-mkdir-p.txt: Likewise.
* t/gettext-macros.sh: Adjust.
* t/am-prog-mkdir-p.sh: New test.
* t/mkdir_p.sh: Remove, folded into the new one.
* t/am-prog-mkdir-p-no-more: Remove as superseded.
* t/list-of-tests.mk: Adjust.
* t/obsolete-err.m4: Re-instate AM_PROG_MKDIR_P as a working
alias for AC_PROG_MKDIR_P (albeit giving runtime warnings, and
calling AC_SUBST on 'mkdir_p' too).
* m4/init.m4 (AM_INIT_AUTOMAKE): No longer call AC_SUBST for
'mkdir_p', as that is once again AM_PROG_MKDIR_P's business.
init.m4: add probe to check "rm -f" without args work
See automake bug#10828.
POSIX will say in a future version that running "rm -f" with no argument
is OK: <http://austingroupbugs.net/view.php?id=542>).
We want to be able to make that assumption in our Makefile recipes.
So we introduce an aggressive probe to check that the usage we want is
actually supported "in the wild" to an acceptable degree.
* m4/init.m4 (AM_INIT_AUTOMAKE): Implement the probe. To make any issue
more visible, cause the running configure to be aborted by default if
the 'rm' program in use doesn't match our expectations; the user can
still override this though, by setting the ACCEPT_INFERIOR_RM_PROGRAM
environment variable to "yes".
* t/spy-rm.tap: Update heading comments.
* t/rm-f-probe.sh: New test.
* t/list-of-tests.mk: Add it.
* PLANS/rm-f-without-args.txt: Adjust.
Since the next major automake version will make the behaviour so far
only activated with the 'subdir-object' option mandatory, it's better
if we start warning users not using that option.
As suggested by Peter Johansson, we strive to avoid the warning when
it would be irrelevant, i.e., if all source files sit in "current"
directory.
* maint:
ywrap: remove an obsolete FIXME comment
ywrap: style fixes (no semantic change intended)
convenience: "make lint" as an alias for "make maintainer-check"
docs: typofix in manual
coverage: using multiple lexers in a single program
* maint:
tests: remove most uses of the AM_PROG_CC_C_O obsolete macro
coverage: obsolete macro AM_PROG_CC_C_O should cause no warning nor errors
INSTALL: update copyright years
ithreads: use runtime (not configure time) detection of perl threads
copyright: add few missing copyright notices
maint: files in PLANS are to be exempted from copyright notice
maint: consistently honor the UPDATE_COPYRIGHT_YEAR environment variable
copyright: update some copyright years
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>
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.
* maint:
compile: use 'compile' script when "-c -o" is used with losing compilers
HACKING: suggest more checks before releasing
tests: can fake a compiler not grasping "-c -o" -- globally in all tests
sync: update files from upstream with "make fetch"
typofix: in comments in GNUmakefile
Rename 'maint/' -> 'maintainer/', for Git's sake
HACKING: minor typofix
HACKING: bug-tracker, the PLANS directory, and how to plan "big" changes
HACKING: rewindable branches should live in the 'experimental/*' namespace
HACKING: fixlets about git branch rewinding policy
HACKING: commit messages are not to follow GCS ChangeLog rules too strongly
HACKING: "detailed explanation" in commit messages is almost mandatory
HACKING: we use "merge --log" even when merging master
HACKING: typofix
depend2.am: fix comments on verbosity of compilation rules
depend2.am: improve comments a little
plans: automake 1.14 is to assume "rm -f" with no args is OK
plans: we want to active subdir-objects unconditionally in automake 1.14
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:
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.
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.
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.