Re: [SCM] make branch, master, updated. 4.3-234-gf6ea899d

2022-09-13 Thread Paul Smith
On Tue, 2022-09-13 at 07:31 +0200, Frank Heckenbach wrote:
> Is the last sentence grammatically correct? I'm not a native
> speaker, but I'd have expected "a more unreliable way" or "a less
> reliable way".

This was rewritten a few times and meant to be "a less reliable" but I
fat-fingered it.  Will fix.

> Also, you might want to say "@code{.NOTPARALLEL} and @code{.WAIT}
> are ...", since AIUI this applies to both of them.

Yes.  I'll look at it.

> Can several ".WAIT" targets appear in the same rule? I'd expect so,
> but you may want to mention it, i.e. will
> 
>   all: one .WAIT two three .WAIT four
> 
> cause one to be run before two and three, the latter ones possibly
> in parallel, and all of them before four?

Correct.  In fact this is exactly how .NOTPARALLEL:  works: it
adds .WAIT between every prerequisite.



Re: [SCM] make branch, master, updated. 4.3-234-gf6ea899d

2022-09-13 Thread David A. Wheeler



> On Sep 13, 2022, at 1:31 AM, Frank Heckenbach  wrote:
> 
> I appreciate the addition of this feature. Some small comments about
> the documentation:
> 
>> As with targets provided to @code{.NOTPARALLEL}, @code{.WAIT} has
>> an effect only when building the target in whose prerequisite list
>> it appears.  If the same prerequisites are present in other targets,
>> without @code{.WAIT}, then they may still be run in parallel.
>> Because of this, @code{.WAIT} is an unreliable way to impose
>> ordering than defining a prerequisite relationship.
> 
> Is the last sentence grammatically correct? I'm not a native
> speaker, but I'd have expected "a more unreliable way" or "a less
> reliable way".

I'm a native English speaker, and I confirm, that last sentence is awkward.
I suggest a "less reliable way", and "compared to" instead of "than", leaving 
the sentence as:


Because of this, @code{.WAIT} is an less reliable way to impose
ordering compared to defining a prerequisite relationship.


--- David A. Wheeler




Re: [SCM] make branch, master, updated. 4.3-234-gf6ea899d

2022-09-12 Thread Frank Heckenbach
> [SV 13862] Implement the .WAIT special target
> 
> The next version of the POSIX standard defines parallel execution
> and requires the .WAIT special target as is implemented in some other
> versions of make.
> 
> * doc/make.texi (Parallel Disable): A new section to discuss ways in
> which parallel execution can be controlled.  Modify cross-refs to
> refer to this section.

I appreciate the addition of this feature. Some small comments about
the documentation:

> As with targets provided to @code{.NOTPARALLEL}, @code{.WAIT} has
> an effect only when building the target in whose prerequisite list
> it appears.  If the same prerequisites are present in other targets,
> without @code{.WAIT}, then they may still be run in parallel.
> Because of this, @code{.WAIT} is an unreliable way to impose
> ordering than defining a prerequisite relationship.

Is the last sentence grammatically correct? I'm not a native
speaker, but I'd have expected "a more unreliable way" or "a less
reliable way".

Also, you might want to say "@code{.NOTPARALLEL} and @code{.WAIT}
are ...", since AIUI this applies to both of them.

Can several ".WAIT" targets appear in the same rule? I'd expect so,
but you may want to mention it, i.e. will

  all: one .WAIT two three .WAIT four

cause one to be run before two and three, the latter ones possibly
in parallel, and all of them before four?