Прежде всего, я не стал бы беспокоиться о возможном увеличении времени компиляции, потому что вы добавили много include-каталогов.Конечно, вы должны проверить, действительно ли это проблема.
Вы можете попытаться указать свойство COMPILE_FLAGS непосредственно в исходных файлах, но это, скорее всего, не кросс-платформенное и требуетбыть сделано для каждого исходного файла.
В качестве альтернативы, рассмотрите возможность разделения вашего проекта на подкаталоги и напишите отдельный файл CMakeLists.txt для каждого подкаталога.В этом случае вызов include_directories () ограничен областью действия текущего проекта (и его подпроектов), и у вас будет более детальный контроль над каждым проектом.
Может возникнуть проблема с требованием сбояво время компиляции: например, при использовании статических библиотек A, в зависимости от B, в зависимости от C: когда кто-то связывает exe / dll с A, требуются библиотеки B и C, но это не обязательно обнаруживается во время компиляции ...и трудно решить вообще с CMake.