Re: 'How makefiles are remade'

2004-04-20 Thread Jim
Jim wrote: Noel Yap wrote: > That would be fine, if that even worked, that would probalby solve about 90% of the problems just by cleverly odering the includes... but, as I started, the first attached makefile fails, and it includes 'ticks' which if Makefile or one of the other touchable thing

Re: 'How makefiles are remade'

2004-04-20 Thread Paul D. Smith
%% Jim <[EMAIL PROTECTED]> writes: j> That would be fine, if that even worked, that would probalby solve j> about 90% of the problems just by cleverly odering the j> includes... but, as I started, the first attached makefile fails, j> and it includes 'ticks' which if Makefile or one of the

Re: 'How makefiles are remade'

2004-04-20 Thread Jim
Noel Yap wrote: > I think this only happens at the time the makefile is included. It's infeasible to have make check whether all makefiles that it had included, has been touched by something. That would be fine, if that even worked, that would probalby solve about 90% of the problems just b

Re: 'How makefiles are remade'

2004-04-20 Thread Noel Yap
Jim wrote: Noel Yap wrote: The amount of hairy code in a system stays constant :-) Although the definition may be ugly, it's usage is pretty simple: $(call include-makefile,my-makefile) well yeah - but include-makefile supplies ,-include,$(m), for the $(1) and $(2) in _include-makefile... #

Re: 'How makefiles are remade'

2004-04-20 Thread Jim
Noel Yap wrote: Jim wrote: Well that's an ugly thing :) The amount of hairy code in a system stays constant :-) Although the definition may be ugly, it's usage is pretty simple: $(call include-makefile,my-makefile) well yeah - but include-makefile supplies ,-include,$(m), for the $(1) and

Re: 'How makefiles are remade'

2004-04-20 Thread Jim
Noel Yap wrote: Jim wrote: Noel Yap wrote: okay so I extended it some... and this fails. .PHONY:all all: junk; @echo $(TICKS) include ticks2 ticks2: @echo TICKS=a number >> ticks2 include make2 make2: @echo junk: >>make2 @echo echo $(TICKS) >>make2 if ticks2 were really reload

Re: 'How makefiles are remade'

2004-04-20 Thread Noel Yap
Jim wrote: Well that's an ugly thing :) The amount of hairy code in a system stays constant :-) Although the definition may be ugly, it's usage is pretty simple: $(call include-makefile,my-makefile) > $(1) $(2) within the macro will include a makefile on the fly eh? but sometime after a

Re: 'How makefiles are remade'

2004-04-20 Thread Noel Yap
Jim wrote: Noel Yap wrote: okay so I extended it some... and this fails. .PHONY:all all: junk; @echo $(TICKS) include ticks2 ticks2: @echo TICKS=a number >> ticks2 include make2 make2: @echo junk: >>make2 @echo echo $(TICKS) >>make2 if ticks2 were really reloaded then make2 wou

Re: 'How makefiles are remade'

2004-04-20 Thread Jim
Noel Yap wrote: Jim wrote: Noel Yap wrote: This makefile works: .PHONY: all all: ; include ticks ticks: @touch $(@) How do you know? Sure the rule is done, it doesn't mean that ticks is reloaded Since we have this sort of thing in our makefiles, I'm pretty sure it gets reloaded

Re: 'How makefiles are remade'

2004-04-20 Thread Jim
Noel Yap wrote: Jim wrote: 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...

Re: 'How makefiles are remade'

2004-04-20 Thread Noel Yap
Jim wrote: 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

Re: 'How makefiles are remade'

2004-04-20 Thread Noel Yap
Jim wrote: Noel Yap wrote: This makefile works: .PHONY: all all: ; include ticks ticks: @touch $(@) How do you know? Sure the rule is done, it doesn't mean that ticks is reloaded Since we have this sort of thing in our makefiles, I'm pretty sure it gets reloaded. The above can eas

Re: 'How makefiles are remade'

2004-04-20 Thread Jim
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 issue). 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 numer

Re: 'How makefiles are remade'

2004-04-20 Thread Jim
Noel Yap wrote: This makefile works: .PHONY: all all: ; include ticks ticks: @touch $(@) How do you know? Sure the rule is done, it doesn't mean that ticks is reloaded Try adding to it little by little until it stops working. Noel Jim wrote: Noel Yap wrote: It would help if yo

Re: 'How makefiles are remade'

2004-04-20 Thread Paul D. Smith
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 issue). 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 a

Re: 'How makefiles are remade'

2004-04-20 Thread Noel Yap
This makefile works: .PHONY: all all: ; include ticks ticks: @touch $(@) Try adding to it little by little until it stops working. Noel Jim wrote: Noel Yap wrote: It would help if you can post a /minimal/ makefile that demonstrates the problem. right here - there is no fewer statem

