Fri 20 Jul 2007 12:48:04 PM UTC, original submission:
Hi,
I think that literalizing special characters does not work anymore as it used to in 3.80. I'm using gnumake on windows together with a shell from MKS.
Given the following makefile:
--
CPP_FLAGS += /D "MYPROG=\"HALLO(TM)\""
%.exe : %.c
cl.exe $(CPP_FLAGS) $<
--
and this little C-File:
--
#include <stdio.h>
int main(int argc, char** argv) {
printf("%s", MYPROG);
return 0;
}
--
v 3.80 called the compiler just fine, it compiles and links.
v 3.81 causes the shell to complain and exit:
syntax error: got (, expecting Newline
gnumake: *** [a.exe] Error 1
Same shell, same environment, only difference the gnumake version used.
The command echoe'd by gnumake looks the same in both cases:
cl.exe /D "MYPROG=\"HALLO(TM)\"" a.c
---
The error does not happen if I use cmd.exe as shell, but that is not an option, unfortunately..
Kind Regards,
Thomas Stüfe
|