Date: Mon, 19 Mar 2012 20:37:39 +0100 From: Dimitry Andric <dim@FreeBSD.org> To: Chris Rees <utisoft@gmail.com> 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: <4F678B03.8050307@FreeBSD.org> In-Reply-To: <CADLo838oBTwEvYPM1y1XSxCJ2c7EL%2BhqhrcdiDv8%2BuxeuM_hTQ@mail.gmail.com> References: <201203162319.q2GNJjx5039482@svn.freebsd.org> <20120317162754.I1530@besplex.bde.org> <CADLo838oBTwEvYPM1y1XSxCJ2c7EL%2BhqhrcdiDv8%2BuxeuM_hTQ@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2012-03-19 08:21, Chris Rees wrote: > On 17 Mar 2012 05:40, "Bruce Evans" <brde@optusnet.com.au <mailto:brde@optusnet.com.au>> wrote: >> >> On Fri, 16 Mar 2012, Dimitry Andric wrote: >> >>> Log: >>> Change the style of share/mk/bsd.sys.mk <http://bsd.sys.mk> to that of the other bsd.*.mk >>> files, and style.Makefile(5), where applicable. While here, update the >>> link to the gcc warning documentation. >> >> >> Thanks. I 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. It >> 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>. This 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 '=' (or '+='). Weird >> formattings of assignments are harder to grep for than weird formattings >> of ".foo", so I didn't try looking for them all. > > Indented .ifs etc are used (inconsistently) in bsd.port.mk <http://bsd.port.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. So 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) .if defined(BAR) CFLAGS+= -DFOO_BAR .endif .endif But I guess that would require some overhaul in make. It doesn't grok such indentations now. > Perhaps we should try to agree a standard on them, perhaps two spaces? It's a shame to be stripping them out. Two spaces sounds reasonable enough. Though indent size is probably the ultimate bikeshed... ;)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4F678B03.8050307>