bug-make
[Top][All Lists]
Advanced

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

Re: GNU make 4.2.90 release candidate available


From: Paul Smith
Subject: Re: GNU make 4.2.90 release candidate available
Date: Sat, 05 Oct 2019 13:48:45 -0400
User-agent: Evolution 3.32.1-2

On Sat, 2019-08-31 at 13:59 +0300, Eli Zaretskii wrote:
> The failures where all eyeballed, and the conclusion is that they are
> due to non-portable assumptions that are too much work to fix.  The
> worst offenders are:
> 
>   . the assumption that $$FOO gets expanded by the shell into the
>     value of FOO;
>   . too sophisticated games with quoting;
>   . shell commands too complex to port easily, like this one from
>     output-sync:
> 
>       while [ ! -f ../mksync.$_[0] ]; do :; done; $CMD_rmfile 
> ../mksync.$_[0].wait; $sleep_command 1
> 
> I think the test suite could be made much more portable by using Make
> itself instead of the shell as a subordinate program.

Sometimes this can be done.  Other times not so much.  And of course,
there are tests which intentionally want to avoid running a sub-make,
which can have side-effects.

What I probably should do is implement a set of simple operations in
Perl and invoke that to run recipes, instead of shell.  We know we have
Perl since that's what the test suite is written in.

I did make an effort to write some of the very tricky code around
testing output sync and parallelism using Perl scripting.  The main
idea was to try to speed up these tests and make them more reliable by
using locking files and checking for existence to control the order in
which recipes complete, rather than just relying on sleep calls.  But
IIRC I was doing this while recovering from an illness... so probably
not my best work :)




reply via email to

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