A plea or sanity in port options menu
Bill Moran
wmoran at potentialtech.com
Mon Feb 2 12:39:28 PST 2009
In response to Warren Block <wblock at wonkity.com>:
> On Mon, 2 Feb 2009, Bill Moran wrote:
>
> > How about:
> >
> > Options for port-fu
> > [ ] BRG Bernstein Riggs Guillotine parsing
> > [X] QFZ Quantum Freeze Zulu rending
> >
> > At least that one gives me _some_ idea what those TLAs mean.
>
> There was talk some time ago of having extended descriptions. Several
> ideas, but the one that made the most sense to me would be a box at the
> bottom that would display a description as you moved through the
> options:
>
> [.] BRG
> [X] QFZ
>
> Bernstein Riggs Guillotine parsing
>
> with the . representing the cursor/highlight position. Move down and
> the bottom line would change to say "Quantum Freeze Zulu rending". The
> nice thing about the box at the bottom is it would give a full line or
> possibly several lines for explanations.
>
> Seems like it could be added without breaking the existing system with
> an optional OPTIONS_DESC variable that would correspond with OPTIONS.
> I don't really know how hard that would be; ideas are cheap,
> implementation more costly.
I don't think there's any need for any new features in the ports
infrastructure. I think it's just a matter of Makefile authors taking
the time to describe their options. A quick test of some ports turns
up this one:
[ ] OPENGL OpenGL support
True but useless. How about:
[ ] OPENGL Use OpenGL graphics library
...which, at least give the user _some_ idea what they're doing.
OpenGL probably isn't a good example, however. It's pretty easy to Google
OpenGL and figure out what it is. Here's some more bizarre options:
[X] EPUB Epub modules
[X] EXTENSIONS Extensions
[X] TEMPLATE Templates
[X] TOOLS Tools
I mean, if I enable "Extensions", what happens? How do I figure out
what happens? I have to read the Makefile, at which point having these
options on a menu is pretty pointless. I mean, I can't even come up
with a Google search to help me figure out what "tools" are involved
here.
There are some ports that do this very well. For example:
[ ] NLS Use internationalized messages
[ ] PAM Build with PAM support (server only)
[ ] LDAP Build with LDAP authentication support
[ ] MIT_KRB5 Build with MIT's kerberos support
[ ] HEIMDAL_KRB5 Builds with Heimdal kerberos support
[ ] OPTIMIZED_CFLAGS Builds with compiler optimizations (-O3)
[X] XML Build with XML data type (server)
[X] TZDATA Use internal timezone database (server)
[ ] DEBUG Builds with debugging symbols
[ ] ICU Use ICU for unicode collation (server)
[ ] INTDATE Builds with 64-bit date/time type (server)
I mean, a Google on ICU is liable to bring up all sorts of medical drama
websites, but I can do a search for "ICU unicode" and find my answer on
the first result. Not only am I told that optimized compiler flags are
an option, but I'm told the exact one that will be used (-O3)
The porters handbook doesn't seem to offer any helpful advice on these:
http://www.freebsd.org/doc/en/books/porters-handbook/makefile-options.html
In fact, the examples it provides are excellent examples of doing it
WRONG.
Let me see about making a patch to the porters handbook to provide some
advice ...
--
Bill Moran
http://www.potentialtech.com
http://people.collaborativefusion.com/~wmoran/
More information about the freebsd-ports
mailing list