Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 19 Mar 2012 21:06:45 +0000
From:      Chris Rees <utisoft@gmail.com>
To:        Dimitry Andric <dim@freebsd.org>
Cc:        svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Bruce Evans <brde@optusnet.com.au>
Subject:   Re: svn commit: r233052 - head/share/mk
Message-ID:  <CADLo83_4p-oSpCTfLDcKQrzur-4oEwoBSt8UVsJ4xoirWD7KMA@mail.gmail.com>
In-Reply-To: <4F678B03.8050307@FreeBSD.org>
References:  <201203162319.q2GNJjx5039482@svn.freebsd.org> <20120317162754.I1530@besplex.bde.org> <CADLo838oBTwEvYPM1y1XSxCJ2c7EL%2BhqhrcdiDv8%2BuxeuM_hTQ@mail.gmail.com> <4F678B03.8050307@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On 19 March 2012 19:37, Dimitry Andric <dim@freebsd.org> wrote:
> On 2012-03-19 08:21, Chris Rees wrote:
>> On 17 Mar 2012 05:40, "Bruce Evans" <brde@optusnet.com.au <mailto:brde@o=
ptusnet.com.au>> wrote:
>>>
>>> On Fri, 16 Mar 2012, Dimitry Andric wrote:
>>>
>>>> Log:
>>>> =A0Change the style of share/mk/bsd.sys.mk <http://bsd.sys.mk>; to that=
 of the other bsd.*.mk
>>>> =A0files, and style.Makefile(5), where applicable. =A0While here, upda=
te the
>>>> =A0link to the gcc warning documentation.
>>>
>>>
>>> Thanks. =A0I rather liked the "^.* foo" style for making ifdefs less
>>> unreadable, but it didn't look like it was written here, and it is
>>> a sign of other problems that so many nested ifdefs are used. =A0It
>>> only used a single space of each level of indentation, so the
>>> indentation was still hard too see.
>>>
>>> The "other bsd.*.mk" files don't include bsd.cpu.mk <http://bsd.cpu.mk>=
. =A0This still uses
>>> the "^. *foo" style (and is now the only *.mk file one that does this).
>>> For assignments, it mostly uses a different unusual style -- just the
>>> normal C style of a single space before and after '=3D' (or '+=3D'). =
=A0Weird
>>> formattings of assignments are harder to grep for than weird formatting=
s
>>> of ".foo", so I didn't try looking for them all.
>>
>> Indented .ifs etc are used (inconsistently) in bsd.port.mk <http://bsd.p=
ort.mk> et al, and can make a huge difference to readability; make is such =
a messy language that multiple levels are often needed.
>
> Well, the issue with Makefiles is that you cannot indent the actual
> statements. =A0So even if you sort-of-indent the directives, by adding
> spaces between the initial dot and the directive name, you still have a
> very messy left margin. :)
>
> It would be much nicer to be able to write:
>
> .if defined(FOO)
> =A0.if defined(BAR)
> =A0 =A0CFLAGS+=3D =A0 =A0-DFOO_BAR
> =A0.endif
> .endif
>
> But I guess that would require some overhaul in make. =A0It doesn't grok
> such indentations now.

That's right, lines starting with whitespace *must* be shell
commands-- it'll be some overhaul that changes that...

>
>> Perhaps we should try to agree a standard on them, perhaps two spaces? =
=A0It's a shame to be stripping them out.
>
> Two spaces sounds reasonable enough. =A0Though indent size is probably th=
e
> ultimate bikeshed... ;)

True-- also whitespace-only changes are probably a bad idea for
merges.  I'm not suggesting changing anything existing, but I'd sure
like to keep the whitespace while it's already there ;)

Chris



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CADLo83_4p-oSpCTfLDcKQrzur-4oEwoBSt8UVsJ4xoirWD7KMA>