A while back, I sent you a patch to make multiple pattern-specific variable assignments for a target work in Make 3.79.1.
Alas, we've found another problem with pattern-specific variable assignments in 3.79.1 that is independent of my fix and that I don't have time to debug right now. If you put this into a Makefile: a.b: echo $(RULE) RULE = $(basename $@) # This line causes "$@" in the first part of "RULE" to be "undefined". a.b: RULE += oops And run "make" on it, it'll echo "oops" when it should echo "a oops". It appears that the "$(basename $@)" is being expanded too early. This doesn't happen in 3.78.1. I know that in 3.79.1, the implementation of pattern-specific variable assignments was changed, such that they are now expanded differently than they were before (and, I believe, at a different time in the Make process). I wonder if perhaps the new implementation is problematic and should be reverted to the old one (which I suspect was replaced because the new one is faster, but slower, correct functionality is better than faster, buggy functionality :-). If you do decide to revert the implementation to how it was done in 3.78.1, note that I also submitted a patch against 3.78.1 to make multiple pattern-specific variable assignments work. Jonathan Kamens P.S. It would be nice if bug reports about Make were acknowledged in some way. P.P.S. Is [EMAIL PROTECTED] archived anywhere? Is there a newsgroup associated with it? I couldn't find one in Google groups. _______________________________________________ Bug-make mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/bug-make