La Licence LGPL

1. Description

Créé par la Free Software Fondation sous le nom de Library General Public Licence, le "contrat de mise à disposition" LGPL fut renommé Lesser GPL (une GPL "amoindrie") afin d'expliciter le fait qu'il est moins restrictif que la GPL (ce qui peut avoir des avantages et des inconvénients, comme nous le verrons).

  • Version actuelle de la licence : 2.1

  • Exemples de procès aboutis ou en cours concernant des violations de la licence LGPL: %BR% Nous n'avons pas trouvé de jurisprudence concernant des éventuelles violations de la LGPL. Ceci peut s'expliquer par le fait qu'elle est bien moins restrictive que la GPL. Néanmoins, certains points peuvent prêter à confusion (cf exception article 5), et laissent entrevoir de futurs procès...

2. Compatibilité avec le Free Software et l'Open Source

  • La LGPL est libre selon les termes de la Free Software Foundation : http://www.fsf.org/licensing/licenses/index_html#GPLCompatibleLicences. Effectivement, cette licence fut créée par cette fondation. Et elle respecte notamment les quatre principes fondamentaux du "logiciel libre" : Droits d'exécution, d'accès au code source, de redistribution et de modification. %BR% %BR% Néanmoins, la FSF, par la voix de Richard Stallman (http://www.gnu.org/licenses/why-not-lgpl.fr.html) met en garde les développeurs contre la plus faible protection de leurs droits, face aux logiciels propriétaires, par rapport à la GPL. (Il encourage à distribuer les biblothèques "innovantes" sous licence GPL, afin de restreindre leur utilisation aux seuls logiciels libres.)

3 . Propriétés

  • La LGPL est (évidemment) GPL compatible, et de nombreux logiciels sous licence GPL, utilisent la licence LGPL pour leurs bibilothèques. De plus, un "travail fondé sur une bibliothèque LGPL" peut être distribué sous licence GPL (article 3), afin de restreindre son utilisation. Ce changement est par contre irréversible.

  • Il est à noter que la licence LGPL ne donne aucune garantie à l'utilisateur (à l'instar de la GPL), mais autorise le diffuseur à proposer à l'utilisateur, un service de garantie et/ou de support moyennant finances.

4 . Conditions de Rediffusion

Notons tout d'abord la différence entre un "travail fondé sur un programme LGPL", un "travail utilisant un programme LGPL", et un "travail combiné à un programme LGPL".

  • a : "travail fondé sur un programme LGPL" %BR% %BR% Par ce terme, les auteurs de la licence, désignent un travail ayant pour base un programme LGPL. Après modifications et éventuelles améliorations, le programme résultant ne pourra être redistribué qu'aux conditions suivantes, selon l'article 2 : %BR% %BR%
    • il doit lui même être une bibliothèque logicielle. %BR% Ce point a été conservé dans la version 2 ("Lesser") de la LGPL, et, à priori, exclut le cas a pour des objets autres que des bibliothèques logicielles (à moins de les passer en GPL). %BR% %BR%
    • il doit être diffusé sans frais (autre que les frais de copie et de transfert) et sous licence LGPL (le code-source doit notamment être mis à disposition) %BR% %BR%
    • il doit conserver l'indépendance (vis à vis d'autres applications) des fonctionnalités du programme initial %BR% %BR%
    • toutes les modifications apportées au code source initial doivent être détaillées et datées

  • b : "travail utilisant un programme LGPL" %BR% %BR% Un logiciel tiers peut "utiliser" une bibliothèque LGPL, sans restriction sur la licence le concernant, s'il est diffusé de manière indépendante à la bibliothèque. Ce serait le cas, par exemple, d'un logiciel ne faisant appel au programme LGPL qu'à l'exécution. Il peut, en particulier, être un logiciel propriétaire.

  • c : "travail combiné à un programme LGPL" %BR% %BR% (Note : ce terme n'est pas défini explicitement par la licence, mais constituant un troisième cas, distinct des deux autres, nous avons trouvé judicieux de lui donner un nom différent) %BR% %BR% Si un "travail utilisant un programme LGPL" est diffusé avec le programme LGPL lui-même, l'ensemble est considéré comme un "travail combiné à un programme LGPL" et ses restrictions d'utilisation et de diffusion sont données par l'article 6 : %BR% l'utilisateur doit (au minimum) avoir accès au code source de la partie LGPL, et doit pouvoir remplacer cette partie par des versions ultérieures. %BR% %BR% Il y a alors obligation, pour le diffuseur du logiciel tiers de fournir le code objet, afin d'assurer la compatibilité avec les versions suivantes de la partie LGPL. %BR% %BR% Cette obligation est assez restrictive et peut poser certains problèmes. On retiendra l'exemple d'OCaml (http://caml.inria.fr/), langage fonctionnel, dont deux fichiers objets compilés par deux compilateurs différents, ne sont pas compatibles, pour des raisons de sûreté de typage. Dans ce cas, la LGPL devient donc presque aussi contraignante que la GPL.

  • d : Exception %BR% %BR% Si le "travail combiné à un programme LGPL" ne contient pas le programme LGPL lui-même, mais seulement "certaines petites" parties (obtenues lors de la compilation), il relève alors du cas b et peut être diffusé sans restriction. Tout est dans le "certaines petites"... Les limites de taille ou de nature ne sont pas clairement explicitées (cf article 5), et il n'existe malheureusement pas, à notre connaissance, de jurisprudence en la matière, à ce jour.

5. Variantes

  • Variante pour OCaml : http://cristal.inria.fr/~simonet/soft/flowcaml/LICENSE.%BR% Afin d'éviter les problèmes vu en c , l'INRIA a décidé de diffuser les librairies d'Ocaml sous une licence LGPL modifiée : elle permet d'éviter les contraintes de l'article 6 dans le cas d'un travail combiné, avec une condition supplémentaire : %BR% %BR%
    • soit ne pas modifier la bibliothèque %BR% %BR%
    • soit que la licence devienne une GPL (correspond à l'article 3)

%BR%