为 CMake 添加 MSVC 预编译头文件支持
CMake 官方版本的自带功能是不支持使用预编译头文件的,但是有很多人要求这个特性。在 CMake 的bugtrack系统中这个Feature Request的帖子中已经有人上传了解决这个问题的扩展模块,但是是分MSVC和Makefiles两个版本的,还没有整合成一个统一的预编译头的命令接口。
下面是我从bugtrace系统中找到的MSVC版的解决方案。这个是我在实际工程中使用过的,非常好,没有问题。
文件:MSVCPCH.cmake
MACRO(USE_MSVC_PCH PCH_TARGET PCH_HEADER_FILE PCH_SOURCE_FILE)
IF(MSVC)
GET_FILENAME_COMPONENT(PCH_NAME ${PCH_HEADER_FILE} NAME_WE)
# Compute a custom name for the precompiled header.
IF(CMAKE_CONFIGURATION_TYPES)
SET(PCH_DIR "${CMAKE_CURRENT_BINARY_DIR}/PCH/${CMAKE_CFG_INTDIR}")
ELSE(CMAKE_CONFIGURATION_TYPES)
SET(PCH_D

本文介绍了如何在 CMake 项目中为 MSVC 编译器添加预编译头文件的支持。通过一个名为 `MSVCPCH.cmake` 的扩展模块,提供了一个 MACRO `USE_MSVC_PCH`,该宏用于设置编译标志,确保预编译头文件正确工作,并处理清理工作。
最低0.47元/天 解锁文章
6841

被折叠的 条评论
为什么被折叠?



