From owner-freebsd-stable@FreeBSD.ORG Mon Nov 12 08:55:31 2012 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 961FE1AC for ; Mon, 12 Nov 2012 08:55:31 +0000 (UTC) (envelope-from freebsd@psconsult.nl) Received: from mx1.psconsult.nl (unknown [IPv6:2001:7b8:30f:e0::5059:ee8a]) by mx1.freebsd.org (Postfix) with ESMTP id 410048FC08 for ; Mon, 12 Nov 2012 08:55:30 +0000 (UTC) Received: from mx1.psconsult.nl (mx1.hvnu.psconsult.nl [46.44.189.154]) by mx1.psconsult.nl (8.14.5/8.14.4) with ESMTP id qAC8tOI5052568 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Mon, 12 Nov 2012 09:55:29 +0100 (CET) (envelope-from freebsd@psconsult.nl) Received: (from paul@localhost) by mx1.psconsult.nl (8.14.5/8.14.4/Submit) id qAC8tOtX052567; Mon, 12 Nov 2012 09:55:24 +0100 (CET) (envelope-from freebsd@psconsult.nl) X-Authentication-Warning: mx1.psconsult.nl: paul set sender to freebsd@psconsult.nl using -f Date: Mon, 12 Nov 2012 09:55:24 +0100 From: Paul Schenkeveld To: freebsd-stable@freebsd.org Subject: Re: nomenclature for conf files Message-ID: <20121112085524.GA52287@psconsult.nl> References: <20121112051229.GA1235@mycenae.sbb.rs> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) Cc: Zoran Kolic X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 12 Nov 2012 08:55:31 -0000 On Mon, Nov 12, 2012 at 08:29:27AM +0000, Chris Rees wrote: > On 12 Nov 2012 05:20, "Kurt Buff" wrote: > > > > On Sun, Nov 11, 2012 at 9:12 PM, Zoran Kolic wrote: > > > It might sound stupid, but I'd like to know if there's > > > any difference. Are those 3 line the same? > > > > > > WITH_KMS=YES > > > WITH_KMS="YES" > > > WITH_KMS=yes > > > > With regard to their use in /etc/rc.conf, no, absolutely not. > > > > In general, from my experience, only the second one will work. > > > > This might, or might not, be true for other uses, but rc.conf is > > pretty picky about this. > > All three are fine in make.conf and rc.conf > > The issue with rc.conf is when people put spaces around the = sign. > > Chris Indeed /etc/rc (executed by /bin/sh) accepts all three forms because quotes are optional in /bin/sh and /etc/rc.subr (sourced by /etc/rc) matches the value against "[Yy][Ee][Ss]|[Tt][Rr][Uu][Ee]|[Oo][Nn]|1". Also, the FreeBSD makefiles and sources test all WITH_* variables with .ifdef or #ifdef so the value doesn't matter and can even be empty. White space around the = is permitted too (but not in rc.conf!). However, things are different when people start using tools to maintain rc.conf/make.conf. If not written with the above in mind, these tools may have problems parsing these files. It's good practice to be consistent and use a canonical form that matches the documentation or example files as this is probably the syntax that is guarenteed to not confuse such tools. In other words: "Be conservative in what you send [write], liberal in what you accept". HTH Paul Schenkeveld