質問
C ++、Java、Pythonのプロジェクトがあります。 C ++エクスポートSWIGインターフェイスのプロジェクトがJavaプロジェクトとPythonプロジェクトで使用できるようにします。
私の質問は、依存関係を管理し、これらのプロジェクトを構築するためにどの構築メカニズムを使用できるかということです。
私はスコンとGYPを使用しました。それらは非常に使いやすく、プラグイン(コードゲネレーター、コンパイラ、パッカー)を許可します。特にC ++、Java、Pythonのネイティブサポートを備えた代替品があるかどうかを知りたいです。
Linuxプラットフォームで開発していますが、Macで構築してプラットフォームを獲得できるようにしたいと考えています。
解決
有望な選択肢の1つはWAFです。
その他:
正確ではありませんが、非常に関連性があります:
他のヒント
cmake
私は自分のプロジェクトに使用し、それを好みます。
レーキもあります(ルビーが付属していますが、何でも使用できます)。
私はcmakeでJava / c ++ / c ++をJava Swig /(+プロトコルバッファー)プロジェクトにしようとしましたが、それは恐ろしいことでした!そのような場合、Cmakeの問題は、スクリプト言語が非常に限られていることです。私はスコンに切り替えましたが、すべてがはるかに簡単になりました。
JavaおよびC ++プロジェクトの場合、Maven+ Maven-Nar-Pluginをご覧くださいが、Pythonについては、私は本当に最高のことを知りません。 Cmakeのような他のツールである可能性があります。
Java World Antは、ビルドシステムの「Lingua Franca」です。 ANTはANT -Contribを介してC ++タスクをサポートしているため、C ++コードをコンパイルできます。 Antのexecタスクを使用すると、ラッパーを取得するために、C ++コードでSwigを実行できます。次に、Javac/JARとしての標準タスクをJavaアプリケーションビルドに使用できます。