rapids_export_write_language

添加到版本 v21.06.00。

创建一个自包含文件,确保请求的语言在全局范围内启用。

rapids_export_write_language( (BUILD|INSTALL) (CXX|CUDA|...) <file_path> )

<file_path> 的内容将是一个自包含文件,通过调用 include 命令时,将确保请求的语言在全局范围内启用。

这是必需的,因为 CMake 的 enable_language 命令仅支持为当前目录范围启用语言,并且不支持在函数内部调用。这些限制使得通过 CPM 包含的包无法启用额外的语言。

注意

这使用了一些高级的 CMake 技巧来确保 enable_language 命令既在调用处发生,也沿着整个 add_subdirectory 堆栈向上执行,以便在全局范围内启用该语言。