Re: BATCH_MODE_ONLY_SHELL configuration fails with unixy shells
Eli Zaretskii <[email protected]>
| Newsgroups | gmane.comp.gnu.make.bugs,gmane.comp.gnu.make.windows |
|---|---|
| Message-ID | <[email protected]> |
> From: "Russo, David" <[email protected]> > Date: Mon, 29 Sep 2008 14:21:59 -0500 > > There seems to be a bug in make 3.81 when make is configured with BATCH_MODE_ONLY_SHELL enabled. The problem only occurs when BATCH_MODE_ONLY_SHELL is enabled, make determines the shell is "unixy", and a recipe has a continuation line. > > If make determines that the shell is "unixy", the generated shell script used to run a rule containing a continuation character will have one too many '\'s. For example, the following makefile fails: > > all: > echo this is\ > a test > > because the generated "batch" file used to run the echo command above is: > > echo this is\\ > a test > > This results in two commands being executed (by unixy shells); "echo" and "a". Clearly not what was intended. > > If I'm not mistaken, the fix is quite simple and I've attached a patch to a description of the problem here: http://savannah.gnu.org/bugs/?24405. I'd appreciate any review/comments of the bug and the patch. Thanks, I installed your changes in the Make CVS.