Date: Sat, 9 Jun 2012 12:02:12 -0700 From: Garrett Cooper <yanegomi@gmail.com> To: Doug Barton <dougb@freebsd.org> Cc: Chris Rees <crees@freebsd.org>, Matthew Seaman <m.seaman@infracaninophile.co.uk>, freebsd-current <freebsd-current@freebsd.org> Subject: Re: PORTS_MODULES fix Message-ID: <CAGH67wT9udEOyZwcgbgHMpZitVD0d6FoMfxUnXCgK-uBP817yg@mail.gmail.com> In-Reply-To: <4FD39099.3000208@FreeBSD.org> References: <4FD384B5.3050709@FreeBSD.org> <CADLo839AsqtRiDZt3HJatBy=0Peu6W2Bu7XrsfiMes3RewTtPg@mail.gmail.com> <4FD38A71.8070601@infracaninophile.co.uk> <4FD39099.3000208@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, Jun 9, 2012 at 11:06 AM, Doug Barton <dougb@freebsd.org> wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: RIPEMD160 > > On 06/09/2012 10:40, Matthew Seaman wrote: >> On 09/06/2012 18:26, Chris Rees wrote: >>> On 9 June 2012 18:15, Doug Barton <dougb@freebsd.org> wrote: >>>> I have recently tried the PORTS_MODULES knob, and found a >>>> problem. The ports tree searches for some dependencies by >>>> finding a binary in PATH, and that fails since by default >>>> /usr/local/ isn't there. The attached patch fixes that >>>> problem. >>>> >>>> It would be more robust to use PREFIX there instead of >>>> /usr/local explicitly, but I'm not sure how to unravel the mk >>>> maze to get that value. If anyone has a suggestion for that, >>>> I'd be happy to include it. >>> >>> As you mention, PREFIX is only defined in ports/Mk, and it'd >>> definitely be undesirable to be including any of those files :) >>> >>> The most robust (but unpleasant) solution would be one of the >>> following: >>> >>> PREFIX?=/usr/local PORTSMODULESENV=SYSDIR=${SYSDIR} >>> PATH=${PATH}:${PREFIX}/bin:${PREFIX}/sbin >>> >>> or the equivalent (and perhaps cleaner, not leaving PREFIX >>> defined) >>> >>> .if !defined(PREFIX) PORTSMODULESENV=SYSDIR=${SYSDIR} >>> PATH=${PATH}:/usr/local/bin:/usr/local/sbin .else >>> PORTSMODULESENV=SYSDIR=${SYSDIR} >>> PATH=${PATH}:${PREFIX}/bin:${PREFIX}/sbin .endif >>> >>> Both of these will respect make.conf's setting of PREFIX. >>> >> >> Shouldn't you be looking for LOCALBASE rather than PREFIX in this >> context? > > Both good points. New and improved attached. Looks like my patch, only with LOCALBASE being tunable and with with ${LOCALBASE}/sbin (in short I found a few different bugs from you a few months ago): http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/161452 . Thanks! -Garrett
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAGH67wT9udEOyZwcgbgHMpZitVD0d6FoMfxUnXCgK-uBP817yg>