Hi,

I've just upgraded one of my projects to automake 1.11 in order to use the parallel-tests driver. Both the manual [1] and the Ralf's post here [2] describes how to run the test suite lazily as ` make check RECHECK_LOGS='. My question is how it is determined which tests are run in this case.

It seems like if `foo' is newer than `foo.log', foo will be re-run but is that the only dependency? I would like to fine tune these dependencies. For instance, I have a test `yat_m4_test.sh' which uses $(top_srcdir)/m4/yat.m4 and I want `yat_m4_test.sh' to be re-run when I've modified `m4/yat.m4'. It seems to work if I add a rule

yat_m4_test.sh: $(top_srcdir)/m4/yat.m4
    @touch $@

but preferably I would like to set this dependency without touching the test. Is that possible?

As I see it there are two reasons why I would like to include a test in a lazy 'make check' run. 1) Because the test itself has been modified either directly or if the test is compiled by the compiler. 2) Because any input file has changed, e.g., yat.m4 in my case or if the test is testing a script/program it is desired to depend on the script/program. In case 2) there is no need to update test itself but there is a need to update the .log file, i.e., to re-run the test.

Thanks,
Peter



[1] http://sources.redhat.com/automake/automake.html#Simple-Tests-using-parallel_002dtests
[2] http://lists.gnu.org/archive/html/automake/2009-05/msg00124.html

Reply via email to