CMake编译标志

CMake编译标志,cmake,Cmake,我正在我的一个项目中使用CMake,我想为每个文件使用一组不同的优化标志。有些文件包含我希望优化空间的代码,有些文件则希望优化性能 使用CMake是否仍然可以执行此操作?我目前唯一能想象的方法就是使用这个: set_property(SOURCE ${PROJECT_SOURCE_DIR}/src/bitmap.c APPEND_STRING COMPILE_FLAGS "/Wall /WX /O1") 我知道有一些方法可以设置特定文件的优化标志,但在发布或调试模式下构建会对这一点产生影响吗?

我正在我的一个项目中使用CMake,我想为每个文件使用一组不同的优化标志。有些文件包含我希望优化空间的代码,有些文件则希望优化性能

使用CMake是否仍然可以执行此操作?我目前唯一能想象的方法就是使用这个:

set_property(SOURCE ${PROJECT_SOURCE_DIR}/src/bitmap.c APPEND_STRING COMPILE_FLAGS "/Wall /WX /O1")

我知道有一些方法可以设置特定文件的优化标志,但在发布或调试模式下构建会对这一点产生影响吗?我想确保我这样做的方式不仅仅是一些黑客,否则我可能会返回make。

您可以使用该命令。查看一下,您会注意到一个COMPILE\u DEFINITIONS和COMPILE\u FLAGS属性。

但如果您确实设置了生成类型,可以使用CMAKE\u build\u types检查这是一个重要的警告。应该将CMAKE_BUILD_TYPE设置为空字符串,以避免意外添加编译选项。