Re: [PATCH] order-only prerequisite ends up in $

2004-04-21 Thread Paul D. Smith
%% Jim <[EMAIL PROTECTED]> writes: j> Absolutely... j> all: junk.test j> $.test:%.c | thing j>touch $@ j> junk.c thing: j>touch $@ j> make... j> (touches thing and junk.c to create them) j> then after every touch of 'thing' junk.test is touched. This is a bug in make

Re: [PATCH] order-only prerequisite ends up in $

2004-04-21 Thread Noel Yap
Paul D. Smith wrote: %% Jim <[EMAIL PROTECTED]> writes: j> Absolutely... j> all: junk.test j> $.test:%.c | thing j> touch $@ j> junk.c thing: j> touch $@ j> make... j> (touches thing and junk.c to create them) j> then after every touch of 'thing' junk.test is t

Re: [PATCH] order-only prerequisite ends up in $

2004-04-21 Thread Jim
Noel Yap wrote: Jim wrote: I'm not really sure if this falls in the same category, but the rule base is a pattern rule... it seems that something like %.o:%.c | $(intermdiate_path) intermediate_path is no longer order only, it is instead a valid rule, and that being a directory means it's oft

Re: [PATCH] order-only prerequisite ends up in $

2004-04-21 Thread Noel Yap
Jim wrote: I'm not really sure if this falls in the same category, but the rule base is a pattern rule... it seems that something like %.o:%.c | $(intermdiate_path) intermediate_path is no longer order only, it is instead a valid rule, and that being a directory means it's often newer then the

Re: [PATCH] order-only prerequisite ends up in $

2004-04-21 Thread Jim
I'm not really sure if this falls in the same category, but the rule base is a pattern rule... it seems that something like %.o:%.c | $(intermdiate_path) intermediate_path is no longer order only, it is instead a valid rule, and that being a directory means it's often newer then the .o in certa

Re: [PATCH] order-only prerequisite ends up in $

2004-04-19 Thread Paul D. Smith
%% Noel Yap <[EMAIL PROTECTED]> writes: ny> Paul D. Smith wrote: >> %% Boris Kolpackov <[EMAIL PROTECTED]> writes: bk> If you expect it to print >> bk> %r: | baz >> bk> then look in read.c line 537. The dumping code simply does not bk> distinguish between normal and order-only

Re: [PATCH] order-only prerequisite ends up in $

2004-04-19 Thread Noel Yap
Paul D. Smith wrote: %% Boris Kolpackov <[EMAIL PROTECTED]> writes: bk> If you expect it to print bk> %r: | baz bk> then look in read.c line 537. The dumping code simply does not bk> distinguish between normal and order-only prerequisites. ITYM rule.c. I have a fix for this already b

Re: [PATCH] order-only prerequisite ends up in $

2004-04-19 Thread Paul D. Smith
%% Boris Kolpackov <[EMAIL PROTECTED]> writes: bk> ___ bk> Bug-make mailing list bk> [EMAIL PROTECTED] bk> http://mail.gnu.org/mailman/listinfo/bug-make Boris, what email client do you use? It's so bizarre; it always puts the body of your messa

Re: [PATCH] order-only prerequisite ends up in $

2004-04-19 Thread Boris Kolpackov
Noel Yap <[EMAIL PROTECTED]> writes: > Once this patch is installed, does "gmake -npqr | grep '%r:'" output the > proper thing? If so, I suspect this patch will fix much of the odd > behaviour I've seen with regards to implicit rules and order rules. Well, it depends what is "proper thing"? Wi

Re: [PATCH] order-only prerequisite ends up in $

2004-04-19 Thread Noel Yap
Once this patch is installed, does "gmake -npqr | grep '%r:'" output the proper thing? If so, I suspect this patch will fix much of the odd behaviour I've seen with regards to implicit rules and order rules. Thanks, Noel Boris Kolpackov wrote: Good day, The following makefile prints "baz foo ba

Re: [PATCH] order-only prerequisite ends up in $

2004-04-19 Thread Paul D. Smith
Good stuff; thanks Boris. -- --- Paul D. Smith <[EMAIL PROTECTED]> Find some GNU make tips at: http://www.gnu.org http://make.paulandlesley.org "Please remain calm...I may be mad, but I am

[PATCH] order-only prerequisite ends up in $

2004-04-19 Thread Boris Kolpackov
Good day, The following makefile prints "baz foo baz" instead of "foo foo baz". %r: | baz @echo $< $^ $| bar: foo foo:;@: baz:;@: In command.c in function set_file_variables $< is initialized with the first prerequisite. While in most cases this would be a normal prerequisite in ca