Это известно как сканер зависимостей заголовка , который сканирует исходные файлы и извлекает имена заголовков, которые #include
-это в него.
Поскольку это сканер, он не 'Попробуйте проверить #ifdef
и другую логику, которая может привести к тому, что заголовок фактически не будет использоваться.
Вы можете управлять сканером зависимостей заголовка в CMake с помощью команды include_regular_expression .
Например, вы можете отключить сканер с помощью
include_regular_expression("^$") # Regular expressions matches empty string only
(Технически это не полностью отключает процесс сканирования, но отключает генерацию зависимости заголовка источника).