在实践中,如何结合使用GPL和BSD许可代码来管理许可文件?


10

我正在编写的代码使用一个具有GPL(不是LGPL)许可的库,以及一个具有3条款BSD许可的库。由于我链接到GPL许可的库,因此我的代码也必须是GPL。实际上,我应该如何处理BSD库中的原始LICENSE.txt?

(A)是否可以分发项目,以便主要源代码获得GPL许可,然后某个子目录获得BSD许可?

(B)如果我不仅要链接到库,而且要以更复杂的方式使用和组合BSD和GPL代码,那么对LICENSE.txt怎么办?

BSD的三节文字说:“源代码的重新分发必须保留上述版权声明,此条件列表和以下免责声明。” 因此,显然我应该在某处保留版权声明和该条件列表。但随后,我还需要将GPL许可证txt文件放在某个地方。

此外,显然,我不需要保留“只要满足以下条件,即允许以原始形式和二进制形式进行重新分发和使用,无论是否经过修改,都允许:” BSD许可文本的一部分,因为它只告诉我保留其他部分。

那么,在实践中,我应该如何以及在哪些文本文件中组织GPL许可证文本以及所保留的BSD许可证和版权的一部分?

编辑:因此,在情况B中,我将采用3条款BSD许可的代码,并根据允许的GPL重新分发它,因为3条款BSD许可与GPL(单向)兼容。我只是问在实践中如何处理许可证文本和文本文件。


这是一个坏主意。一个简单的网络搜索将告诉您原因。但是整个产品变成了GPL。以前有问题。
Andrew T Finnell

2
@Andrew Finnell:为什么这个主意不好?整个产品都是GPL,因为组件是GPL,但是这有什么问题呢?BSD许可的库仍是BSD许可的。人们不使用BSD许可证,除非他们希望自己的东西可供想要使用限制性更强的许可证的人使用。
David Thornley 2012年

Answers:


1

为简单起见,最好在GPL下发布全部内容。3条款BSD许可证没有任何形式的版权保留,因此只要您保留其声明,就可以重新命名。

您将得到两种文件:

  • 最初是BSD文件:需要同时包含两个标头,顺序对我而言并不重要,只是它们在那里
  • 您的文件和原始GPL文件:需要具有GPL标头

当然,对于任何二进制发行版,您都需要包括指向源的链接以及两个标头的形式。我建议使用标准GPL,然后是“该程序的某些部分最初是按照以下许可发布的”或类似的内容,如果您愿意,您可能会发现这种情况的例子。

请注意,我不是律师,也不擅长开放源代码许可或一般许可。我只是在传达我对给定许可组合的理解。


1

好的,阅读GPLv3的第7节,确实允许“ [仅适用于本程序一部分的附加许可” [1]。因此,将某些文件或目录保留在BSD许可下似乎没问题,因为我猜想BSD许可的“随心所欲”是“附加许可”。

另外,第7节允许“用以下条款补充本许可证的条款”(以下是允许的条款的6点列表),并且涵盖了BSD许可证的所有3个条款(加上免责声明),因此在单个文件中混合BSD和GPL代码的问题,也许我只需要将ADDITIONAL_TERMS.txt放在某个位置,其中包含BSD许可证的3个子句和免责声明。

(更确切地说,我一直在谈论BSD许可证,我指的是我在问题中链接到的3条款许可证AKA“新BSD许可证” AKA“修改的BSD许可证”。)

[1]只要该程序的接收者进一步分发,就可以删除其他权限。而BSD许可证允许这样做。


-1

根据许可条款的多种解释,这根本不可能。

gnu.org表示版本2:

因为它强加了GPL中没有的特定要求;即对节目广告的要求。GPL指出:

您不得对接收者行使此处授予的权利施加任何进一步的限制。

广告条款提供了进一步的限制,因此与GPL不兼容。

修订后的BSD许可证没有广告条款,从而消除了该问题。

对于GPL v3

为什么原始的BSD许可证与GPL不兼容?(#OrigBSD)

因为它强加了GPL中没有的特定要求;即对节目广告的要求。GPLv2第6节规定:

您不得对接收者行使此处授予的权利施加任何进一步的限制。

GPLv3在第10节中说了类似的内容。advertising子句提供了进一步的限制,因此与GPL不兼容。

修订后的BSD许可证没有广告条款,从而消除了该问题。

当然,其他律师/法官可能会有不同的意见。


1
您确定不是在谈论4条款BSD许可证吗?“未经明确的事先书面许可,<组织>的名称或其贡献者的名称均不得用于认可或促销从该软件衍生的产品。” 并不以任何形式或形式指代广告,实际上与组织的商标有关,而不与源代码的版权有关。
Guvante

1
确实!我再次对不同的版本感到困惑!
johannes 2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.