Re: VPATH of the form C:/foo

Christopher Faylor <[email protected]>
Newsgroups gmane.comp.gnu.make.windows
Message-ID <[email protected]>
On Sun, Dec 02, 2007 at 11:52:41AM +0100, Benoit Sigoure wrote:
> On Dec 2, 2007, at 3:37 AM, Christopher Faylor wrote:
>> On Thu, Nov 29, 2007 at 11:36:45PM +0100, Benoit Sigoure wrote:
>>> On Nov 29, 2007, at 10:30 PM, Eli Zaretskii wrote:
>>>>> From: Benoit Sigoure
>>>>> Date: Thu, 29 Nov 2007 22:12:52 +0100
>>>>>
>>>>> build@bf-winxp1 ~ $ make -p VPATH=C:/cygwin | grep -A2 -i vpath
>>>>> [...]
>>>>> --
>>>>> # VPATH Search Paths
>>>>>
>>>>> # No `vpath' search paths.
>>>>>
>>>>> # No general (`VPATH' variable) search path.
>>>>
>>>> Ah, I see the problem: the native Windows port (which is what I have)
>>>> converts all `:' that are not part of drive letter spec to `;' (by
>>>> calling convert_vpath_to_windows32), and then Make parses that using
>>>> `;' as PATH_SEPARATOR_CHAR, which makes "C:/foo:D:/bar" work.  But in
>>>> the Cygwin build, convert_vpath_to_windows32 is not called and
>>>> PATH_SEPARATOR_CHAR is `:', so this does not work.
>>>>
>>>> I will try to post an experimental patch soon.  Thanks for pointing
>>>> out this problem.
>>>
>>> Thank you very much, I'm eager to see the patch ;)
>>
>> This does raise the question of why you'd be using a cygwin version of
>> make if you need to use colon paths.
>
>
> Good question.  The VPATH variable is set by a script that calls `make'.  
> This variable is also used to invoke native Windows tools, so it's more 
> convenient to use the C:/Foo/Bar notation, which has the advantage of 
> working with both native applications and Cygwin ones (while being nice 
> with the shell by avoiding backslashes).

Why not convert the VPATH to UNIX format with cygpath ?

cgf
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.