|
From: | KJKHyperion |
Subject: | Re: make'ing make-3.18beta4 under mingw/msys - "undefined referenceto `sleep'" |
Date: | Sun, 01 Jan 2006 18:58:56 +0100 |
User-agent: | Mozilla Thunderbird 1.0.6 (Windows/20050716) |
Eli Zaretskii wrote:
I revisited the patch posted there to allow -j without sh.exe, and I'm afraid I don't understand the patch.
I wrote it quite a while ago... I hope I still remember it right
all of them, with the possible exclusion of the change to sh_chars_dos (IIRC that controls which strings need to be quoted, but I'm not 100% sure. If that's true, the change is correct and needed). Caret-escaping solves the actual problem, it's equivalent to backslash-escaping for sh.exe, and apparently the issue was that the DOS command.com wasn't able of any sort of escaping. The change to main.c enables parallel building with a cmd shell, rather than just with an UNIX shell, since the escaping issue is "solved"It does this: . add "^()" to sh_chars_dos[] in job.c . use '^' to escape special characters such as \ and " in job.c . removes the code fragment in main.c that forces job_slots = 1 if sh.exe is not available Can someone please explain which part(s) of this patch solve(s) the original problem?
caret-escaping. Why I'm not sure, I just remember -j causes temporary batch files to be generated and run, and to build the command lines in them required escapingFor that matter, what shell features are required to enable -j on Windows, and why?
[Prev in Thread] | Current Thread | [Next in Thread] |