License compatibility is an issue that arises when licenses applied to copyrighted works, particularly licenses of software packages, can contain contradictory requirements, rendering it impossible to combine source code or content from such works in order to create new ones.
Suppose a software package has a license that says, "modified versions must mention the developers in any advertising materials," and another package's license says "modified versions cannot contain additional attribution requirements." Without direct permission from the copyright holder(s) for at least one of the two packages, it would be impossible to legally distribute a combination of the two because these specific license requirements cannot be simultaneously fulfilled. Thus, these two packages would be license-incompatible.
Not even open-source licenses are necessarily compatible, which can make it legally impossible to mix (or link) even open-source code if the components are released under different licenses. For example, software that combined code released under version 1.1 of the Mozilla Public License (MPL) with code under the GNU General Public License (GPL) could not be distributed without violating one of the licenses' terms by default. This is despite both licenses being approved by the Open Source Initiative and Free Software Foundation.
David A. Wheeler has argued that GPL compatibility is an important feature of software licenses. Many of the most common free software licenses, such as the original MIT/X license, BSD licenses (in the three-clause and two-clause forms, though not the original four-clause form), MPL 2.0, and LGPL, are "GPL-compatible". That is, their code can be combined with a program under the GPL without conflict (the new combination would have the GPL applied to the whole). When it comes to copyleft software licenses, they are not inherently GPL-compatible, even the GPLv2 is, by itself, not compatible with GPLv3. However, most software released under GPLv2 allows you to use the terms of later versions of the GPL as well but some have exception clauses that allow combining them with software that is under different licenses or license versions.
- List of FSF approved software licenses
- License proliferation
- Backward compatibility
- Forward compatibility
- "How GPLv3 tackles license proliferation<!-- Bot generated title -->". Archived from the original on 2007-12-18.
- "Stallman explains license compatibility while discussing GPLv3".
- "MPL 1.1 FAQ - Historical Use Only". Mozilla Foundation. 1 February 2012. Retrieved 26 February 2012.
- "Mozilla Public License 1.1: Licensing". Open Source Initiative. Retrieved 26 February 2012.
- "GPL-Incompatible Free Software Licenses". Free Software Foundation. 22 February 2012. Retrieved 26 February 2012.
- "Frequently Asked Questions about the GNU Licenses – Is GPLv3 compatible with GPLv2?". gnu.org. Retrieved 2014-06-03.
No. Some of the requirements in GPLv3, such as the requirement to provide Installation Information, do not exist in GPLv2. As a result, the licenses are not compatible: if you tried to combine code released under both these licenses, you would violate section 6 of GPLv2. However, if code is released under GPL “version 2 or later,” that is compatible with GPLv3 because GPLv3 is one of the options it permits.
- Landley, Rob. "CELF 2013 Toybox talk - http://landley.net/talks/celf-2013.txt". landley.net. Retrieved 2013-08-21.
GPLv3 broke "the" GPL into incompatible forks that can't share code.
- "GPL-Compatible Free Software Licenses". 2014-11-20. Retrieved 2014-12-29.