From owner-freebsd-current@FreeBSD.ORG Sat Jul 16 15:37:55 2011 Return-Path: Delivered-To: current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id BA0651065672; Sat, 16 Jul 2011 15:37:55 +0000 (UTC) (envelope-from stephen@missouri.edu) Received: from wilberforce.math.missouri.edu (wilberforce.math.missouri.edu [128.206.184.213]) by mx1.freebsd.org (Postfix) with ESMTP id 816338FC0A; Sat, 16 Jul 2011 15:37:55 +0000 (UTC) Received: from [127.0.0.1] (wilberforce.math.missouri.edu [128.206.184.213]) by wilberforce.math.missouri.edu (8.14.4/8.14.4) with ESMTP id p6GFbrAo073668; Sat, 16 Jul 2011 10:37:54 -0500 (CDT) (envelope-from stephen@missouri.edu) Message-ID: <4E21B051.5040502@missouri.edu> Date: Sat, 16 Jul 2011 10:37:53 -0500 From: Stephen Montgomery-Smith User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.17) Gecko/20110516 Thunderbird/3.1.10 MIME-Version: 1.0 To: Stefan Bethke References: <4E20FADE.6060103@missouri.edu> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: "freebsd@sopwith.solgatos.com" , "current@freebsd.org" , "bug-followup@freebsd.org" Subject: Re: ports/158179: some packages do not fully honor -P dir option in pkg_add(1) X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Jul 2011 15:37:55 -0000 On 07/16/2011 04:26 AM, Stefan Bethke wrote: > Am 16.07.2011 um 04:43 schrieb Stephen Montgomery-Smith: > >> I was looking through the source code of pkg_add. Personally I don't see how the "-P" or "-p" option could be made to work with pkg_add. Many of the installation commands involve scripts which have ${PREFIX} hard coded into them. ${PREFIX} is often hard coded when trhe package is created by the port. In my opinion, the options "-p" and "-P" should be removed from pkg_add. >> >> Either that, or provide the port a way to access "@cwd" in any scripts it installs. But this would require a major overhaul of the whole ports system, and probably much of the software it installs as well. >> >> Am I missing something? > > Yes. Not honoring the prefix is a bug in the port. If you do need to do prefix-specific things during install, use pkg-install, see http://www.freebsd.org/doc/en/books/porters-handbook/pkg-install.html > > I suspect that many ports are not well tested outside of "/usr/local", but the infrastructure is there and available. You are correct, this needs to be done on a port by port basis. In some ports this is going to be a big job, because in some cases the "/usr/local" is hard coded into certain binaries. For example, suppose the C source code contains something like: char applications_dir = "/usr/local/share/applications"; and this is filled in by the ./configure script. How is that handled?