CMAKE_<LANG>_LINKER_WRAPPER_FLAG

3.13 版本新增。

定义编译器驱动程序选项的语法,用于将选项传递给链接器工具。它将用于翻译链接选项中的 LINKER: 前缀(请参阅 add_link_options()target_link_options())。

此变量保存一个分号分隔的列表。如果最后一个标记指定了空格(即 " "),则标志和 LINKER: 参数将作为单独的参数传递给编译器驱动程序。变量 CMAKE_<LANG>_LINKER_WRAPPER_FLAG_SEP 可用于管理参数的连接。

例如,对于 Clang,我们有:

set (CMAKE_C_LINKER_WRAPPER_FLAG "-Xlinker" " ")

指定 "LINKER:-z,defs" 将被转换为 -Xlinker -z -Xlinker defs

对于 GNU GCC

set (CMAKE_C_LINKER_WRAPPER_FLAG "-Wl,")
set (CMAKE_C_LINKER_WRAPPER_FLAG_SEP ",")

指定 "LINKER:-z,defs" 将被转换为 -Wl,-z,defs

对于 SunPro

set (CMAKE_C_LINKER_WRAPPER_FLAG "-Qoption" "ld" " ")
set (CMAKE_C_LINKER_WRAPPER_FLAG_SEP ",")

指定 "LINKER:-z,defs" 将被转换为 -Qoption ld -z,defs