On Sun, May 19, 2002 at 04:27:10PM +0000, J. Mallett wrote:
> On Sun, May 19, 2002 at 05:34:28PM +0200, Bernd Walter wrote:
> > 
> > I even can't buildworld on another machine without taking care of
> > realpath.
> > If I don't enshure that the source has the same realpath on the
> > machine to run installworld as it had on the machine where I did
> > the buildworld it break.
> 
> installworld does?  How?  The only possibility I can see here is that
> dependency rules might be bad because the full paths may differ, but
> that wouldn't affect installworld.

The filenames in /usr/obj are canonicalized.

> > And all that without a real benefit from blindly using realpath(3).
> 
> Show me a canonpath(3) or something which will give the simplest symbolic
> i.e. a simplified full path given a relative or absolute path with all
> redundancies resolved, without resolving away any symbolic paths.

It would be possible to use the realpath code without the softlink
handling.
Not too difficult if we only had a non-canocalized basedir.

> I'm ``blindly'' using the only answer we have to a question: how can I get
> an absolute (thus unique) path to an object in the filesystem.

Forget it - it's not possible with FreeBSD (see below).
I'm just a bit frustrated about all the brokenness with softlink
handling I saw,  without noticing that FreeBSD doesn't give you a
chance to do it right.

> I'm open to alternative ways of doing that, especially as I described
> canonpath(3) above.

After some digging it seems like it's worse.
getcwd already returns a canonical path on FreeBSD, NetBSD and Solaris.
Only HP-UX returns the accumulated chdir path.
Very dissapointing.

-- 
B.Walter              COSMO-Project         http://www.cosmo-project.de
[EMAIL PROTECTED]         Usergroup           [EMAIL PROTECTED]


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to