開発者自身が GPL 違反できるか
GPL というのがふと分からなくなって調べる。
- GPLは開発者が他の人のプログラムの利用や頒布、改変に関して示すライセンス
- (0からスクラッチしたプログラムで)開発者が自分のプログラムに対してGPL違反を犯すことはあり得えない
- GPL が適当された言語システムで作られたソフトウェアは GPL は適応されない。(入力/出力データは GPL ではない)
- GPL ソフトウェアに”リンク”して動くプログラムは GPL になる。しかし開発者が限定的に許可を与えれば GPL でなくてもよい。
一番最初の項目が分かっていなかった。 いままでは、GPL は成果物に対して与えられるもので、その開発者自身が GPL 違反を犯す(?)こともできると思っていた。
最後の項目は、MySQL + PHP で有名な話。 MySQL は GPL だが、PHP は PHPライセンス。 で、PHP には MySQL とインターフェース(リンク)する関数が備わっているため、PHP も 本来は GPL にしなければならないハズだったが、紆余曲折の話し合いのもと、MySQL から PHP に対して、限定的許可が出されたため、PHP は PHP ライセンスのままで大丈夫となった。
たとえば、MySQL が限定的許可を出さないで、PHP も GPL となった場合は、ユーザが作った “MySQL 関数を呼び出す PHPプログラム” も MySQL とリンクされたとみなされ、GPL となるわけだ。
プロダクトごしでライセンスの継承があるとなかなか難しい。