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