2016-06-26 16 views
1

私は現在、OpenGLゲーム開発チームの生活を楽にするためのC++ライブラリを開発中です。私は数学を扱うためにGLMを使用しています。オープンソースライブラリの編集

元のクリエイターに適切なクレジットを与え、ファイルにライセンス情報を残しておけば、私のライブラリで使用している名前空間に合わせてGLM名前空間の名前を変更できますか?これにより、複数の異なるライブラリ/ネームスペースをユーザーに公開することなく、ライブラリを最終的にはるかに使いやすくなります。

これが法的/倫理的でない場合は、名前空間にエイリアスを追加してエイリアスのみを公開することはできますか?

ありがとうございました。

+0

X::itemとして '名前空間your_namespace {使用して名前空間のGLMになるだろう。 ...} '? – LogicStuff

+1

ここで必要とされるプログラミング問題ではありません。レガシーの問題を尋ねるのは話題にはなりません。 –

+0

@πάνταῥεῖ:それはそれほど遺産ではなく、合法的な質問です。そして、法廷者は本質的に散文で書かれた弱く公式化されたプログラミングの形式であるという事実を与えられている(実際にプログラミングの質問だと思う;) – datenwolf

答えて

5

GLM License

それは言う:

を[...]使用する権利を無制限ソフトウェアに対処するために、コピー、マージ、修正、公開、配布 、サブライセンス、および/またはソフトウェアの複製を販売[...]

これが唯一の条件です:

上記の著作権表示および本許可通知は、本ソフトウェアのすべてのコピーまたは実質的な部分に含まれる であるものとします。

そして、もう一つの制限:

軍事目的のためにソフトウェアを利用することにより、あなたは バニーを不幸にすることを選択します。

名前空間の名前を自由に変更できます。

ウサギを気にする人は、ミリタリー目的では使用しないでください。

+0

ありがとうございました。私たちがいくつかのオープンソースライブラリを使って商用プロジェクトを作っているのは今回が初めてなので、私は確信を持っていなければなりませんでした。 – DingusKhan

+0

これはどのように強制可能ですか?それはフリップか軍事使用の真の制限ですか? – Paul

0

また、あなたは常に、名前空間修飾することができます:

namespace myName{ 
    using namespace X; 
} 

myName::item同じ

+0

これは、ユーザーが 'my :: item'と' X :: item'を使用できることを意味します。私は 'myName :: item'にのみアクセスし、' X :: item'にはアクセスしません。 – DingusKhan

+1

@DingusKhan私は理解しますが、ライセンスのために名前空間を変更できなかった場合は、それを修飾することは代わりに機能します。 –