proper use of bsd.port.options.mk

Warren Block wblock at wonkity.com
Mon May 16 18:47:20 UTC 2011


On Mon, 16 May 2011, Chris Rees wrote:

> On 16 May 2011 05:18, Warren Block <wblock at wonkity.com> wrote:
>> On Sun, 15 May 2011, Doug Barton wrote:
>>
>>> I'm confused (yeah, I know, nothing new about that). From
>>> ports/Mk/bsd.port.options.mk:
>>>
>>> # usage:
>>> #
>>> #       .include "bsd.port.options.mk"
>>> #       <deal with user options>
>>> #       .include "bsd.port.pre.mk"
>>> #       <other work, including adjusting dependencies>
>>> #       .include "bsd.port.post.mk"
>>>
>>>
>>> However the ports I've looked at so far all do:
>>>
>>> OPTIONS=        blah
>>>
>>> .include <bsd.port.options.mk>
>>>
>>> blah
>>>
>>> .include <bsd.port.mk>
>>> EOF
>>>
>>> I assume that this method works, since it seems like so many ports use it.
>>> Should the notes in options.mk be updated?
>>
>> Yes, it should be updated.  See examples "5.8 Simple use of OPTIONS" and
>> "5.9 Old style use of OPTIONS" in the Porter's Handbook:
>>
>> http://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/makefile-options.html
>
> No, because stuff is done in pre.mk which is not done in OPTIONS;
> handling dependencies such as USE_BZIP2 or USE_JAVA for example.

The comments ought to be updated to at least show both forms.

> After options processing, pre.mk is only needed if you need to do the
> above, which is why it's missed out on most ports.

Could you give an example?  I looked, but nothing obvious jumped out.

> The Handbook part refers to 'SIMPLE' use of OPTIONS, so perhaps should
> have a 'complex' use of options as well...

"Advanced" is the less-scary euphemism.


More information about the freebsd-ports mailing list