GPL linking exception

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

GPL linking exception (linkovací výjimka GPL) vytváří novou licenci modifikací licence GNU General Public License (GPL). Tato modifikovaná licence umožňuje softwarovým projektům, které poskytují „knihovní“ kód, tedy kód navržený k použití (technicky řečeno „linkování“, česky též „sestavování“) jiným softwarem, distribuovat kód samotné knihovny pod podmínkami v zásadě identickými s GPL bez toho, aby lidé, kteří tento kód pouze používají (ale nikoli integrují), byli nuceni uplatnit podmínky GPL na svůj vlastní kód.

Mnoho knihoven svobodného softwaru, které jsou šířeny pod GPL, používá takovou výjimku, ač se přesné pojmenování liší. Lze zmínit například GNU Guile, runtime knihovny GNAT, a GNU Classpath.

Též runtime knihovny kompilátoru používají často tuto licenci, např. knihovna libgcc v GNU Compiler Collection používá velmi podobnou linkovací výjimku, stejně tak všechny knihovny projektu Free Pascal.

V roce 2007 uvolnila firma Sun Microsystems většinu kódu knihoven projektů Java Standard Edition a Java Platform, Enterprise Edition pod licencí GPL verze 2 s linkovací výjimkou Classpath a používá tak tutéž licenci, jako je jedna z možných licencí pro enterprise server GlassFish a pro NetBeans Java IDE.

Verze 3 licence LGPL je konstruována obdobně jako výjimka ke GPL.

Výjimka Classpath

Projekt GNU Classpath poskytuje příklad použití výjimky typu GPL linking exception. Knihovna GNU Classpath používá následující licenci:

:Knihovna Classpath je šířena podle podmínek GNU General Public License s následujícím objasněním a zvláštní výjimkou.

:Linkování této knihovny staticky nebo dynamicky s jinými moduly je vytvořením kombinovaného díla založeného na této knihovně. Proto se podmínky GNU General Public License vztahují na celou kombinaci.

:Jako zvláštní výjimku, vám držitelé autorských práv k této knihovně dávají povolení linkovat tuto knihovnu s nezávislými moduly do spustitelného programu, bez ohledu na licenční podmínky těchto nezávislých modulů, a kopírovat a šířit výsledný spustitelný program pod podmínkami, jaké si zvolíte, za předpokladu, že pro každý z linkovaných nezávislých modulů splníte též licenční podmínky těchto modulů. Nezávislý modul je takový modul, který není odvozen od této knihovny ani na ní založen. +more Změníte-li tuto knihovnu, můžete výjimku rozšířit i na vaši verzi knihovny, ale nemáte povinnost tak učinit. Pokud si nepřejete výjimku využít, smažte text této výjimky z licence u vaší verze.

:Jako taková, může být použita ke spouštění, vytváření nebo distribuci velké třídy aplikací a appletů. Pokud se GNU Classpath použije bez modifikace jako základní knihovna tříd pro virtuální stroj, kompilátor pro jazyk Java nebo pro programy psané v programovacím jazyce Java, nemá přímé dopady na licencování pro šíření těchto programů.

Rozdíly oproti GNU Lesser General Public License

Licence používající GPL v kombinaci s GPL linking exception poskytují podmínky, které jsou podobné těm v licenci GNU Lesser General Public License (LGPL).

Jedním rozdílem mezi těmito dvěma cestami je to, že LGPL omezuje, byť nejvýše v malé míře, podmínky licence, kterou lze použít pro dílo zahrnující knihovnu licencovanou pod LGPL. V sekci 6 licence LGPL říká:

:Jako výjimku z výše uvedených sekcí, můžete také kombinovat nebo linkovat „dílo, které používá tuto knihovnu“ s knihovnou k vytvoření díla obsahujícího části knihovny a šířit takové dílo pod podmínkami, jaké si zvolíte, za předpokladu, že podmínky povolují modifikaci díla pro uživatelovu vlastní potřebu a reverzní inženýrství pro ladění takových modifikací.

Toto omezení vyžaduje, aby softwarové projekty, které integrují kód knihovny licencované pod LGPL, zajišťovaly, že licence pokrývající kombinované dílo taková povolení zajistí. Takový požadavek může být obtížné splnit, například pokud je kód šířen jako statický linkovaný software v embedded zařízení.

Druhým rozdílem mezi licencemi je množství textu, kterého se týká: licence založené na GPL s linkovací výjimkou vezmou dobře známý text GPL a přidávají do něj malou modifikaci, kdežto LGPLv3 přidává mnohem více podmínek. LGPL verze 2. +more1 nebyla vůbec založena na GPL, nýbrž byla úplně odlišnou licencí. V určitých situacích může mít tento rozdíl dopady na množství právní revize potřebné pro skupinu, která si vybírá jednu cestu oproti jiné.

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top