Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [cdt-debug-dev] Translating cross compiled paths

>  >   There is already some code in CDT that makes use of
> > > the Cygwin 'cygpath' utility to translate to/from POSIX
> > > paths where needed.  You may want to examine where this
> > > is currently used, and see if you can generalize the
> > > usage patterns.  I've been meaning to do something
> > > similar, but haven't had the time to make a serious
> > > effort about it.
> > 
> > Sigh, please ignore the comment on cygpath... I somehow
> > failed to notice your attachment, and of course, you are
> > indeed using cygpath.
> > 
> > Looking at your implementation, I'm trying to understand
> > what/when you would want to use this class.  It looks as
> > if you are assuming a path relative to an existing windows
> > directory, and falling back to calling cygpath if that
> > fails.  I would think that you'd at least want to reverse
> > the order (try cygpath, then fall back to assuming a
> > relative directory).
> > 
> > A better solution would probably be to understand that
> > the build platform is Cygwin, and therefore, Cygwin type
> > paths should be passed to tools.
> > 
> > Another concern would be handling of Cygwin mount points.
> > This can be a problem in some instances.  I'm not sure if
> > you run afoul of that, as you're only translating paths
> > in one direction, but it's something to be aware of.
> > 
> > There are a couple of other potential problems (more recent
> > versions of cygpath can handle multiple paths at once, the
> > cygdrive prefix can be altered by the user, properly escaping
> > spaces, etc.)  There are a lot of little things that make the
> > problem of path translation under Cygwin more complicated
> > than you'd want it to be :-/
> > 
> 
> Agreed.
> 
> I(we) am(are) very reluctant to some of the patch from Oyvind in
> this area, for example, the one dealing with the ErroParserManager.
>
> This is even a problem with the Spawner class, to interrupt/suspend a process
> (Cygwin seems to have its own way of dealing with interruption)
> 
> So far I have no concrete/general solution when dealing with cygwin or
> the case insenstive of the file system or .... etc .. etc..

I know my hacks are unsuitable for being committed to the CDT CVS. They
are merely intended as a quick n'dirty workaround so I can use Eclipse
CDT for embedded work under Windows while I'm waiting for/pondering a
more generic and mature solution. 

Some of the nastiest hacks I did, I've retired after solutions where
committed to CDT CVS.

Some of the concepts, like the "idle" launch-mode, will probably make
into CDT CVS in a purified form.

-- 
Øyvind Harboe
http://www.zylin.com




Back to the top