Clang CMAKE Предварительно скомпилированные заголовки - PullRequest
0 голосов
/ 15 января 2019

Я нашел много примеров того, как использовать предварительно скомпилированные заголовки для MSVC, но я не могу найти какие-либо примеры, использующие clang. Из этого поста я вижу команды clang, но мне интересно, как они переводятся в cmake:

Сокращение времени компиляции clang с предварительно скомпилированными заголовками

для создания предварительно скомпилированного заголовка включите все заголовки, которые вы не изменили>> в Query.h, и используйте:

clang -cc1 Query.h -emit-pch -o Query.h.pch использовать предварительно скомпилированный тип заголовка:

clang -cc1 -include-pch Query.h.pch Query.cpp -shared -o libquery.so; Query.cpp должен включать Query.h

Редактировать: Использование clang 6 и cmake 3.11.2

1 Ответ

0 голосов
/ 16 января 2019

Нашел решение, которое сработало для меня:

# add the pch custom target as a dependency
add_dependencies(corelib pch)

# add the flag
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -include-pch ${CMAKE_CURRENT_BINARY_DIR}/stdinc.hpp.pch")

# target
add_custom_target(pch COMMAND clang -x c++-header ${CMAKE_CURRENT_SOURCE_DIR}/src/stdinc.hpp -o ${CMAKE_CURRENT_BINARY_DIR}/stdinc.hpp.pch)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...