HIP_STANDARD

已在 3.21 版本中添加。

请求构建此目标的 HIP/C++ 标准。

受支持的值是

98

HIP C++98

11

HIP C++11

14

HIP C++14

17

HIP C++17

20

HIP C++20

23

HIP C++23

26

已在 3.25 版本中添加。

HIP C++26。CMake 3.25 及更高版本将 26 识别为有效值,没有任何版本支持任何编译器。

如果请求的值未导致为使用的编译器添加编译标志,则会添加先前的标准标志。这意味着使用

set_property(TARGET tgt PROPERTY HIP_STANDARD 11)

使用不支持 -std=gnu++11 或等效标志的编译器不会导致错误或警告,而是添加 -std=gnu++98 标志(如果支持)。这种“衰减”行为可以通过 HIP_STANDARD_REQUIRED 目标属性进行控制。此外,HIP_EXTENSIONS 目标属性可用于控制是否在每个目标的基础上启用特定于编译器的扩展。

请参阅 cmake-compile-features(7) 手册,了解编译特性以及受支持的编译器列表。

此属性由 CMAKE_HIP_STANDARD 变量的值初始化,在创建目标时设置该变量。