WTL (Windows Template Library)を使用したプロジェクトをGPLで公開できるだろうか、と考えて調べてみた。
Google日本で検索してみたら、なにやら屈折した自意識の裏返しのような否定的だったり攻撃的だったりする情報ばかりが引っかかってきてへこみそうです。Google日本は日本語のページに対する重み付けがあまりに高く、欲しい情報が見つからないケースが多々見られる。これじゃまるでオープンソースに対する攻撃ツールだよ。
最近知ったのだが、次のアドレスで英語検索が出来る。
http://www.google.com/intl/en/
次のページを見つけた。
Can Microsoft MFC be used in gpl project?
これによれば、MFCを使ったプロジェクトをGPLで公開することは許されるとのことだが。WTLはどうだろう。
What legal issues come up if I use GPL-incompatible libraries with GPL software? - GPL FAQ
FSFによるFAQでは、「システム・ライブラリー」ならば何も特別なことをせずに使用できる、ということになる。「システム・ライブラリー」の定義はGPLv2とGPLv3で違います。GPLv3の日本語訳って無いんだよねー。関係するところを訳してみた。自信はないが何事も自分でやれるだけやってみるしかないのである。
http://www.gnu.org/licenses/gpl.html の 1. Source Code. より:
A “Standard Interface” means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language.
「標準インターフェース」とは、公認された標準化団体により定義された公式標準か、特定のプログラム言語用に記述されたインターフェースの場合はその言語で作業する開発者の間で広く使われているもの、を意味します。
The “System Libraries” of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A “Major Component”, in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it.
実行形式作品の「システム・ライブラリー」とは、全体としての作品を除き、 (a) 主要コンポーネントの通常形式のパッケージに含まれるが、その主要コンポーネントの一部ではないもの、(b) 作品をその主要コンポーネントと共に利用することを可能にするためだけか、または、実装が公にソース・コード形式で入手できる標準インターフェースを実装するためだけの役割を果たすもの、のすべてを含みます。 この文脈における「主要コンポーネント」とは、実行形式が走る特定のオペレーティング・システム(もしあれば)の主要な必須コンポーネント(カーネル、ウィンドウ・システム、等)、または作業に使用するコンパイラー、または実行に使用する目的コードのインタープリターのことです。
WTLはGPLv3の定義するシステム・ライブラリーに含まれそうですね。GPLv2の定義するシステム・ライブラリーには含まれなさそうなので、GPLv2で公開するときには、例外条項を付加する必要がありそうです。