URL:
  <http://savannah.gnu.org/bugs/?20542>

                 Summary: Regression: windows gnumake + MKS shell + Special
Shell Chars
                 Project: make
            Submitted by: None
            Submitted on: Friday 07/20/2007 at 12:48 UTC
                Severity: 3 - Normal
              Item Group: None
                  Status: None
                 Privacy: Public
             Assigned to: None
             Open/Closed: Open
         Discussion Lock: Any
       Component Version: None
        Operating System: MS Windows
           Fixed Release: None

    _______________________________________________________

Details:

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







    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?20542>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/



_______________________________________________
Bug-make mailing list
Bug-make@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-make

Reply via email to