Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 12 Nov 2012 09:55:24 +0100
From:      Paul Schenkeveld <freebsd@psconsult.nl>
To:        freebsd-stable@freebsd.org
Cc:        Zoran Kolic <zkolic@sbb.rs>
Subject:   Re: nomenclature for conf files
Message-ID:  <20121112085524.GA52287@psconsult.nl>
In-Reply-To: <CADLo839uwhSGLtit16oOOmSibN3G%2B7GL2CEb7kBD9J_AvUSfyg@mail.gmail.com>
References:  <20121112051229.GA1235@mycenae.sbb.rs> <CADy1Ce6W4nfQHvHNx7YO9jEc6Aou9hjtHzdVV9xhxZ-rGzWhmQ@mail.gmail.com> <CADLo839uwhSGLtit16oOOmSibN3G%2B7GL2CEb7kBD9J_AvUSfyg@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Nov 12, 2012 at 08:29:27AM +0000, Chris Rees wrote:
> On 12 Nov 2012 05:20, "Kurt Buff" <kurt.buff@gmail.com> wrote:
> >
> > On Sun, Nov 11, 2012 at 9:12 PM, Zoran Kolic <zkolic@sbb.rs> 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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20121112085524.GA52287>