特定のディレクトリを再帰的にスキャンし、ソースファイルのリストを決定するようにCMakeを設定するにはどうすればよいですか?
私のプロジェクトは共有ライブラリです。私はこれに似たフォルダ構造を持っています:
/
src/ # Source files in an arbitrary tree
include/ # Headers, tree mirrors that of the src/ folder
examples/ # Executable code examples that link against the library
CMakeLists.txt
CMakeがsrc
とinclude
を再帰的にスキャンし、ディレクトリ構造に関係なく、プロジェクトのソースファイルとヘッダーファイルのリストを決定するようにします。私も避けたい:
src/
およびinclude/
無限のディレクトリCMakeLists.txt
ファイルただし、各例で独自のビルドスクリプトを使用することは問題ありません。
CMakeは、再帰的なファイルグロビング用に次のコマンドを提供します。
file(GLOB_RECURSE variable [RELATIVE path]
[FOLLOW_SYMLINKS] [globbing expressions]...)
コマンドのドキュメント: http://www.cmake.org/cmake/help/v2.8.8/cmake.html#command:file