查找OpenACC

在 3.10 版本加入.

检测编译器对 OpenACC 的支持。

该模块可用于检测编译器中的 OpenACC 支持。如果编译器支持 OpenACC,则使用 OpenACC 支持进行编译所需的标志将在不同语言的变量中返回。目前,仅支持 NVHPC、PGI、GNU 和 Cray 编译器。

进口目标

在 3.16 版本加入.

该模块提供 IMPORTED 目标:

OpenACC::OpenACC_<lang>

使用 <lang> 中的 OpenACC 的目标。

变量

该模块定义了以下变量:

OpenACC_FOUND

在 3.25 版本加入.

指示已找到至少一种语言的 OpenACC 标志的变量。

该模块将为您的项目中的每种语言设置以下变量,其中 <lang> 是 C、CXX 或 Fortran 之一:

OpenACC_<lang>_FOUND

指示是否检测到 OpenACC 支持 <lang> 的变量。

OpenACC_<lang>_FLAGS

<lang> 的 OpenACC 编译器标志,以空格分隔。

OpenACC_<lang>_OPTIONS

在 3.16 版本加入.

<lang> 的 OpenACC 编译器标志,作为列表。适合与 target_compile_options 或 target_link_options 一起使用。

该模块还将尝试提供 OpenACC 版本变量:

OpenACC_<lang>_SPEC_DATE

<lang> 编译器实现的 OpenACC 规范的日期。

OpenACC_<lang>_VERSION_MAJOR

<lang> 编译器实现的 OpenACC 主要版本。

OpenACC_<lang>_VERSION_MINOR

<lang> 编译器实现的 OpenACC 的次要版本。

OpenACC_<lang>_VERSION

<lang> 编译器实现的 OpenACC 版本。

规范日期的格式与 OpenACC 标准中给出的格式相同:yyyymm 其中 yyyymm 代表 <lang> 编译器实现的 OpenACC 规范的年月。

输入变量

OpenACC_ACCEL_TARGET=<target> 如果设置,则设置为 <target> 的正确目标加速器标志将与 OpenACC_<lang>_FLAGS 一起返回。