GNU Lesser General Public License: Difference between revisions
Jump to navigation
Jump to search
imported>Ymblanter |
imported>DavidCary Clarify what specific sentence this citation supports. (this citation never mentions "LLGPL"). |
||
| Line 33: | Line 33: | ||
==Compatibility== | ==Compatibility== | ||
One feature of the LGPL is the permission to sublicense<ref>{{cite web |title=sublicense |url=https://en.wiktionary.org/wiki/sublicense |website=Wiktionary |language=en |date=7 December 2020}}</ref> under the GPL any piece of software which is received under the LGPL (see section 3 of the LGPL version 2.1, and section 2 option b of the LGPL version 3). This feature allows for direct reuse of LGPLed code in GPLed libraries and applications. | Free Software Foundation's [https://www.gnu.org/licenses/license-list.html Software Licenses list] explains the compatibility with many open source licenses. | ||
===GPL=== | |||
One feature of the LGPL is the permission to sublicense<ref>{{cite web |title=sublicense |url=https://en.wiktionary.org/wiki/sublicense |website=Wiktionary |language=en |date=7 December 2020}}</ref> under the GPL any piece of software which is received under the LGPL (see section 3 of the LGPL version 2.1, and section 2 option b of the LGPL version 3). This feature allows for direct reuse of LGPLed code in GPLed libraries and applications.<ref name="LGPL_FSF_MATRIX" /> | |||
Version 3 of the LGPL is not inherently compatible with version 2 of the GPL. However, works using the latter that have given permission to use a later version of the GPL are compatible:<ref name="LGPL_FSF">[https://www.gnu.org/licenses/license-list.html#LGPL GNU Lesser General Public License (LGPL) version 3]. [[Free Software Foundation]] official website.</ref> a work released under the GPLv2 "or any later version" may be combined with code from a LGPL version 3 library, with the combined work as a whole falling under the terms of the GPLv3.<ref name="LGPL_FSF_MATRIX">[https://www.gnu.org/licenses/gpl-faq.html#gpl-compat-matrix Frequently Asked Questions about the GNU Licenses - GNU Project - Free Software Foundation]. [[Free Software Foundation]] official website.</ref> | Version 3 of the LGPL is not inherently compatible with version 2 of the GPL. However, works using the latter that have given permission to use a later version of the GPL are compatible:<ref name="LGPL_FSF">[https://www.gnu.org/licenses/license-list.html#LGPL GNU Lesser General Public License (LGPL) version 3]. [[Free Software Foundation]] official website.</ref> a work released under the GPLv2 "or any later version" may be combined with code from a LGPL version 3 library, with the combined work as a whole falling under the terms of the GPLv3.<ref name="LGPL_FSF_MATRIX">[https://www.gnu.org/licenses/gpl-faq.html#gpl-compat-matrix Frequently Asked Questions about the GNU Licenses - GNU Project - Free Software Foundation]. [[Free Software Foundation]] official website.</ref> | ||
===Expat/X11/MIT=== | |||
All LGPL versions are compatible with the [[MIT License|Expat license and the X11 license (MIT license)]] because all GPL versions are compatible<ref name="LGPL_Expat">[https://www.gnu.org/licenses/license-list.html#Expat]. [[Free Software Foundation]] official website.</ref><ref name="LGPL_X11">[https://www.gnu.org/licenses/license-list.html#X11License]. [[Free Software Foundation]] official website.</ref> and LGPL gives more rights than GPL. | |||
===Apache=== | |||
LGPL 3.0 is compatible with Apache License 2.0.<ref name="LGPL_Apache2">[https://www.gnu.org/licenses/license-list.html#apache2]. [[Free Software Foundation]] official website.</ref> | |||
LGPL 2.0 and LGPL 2.1 are incompatible with Apache License 2.0.<ref name="LGPL_Apache2"/> However, if the license condition is either LGPL-2.0-or-later or LGPL-2.1-or-later then LGPL 3.0 can be chosen to be compatible. | |||
All LGPL versions are incompatible with Apache License version 1.0 and 1.1.<ref name="LGPL_Apache1">[https://www.gnu.org/licenses/license-list.html#apache1]. [[Free Software Foundation]] official website.</ref><ref name="LGPL_Apache11">[https://www.gnu.org/licenses/license-list.html#apache1.1]. [[Free Software Foundation]] official website.</ref> | |||
==FSF recommendations on library licensing== | ==FSF recommendations on library licensing== | ||
The former name ''GNU Library General Public License'' gave some the impression that the FSF recommended that all software libraries should use the LGPL and programs should use the GPL. In 1999 essay ''Why you shouldn't use the Lesser GPL for your next library'' [[Richard Stallman]] explained that while the LGPL had not been [[deprecation|deprecated]], one should not necessarily use the LGPL for all libraries, as using GPL can give advantage to free-software developers.<ref name="not_use_LGPL" /> | The former name ''GNU Library General Public License'' gave some the impression that the FSF recommended that all software libraries should use the LGPL and programs should use the GPL. In the 1999 essay ''Why you shouldn't use the Lesser GPL for your next library'', [[Richard Stallman]] explained that while the LGPL had not been [[deprecation|deprecated]], one should not necessarily use the LGPL for all libraries, as using GPL can give advantage to free-software developers.<ref name="not_use_LGPL" /> | ||
==Programming language specifications== | ==Programming language specifications== | ||
The license uses terminology which is mainly intended for applications written in the [[C (programming language)|C programming language]] or its family. Franz Inc., the developers of [[Allegro Common Lisp]], published their own preamble to the license to clarify terminology in the [[Lisp (programming language)|Lisp]] context | The license uses terminology which is mainly intended for applications written in the [[C (programming language)|C programming language]] or its family. Franz Inc., the developers of [[Allegro Common Lisp]], published their own preamble to the license to clarify terminology in the [[Lisp (programming language)|Lisp]] context.<ref name="LGPL_preamble"> | ||
{{cite web | |||
|author = Franz Incorporated | |||
|date = 2000 | |||
|title = Preamble to the Gnu Lesser General Public License | |||
|url = http://opensource.franz.com/preamble.html | |||
|website = The Allegro Common Lisp Open Source Center | |||
|location = Berkeley, CA | |||
|publisher = | |||
|url-status = dead | |||
|archive-url = https://web.archive.org/web/20241223191336/http://opensource.franz.com/preamble.html | |||
|archive-date = 2024-12-23 | |||
}} | |||
</ref> | |||
The LGPL with this preamble is sometimes referred to as the LLGPL. | |||
In addition, [[Ada (programming language)|Ada]] has a special feature, [[wikibooks:Ada Programming/Generics|generics]], which may prompt the use of the [[GNAT Modified General Public License]] (GMGPL): it allows code to link against or instantiate GMGPL-covered units without the code itself becoming covered by the GPL. | In addition, [[Ada (programming language)|Ada]] has a special feature, [[wikibooks:Ada Programming/Generics|generics]], which may prompt the use of the [[GNAT Modified General Public License]] (GMGPL): it allows code to link against or instantiate GMGPL-covered units without the code itself becoming covered by the GPL. | ||