web-dev-qa-db-ja.com

GPLとBSDライセンスコードを組み合わせるときに、実際にライセンスファイルを管理する方法は?

私は、GPL(LGPLではない)ライセンスを持つ1つのライブラリと、 3条項BSDライセンス を持つライブラリを使用するコードを書いています。私はGPLライセンスのライブラリにリンクしているので、私のコードもGPLである必要があります。実際には、BSDライブラリの元のLICENSE.txtをどのように扱うべきですか?

(A)メインのソースコードがGPLライセンスで、サブディレクトリがBSDライセンスになるようにプロジェクトを配布できますか?

(B)ライブラリにリンクするだけでなく、BSDおよびGPLコードをより複雑な方法で使用および結合する場合、LICENSE.txtをどうすればよいですか?

3節のBSDテキストは、「ソースコードの再配布では、上記の著作権表示、この条件のリスト、および次の免責事項を保持する必要があります。」どうやら私は著作権表示とその条件のリストをどこかに保持する必要があります。ただし、GPLライセンスのtxtファイルをどこかに置く必要もあります。

さらに、明らかに、「次の条件が満たされていれば、変更の有無にかかわらず、ソースおよびバイナリ形式での再配布および使用が許可されています:」BSDライセンステキストの一部を保持する必要はありません。他の部品はそのままにしておきます。

では、どのように、そしてどのテキストファイルで、GPLライセンステキストと、BSDライセンスの一部および私が保持する著作権を実際に整理する必要がありますか?

編集:したがって、ケースBでは、3条項のBSDライセンスコードを取得し、GPLの下で再配布します。これは、3条項のBSDライセンスが(一方向) 互換であるため許可されます。 GPL 。ライセンステキストとテキストファイルを実際に処理する方法を尋ねています。

10
Sampo Smolander

さて、 GPLv3のセクション7 を読んで、「プログラムの一部にのみ適用される追加のパーミッション」[1]は許可されます。したがって、BSDライセンスの下にあるファイルまたはディレクトリの一部を保持することは問題ないようです。BSDライセンスの「何でもやりたいこと」は「追加の許可」だと思うからです。

また、セクション7では、「このライセンスの条件を条件で補足する」(許可される種類の条件の6ポイントリストが続きます)ことができ、BSDライセンスの3つの条項すべて(および免責事項)がカバーされているため、 BSDコードとGPLコードを1つのファイルに混在させる場合、おそらく、ADDITIONAL_TERMS.txtをどこかに入れて、BSDライセンスの3つの条項と免責事項を含める必要があります。

(正確に言うと、私がBSDライセンスについて話している間、私は3節のライセンスAKA "新しいBSDライセンス" AKA "修正BSDライセンス"を意味しました。これは、私の質問でリンクしました。)

[1]プログラムの受信者がさらに再配布した場合、追加の権限を削除することが許可される限り。そしてBSDライセンスはこれを可能にします。

1
Sampo Smolander

簡単にするために、おそらくすべてをGPLでリリースするのが最善です。 3節のBSDライセンスにはコピーレフトの形式がないため、通知を維持している限り、ブランドを変更する権利は十分にあります。

あなたは2種類のファイルになるでしょう:

  • もともとはBSDファイル:両方のヘッダーが必要で、順序は私の知る限り重要ではありません。
  • ファイルと元々GPLファイル:GPLヘッダーが必要

もちろん、どのバイナリリリースでも、ソースへのリンクと両方のヘッダーを別の形式で含める必要があります。私は標準のGPLを推奨し、「このプログラムの一部はもともと次のライセンスの下でリリースされました」などのようなものを探します。探すと、実際に起こっている例を見つけることができます。

私は弁護士ではなく、オープンソースのライセンスや一般的なライセンスの専門家でもありません。私は、与えられたライセンスの組み合わせの私の解釈がどのようになるかを単に中継しています。

1
Guvante