Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 10 Dec 2000 16:25:55 -0600 (CST)
From:      Mike Meyer <mwm@mired.org>
To:        current@FreeBSD.ORG
Cc:        Mike Meyer <mwm@mired.org>
Subject:   Re: PREFIX clean vs. LOCALBASE clean (Was: Package installation location)
Message-ID:  <14900.755.695843.77213@guru.mired.org>
In-Reply-To: <20001210133415.A82246@dragon.nuxi.com>
References:  <20001210125026.A27718@drama.navipath.com> <xzpitosgn0w.fsf@flood.ping.uio.no> <20001210132152.B27718@drama.navipath.com> <14899.54065.737498.114689@guru.mired.org> <20001210141851.C39643@vger.bsdhome.com> <14899.56471.793516.237193@guru.mired.org> <20001210114736.G80274@dragon.nuxi.com> <14899.58688.221761.200245@guru.mired.org> <20001210133415.A82246@dragon.nuxi.com>

next in thread | previous in thread | raw e-mail | index | archive | help
David O'Brien <obrien@FreeBSD.ORG> types:
> On Sun, Dec 10, 2000 at 02:19:12PM -0600, Mike Meyer wrote:
> > > > I intend "LOCALBASE clean" to mean "all files installed by other ports
> > > > are looked for in the LOCALBASE tree".
> > > If all ports are PREFIX clean, you will have that.  Thus it doens't need
> > > to be discussed separately.
> > Using the two definitions above, the first sentence is false.
> How is it false?

As described below.

> > In particular, assume that the port APort depends on BPort in some
> > way, and is PREFIX clean.
> Which is PREFIX clean?  Aport or Bport?  (it is often good to not use
> pronouns in technical disucssions...)

Actually, dangling pronouns are bad in any discussion, and that was
one. Both are PREFIX clean.

> > That means that everything in APort is installed in PREFIX, and all
> > APorts references to things in APort look for them there.
> Which is correct if Aport is PREFIX-clean.

By definition, yes.

> > Neither of those statements precludes APort from looking for things
> > that are part of BPort directly in /usr/local instead of in
> > LOCALBASE.
> Yes it does if Aport is PREFIX-clean.  s./usr/local.PREFIX.g  and
> would be a better way to say it, adding PREFIX != LOCALBASE.

Take a second look at the definition of the "PREFIX clean" you agreed
to before, and the conditions I stated above: all files installed in
by APort are in PREFIX, and all references to things installed by
APort use PREFIX. That doesn't say anything about how APort references
things installed by other ports!

Of course, your suggested change fixes some of those cases, but it's
not correct for things installed by other ports according to my
reading of bsd.port.mk. The port being built things in PREFIX; other
ports installed things in LOCALBASE or X11BASE, as appopriate. So
fixing references to things in other ports requires
s./usr/local.LOCALBASE.g, hence "LOCALBASE clean" for things that fail
to deal with that case.

As a final note, neither fix corrects the cases where the /usr/local
reference that makes things work when LOCALBASE and PREFIX are both
/usr/local comes from outside of the ports tree completely.

	<mike


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?14900.755.695843.77213>