2011-08-09 Stefano Lattarini <stefano.lattarini@gmail.com>
- tests: fix various blunders in 'suffix-chain.test'
- * tests/suffix-chain.test: Fix various blunders that were causing
- this test to fail spuriously: append to `configure.in', not to
- `configure.ac'; add a `;' character after the `return' statement
- in an input file; use tabs, not spaces, to indent Makefile recipes;
- and use more uncommon suffixes that don't trigger built-in recipes
- with FreeBSD make.
++ tests: fix spurious failure in 'suffix-chain.tap'
++ * tests/suffix-chain.test: Use more uncommon suffixes that
++ don't trigger built-in recipes with FreeBSD make.
++
++2011-08-09 Stefano Lattarini <stefano.lattarini@gmail.com>
++
+ testsuite: improvements to our shell TAP library and APIs
+ These improvements impact only the Automake's own testsuite.
+ * tests/tap-functions.sh (plan_): Allow new special arguments
+ "unknown" a.k.a. "later" and "lazy" a.k.a. "now". Perform
+ sanity check the given arguments. Adjust incorrect comments.
+ (lazy_plan_): Removed, superseded by the new version of `plan_'.
+ (not): New function, run a command and inverts its exit status.
+ (ok_, not_ok_, skip_): These are just shorthands for common
+ `result_' usages.
+ (xfail_, xpass_, reset_test_count_): Removed, they are not used,
+ nor does a legitimate use for them seem in sight.
+ (not): New function, to run a command inverting its exit status.
+ (command_not_ok_): Removed, superseded by `command_ok_' + `not'.
+ (command_ok_): Extended to accept TAP directives.
+ * tests/defs (trap): Don't use `late_plan_' anymore, use
+ `plan_ "now"' instead.
+ * tests/ac-output-old.tap: Update to take advantage of the new
+ APIs.
+ * tests/self-check-env-sanitize.tap: Likewise.
+ * tests/suffix-chain.tap: Likewise.
+ * tests/suffix10.tap: Likewise.
+ * tests/suffix11.tap: Likewise.
+ * tests/suffix3.tap: Likewise.
+ * tests/suffix8.tap: Likewise.
+ * tests/tap-bad-prog.tap: Likewise.
+ * tests/self-check-exit.tap: Likewise, plus a small improvement
+ in the name of a variable.
+
+2011-08-09 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ testsuite: convert some `suffix*' tests to TAP
+ This will allow us to explicitly declare some expected failures
+ involving Solaris make as such, instead of partly papering over
+ them with skips and partly letting them fail too loudly.
+ * tests/suffix-chain.test: Rename ...
+ * tests/suffix-chain.tap: ... to this, and convert to the use of
+ TAP. Also, fix some bugs since we are at it, and ...
+ ($required): ... require `cc'.
+ * tests/suffix3.test: Rename ...
+ * tests/suffix3.tap: ... to this, and convert to the use of TAP.
+ Also, since we are at it, throw in some formatting fixes.
+ * tests/suffix8.test: Rename ...
+ * tests/suffix8.tap: ... to this, and convert to the use of TAP.
+ Also, since we are at it, throw in some formatting fixes.
+ * tests/suffix10.test: Rename ...
+ * tests/suffix10.tap: ... to this, and convert to the use of TAP.
+ * tests/suffix11.test: Rename ...
+ * tests/suffix11.tap: ... to this, and convert to the use of TAP.
+ * tests/Makefile.am (TESTS): Update.
2011-08-09 Stefano Lattarini <stefano.lattarini@gmail.com>
cat > Makefile.am <<'END'
bin_PROGRAMS = foo
- foo_SOURCES = foo.e
- .e.d:
+ foo_SOURCES = foo.c1
+ .c1.c0:
(echo 'int main (void)' && echo '{' && cat $<) > $@
- .d.c:
+ .c0.c:
(cat $< && echo '}') > $@
- CLEANFILES = foo.d foo.c
+ CLEANFILES = foo.c0 foo.c
END
- echo 'return 0;' > foo.e
+ echo 'return 0;' > foo.c1
-$ACLOCAL
-$AUTOMAKE
-$AUTOCONF
-./configure
+command_ok_ "aclocal" $ACLOCAL
+command_ok_ "automake" $AUTOMAKE
+command_ok_ "autoconf" $AUTOCONF
+command_ok_ "configure" ./configure
-$MAKE
-$MAKE distcheck
+directive=''; make_can_chain_suffix_rules || directive=TODO
-$MAKE clean
+for target in all distcheck; do
+ command_ok_ "make $target" \
+ -D "$directive" -r "suffix rules not chained" \
+ $MAKE $target
+done
+command_ok_ "clean" $MAKE clean
+# Sanity check.
cat >> Makefile <<'END'
- foo.c: foo.d
- foo.d: foo.e
+ foo.c: foo.c0
+ foo.c0: foo.c1
END
-
-$MAKE
+command_ok_ "make with explicit dependencies" $MAKE
: