[bug #28983] forcing a target matching a pattern rule shadows the rule's actions

2010-05-07 Thread Matt McCutchen
Follow-up Comment #3, bug #28983 (project make): The technique in comment #1 is actually the recommended solution, with the dummy target named FORCE. Phoniness is only for targets that are not files. ___ Reply to this item at:

[bug #28983] forcing a target matching a pattern rule shadows the rule's actions

2010-05-07 Thread Ilguiz Latypov
Follow-up Comment #4, bug #28983 (project make): The GNU make manual both supports and defeats Matt's statement. A phony target is one that is not really the name of a file. [..] Once this is done, `make clean' will run the commands regardless of whether there is a file named clean. It

[bug #28983] forcing a target matching a pattern rule shadows the rule's actions

2010-05-07 Thread Matt McCutchen
Follow-up Comment #5, bug #28983 (project make): I don't understand how the second quote defeats my statement. The point is that marking the clean target phony prevents the accidental existence of a file by that name from confusing the build system. If you're trying to argue from that quote

[bug #28983] forcing a target matching a pattern rule shadows the rule's actions

2010-05-07 Thread Ilguiz Latypov
Follow-up Comment #6, bug #28983 (project make): The following tests show that .PHONY's pre-requisites are normally rebuilt regardless of existence of a file with the same name. This works, $ cat test-force.mak default: file.o .PHONY: file.o file.o: echo Building $...@... $@ $

[bug #28983] forcing a target matching a pattern rule shadows the rule's actions

2010-05-07 Thread Ilguiz Latypov
Follow-up Comment #7, bug #28983 (project make): The following tests show that .PHONY's pre-requisites are normally rebuilt regardless of existence of a file with the same name. This works, $ cat test-force.mak default: file.o .PHONY: file.o file.o: echo Building $...@... $@ $