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>
