From owner-freebsd-arch@FreeBSD.ORG Sun Sep 7 02:10:07 2003 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4D6EC16A4BF; Sun, 7 Sep 2003 02:10:07 -0700 (PDT) Received: from mailman.zeta.org.au (mailman.zeta.org.au [203.26.10.16]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9B78F43FFD; Sun, 7 Sep 2003 02:10:05 -0700 (PDT) (envelope-from bde@zeta.org.au) Received: from gamplex.bde.org (katana.zip.com.au [61.8.7.246]) by mailman.zeta.org.au (8.9.3p2/8.8.7) with ESMTP id TAA20214; Sun, 7 Sep 2003 19:09:58 +1000 Date: Sun, 7 Sep 2003 19:09:57 +1000 (EST) From: Bruce Evans X-X-Sender: bde@gamplex.bde.org To: Doug Barton In-Reply-To: <20030905140628.H90946@12-234-22-23.pyvrag.nggov.pbz> Message-ID: <20030907183531.V3442@gamplex.bde.org> References: <20030905140628.H90946@12-234-22-23.pyvrag.nggov.pbz> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII cc: freebsd-arch@freebsd.org Subject: Re: RFC: NO_FOO knobs in make.conf X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Sep 2003 09:10:07 -0000 On Fri, 5 Sep 2003, Doug Barton wrote: > Seems this topic is a perennial favorite, so I'd like to establish > general agreement on a policy to deal with this going forward. I propose > the following "guidelines" for discussion: > > 1. All new knobs, in all branches, should have WORD_SEPERATORS between > distinct English words. This aids understanding of what the knob means > for English speakers, and more importantly, those for whom English is > not their first language. That, and actually having a standard are the > two main reasons I'm proposing this version. Does this rule apply to non-English words like SEPERATORS (sic) in the above, BSD in FreeBSD, DES in DES, des in des, RELENG in RELENG_*, etc.? :-> > > 2. Assuming that adequate volunteer resources can be found, all knobs in > HEAD should be converted to the WORD_SEP format, and compatibility shims > added, preferably with a suitable warning. This should happen prior to > the 6-current branch. > > 3. At some point in the future, the shims in 2. will be removed in > 6-current. > > 4. The shims from 2. should probably not be removed in the eventual > RELENG_5. (I'm open on this, I just want to be sure we get it down "on > paper.") > > 5. Conversion of the knobs should never be backported to RELENG_4 I won't complain much about the names of new variables, but changing the names of old variables and adding compatibility cruft to support 2 sets of names are wastes of time. When you change this, don't forget to enforce the change on OtherBSD for compatibility. NetBSD uses: %%% # $NetBSD: bsd.README,v 1.134 2003/08/03 09:23:15 lukem Exp $ ... NOxxx If defined, disables a feature. Not intended for users. This is to allow Makefiles to disable functionality that they don't support (such as missing man pages). NOxxx variables must be defined before is included. %%% %%% # $NetBSD: bsd.own.mk,v 1.352 2003/08/01 22:51:34 mrg Exp $ ... # # Define MKxxx variables (which are either yes or no) for users # to set in /etc/mk.conf and override in the make environment. # These should be tested with `== "no"' or `!= "no"'. # The NOxxx variables should only be set by Makefiles. # # # Supported NO* options (if defined, MK* will be forced to "no", # regardless of user's mk.conf setting). # .for var in CRYPTO DOC HTML LINKLIB LINT MAN NLS OBJ PIC PICINSTALL PROFILE \ SHARE .if defined(NO${var}) MK${var}:= no .endif .endfor %%% Perhaps the real point here is that the mostly-implementation-detail names for the build system leaked out to user-visible names. Bruce