CMake: как включить только один заголовочный каталог - PullRequest
0 голосов
/ 13 декабря 2018

Кажется, что CMake include_directories добавит не только переданный каталог, но и все его подкаталоги в список включения.Есть ли способ добавить только один каталог (без его подкаталогов), то есть какой-то вид по команде include_directory ?

1 Ответ

0 голосов
/ 13 декабря 2018

Как указано в документации , добавляются только папки, указанные в команде, а не подпапки.Конечно, если у вас есть подпапка foo, а кто-то делает #include <foo/bar.h, тогда файл будет включен.

Рассмотрите возможность использования target_include_directories, так как он более гибкий и лучший, так как он нацелен на одну цель,и если цель используется повторно, то зависимые включения также могут переноситься на зависимые цели (в зависимости от PUBLIC / PRIVATE / INTERFACE).

...