[Top][All Lists]

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

Re: 'How makefiles are remade'

From: Jim
Subject: Re: 'How makefiles are remade'
Date: Tue, 20 Apr 2004 16:29:11 -0700
User-agent: Mozilla Thunderbird 0.5 (Windows/20040207)

Paul D. Smith wrote:

I think Jim's example could be _MUCH_ clearer (what's with all that
TICKS and patsubst, etc.?  That hardly seems necessary to show the

well yeah - I started off just with echo TICKS=$(TICKS)I > ticks

which just kept adding an I - so I got bored and made it roman numerate the tick count *shrug* that part works.

But, if I understand correctly, what Jim wants is for make to re-invoke
itself after each makefile that it rebuilds, so that subsequent rebuilds
can take advantage of the contents created in previous ones.

If you want make to continue to re-exec itself you have to fake it out
by somehow convincing it that the file is out of date.  If you provide a
simple example, just using touch etc. so it's obvious what's going on,
I'll see if I can think of a way to do it.

Alternatively you could move away from include and just start using
eval... then you don't have to worry about re-exec at all.

Hmm not sure how eval equates to include...

Since the actual end in mind is a Makefile.cache, which is the literal expanded targets, rules nessecary to genearte the product defined by the makefile... This must be dependant on all makefiles which may have changed... the final result is a huge tree of includable .cache files which have the rules needed for all dependants (libraries in other branches, etc )

But for this to work, after that cache is built, it MUST be reloaded (and also all things which it itself includes)

reply via email to

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