[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH RFC 00/10] Enable repository wide style checking

From: Eric Blake
Subject: Re: [PATCH RFC 00/10] Enable repository wide style checking
Date: Thu, 13 Aug 2015 12:27:29 -0600
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.1.0

[adding the gnulib list]

On 08/13/2015 11:53 AM, Peter Maydell wrote:
> On 31 July 2015 at 17:30, Daniel P. Berrange <address@hidden> wrote:
>> Historically QEMU has relied on the checkpatch.pl script,
>> borrowed from Linux, to check coding style compliance on
>> patches which are submitted. For what it is designed for,
>> it does a reasonable job, but I feel that QEMU would benefit
>> from some more checking in this area, in particular checks
>> that run across the entire repository, not just new patches.
>> Rather than attempt to replace checkpatch.pl, this series
>> illustrates how we can augment our existing style compliance
>> checking. This imports the infrastructure from GNULIB which
>> provides a 'syntax-check' target in the makefiles.
> I like this in principle, but I notice that the GNULIB
> infrastructure is GPLv3. I really would strongly prefer
> that we not introduce any GPLv3 code into QEMU's git tree.
> I don't want to get into trying to figure out whether
> part of our makefile or build infrastructure being GPLv3
> implies the generated binaries are GPLv3 or not; the simplest
> approach is just to not allow any GPLv3 code into the git repo.
> Is there no GPLv2 or GPLv2-or-later version of this code?

Looks like gnulib.git commit fb7fde6f6 was the one that upgraded
maint.mk to GPLv3+, on the grounds that building with GPLv3+ code does
not infect your binary (see also the arguments in Autoconf, Automake,
gcc... - but those tend to include an explicit exception clause to make
it clear).  Then again, qemu also avoids use of Autoconf and Automake.

It's worth asking the gnulib folks for an opinion on whether relaxing
the license on maint.mk and GNUmakefile to explicitly go back to GPLv2+,
and/or explicitly add some explicit exception clause like gcc that makes
it clear that using these files to build does not taint the built
product.  Personally, I see no problem with using GPLv3'd tools (after
all, qemu requires GPLv3 GNU make, and gcc is also GPLv3 although clang
can step around that one), but I also see your reluctance of even having
a file in the qemu.git repo that has a GPLv3 clause.

As one of the contributors to gnulib, I'm okay with my contributions to
the files being relaxed; but we either need FSF blessing or consent from
all contributors to the files in question, which could get a bit daunting:

$ git shortlog top/maint.mk build-aux/useless-if-before-free \
   build-aux/vc-list-files | grep '^[^[:space:]]'
Akim Demaille (16):
Alfred M. Szmidt (2):
Assaf Gordon (1):
Daniel P. Berrange (1):
Eric Blake (54):
Gary V. Vaughan (4):
Giuseppe Scrivano (1):
Jim Meyering (174):
Jiri Denemark (1):
Joel E. Denny (2):
Jose E. Marchesi (5):
Karl Heuer (1):
Martin von Gagern (1):
Paul Eggert (4):
Peter Rosin (1):
Peter Simons (2):
Pádraig Brady (6):
Ralf Wildenhues (4):
Reuben Thomas (2):
Simon Josefsson (16):
Soren Hansen (1):
Stefano Lattarini (2):
Theophile Ranquet (1):

Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature

reply via email to

[Prev in Thread] Current Thread [Next in Thread]