COMPILE_OPTIONS¶
传递给编译器的选项列表。
此属性包含其目标迄今为止指定的选项的分号分隔列表。使用 target_compile_options() 命令添加更多选项。这些选项将在 CMAKE_<LANG>_FLAGS 和 CMAKE_<LANG>_FLAGS_<CONFIG> 变量中的标志之后,但在由 INTERFACE_COMPILE_OPTIONS 属性从依赖项传播的标志之前添加。
此属性为目标中的所有语言添加编译选项。使用 COMPILE_LANGUAGE 生成器表达式来指定每种语言的编译选项。
此属性在创建目标时由 COMPILE_OPTIONS 目录属性初始化,并由生成器用于设置编译器的选项。
COMPILE_OPTIONS 的内容可以使用带有 $<...> 语法的“生成器表达式”。有关可用表达式,请参阅 cmake-generator-expressions(7) 手册。有关定义构建系统属性的更多信息,请参阅 cmake-buildsystem(7) 手册。
选项去重¶
用于目标的最终选项集通过累积当前目标及其依赖项的使用要求的选项来构建。选项集经过去重以避免重复。
版本 3.12 中添加: 尽管这对于单个选项很有用,但去重步骤可能会打破选项组。例如,-option A -option B 会变成 -option A B。可以使用类似 shell 的引用和 SHELL: 前缀来指定一组选项。将删除 SHELL: 前缀,并使用 separate_arguments() 命令的 UNIX_COMMAND 模式解析剩余的选项字符串。例如,"SHELL:-option A" "SHELL:-option B" 将变为 -option A -option B。