rapids_cmake_write_version_file

在 v21.08.00 版本中新增。

生成一个 C++ 头文件,用于保存调用项目的版本 (X.Y.Z) 信息。

rapids_cmake_write_version_file(file_path [PREFIX <prefix>])

rapids_cmake_write_version_file() 生成的文件包含由 CMake project 调用设置的 X.Y.Z 版本字符串的各个组成部分,作为 C++ 定义。

PREFIX

所有 C++ 宏的前缀。默认情况下,如果未明确指定,它将等于项目的名称(CMake 变量 PROJECT_NAME)。

生成的文件将包含以下无条件定义:

  • #define <PREFIX>_VERSION_MAJOR # CMake 的 PROJECT_VERSION_MAJOR (X)

  • #define <PREFIX>_VERSION_MINOR # CMake 的 PROJECT_VERSION_MINOR (Y)

  • #define <PREFIX>_VERSION_PATCH # CMake 的 PROJECT_VERSION_PATCH (Z)

每个组成部分都将移除所有前导零,因为我们假定版本的所有组成部分都可以表示为十进制值。

注意

如果某个组成部分不存在,将使用零作为占位符值。例如,对于版本 2.4,PATCH 值将变为 0。

file_path

绝对路径或相对路径。如果是相对路径,绝对位置将从 CMAKE_CURRENT_BINARY_DIR 计算得出。