bug-make
[Top][All Lists]
Advanced

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

Re: Serialization dependencies muck up configure-on-demand


From: Daniel Jacobowitz
Subject: Re: Serialization dependencies muck up configure-on-demand
Date: Mon, 23 Dec 2002 15:58:35 -0500
User-agent: Mutt/1.5.1i

On Mon, Dec 23, 2002 at 03:37:51PM -0500, Nathanael Nerode wrote:
> Daniel mentioned:
> >However, GNU make has the answer.  We'd probably have to autoconf for
> >this feature, it's quite new:
> >    * A new feature exists: order-only prerequisites.  These 
> >prerequisites
> >      affect the order in which targets are built, but they do not 
> >impact
> >      the rebuild/no-rebuild decision of their dependents.  That is to 
> >say,
> >      they allow you to require target B be built before target A, 
> >without
> >      requiring that target A will always be rebuilt if target B is 
> >updated.
> >      Patch for this feature provided by Greg McGary <address@hidden>.
> >
> >The syntax is:
> >TARGETS : NORMAL-PREREQUISITES | ORDER-ONLY-PREREQUISITES
> >
> >So if that works in a test at autoconf time, we could use it.
> 
> Quite right; if configure detects that this is available, we should use 
> this in the Makefile rather than the existing scheme.
> 
> Unfortuntately, I'm not feeling up to coding this for a while. :-(

Oh, I can do it; in fact the autoconfery is trivial.  I need to go
figure out why it isn't working as I expect though.  Right now saying
"a : | b" appears to mean that b out-of-date does not trigger remaking
a, but "make a" still causes b to be remade.  In other words it's still
a dependency but not used for rebuild calculation.  Serialization wants
something different so this may not be our answer.

Make folks, am I reading the documentation right?  Do we need another
feature to express this concept?  Background: we run a collection of
configure scripts from the makefile; due to the current handling of
config.cache we only want one of them to run at a time, without having
to .NOTPARALLEL the entire makefile; they are not actually as strictly
dependent as that implies.

> Would there be interest in temporarily disabling the serialization 
> dependencies (since .NOTPARALLEL is still there) until we can get a 
> better solution for all this?  I'm just thinking of 
> "if (0)"ing them out in 'configure.in' for the time being.

(Well, I like it.)

-- 
Daniel Jacobowitz
MontaVista Software                         Debian GNU/Linux Developer



reply via email to

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