我尝试使用CMake(2.8.2)和第一个解决方案强制包含标题:
SET_TARGET_PROPERTIES(${MyTarget} PROPERTIES COMPILE_FLAGS "/FI\"${ForcedHeader_A}\"/FI\"${ForcedHeader_B}\"")
不知怎的,CMake忽略(或覆盖)第一个编译器标志。仅当两个编译器标志与此情况相同时才会发生这种情况。此时我必须移植一些我不想修改软件结构的东西。任何人都可以帮助我吗?
由于
答案 0 :(得分:0)
试试这个(另请注意,最近的CMake意味着您不需要USE_CAPS_ALL_THE_TIME):
get_target_property(FLAGS ${MyTarget} COMPILE_FLAGS)
set_target_properties(${MyTarget} PROPERTIES COMPILE_FLAGS "${FLAGS} /FI\"${ForcedHeader_A}\"/FI\"${ForcedHeader_B}\"")