From: Bill M. <WJ...@po...> - 2006-06-13 18:56:46
|
On Tue 13-Jun-06 8:07am -0600, Greg Chicares wrote: > On 2006-6-13 12:49 UTC, Bill McCarthy wrote: >> On Tue 13-Jun-06 7:26am -0600, Greg Chicares wrote: >> >>> What happens if you try >>> $(shell some_4nt_specific_command) >>> ? >> >> When I tried a 4NT alias, I get get file not found. > > Try running that with make's '-d' option. I think that will > show the actual call to CreateProcess(). If not, it may > create a '.sh' or '.bat' file in your temporary directory, > which you can preserve with some other make option and > examine. Either way, the purpose is to find out exactly how > make tries to invoke the command. Thanks, I had been playing with the -d option. I don't see anything to preserve those temporary batch files. Here's a repeat of my latest makefile: -------------------------------------- .PHONY: clean clean: @echo SHELL = $(SHELL) @echo COMSPEC = $(COMSPEC) -@del /? -$(shell alias) -------------------------------------- and here is the output of 'make SHELL=4nt -d' without all the dependent make noise and with blank lines separating the processes. (I removed the long directory name in front of each makexxxxx.bat file, and replaced the output of 'del /?' with [CMD's Help Output] for readability.) -------------------------------------- Must remake target `clean'. Creating temporary batch file make36602.bat CreateProcess(make36602.bat,make36602.bat,...) 'alias' is not recognized as an internal or external command, operable program or batch file. Cleaning up temporary batch file make36602.bat Creating temporary batch file make36603.bat CreateProcess(make36603.bat,make36603.bat,...) Putting child 0x00a985f0 (clean) PID 11117792 on the chain. Live child 0x00a985f0 (clean) PID 11117792 SHELL = 4nt Reaping winning child 0x00a985f0 PID 11117792 Cleaning up temp batch file make36603.bat Creating temporary batch file make36604.bat CreateProcess(make36604.bat,make36604.bat,...) Live child 0x00a985f0 (clean) PID 11117792 COMSPEC = C:\util\4nt\4nt.exe Reaping winning child 0x00a985f0 PID 11117792 Cleaning up temp batch file make36604.bat Creating temporary batch file make36605.bat CreateProcess(make36605.bat,make36605.bat,...) Live child 0x00a985f0 (clean) PID 11117792 [CMD's Help Output] Reaping losing child 0x00a985f0 PID 11117792 Cleaning up temp batch file make36605.bat make: [clean] Error 1 (ignored) Removing child 0x00a985f0 PID 11117792 from chain. Successfully remade target file `clean'. -------------------------------------- Everything looks fairly normal, except that the attempt to execute a command in 4nt that is not in CMD (the command 'alias') appears first instead of last. I just received a message from the Make-W32 list. I will summarize it in another post in this thread. -- Best regards, Bill |