make-w32
[Top][All Lists]
Advanced

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

Re: Patch for missing shell commands in rc2


From: J. David Bryan
Subject: Re: Patch for missing shell commands in rc2
Date: Tue, 21 Mar 2006 11:58:43 -0500

On 21 Mar 2006 at 6:39, Eli Zaretskii wrote:

> Thanks.

You're welcome.


> However, this cannot be accepted as you sent it, because we still
> support older Windows versions where the shell is COMMAND.COM. 

I'm not sure I see why that is a problem.  With the patch, if one uses a 
cmd.exe shell command that isn't present (e.g., "pushd") or is implemented 
as an external (e.g., "start") in command.com, then command.com gives an 
error or runs the associated program, respectively.  Without the patch, 
essentially the same thing occurs (make gives the error or runs the 
associated program).

In other words, using a cmd.exe-specific shell command in a makefile and 
running it with command.com as the shell is going to cause an error anyway, 
whether the command is listed in sh_cmds_dos or not.  With the patch, 
though, we have access to cmd.exe commands, such as "start", without having 
to write "cmd /c start ..." in the makefile (which surely makes it cmd.exe 
specific).

The use of sh_cmds_dos appears to be simply to decide whether the command 
should be passed via the shell or executed directly.  Given that, I would 
think that sh_cmds_dos should contain both cmd.exe and command.com internal 
commands, to ensure that all shell commands are passed to the shell, 
regardless of which one is used.  And if a listed command isn't implemented 
in the shell being used but is an external program instead, then it still 
is executed properly, albeit via the "slow path."

                                      -- Dave





reply via email to

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