Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Why was section 1 added to LGPLv3? My understanding of section 3&4 is, one can convey the combined work under any license and with no requirements from GPLv3 (besides those explicitly stated as requirements in LGPLv3 3&4). Given that, why is section 1 necessary. Wouldn't that sections 3&4 by themselves already imply anyhow what section 1 explicitly states?

I assume that I'm missing something and section 1 isn't redundant. Assuming that, does this have implications for other sections in GPLv3? E.g. does conveying a covered work under sections 3&4 fall under the patent clause of section 10 of GPLv3? Why does section 1 not also state an exception for section 10?

Put another way. Is the Eigen FAQ correct by stating:

LGPL requires [for header only libraries] pretty much the same as the 2-clause BSD license.

It it true that for conveying object files including material from LGPLv3 headers no GPLv3 patent clauses apply?

share|improve this question
2  
Some answers to 'why?' questions can be found in the GPLv3 FAQ (gnu.org/licenses/gpl-faq.html). There may also be some illuminating information in the notes at gplv3.fsf.org/discussion-committees/D –  James Youngman May 30 '12 at 23:57
add comment

1 Answer

Here's why. It's due to the opening of the LGPL v3.

This version of the GNU Lesser General Public License incorporates the terms and conditions of version 3 of the GNU General Public License, supplemented by the additional permissions listed below.

As an answer, that's admittedly a little opaque. But when we look at Section 1 of the LGPL v3 again, it starts to be a little more clear.

1. Exception to Section 3 of the GNU GPL.

You may convey a covered work under sections 3 and 4 of this License without being 
bound by section 3 of the GNU GPL.

The opening of the LGPL v3 incorporates all of GPL v3 into itself. But that creates a problem since Section 3 of the GPL v3: When you convey a covered work, you waive any legal power to forbid circumvention of technological measures ... may run counter to your intent with using the LGPL.

Section 1 of the LGPL v3.0 was put in there to bypass that particular restriction. LGPL v3 Section 4 discusses reverse engineering for debugging purposes, but GPL v3 Section 3 is much broader in its context. LGPL v3 Sections 3 & 4 do not create the same restrictions, so they are not equivalent to Section 3 of GPL v3.

Regarding the patent clauses (Sections 10 & 11 of GPL v3): They are in full effect for LGPL v3 and the LGPL V3 Section 1 exception does not apply to them. Conveying a work through LGPL v3 Sections 3 & 4 has no bearing upon the restrictions created from GPL v3 Sections 10 & 11.

LGPL incorporates the GPL in order to simplify maintaining the licenses. I can't answer for certain why there isn't an exception clause similar to LGPL v3 Section 1. However, since the FSF opposes software patents, I can't see them providing an exception to the automatic patent licensing that GPL v3 Section 10 provides. They want less patents and entanglements, not more.

This answer from SO tipped me off to the major differences between LGPL v2.1 and v3.0

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.