Re: CDDL/GPL and Nexenta (with CDDL libc)
- To: firstname.lastname@example.org
- Subject: Re: CDDL/GPL and Nexenta (with CDDL libc)
- From: Florian Weimer <email@example.com>
- Date: Sun, 01 May 2011 17:46:07 +0200
- Message-id: <[🔎] firstname.lastname@example.org>
- In-reply-to: <20101008024210.GO3816@rzlab.ucr.edu> (Don Armstrong's message of "Thu, 7 Oct 2010 19:42:10 -0700")
- References: <AANLkTi=SE93fTncDpnmqmM0Mfm_AGu+-eSdfjrZ0Siaq@mail.gmail.com> <20100809180225.GS31014@rzlab.ucr.edu> <AANLkTi=1G1STbfW_ziEuMpDySHOg8PLpQigBskj81_email@example.com> <20100812232136.GU31014@rzlab.ucr.edu> <20100902224530.GM22469@rzlab.ucr.edu> <firstname.lastname@example.org> <20100924001854.GK6180@teltox.donarmstrong.com> <email@example.com> <20101008024210.GO3816@rzlab.ucr.edu>
* Don Armstrong:
> You're conflating GPLv2 with v3. They are very different with regards
> to the System Library exception, as I explained in my original
> message. Please consider rereading it and pointing out precisely where
> I have misread the license along with supporting quotations from the
> licence itself if you feel that I am misrepresenting the ramifications
> of GPLv3'd works in regards to the System Library exception when
> linking to a CDDL'ed libc.
Okay, let's review this paragraph:
| The "System Libraries" of an executable work include anything, other
| than the work as a whole, that (a) is included in the normal form of
| packaging a Major Component, but which is not part of that Major
| Component, and (b) serves only to enable use of the work with that
| Major Component, or to implement a Standard Interface for which an
| implementation is available to the public in source code form. A
| "Major Component", in this context, means a major essential component
| (kernel, window system, and so on) of the specific operating system
| (if any) on which the executable work runs, or a compiler used to
| produce the work, or an object code interpreter used to run it.
libc is part of the Debian base system, which is a Major Component.
libc is normally included in the base system. It is a required part
of the base system. So case (a) does not apply.
I would agree that the language in draft 2 of GPL version 3 would have
covered a CDDL libc. But that language was deemed unacceptable
because it would have included OpenSSL, too. So it has to be changed.
Whether the changes where done in such a way to exclude a CDDL libc,
too, I don't know. The FSF FAQ does not shed light on this issue,
There's another problem: the System Libraries clause only waives the
need to provide source code. The requirement to license a modified
work (including its source code), as a whole, under the GPL remains in
effect. Now the CDDL requires that "the license for the Executable
form does not attempt to limit or alter the recipient’s rights in the
Source Code form from the rights set forth in this License", and it is
quite difficult to tell if a GPL/CDDL agglomerate isn't trying to do
precisely that (due to the patent-related provisions in the GPL).