2008-11-09 14 views
3

Как я могу получить систему сборки CMake, которая теперь сканирует исходные файлы с помощью AUX_SOURCE_DIRECTORY, сканировать файлы заголовков в том же каталоге, желательно используя аналогичную команду?Как автоматически добавлять файлы заголовков в проект?

я не нашел простой способ сделать это в документации еще, так что теперь у меня есть дерьмовый Баш скрипт для пост-обработки мой (CodeBlocks) файл проекта ...

ответ

8

Вы можете использовать команду file (GLOB ...). Например:

set(dir my_search_dir) 
file (GLOB headers "${dir}/*.h") 
message("My headers: " ${headers}) 

Эта команда также может возвращать и перечислять ваши файлы относительно данного пути. См. "file" command entry в документе cmake.

0

Документация к AUX_SOURCE_DIRECTORY предполагает что он не предназначен для использования таким образом, поэтому я предпочел бы сомневаться, что то, что вы просите, возможно. Если вы хотите получить авторитетный ответ, вы можете связаться с разработчиками CMake на [email protected] (с ними действительно очень приятно иметь дело).

Я бы настоятельно рекомендовал использовать подстановочные знаки, чтобы указать, что включено в сборку. Файлы сборки должны указывать точное содержимое библиотек и не зависеть от того, что происходит в каталоге. Сначала это может быть громоздким (если вы привыкли к подстановочным знакам или IDE, который работает одинаково), но когда вы привыкаете к нему, вы не хотите иметь его каким-либо другим способом.

 Смежные вопросы

  • Нет связанных вопросов^_^