[ccache] GPLv3

William S Fulton wsf at fultondesigns.co.uk
Mon Mar 1 16:12:45 MST 2010

Joel Rosdahl wrote:
> On Sun, 28 Feb 2010 22:26:48 +0000
> William S Fulton <wsf at fultondesigns.co.uk> wrote:
>> How about the new release is updated with the latest GPL - version 3? Given
>> you are changing the ccache version number quite considerably, this would
>> also be a good opportunity to update the license version to make it
>> distinguishable from prior releases.
> I'm fine with upgrading to GPLv3+ (and I'm also fine with keeping GPLv2+). If I
> understand these things correctly (please correct me otherwise), I could just
> switch ccache (the work as a whole) to GPLv3+ since all code parts that ccache
> is made from are GPLv3+ compatible.
Yes indeed.

> However, if upgrading, I would also prefer to relicense the "core ccache
> files", so that the blurb at the top of those files says GPLv3+ to avoid
> confusion. My understanding is that I need consent from all copyright holders
> (10-15 people if you count all contributors) to do this. Am I correct? If so,
> it seems easier to just stick with GPLv2+.
This last bit isn't quite right. The license is currently GPLv2+, so as 
quoted from the headers of the .c files:

    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.

As the copyright holders have already licensed it under GPLv2 or later 
("later version" is the key point here) and as GPL is copyleft, anyone 
can take the source and license it as GPLv3 or GPLv3 or later, so there 
is nothing stopping you or anyone else from doing this should they so 
wish. Of course, it would be polite to inform the contributors and 
discussion on this mailing list partly goes down that route, but you 
don't need consent... you only need to conform to the license and that 
includes redistributing under a later version.

Here are the GNU guidelines on how to upgrade:
http://www.gnu.org/licenses/gpl-faq.html#v3HowToUpgrade. As ccache isn't 
GNU, you don't have to follow this to the letter. I see some of the 
current source files are missing the GPL headers, which ought to be 
rectified at the same time, as all the code is GPL since the files are 
compiled and linked together.

> Can anyone motivate me or correct me? :-)
Hopefully that helps! If you need any help doing it, I'll be happy to 
oblige, assuming there are no real objections to the GPL upgrade.

Usual disclaimer... IANAL.


More information about the ccache mailing list