> On Mar 2, 2016, at 5:23 AM, Cohen, Eugene <[email protected]> wrote: > >> Maybe I'm confused. Are you using nmake or GNU make? I though you were >> using GNU make and could fix it with the MAKESHELL variable. > > Andrew, this is GNU make on Windows. I think you are suggesting that some > other shell other than the stock cmd.exe would handle this quoted echo > command better?
Eugene, My thinking is the generated GNUmakefiles assume a non Windows command line tools. https://github.com/tianocore/edk2/blob/master/BaseTools/Source/Python/AutoGen/GenMake.py _SHELL_CMD_ = { "nmake" : { "CP" : "copy /y", "MV" : "move /y", "RM" : "del /f /q", "MD" : "mkdir", "RD" : "rmdir /s /q", }, "gmake" : { "CP" : "cp -f", "MV" : "mv -f", "RM" : "rm -f", "MD" : "mkdir -p", "RD" : "rm -r -f", } } > What shell or shells would you recommend if the standard cmd.exe doesn't work? A POSIX sh-compatible command language interpreter, as that is the usual default for make. The exact shell type is inferred by make from the environment, and it seems this mechanism is what causes the difference in behavior running under Windows. > (This would constitute a currently undocumented requirement for GCC on > Windows to work.) Right now it's just this "echo" command that breaks that > standard cmd.exe shell - It seems the issue you are hitting is likely a generic issue with shell builtin commands (man builtin). > wouldn't it be more expedient to fix that issue than to try to find alternate > shells? > No as the echo has been around for at least 7 years! ~/work/src/edk2(master)>git blame -L4314,4316 BaseTools/Conf/tools_def.template 3b6c90a1 (eric_tian 2009-04-13 12:50:50 +0000 4314) *_*_*_OBJCOPY_PATH = echo 3b6c90a1 (eric_tian 2009-04-13 12:50:50 +0000 4315) *_*_*_OBJCOPY_FLAGS = objcopy not needed for 3b6c90a1 (eric_tian 2009-04-13 12:50:50 +0000 4316) *_*_*_SYMRENAME_PATH = echo Given the GNU makefiles assume IEEE Std 1003.2 compatible command line tools (cp, mv, mkdir, and rm), it seems kind of safe to assume a IEEE Std 1003.1 compatible shell. Thanks, Andrew Fish > Thanks, > > Eugene > > > > _______________________________________________ > edk2-devel mailing list > [email protected] > https://lists.01.org/mailman/listinfo/edk2-devel _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

