Integrated DEBUG related macros to WITH_DEBUG/WITHOUT_DEBUG

Hiroki Sato hrs at FreeBSD.org
Sun Nov 13 08:52:11 PST 2005


Michael Nottebrock <lofi at freebsd.org> wrote
  in <200511131007.35678.lofi at freebsd.org>:

lo> On Sunday, 13. November 2005 09:16, Stijn Hoop wrote:
lo> > On Sun, Nov 13, 2005 at 09:00:21AM +0100, Michael Nottebrock wrote:
lo> > > I don't think it's a good idea at all to unify all debug knobs
lo> > > into one universal WITH/WITHOUT_DEBUG - it requires the user to use a
lo> > > third party portmanager utilitiy or fiddling with conditionals in
lo> > > make.conf if he wants debug symbols on specific ports only.
lo> >
lo> > Well that goes for the other knobs as well of course -- WITH_PERL,
lo> > WITH_PYTHON and other programming extension languages come to mind, as
lo> > do NOPORTDOCS and WITHOUT_GUI (there are some things that I don't need
lo> > a GUI for on my desktop).
lo>
lo> And people have expressed their unhappiness with that status quo repeatedly,
lo> especially in the context of OPTIONS.
lo>
lo> One very promising proposed solution was to extend the OPTIONS framework to
lo> support NO_OPTIONS_<portname> and WITH|WITHOUT_<option_choice>_<portname>.
lo>
lo> I agree that this is the way to go - making the currently available switches
lo> even more ambiguous just in order to get more content into KNOBS is
lo> contraproductive.

 I also want some sort of namespace mechanism for the port option
 knobs (WITH_*).  How about making possible to define one variable
 for one port, not adding namespace to the port knobs themselves,
 like the following:

  OPTIONS_<portname> = X11 DEBUG NO_GUI FOO=bar

 This definition can be expanded into WITH_X11=yes, WITH_DEBUG=yes,
 WITHOUT_GUI=yes, and FOO=bar by bsd.port.mk when the port <portname>
 is built.  In this way the keywords and their meanings can be locally
 defined in each port as well as backward compatibility can be kept,
 I think.

 Also, global knobs can be defined as OPTIONS_default like this:

  OPTIONS_default = X11 NO_GUI

 If the interpretation is performed in order of (vars in command line) ->
 (vars in OPTIONSFILE) -> OPTIONS_<portname> -> OPTIONS_default (i.e. vars
 in command line have the highest priority), the behavior is intuitive.

--
| Hiroki SATO
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-ports/attachments/20051114/acc27b94/attachment.bin


More information about the freebsd-ports mailing list