bug-make
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [bug #56449] job.c (construct_command_argv_internal): Must use shell


From: Eli Zaretskii
Subject: Re: [bug #56449] job.c (construct_command_argv_internal): Must use shell if '%' character is present in recipe line
Date: Thu, 29 Aug 2019 21:58:08 +0300

> From: Eli Zaretskii <address@hidden>
> Date: Wed, 28 Aug 2019 15:24:21 -0400 (EDT)
> 
> Follow-up Comment #6, bug #56449 (project make):
> 
> But the result is wrong when %..% doesn't specify a known variable, most
> probably because we invoke the command through a batch file.
> 
> Try this from cmd.exe prompt:
> 
>  > echo %foo%
> 
> You will see %foo%.
> 
> Now try with make:
> 
>   D:\usr\eli>\gnu\make-4.2.90-guile\GccRel\gnumake -f-
>   SHELL=cmd.exe
> 
>   all:
>           @echo %foo%
>   ^Z
>   ECHO is off.
> 
> In other words, 'echo' was invoked with an empty string, which is not what we
> want.

Christian, would you please chime in and explain why you think your
change makes GNU Make's behavior on Windows more correct?  In my
testing, the results are against my expectations in all cases except
when the string between the percent signs refers to an existing
environment variable.

TIA



reply via email to

[Prev in Thread] Current Thread [Next in Thread]