bug-make
[Top][All Lists]
Advanced

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

Re: [PATCH 2/2] Do not use DOS paths on Cygwin


From: Eli Zaretskii
Subject: Re: [PATCH 2/2] Do not use DOS paths on Cygwin
Date: Wed, 07 Aug 2013 16:38:22 +0300

> From: Pavel Fedin <address@hidden>
> Cc: address@hidden, address@hidden
> Date: Wed, 07 Aug 2013 10:22:31 +0400
> 
> > > 2. PATH_SEPARATOR on Cygwin is ':' and on pure DOS/Windows is ';'.
> > 
> > This is true, but how is this relevant to the issue at hand?
> > 'abspath' does not deal with PATH-style directory lists, it accepts a
> > single file name as its argument.  What am I missing here?
> 
>  To the issue - no, this really doesn't relate. But this is still involved
> in the change, because path list is one more thing which depends on native
> path style of underlying environment.

Are you saying that if a Cygwin Make uses DOS style file names with
drive letters, it also expects the PATH-style directory lists to use a
semi-colon as a separator?  I don't think I'd expect that.  I think
PATH-style lists should always use Unix-style file named in the Cygwin
Make.  DOS-style file names should only be supported in targets and
commands.

> > It probably would, if you do a clean job, but frankly I'm not sure it's
> > worth your while.  It is so easy to glean this information by just
> > looking at the appropriate preprocessor macro, like WINDOWS32 etc. that
> > a configure-time test sounds like overkill.
> 
>  Yes, but there can be one thing, considering MinGW. If you don't know,
> MinGW actually consists of two environments: MinGW by itself and MSYS. MinGW
> by itself is a pure Windows environment. MSYS is enlightened version of
> Cygwin whose purpose is "to provide enough compatibility to run UNIX shell
> scripts like configure". MinGW land uses DOS-style paths and MSYS land uses
> UNIX-style ones. Consequently, they actually build two versions of make. One
> version is called 'mingw-make' and is a pure Windows program. Another
> version is called 'make' and operates in MSYS land, dealing with UNIX-style
> paths and path lists. They do this because majority of build systems use
> POSIX semantics. Both versions are built from the same source.
>  Consequently, there should be a possibility to override "native path
> format" test, similar to what Cygwin currently does to disable DOS paths.
> This can be needed for building MSYS version.

I know about MSYS, but building an MSYS version of Make is already a
special procedure.  So I don't see why you should worry about that.



reply via email to

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