From: <jca...@in...> - 2002-01-22 01:59:44
|
On Monday 21 January 2002 20:21, Geoffrey Furnish wrote: | Joao Cardoso writes: | > The problem seems to be the shell again, or the make program, as | > no drivers object files are included in LIBS_OBJ. The offending | > statment seems to be: | > | > static_drivers_obj :=3D $(STATIC_DRIVERS:%=3D%$(O)) | > | > static_drivers_obj is empty, although STATIC_DRIVERS is not. | > | > Is any cure for this? | | That's a GNU make-ism. We agreed a while back to allow GNU make | features in our makefiles. I don't remember typing that in | specifically, but its probably mine. Anyway, for sure, it is an | example of a GNU make pattern expansion. I'm gonna guess that your | make is treating the % as a literal, and finding none in the | STATIC)DRIVERS macro, it simply makes no change. Hmm, no, that | doesn't explain your symptom. | | I dunno, are you using GNU make? If so, what version? No, if using gnu make-3.74 (in my home bin dir) everything runs OK.=20 Using alpha-osf1-v4.0 make(s) (there are *tree* versions of them)=20 don't work; they are /usr/bin/posix/make, /usr/opt/ultrix/usr/bin/make, /sbin/make, /usr/bin/make (link to /usr/ccs/bin/make) /bin/make (link to /usr/ccs/bin/make) Using the make man page, I got it working using static_drivers_obj =3D $(STATIC_DRIVERS/$/.o) Gnu make accepts this construct! Can this be a solution? Joao |