automake-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 11] Fix LAZY_TEST_SUITE handling and $(TEST_SUITE_LOG) recrea


From: Ralf Wildenhues
Subject: Re: [PATCH 11] Fix LAZY_TEST_SUITE handling and $(TEST_SUITE_LOG) recreation.
Date: Mon, 30 Mar 2009 21:30:58 +0200
User-agent: Mutt/1.5.18 (2008-05-17)

Hello Akim,

* Akim Demaille wrote on Mon, Mar 30, 2009 at 09:18:06PM CEST:
> Le 20 mars 09 à 00:24, Ralf Wildenhues a écrit :
>
>> Retaining the "TESTS=foo*.test" thing without GNU make-specific  
>> measures is tricky.  It requires to shell-expand $(TESTS), before we
>> even start using either of $(TESTS) or $(TEST_LOGS).  IIUC that means
>> we have to introduce yet another restart of 'make'.  :-/
>> Do you see another way?
>
> Actually I'm not even sure this is the right approach: after all there  
> is nothing that requires the contents of TESTS to be actual files, is  
> there?

Well, not in principle at least.  But the current rules to generate the
log files assumes it.  It even assumes they are not symlinks.

>  Maybe they are just .PHONY and just the name is the test, or the 
> files are generated, in which case globbing will not work.

Again, this is TODO work.

> Maybe it should not be file globbing, but some kind of filtering (maybe 
> case/esac-based) on the whole list of available TESTS.  I like to be able 
> to run "make check TESTS='*foo*'" and have all the tests that have "foo" 
> in it, whatever the directory it's in.  File-based globbing won't do.
>
> But I agree I see no means to avoid another invocation of make :(

The problem is that adding recursion is no panacea.  The ugly
non-portable variable override rears its head there.

I'm leaving it out of 1.11b, and instead listing a couple of examples to
do the globbing in shell.  You could easily define a custom target to do
similar as
  set x generated-tests*.test; shift
  cd $srcdir && set x "$@" source-tests*.test && shift && cd -
  make check TESTS="$*"

Cheers,
Ralf




reply via email to

[Prev in Thread] Current Thread [Next in Thread]