Linker une lib en GPL dans du code BSD ?

GPL vs BSDLa semaine dernière j'ai reçu un mail d'un des développeur de kannel, la gateway WAP open source. En gros, il voulait savoir s'il y avait moyen que kannel utilise ma libwbxml pour générer du provisioning.

Bon, autant vous dire que recevoir ce mail fut pour moi un peu émotionant, tout de même. Pourquoi ? Parceque j'ai en quelques sorte appris à développer grâce à kannel. En fait, j'ai commencé à travailler début 2000, et mon premier projet (le deuxième en fait, mais j'ai vite oublié le premier, arf) fut d'analyser cette gateway WAP, de la porter sous windows, puis de faire du développement dessus. J'ai donc passé pas mal de temps le nez dans son code, et j'y ai appris énormément.

Bref, kannel est mon ami.

Mais le problème, c'est que kannel est sous license BSD... et bien sûr la libwbxml est sous license GPL.

J'avoue que là, je n'étais pas très sûr de la possibilité de mélanger une lib sous GPL avec du code sous BSD. J'ai donc fais ma petite recherche, et voici ma conclusion:

  • Il y a deux versions de la license BSD, l'originale qui contient la "obnoxious BSD advertising clause", et la modifiée qui ne la contient pas.
  • Il est possible qu'un projet sous license BSD modifiée link avec une lib sous license GPL, sans obligation pour le projet BSD de passer son code source en GPL. Par contre l'exécutable résultant doit être sous license GPL (1).
  • Un projet sous license BSD originale ne peut pas linker avec une lib sous license GPL.

Bon, donc c'est quoi donc cette "obnoxious BSD advertising clause" qui gène la GPL (2) ? C'est simplement cette phrase : "All advertising materials mentioning features or use of this software must display the following acknowledgement: This product includes software developed by the University of California, Berkeley and its contributors.". Cette simple phrase provoque un conflit avec la notion de copyleft de la GPL, et PATATRA ! C'est le drame.

Sachant que la license de kannel contient cette maudite phrase, eh bien çà va pas être possible. A moins que je remette la libwbxml en LGPL, mais j'avoue que je n'ai pas franchement envie de faire ce retour en arrière.

Voilà voilà, c'est tout ce que j'avais à dire sur ce sujet ;)

(1) http://linuxgazette.net/issue38/kidd.html#free-software

(2) http://www.gnu.org/philosophy/bsd.html

rien ne t'interdit de mettre

rien ne t'interdit de mettre une autorisation exceptionnelle, non ?

Submitted by Hoa (not verified) on Thu, 28/04/2005 - 23:05.
Oui j'y ai pensé... mais je

Oui j'y ai pensé... mais je vois pas comment faire.

Kannel est sous BSD donc, et je sais qu'il y a (avait ?) plusieurs boites qui l'intégrent dans leur produit commercial.

Si je donne une autorisation à Kannel de linker avec la libwbxml, qu'est ce que çà signifie exactement ? Est-ce que du coup tout projet lié à Kannel peut également linker avec la libwbxml ?

Bon, je pourrais mettre une clause de restriction pour les gens qui intègrent kannel dans un produit commercial, mais j'ai peur que çà devienne compliqué à gérer pour les gens de kannel.

Je sais pas, faut que j'y réfléchisse et que j'en discute avec les développeurs de kannel.

Submitted by Aymerick (not verified) on Thu, 12/05/2005 - 08:52.