At no time during the current make processing does it jump out from the middle of the parser phase and into the rule execution phase. Not only that but the behavior would be quite surprising to people who are familiar with make, since no rules or variables that were defined after the include directive could be used during the rebuild of the included makefile.
Ok, after thinking about it that explains a lot. Forget my other email, I understand it has to restart each time.
I have put the output of make when subsub.prj exists and when it doesn't. Is there a reason that it can't treat the error on the right as non-fatal, same as the one on the left?
It seems it could be done by having the errors be non-fatal if a restart would ordinarily be expected anyway, as it is in this case.
Makefile:1: Reading Makefile Makefile:1: Reading Makefile
sub.mk:1: Reading sub.prj/sub.mk sub.mk:1: Reading sub.prj/sub.mk
sub.mk:3: subsub.mk: No such file or directory sub.mk:3: subsub.mk: No such file or directory
sub.mk:4: Leaving sub.prj/sub.mk sub.mk:4: Leaving sub.prj/sub.mk
Makefile:7: Before %.mk %.prj Makefile:7: Before %.mk %.prj
Makefile:10: After %.mk %.prj Makefile:10: After %.mk %.prj
Makefile:12: Leaving Makefile Makefile:12: Leaving Makefile
make: *** No rule to make target `subsub.mk'. Stop.
cp subsub.prj subsub.mk
cp sub.prj sub.mk
Makefile:1: Reading Makefile
sub.mk:1: Reading sub.prj/sub.mk
sub.mk:3: Leaving sub.prj/sub.mk
Makefile:7: Before %.mk %.prj
Makefile:10: After %.mk %.prj
Makefile:12: Leaving Makefile
make: Nothing to be done for `default'.
_________________________________________________________________
The new MSN 8: smart spam protection and 2 months FREE* http://join.msn.com/?page=features/junkmail
_______________________________________________ Bug-make mailing list [EMAIL PROTECTED] http://lists.gnu.org/mailman/listinfo/bug-make