cons-discuss
[Top][All Lists]
Advanced

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

RE: CVS v1.124 fixed another problem too


From: Steven Knight
Subject: RE: CVS v1.124 fixed another problem too
Date: Wed, 8 Nov 2000 17:40:18 -0600 (CST)

Alex--

Thanks for the follow-up information.

>                                                  However if you cd to
> 'dir with spaces/top/sub/sub2' and then run 'cons -t', things work only
> with cons CVS rev 1.124. Other versions give messages such as
> 
> cl /nologo /I. /IC:\dir with spaces\top\sub\sub2 /c C:\dir with
> spaces\top\sub\sub2\world.c /FoC:\dir with spaces\top\sub\su
> b2\world.obj
> Command line warning D4024 : unrecognized source file type 'with',
> object file assumed
> Command line warning D4027 : source file 'with' ignored
> Command line warning D4024 : unrecognized source file type
> 'spaces\top\sub\sub2', object file assumed
> Command line warning D4027 : source file 'spaces\top\sub\sub2' ignored
> Command line warning D4024 : unrecognized source file type 'C:\dir',
> object file assumed
> Command line warning D4027 : source file 'C:\dir' ignored
> Command line warning D4024 : unrecognized source file type 'with',
> object file assumed
> Command line warning D4027 : source file 'with' ignored
> Command line warning D4024 : unrecognized source file type 'with',
> object file assumed
> Command line warning D4027 : source file 'with' ignored
> Command line warning D4027 : source file 'spaces\top\sub\sub2\world.obj'
> ignored
> world.c
> fatal error C1083: Cannot open source file:
> 'spaces\top\sub\sub2\world.c': No such file or directory
> cons1123.pl: *** [C:\dir with spaces\top\sub\sub2\world.obj] Error 2
> cons1123.pl: errors constructing C:\dir with
> spaces\top\sub\sub2\world.obj
> 
> This is apparently because cons is using absolute path names (which
> contain spaces) without quoting them. Consequently earlier versions of
> cons (before CVS 1.124) could only be used reliably if there were no
> directories with spaces in the names anywhere in the absolute path. CVS
> 1.124 avoids this problem by using only relative path names, e.g.

Okay, I see now.  The general issue is that Cons kicks off a command
without any parsing to preserve white space.  Consequently, this is
currently a problem for any path, absolute or relative, that contains
white space.  Since -t formerly forced you into using a full path name,
the 1.124 change works around this by sidestepping the part of your path
that has spaces in the name.

> cons1124.pl: Entering directory `c:\dir with spaces\top'
> cl /nologo /I. /Isub\sub2 /c sub\sub2\world.c /Fosub\sub2\world.obj
> world.c
> 
> Therefore with 1.124 one only need avoid having file/directory names
> with spaces in them in your build tree (a reasonable restriction since
> this is good practice anyway), but you can live with spaces in the names
> in the absolute path. This is important in Windows because file names
> with spaces are rampant. In particular the rough equivalent of your home
> directory usually has a name such as 'C:\Documents and
> Settings\ajacques\My Documents'.

Right, Cons is still broken about white space in path names, but at
least now it's broken in a Windows-friendly way... :-)

Thanks again for the follow-up.

        --SK




reply via email to

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