From owner-freebsd-stable@FreeBSD.ORG Tue Feb 26 11:42:00 2008 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C24A510656DB; Tue, 26 Feb 2008 11:42:00 +0000 (UTC) (envelope-from chris#@1command.com) Received: from mail.1command.com (mail.1command.com [75.160.109.226]) by mx1.freebsd.org (Postfix) with ESMTP id 7CE7B13FDCB; Tue, 26 Feb 2008 11:05:18 +0000 (UTC) (envelope-from chris#@1command.com) Received: from mail.1command.com (localhost.1command.com [127.0.0.1]) by mail.1command.com (8.13.3/8.13.3) with ESMTP id m1QB59uW062178; Tue, 26 Feb 2008 03:05:15 -0800 (PST) (envelope-from chris#@1command.com) Received: (from www@localhost) by mail.1command.com (8.13.3/8.13.3/Submit) id m1QB59BK062160; Tue, 26 Feb 2008 03:05:09 -0800 (PST) (envelope-from chris#@1command.com) Received: from hitme.hitometer.net (hitme.hitometer.net [75.160.109.235]) by webmail.1command.com (H.R. Communications Messaging System) with HTTP; Tue, 26 Feb 2008 03:05:09 -0800 Message-ID: <20080226030509.mn558t4afk8cgkgs@webmail.1command.com> X-Priority: 3 (Normal) Date: Tue, 26 Feb 2008 03:05:09 -0800 From: "Chris H." To: Jeremy Chadwick References: <20080225215522.r3jb5v548o0scks8@webmail.1command.com> <20080226070516.GB32690@team.vega.ru> <20080225233523.acl5s1lo8wgsw4wg@webmail.1command.com> <20080226080349.GA20881@eos.sc1.parodius.com> In-Reply-To: <20080226080349.GA20881@eos.sc1.parodius.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format="flowed" Content-Disposition: inline Content-Transfer-Encoding: 7bit User-Agent: H.R. Communications Internet Messaging System (HCIMS) 4.1 Professional (not for redistribution) / FreeBSD-5.5 Cc: freebsd-stable@freebsd.org Subject: Re: make KNOBS X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 26 Feb 2008 11:42:06 -0000 Hello Jeremy, and thank you for your /very/ informative reply. You rock! :) Quoting Jeremy Chadwick : > 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)