delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2010/03/10/05:03:52

X-Recipient: archive-cygwin AT delorie DOT com
X-SWARE-Spam-Status: No, hits=0.0 required=5.0 tests=AWL,BAYES_00,FB_WORD1_END_DOLLAR,SARE_MSGID_LONG40
X-Spam-Check-By: sourceware.org
MIME-Version: 1.0
In-Reply-To: <20100310092536.GS6505@calimero.vinschen.de>
References: <720660 DOT 16774 DOT qm AT web88302 DOT mail DOT re4 DOT yahoo DOT com> <20100310092536 DOT GS6505 AT calimero DOT vinschen DOT de>
Date: Wed, 10 Mar 2010 11:03:37 +0100
Message-ID: <e6940be71003100203h297db699ua44ae9086bf64a72@mail.gmail.com>
Subject: Re: allow executing a path in backslash notation
From: Ilya Beylin <beylin DOT i AT gmail DOT com>
To: cygwin AT cygwin DOT com
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Unsubscribe: <mailto:cygwin-unsubscribe-archive-cygwin=delorie DOT com AT cygwin DOT com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

The problem is that DOS paths are treated differently, even within the
same program.
Take for instance, bash:

$ builtin test -x "$WINDIR\system32\cmd.exe" && echo ok
yes
$ builtin exec "$WINDIR\system32\cmd.exe" /C echo ok
-bash: exec: C:\WINDOWS\system32\cmd.exe: not found

That makes a lot of headache both for users and for programmers who
have to remember about all such special cases

Cheers
Ilya

On 10 March 2010 10:25, Corinna Vinschen <corinna-cygwin AT cygwin DOT com> wrote:
> On Mar =C2=A09 13:47, Ilguiz Latypov wrote:
>>
>> > The bottom line is that if you want to use MS-DOS
>> > paths, then use a MinGW or DJGPP version of make.exe. =C2=A0make.exe i=
s not
>> > going to be patched.
>>
>> The patch was to cygwin1.dll, but I am not insisting.
>
> Trouble is, I don't even see the problem. =C2=A0Executing a file in DOS
> notation is already possible:
>
> =C2=A0bash$ cat << EOF > exec.c
> =C2=A0#include <unistd.h>
>
> =C2=A0int
> =C2=A0main (int argc, char **argv)
> =C2=A0{
> =C2=A0 =C2=A0char *args[] =3D { argv[1], "abc", 0};
> =C2=A0 =C2=A0execv (argv[1], args);
> =C2=A0 =C2=A0return 1;
> =C2=A0}
> =C2=A0EOF
> =C2=A0bash$ gcc -o exec exec.c
> =C2=A0bash$ ./exec /bin/echo
> =C2=A0abc
> =C2=A0bash$ ./exec C:\\cygwin\\bin\\echo
> =C2=A0abc
>
>
> Corinna
>
> --
> Corinna Vinschen =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0Please, send mails regarding Cygwin to
> Cygwin Project Co-Leader =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0cygwin AT cygw=
in DOT com
> Red Hat
>
> --
> Problem reports: =C2=A0 =C2=A0 =C2=A0 http://cygwin.com/problems.html
> FAQ: =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 http:=
//cygwin.com/faq/
> Documentation: =C2=A0 =C2=A0 =C2=A0 =C2=A0 http://cygwin.com/docs.html
> Unsubscribe info: =C2=A0 =C2=A0 =C2=A0http://cygwin.com/ml/#unsubscribe-s=
imple
>
>

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019