Date: Tue, 26 Feb 2008 03:05:09 -0800 From: "Chris H." <chris#@1command.com> To: Jeremy Chadwick <koitsu@freebsd.org> Cc: freebsd-stable@freebsd.org Subject: Re: make KNOBS Message-ID: <20080226030509.mn558t4afk8cgkgs@webmail.1command.com> In-Reply-To: <20080226080349.GA20881@eos.sc1.parodius.com> References: <20080225215522.r3jb5v548o0scks8@webmail.1command.com> <20080226070516.GB32690@team.vega.ru> <20080225233523.acl5s1lo8wgsw4wg@webmail.1command.com> <20080226080349.GA20881@eos.sc1.parodius.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Hello Jeremy, and thank you for your /very/ informative reply. You rock! :) Quoting Jeremy Chadwick <koitsu@freebsd.org>: > On Mon, Feb 25, 2008 at 11:35:23PM -0800, Chris H. wrote: >> But am struggling with finding the port(s) equivalent. If there isn't >> one, I'd be more that happy to dedicate a domain/ web site solely to >> providing this resource. Perhaps a wiki that I, and anyone else can >> add the WITH_/WITHOUT_ options, along with descriptions of exactly >> /what/ they provide. Seems like a /real/ valuable, and /needed/ >> resource. > > There is no equivalent. Some ports allow "make showconfig" to show you > what knobs there are, but the majority do not. And with the OPTIONS > framework, it deprecates the need for "showconfig" entirely. Yes, I've noticed there are differences, and /assumed/ that this was simply a "migration" period that would /eventually/ provide a more consistent/robust "tuning" mechanism for the config/make process. Just dreaming? :) > > Additionally, the WITH/WITHOUT variables seen in the Makefile are not > always what they seem. For ports that use OPTIONS, you cannot define > these on the command-line (e.g. make WITHOUT_FRUIT=yes); I believe that /should/ be: WITHOUT_FRUIT=true - (true/false) --------------^^^^ > you absolutely > MUST do 'make config' and then toggle them there. (This is one piece of > the OPTIONS framework which I have always disliked, because some of us > use /etc/make.conf to define WITH/WITHOUT variables, and prefer to do > "cd /usr/ports/whatever && make clean && make && make install" and not > have something interactive pop up. May I insert a "me too" here? > That's for another discussion > though...) I'll be contributing to /that/ discussion. :) > > Also, there are some variables which are generally "global" across most > ports, such as WITHOUT_IPV6. You wouldn't want to list those off in > every single port, because that'd be somewhat redundant. My approach (for the most part) seems to overcome this. An example of my final choice(s) related to our earlier Apache2 discussion: in make.conf .if ${.CURDIR:M*/www/apache20} WITH_MPM=worker WITH_KQUEUE_SUPPORT=true WITH_AUTH_MODULES=true WITH_DAV_MODULES=true WITH_MISC_MODULES=true WITH_PROXY_MODULES=true WITH_THREADS_MODULES=true .endif This allows for a "per port" WITH_/WITHOUT_, somewhat eliminating the "redundancy/ies", and let's me circumvent the "global" limitations. > There is no > existing list of these "global"-like variables either, although some are > listed in the /usr/ports/Mk/bsd.*.mk files. Yes, I've looked to those, and /did/ find some helpful tuning KNOBS. > > Providing a web site listing them all off would not make much sense, > because ports change very often/quickly (the site would become outdated > the minute someone changes a port to add/remove a feature), and there's > no guarantee that the maintainer of the port will go to your site and > edit the Wiki page. Yea, I considered this. But even so, many don't change enough to invalidate the information that might have already been provided. It also allows for those whom have figured out many/some of the "tuning" variables, even though they aren't the port Author. So I felt it would/could still be a valuable resource. > > Instead, I would think said effort would be better spent implementing > the "showconfig" feature apply to all ports, and have it understand > OPTIONS stuffs. Agreed. I think that would be the /ultimate/ answer to this situation. :) Once again, thank you for your informative reply. --Chris H > > -- > | Jeremy Chadwick jdc at parodius.com | > | Parodius Networking http://www.parodius.com/ | > | UNIX Systems Administrator Mountain View, CA, USA | > | Making life hard for others since 1977. PGP: 4BD6C0CB | > > -- panic: kernel trap (ignored)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20080226030509.mn558t4afk8cgkgs>