Re: 'How makefiles are remade'

2004-04-20 Thread Jim
Noel Yap wrote: It would help if you can post a /minimal/ makefile that demonstrates the problem. right here - there is no fewer statements that can be done to make a makefile which creates a makefile which creates a makefile (and no that's not redunant). It was a attached - here it is done ver

Re: 'How makefiles are remade'

2004-04-20 Thread Noel Yap
It would help if you can post a /minimal/ makefile that demonstrates the problem. Noel Jim wrote: Noel Yap wrote: I've done what the documentation describes many, many times. It's always worked for me. Which make are you using? Are you sure it's GNU make? 3.80 positive it is gnu make. htt

Re: Cygwin make thinks a statement can be neither true nor false....

2004-04-20 Thread Noel Yap
Paul D. Smith wrote: %% "Dave Korn" <[EMAIL PROTECTED]> writes: The problem is that in many makefiles you tend to get a lot of "false positives". For example, many makefiles leave certain variables to be set by the user, like CPPFLAGS or CFLAGS. If you do that in your makefiles, and the user has

Re: 'How makefiles are remade'

2004-04-20 Thread Jim
Noel Yap wrote: I've done what the documentation describes many, many times. It's always worked for me. Which make are you using? Are you sure it's GNU make? 3.80 positive it is gnu make. http://make.paulandlesley.org/autodep.html provides more examples on how to rebuild included makefiles.

Re: 'How makefiles are remade'

2004-04-20 Thread Noel Yap
I've done what the documentation describes many, many times. It's always worked for me. Which make are you using? Are you sure it's GNU make? http://make.paulandlesley.org/autodep.html provides more examples on how to rebuild included makefiles. HTH, Noel Jim wrote: http://www.gnu.org/softwar

RE: Cygwin make thinks a statement can be neither true nor false....

2004-04-20 Thread Paul D. Smith
%% "Dave Korn" <[EMAIL PROTECTED]> writes: dk> [ This is getting off topic for the cygwin list, and unless I've dk> managed to spot any *real* bugs yet, it's not very OT for the dk> bug-make list either; if we want to carry on further we should dk> perhaps take it to private mail or to the

'How makefiles are remade'

2004-04-20 Thread Jim
http://www.gnu.org/software/make/manual/html_mono/make.html#SEC20 "After all makefiles have been checked, if any have actually been changed, make starts with a clean slate and reads all the makefiles over again. (It will also attempt to update each of them over again, but normally this will not

RE: Cygwin make thinks a statement can be neither true nor false....

2004-04-20 Thread Dave Korn
> -Original Message- > From: Paul Smith On Behalf Of Paul D. Smith > Sent: 20 April 2004 16:44 [ This is getting off topic for the cygwin list, and unless I've managed to spot any *real* bugs yet, it's not very OT for the bug-make list either; if we want to carry on further we should perh

RE: Cygwin make thinks a statement can be neither true nor false....

2004-04-20 Thread Paul D. Smith
%% "Dave Korn" <[EMAIL PROTECTED]> writes: >> I would've expected it to complain about a bad substition reference, >> ie. it's missing an "=". dk> Or at least do anything, rather than nothing! If you enable --warn-undefined-variables then you'll get a warning. dk> Great. So for the b

RE: Cygwin make thinks a statement can be neither true nor false....

2004-04-20 Thread Dave Korn
> -Original Message- > From: cygwin-owner On Behalf Of Ross Ridge > Sent: 20 April 2004 02:41 [ Cc'd to the gmake bug reporting list; the actual bug report is at the end of this post, and is not what the topic of this thread was originally about. ] > > Possibly a bug in make, as I'd exp

Re: Endless loop in Make 3.80 (Cygwin)

2004-04-20 Thread Paul D. Smith
%% Peter Keitler <[EMAIL PROTECTED]> writes: pk> the following Makefile enters an endless loop on our Cygwin installation pk> (Win2k, SP3) with GNU Make 3.80. pk> ### begin pk> dep : env pk> @echo Target: dep pk> touch dep pk> env: pk> @echo Target: environment pk> incl

Endless loop in Make 3.80 (Cygwin)

2004-04-20 Thread Peter Keitler
Hi *, the following Makefile enters an endless loop on our Cygwin installation (Win2k, SP3) with GNU Make 3.80. ### begin dep : env @echo Target: dep touch dep env: @echo Target: environment include dep ### end I call it with the 'make' command only, without any parameter

Updated make bug #8616

2004-04-20 Thread Andrei Lenkei
As requested by Mr. Paul Smith. ___ Bug-make mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/bug-make