From owner-freebsd-current Sun Dec 10 12:19:17 2000 From owner-freebsd-current@FreeBSD.ORG Sun Dec 10 12:19:14 2000 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from guru.mired.org (okc-65-26-235-186.mmcable.com [65.26.235.186]) by hub.freebsd.org (Postfix) with SMTP id B8AE937B400 for ; Sun, 10 Dec 2000 12:19:13 -0800 (PST) Received: (qmail 9004 invoked by uid 100); 10 Dec 2000 20:19:12 -0000 From: Mike Meyer MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <14899.58688.221761.200245@guru.mired.org> Date: Sun, 10 Dec 2000 14:19:12 -0600 (CST) To: current@FreeBSD.ORG Subject: PREFIX clean vs. LOCALBASE clean (Was: Package installation location) In-Reply-To: <20001210114736.G80274@dragon.nuxi.com> References: <20001210125026.A27718@drama.navipath.com> <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> X-Mailer: VM 6.75 under 21.1 (patch 10) "Capitol Reef" XEmacs Lucid X-face: "5Mnwy%?j>IIV\)A=):rjWL~NB2aH[}Yq8Z=u~vJ`"(,&SiLvbbz2W`;h9L,Yg`+vb1>RG% *h+%X^n0EZd>TM8_IB;a8F?(Fb"lw'IgCoyM.[Lg#r\ Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG David O'Brien types: > > Wherease "PREFIX clean" means "all installed files are in the PREFIX > > tree", > > Correct. > > > 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. In particular, assume that the port APort depends on BPort in some way, and is PREFIX clean. That means that everything in APort is installed in PREFIX, and all APorts references to things in APort look for them there. Neither of those statements precludes APort from looking for things that are part of BPort directly in /usr/local instead of in LOCALBASE. Doing so would make APort PREFIX clean while it was not LOCALBASE clean. I've only seen this break during the build. Most typical is the applications configuration software looking in /usr/local for an include file or library from BPort instead of looking in LOCALBASE. Some things assume that $(LOCALBASE)/bin is in the path, which is probably true for most users. However, the scripts provided by FreeBSD in /root add /usr/local/bin, *not* $(LOCALBASE)/bin. So such runtime dependencies don't break for users, but do for root - which means they are more likely to be noticed if they are build dependencies than if they are run dependencies.