On 21 May 2015 at 09:12, Roman Neuhauser <neuhau...@sigpipe.cz> wrote:
> # aschwarz1...@att.net / 2015-05-20 17:00:57 -0700:
>> 15.2.3 Parallel Test Harness

>> Suppose Makefile looks something like:
>>
>>    TESTS = foo.exe
>>
>> Then
>>    TEST_LOGS = foo.log
>>
>> And the user sets this to
>>    env TEST_LOGS = bar.log make -e check
>>
>> What on earth does this mean?
>
> first, it would have to be
>
>   env TEST_LOGS=bar.log make -e check
>
> (no ws around the equals sign).
>
> second, it looks like a pilot error, and i would expect make to produce
> an error.

It seems pointless to set it in the Makefile.am, except maybe to
reduce the tests that are executed to a subset of those listed in
TESTS?

I would guess that overriding it from the command-line would need to
set it to a subset of the test logs. This seems pointless as you could
override TESTS instead.

>> And what does 'set x subset*.log; shift' have to do with anything. It looks
>> like something erroneously removed from an existing script and put in the
>> document.
>
> that's just defensive shell script programming.  if no files match the
> pattern, it will expand to nothing, and "set" with no options or arguments
> produces a list of all parameters (variables) defined in the current
> shell environment (instead of setting argc = 0, argv = {}.  to prevent
> this mishap you need to ensure that "set" sees at least one argument,
> and then shift it off the beginning of argv.

It's like the "test x$a = x$b" trick in case either a or b is empty.

It would appear in the example that the subset*.log and foo.log are
logs for existing tests.

I can't see any purpose in this variable being documented.

Reply via email to