Georg Baum wrote:
>> To be specific, I don't see why
>> 1. ExpandPath is needed at all.
>> 2. What the thing inside the if block is meant to be achieving.
>> 3. What the idea behind removing "/.libs/" is all about. Surely, the LyX
>> executable is to be found at build_dir/src/lyx if it's being run
>> in-place?
> 
> I believe that some combination of
> automake / autoconf / Makefile.am / phase of the moon
> puts not only libraries, but also executables in .libs. It is a long time
> ago that I saw something like that, so I think it is safe to remove this
> special case.

Thanks for this info.

>> Surely, argv[0] is by definition either an absolute path or is relative
>> to CWD. The shell expands everything else. No?
> 
> I am not sure. Maybe there are some weird shells or OSes that behave
> differently? Then points 1. and 2. make sense. Or the author of it did
> simply not know that he does not need to expand the path manually.

Indeed, that would make sense. However, this code is from os_unix.C. It
makes no sense at all for a unix shell, does it?

I ask because ExpandPath requires that os::homepath() be set. Since these
paths are exactly what is being set in this body of code, it suggests that
the result will be fragile to changes in the order of which os::homepath()
and the "absolute path to the lyx executable" are set.

-- 
Angus

Reply via email to