source_group
Определите группировку исходных файлов в генерации проекта IDE. Существует две разные подписи для создания групп исходных файлов.
source_group(<name> [FILES <src>...] [REGULAR_EXPRESSION <regex>]) source_group(TREE <root> [PREFIX <prefix>] [FILES <src>...])
Определяет группу, в которую будут помещены исходные файлы в файлы проекта. Это предназначено для настройки вкладок файлов в Visual Studio. Варианты:
-
TREE -
Новое в версии 3.8.
CMake автоматически обнаружит из
<src>путей файлов группы исходных файлов, которые необходимо создать, чтобы сохранить структуру групп исходных файлов аналогично фактической структуре файлов и каталогов в проекте. Пути<src>файлов будут обрезаны, чтобы быть относительными к<root>. -
PREFIX -
Новое в версии 3.8.
Группа исходных файлов и файлы, расположенные непосредственно в
<root>пути, будут помещены в<prefix>группы исходных файлов. -
FILES -
Любой явно указанный исходный файл будет помещен в группу
<name>. Относительные пути интерпретируются относительно текущей директории исходных файлов. -
REGULAR_EXPRESSION -
Любой исходный файл, имя которого соответствует регулярному выражению, будет помещен в группу
<name>.
Если исходный файл соответствует нескольким группам, то последняя группа, которая явно перечисляет файл с FILES будет иметь приоритет, если таковая есть. Если ни одна группа явно не перечисляет файл, последняя группа, регулярное выражение которой соответствует файлу, будет иметь приоритет.
Имя <name> группы и аргумент <prefix> могут содержать слеши или обратные слеши для указания подгрупп. Обратные слеши необходимо правильно экранировать:
source_group(base/subdir ...) source_group(outer\\inner ...) source_group(TREE <root> PREFIX sources\\inc ...)
Новое в версии 3.18: Разрешить использование слэшей (/) для указания подгрупп.
Для обратной совместимости, сокращенная запись
source_group(<name> <regex>)
эквивалентна
source_group(<name> REGULAR_EXPRESSION <regex>)
© 2000–2021 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.20/command/source_group.html