bug-make
[Top][All Lists]
Advanced

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

Re: add Order-only Prerequisites example


From: Philip Guenther
Subject: Re: add Order-only Prerequisites example
Date: Mon, 9 Jul 2012 01:17:59 -0700

On Sun, Jul 8, 2012 at 4:24 PM,  <address@hidden> wrote:
>>>>>> "PS" == Paul Smith <address@hidden> writes:
>>> A:B C;D
>>> A:|B C;D
>
> PS> No.  C will never be run first, before B.  If you enable parallel builds
> PS> then B and C might be run at the same time (but B will still be started
> PS> first, then C).

Paul, as you know, you meant: "*this rule* will not cause C to be run
before B; if *this rule* is the trigger for B and C being built, then
B will be started before C".

An example of how C might be built before B, despite that rule being
used, would be

A: B C; D
E: C A

then "make E" will build in the order C B A E


> OK, I sure hope it will get documented that
> A:B C;D
> implies that if B fails, C will never get run (or built etc.),

What Paul said directly contradicts that.  He said:
     If you enable parallel builds then B and C might be run at the same time

If they're run at the same time, then obviously C will get built even
if B fails!


> and we never have to
> worry about C getting run first (unless we use some -option.)
> I.e., C will only get run after we know the results of B.

Nope, wrong.  If you want make to guarantee that, you must express it
as a dependency between C and B.


Philip Guenther



reply via email to

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