[coreboot] [RFC] Short license headers

David Hendricks david.hendricks at gmail.com
Sat Jan 11 05:03:06 CET 2014

On Fri, Jan 10, 2014 at 4:58 PM, mrnuke <mr.nuke.me at gmail.com> wrote:

> ##
> ## This file is part of the coreboot project.
> ##
> ## Copyright (C) 2014 Alexandru Gagniuc <email at addr.ess>
> ##
> ## This program is free software; you can redistribute it and/or modify
> ## it under the terms of the GNU General Public License as published by
> ## the Free Software Foundation; either version 2 of the License, or
> ## (at your option) any later version.
> ##
> ## This program is distributed in the hope that it will be useful,
> ## but WITHOUT ANY WARRANTY; without even the implied warranty of
> ## GNU General Public License for more details.
> ##
> ## You should have received a copy of the GNU General Public License
> ## along with this program; if not, write to the Free Software
> ## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301
> ##
> License headers are boring, redundant, and the more time you spend
> coding, the more annoying they get. You gave me a big COPYING file that
> tells me all I ever wanted to know about the license. You don't need to
> pull out a ruler and measure your manhood in every file, with a 20+ line
> pork that tells me nothing about what the file is about. You can tell me
> what the license is in 6 characters or less if you really want to.
> /*
>  * Email describing why short headers are better
>  *
>  * Copyright (C) 2013  Alexandru Gagniuc <mr.nuke.me at gmail.com>
>  * Subject to the GNU GPL v2, or (at your option) any later version.
>  */
> There, I've done all that in six lines, AND I've briefly told you what
> this file does. I've started using this style in the
> cubieboard/allwinner port. I have not seen any major complaints (in
> fact, only one minor notice that I'm doing it). It works great.
> * First, it forces me to think about what this file is about, which in
> turn gets me to think if it's really needed or not. I think I was able
> to get the allwinner code much better organized because of this one detail.
> * Second, it lets me focus on coding.
> * Third, I no longer need to scroll down to see what the file actually
> does.
> * Fourth, after weeks of thinking about it, I could not find one
> downside to the approach.
> As a result, I propose the following:
> 1. Update the coding guidelines to use the short header.
> 2. Enforce the new guidelines on new commits.
> 3. Kindly ask people to update the old headers to the new format (maybe
> someone smart enough can script this).
> 4. Remove copyright headers from trivial Kconfig and Makefile.inc. Which
> files you include in which stage is not really copyrightable anyway.
> On point (4)  The arch/arm or arch/x86 makefiles are pretty
> comprehensive, so it makes sense to have copyright headers there, but
> that's about the only place I see where this makes any sense.
> Less legalese, more code. Let's do this.

Thanks for bringing this up. I was kind of on the fence about approving
your Cubieboard changes because of some of the license headers, but
shrugged it off thinking that the intent was obvious enough.

IANAL, but from what I understand it's usually a good idea to avoid mucking
with legalese as to avoid unintended consequences of how licenses are
enforced, particularly with regard to international treaties pertaining to
IP and copyrighted works.

Also, there are a few distinct free software licenses used in coreboot so
I'd hate to add to the confusion. Keeping the licenses in their canonical
form and applying them to ever file ensures that coreboot gets all the
proper legal protections.

Maybe someone more familiar with software licensing can shed some light on
the subject.

> Alex
> [1] http://www.coreboot.org/Development_Guidelines#Common_License_Header
> --
> coreboot mailing list: coreboot at coreboot.org
> http://www.coreboot.org/mailman/listinfo/coreboot
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.coreboot.org/pipermail/coreboot/attachments/20140110/69602e7a/attachment.html>

More information about the coreboot mailing list