cvs commit: ports/net/asterisk Makefile

Maxim Sobolev sobomax at portaone.com
Thu Feb 19 04:14:09 PST 2004


Maxim Sobolev wrote:

> Kris Kennaway wrote:
> 
>> On Thu, Feb 19, 2004 at 01:49:24PM +0200, Maxim Sobolev wrote:
>>
>>> Kris Kennaway wrote:
>>>
>>>
>>>> On Thu, Feb 19, 2004 at 03:22:39AM -0800, Maxim Sobolev wrote:
>>>>
>>>>
>>>>> sobomax     2004/02/19 03:22:39 PST
>>>>>
>>>>> FreeBSD ports repository
>>>>>
>>>>> Modified files:
>>>>>  net/asterisk         Makefile Log:
>>>>> Replace '${WRKDIRPREFIX}${PORTSDIR}/' with '${WRKDIR}/../../../' when
>>>>> reffering other ports, since the former for some reason doesn't work
>>>>> in bento environment (it works here just fine even with WRKDIRPREFIX
>>>>> set).
>>>>>
>>>>> BTW, this is good evidence which shows that breakage on bento isn't
>>>>> sufficient to mark port as BROKEN.
>>>>
>>>>
>>>>
>>>> It exposed your incorrect assumption and made you fix it, didn't it?
>>>> ;-)
>>>>
>>>> You were bitten by the fact that bento (deliberately) builds ports in
>>>> /a/ports, with /usr/ports a symlink to this directory.  In other
>>>> words, in legitimate environments, ${PORTSDIR} may not be equal to
>>>> ${.CURDIR} even though both reference the same directory.
>>>
>>>
>>> Or equially likely it exposes a bug in bento's setup, where 
>>> ${PORTSDIR} should be set to /a/ports not to /usr/ports. ;)
>>
>>
>>
>> No, as I said, this is a supported configuration.  Moreover, I'm sure
>> it's common for people to move their ports collection from /usr/ports
>> to some other location and replace it with a symlink (in fact I've
>> done that myself), and this works for all 10364 ports except yours,
>> prior to this commit.
> 
> 
> I still think that you aren't quite correct. You (and everyone who want 
> to move /usr/ports over) should have set PORTSDIR to its real location 
> (that is /a/ports in bento scripts), which would allow 
> '${WRKDIRPREFIX}${PORTSDIR}/' in ports Makefiles instead of much uglier 
> ${WRKDIR}/../../../' (or eaquially ugly construct involving .CURDIR). 
> The latter is worse because in this case it is impossible to put ports 
> directory (e.g. asterisk in this case) anywhere in the file system not 
> in the ${PORTSDIR} and have it building just fine, which is possible 
> with the former. IMO, this is much common and useful feature than 
> ability to move /usr/ports with the help of symlink.

Also my version of behaviour is documented (ans has been for a long 
time) as the One True Way[tm], so that I'd suggest you to fix bento scripts.

http://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/porting-wrkdirprefix.html

-Maxim



More information about the cvs-ports mailing list