m5@lynx.uucp (Mike McNally) (06/26/89)
It seems that GNU make (3.48) doesn't expand the value of a variable in a simple substitution reference: BLAH=balloons BLEE=$(BLAH) . . . echo $(BLEE:oo=OO) # should be ballOOns, instead is $(BLAH) I'm not sure what the "right" thing to do is; I have lots and lots of Makefiles that use the feature as provided by our own brain-dead mutant of "make", and it does do the expansion. I added a call to expand_argument() at the appropriate place in variable.c, but I'm willing to hear arguments to the contrary. -- Mike McNally Lynx Real-Time Systems uucp: {voder,athsys}!lynx!m5 phone: 408 370 2233 Where equal mind and contest equal, go.
m5@lynx.uucp (Mike McNally) (06/28/89)
[ I've sent this to unix.wizards as well, because System V make has come into question. I don't really want to start another ridiculous war about whose make is best. ] In article <5754@lynx.UUCP> m5@lynx.UUCP (Mike McNally) writes: >It seems that GNU make (3.48) doesn't expand the value of a variable in >a simple substitution reference: I've since found out that System V make doesn't either. Yuk. Blech. >BLAH=balloons >BLEE=$(BLAH) > > . . . > > echo $(BLEE:oo=OO) # should be ballOOns, instead is $(BLAH) Well, this wouldn't work anyway, because of the feature (documented in the GNU make manual, but contradicted by the System V man page) that make won't substitute unless the string is found at the end of the text. Yuk again, I say. Here I went to the trouble of getting my make mutant to work like the System V make is documented, and then I take advantage of the feature, and now I'm stuck. Phooey. -- Mike McNally Lynx Real-Time Systems uucp: {voder,athsys}!lynx!m5 phone: 408 370 2233 Where equal mind and contest equal, go.