tests: remove mostly-redundant tests on silent rules
commit696f44c0840d931656f986e9f4fb623e63df16ba
authorStefano Lattarini <stefano.lattarini@gmail.com>
Wed, 7 Nov 2012 22:40:59 +0000 (7 23:40 +0100)
committerStefano Lattarini <stefano.lattarini@gmail.com>
Wed, 7 Nov 2012 22:41:21 +0000 (7 23:41 +0100)
treeaf442e022bca58dc1f3ec452d7cb5bf873b40d6b
parentcbcf5001c535a05d3262b92465aabfcbe39320e1
tests: remove mostly-redundant tests on silent rules

We used to have several couples of tests named like 'silent-foo-gcc.sh'
and 'silent-foo-generic.sh'.  Differently from what the names suggest,
the first test in such a couple (that is, "silent-foo-gcc.sh") was not
meant to check specific GCC-related features, but rather to check how
the silent rules behave in combination with automatic dependency tracking
when the 'gcc' depmode (that targets GCC versions before the 3.x and 4.x
release series) is forced.

Such depmode forcing was done exclusively to cover the code paths in
'lib/am/depend2.am' that actually invoke the 'depcomp' script, rather
than using the inlined, GCC-specific compiler invocation (the so-called
"fastdep" mode), which is the default with modern GCC or with other
modern compilers that can emulate the GCC command-line interface (e.g.,
clang 3.0).

But whenever we run the silent-*-generic.sh" tests with other supported
compilers which have an associated depmode different from 'gcc3', these
same "non-fastdep" code paths are covered, since in those tests we run
./configure with the '--enable-dependency-tracking' option, which causes
slower depmodes not to be rejected.  Examples of such compilers are the
Sun C and C++ compilers (at least since version 5.9, a.k.a. Sun Studio
12.1), and the Tiny C Compiler (from version 0.9.26); and I run the
Automake testsuite quite regularly with those compilers.

So, the "silent-*-gcc.sh" test cases don't offer any real coverage
enhancements, while still using testsuite runtime and causing some
(admittedly minor, but still annoying) synchronization headaches with
the sister tests "silent-foo-general.sh" tests.  So let's just remove
these "silent-*-gcc.sh" tests.

* t/silent-c-gcc.sh: Remove.
* t/silent-cxx-gcc.sh: Likewise.
* t/silent-lt-gcc.sh: Likewise.
* t/silent-many-gcc.sh: Likewise.
* t/silent-c-generic.sh: Rename ...
* t/silent-c.sh: ... like this, and adjust heading comments.
* t/silent-cxx-generic.sh: Rename ...
* t/silent-cxx.sh: ... like this, and adjust heading comments.
* t/silent-lt-generic.sh: Rename ...
* t/silent-lt.sh: ... like this, and adjust heading comments.
* t/silent-many-generic.sh: Rename ...
* t/silent-many-languages.sh: ... like this, and adjust heading
comments.
* t/list-of-tests.mk: Adjust.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
t/list-of-tests.mk
t/silent-c-gcc.sh [deleted file]
t/silent-c.sh [moved from t/silent-c-generic.sh with 93% similarity]
t/silent-cxx-gcc.sh [deleted file]
t/silent-cxx.sh [moved from t/silent-cxx-generic.sh with 92% similarity]
t/silent-lt-gcc.sh [deleted file]
t/silent-lt.sh [moved from t/silent-lt-generic.sh with 94% similarity]
t/silent-many-gcc.sh [deleted file]
t/silent-many-languages.sh [moved from t/silent-many-generic.sh with 97% similarity]