I tried to set the Path variable in a make file with GNU Make 3.80
last year on Windows XP, and got problems with the $(shell) macros. I
was using the CMD.EXE as my shell. I recall that if I set and exported
PATH, then the $(shell) didn't pick it up. I can't recall what effect
setting Path had.

I was writing make files which work with ClearCase's clearmake with
GNU emulation and with GNU Make 3.80. I was able to detect which make
program was running by testing the $(MAKE) variable. Clearmake's GNU
emulation requires setting and exporting Path, and it selects the
CMD.EXE for the shell by default. Once I set Path (with :=) all my
$(shell) macros worked. However, I encountered several challenges
getting things to work with GNU Make 3.80, whether setting Path or
PATH.

I suggest that when testing setting Path or PATH in a make file, to
test the effect on $(shell) macros as well as on commands in target
rules.

For my own work, supporting non-Cygwin and non-MSYS environments is
important, as I want to distribute a build system where I don't
require installation of Unix emulation additions, but still allow
their presence. I therefore utilize the CMD.EXE for Windows, and my
make files work well.

-David


_______________________________________________
Make-w32 mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/make-w32

Reply via email to