CMake рекурсивно сканирует папки?
Как мне настроить 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
Я хочу избежать:
- Загрязнение
src/
а такжеinclude/
каталоги с бесконечнымиCMakeLists.txt
файлы - Необходимость изменять и адаптировать скрипты каждый раз, когда я меняю структуру папок
Однако для каждого примера хорошо иметь собственный скрипт сборки.
1 ответ
Решение
CMake предоставляет следующую команду для рекурсивного перемещения файлов:
file(GLOB_RECURSE variable [RELATIVE path]
[FOLLOW_SYMLINKS] [globbing expressions]...)
Документация команды: http://www.cmake.org/cmake/help/v2.8.8/cmake.html