Re: VPATH of the form C:/foo

Benoit Sigoure <[email protected]>
Newsgroups gmane.comp.gnu.make.windows
Message-ID <[email protected]>
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).

-- 
Benoit Sigoure aka Tsuna
EPITA Research and Development Laboratory
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.