GPL linking exception
Una GPL linking exception modifica la GNU General Public License (GPL) per creare un nuova licenza modificata. Queste licenze modificate permettono ai progetti software di fornire delle librerie, come software disegnato per essere utilizzato (in linguaggio tecnico, 'linked to' - 'collegato a') ad altro software, per distribuire il codice della libreria stessa sotto condizioni essenzialmente identiche a quelle della GPL senza obbligare gli altri a distribuire codice che utilizza e basta, ma che invece integra, assieme al proprio e in questo modo non si è obbligati a licenziare il nuovo codice con la stessa licenza delle librerie di base.
Molte librerie di software libero che sono distribuite sotto la GPL utilizzano un'eccezione equivalente, sebbene la formulazione dell'eccezione vari. Programmi noti come GNU Guile,[1] le librerie run-time di GNAT,[1] e GNU Classpath[2].
Le librerie runtime dei compilatori usano spesso questa licenza, per esempio la libreria libgcc nella GNU Compiler Collection utilizza una eccezione molto simile,[3] come anche le librerie del progetto Free Pascal.
Nel 2007, la Sun Microsystems ha rilasciato gran parte del codice delle librerie di classe dei progetti Java Standard Edition e Java Platform, Enterprise Edition sotto la seconda versione della licenza GPL più la Classpath linking exception[4], ed utilizzò la stessa licenza come una delle licenza possibili per il loro server per le aziende GlassFish[5]. e per la loro IDE NetBeans per Java .[6]
Anche la versione 3 della LGPL[7] è realizzata come un'eccezione della GPL.[8]
La Classpath Exception
Il progetto GNU Classpath fornisce un esempio di utilizzo della GPL linking exception. La libreria GNU Classpath utilizza la seguente licenza:
- Classpath is distributed under the terms of the GNU General Public License with the following clarification and special exception.
- Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination.
- As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obliged to do so. If you do not wish to do so, delete this exception statement from your version.
- As such, it can be used to run, create and distribute a large class of applications and applets. When GNU Classpath is used unmodified as the core class library for a virtual machine, compiler for the java languge, or for a program written in the java programming language it does not affect the licensing for distributing those programs directly.[2]
- ^ a b Stallman, Richard. Varie Licenze e Commenti su queste. Free Software Foundation. Pubblicato il 17-05-2007.
- ^ a b Classpath::License. Free Software Foundation. 23-04-2007
- ^ Testo della licenza GCC nei repository del codice Savannah. 25-09-2007
- ^ Open-Source Java Project Overview, su sun.com, Sun Microsystems. URL consultato il 22 maggio 2007.
- ^ La Licenza Glassfish. 25-03-2008.
- ^ La licenza di Netbeans. 27-03-2008.
- ^ GNU Lesser General Public License, Version 3. 29-06-2007.
- ^ Guide to the second draft of LGPLv3. 03-04-2007