CMake: объединение target_sources с source_group - PullRequest
0 голосов
/ 03 апреля 2020

У меня есть проект, который использует команду target_sources для добавления файлов в проект. Мне нужно, чтобы эти файлы были сгруппированы в IDE с той же иерархией, что и в файловой системе. Я был уверен, что команда source_group с параметром TREE может выполнить sh this.

Когда я пытаюсь что-то вроде следующего:

add_library(MyTarget "")

target_sources(MyTarget
PRIVATE
    Source/A/FileA.cpp
    Source/A/FileA.h
    Source/B/FileB.cpp
    Source/B/FileB.h
)

source_group(TREE "${CMAKE_CURRENT_SOURCE_DIR}/Source" PREFIX "Source" FILES ${SOURCES})

Этот код не имеет никакого значения в иерархию IDE. Поведение по умолчанию для цели VS2017 - поместить все файлы. cpp в «Исходные файлы» и все файлы .h в «Файлы заголовков», что непригодно для моего проекта.

Как использовать Команда source_group с опцией TREE, чтобы CMake генерировал иерархию файловой системы в моих файлах проекта IDE?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...