CMakeでコンパイルされている巨大なプロジェクトがあります。それはかなり長い間開発されており、8000以上のソース/ヘッダーファイル(500Mバイト以上、500以上のCMakefile.txtファイル)があります。
彼らはこのようなディレクトリ構造を使用しています
PROJECT_NAME
src
/ subdir_name
/ other_dir_name
/ some_different_dir
/ MY_SPECIFIC_DIR <---
/ yet_another_dir
build
次のように、外部ソースでビルドします。
name@host:~/PROJECT_NAME/build> cmake ../src
name@host:~/PROJECT_NAME/build> make all
次に、1つのBIGバイナリとしてビルドされます(詳細は重要ではありません)。
私は他に何も触れることができず、コンテンツだけですMY_SPECIFIC_DIR
-それはソースファイルとCMakeファイルです。だから、私はどういうわけかMY_SPECIFIC_DIR
微調整されたCMakefile.txtファイル にソースコードを持っていて、それを次のように構築したいと思います:
name@host:~/PROJECT_NAME/build_specific> cmake ../src/MY_SPECIFIC_DIR
name@host:~/PROJECT_NAME/build_specific> make all
これにより、他のサブプロジェクトへのいくつかのリンクを使用して、物事MY_SPECIFIC_DIR
を単一のバイナリに組み込む必要があります。しかし、(明らかに)プロジェクト全体のコンパイル方法については何も変更しないでください。
私の質問は:
CMake
を使用して希望のセットアップは可能ですか?
ルートプロジェクトであることをテストしCMakeFile.txt
て、全体としてビルドする場合とは異なる方法でビルドすることはできますか?
そうでない限り、私は別の手段に頼り、make
これに標準を使用する必要があります。私はCMakeを知らないので、YES / NOの答えを期待しています。これを実現するためのテクニックとしても、望ましいです。そして、CMakeを学び、それを実行します。
また、CMakeバージョン2.6を使用する必要があります。
ありがとう