FindHg

查找 Mercurial 命令行客户端可执行文件(hg),并提供一个从 Mercurial 工作副本中提取信息的命令。

find_package(Hg [<version>] [...])

结果变量

此模块定义了以下变量

Hg_FOUND

布尔值,指示是否找到(请求版本的)Mercurial 客户端。为了向后兼容,HG_FOUND 变量也被设置为相同的值。

HG_VERSION_STRING

找到的 Mercurial 版本。

缓存变量

以下缓存变量也可以设置

HG_EXECUTABLE

Mercurial 命令行客户端(hg)的绝对路径。

命令

当找到 Mercurial 客户端(hg)时,此模块提供以下命令:

Hg_WC_INFO

版本 3.1 中新增。

提取 Mercurial 工作副本的信息。

Hg_WC_INFO(<dir> <var-prefix>)

如果在给定位置 <dir> 运行 Mercurial 客户端成功,此命令将定义以下变量;否则会生成 SEND_ERROR 消息。

<var-prefix>_WC_CHANGESET

当前变更集。

<var-prefix>_WC_REVISION

当前修订版本。

示例

查找 Mercurial 客户端并检索当前项目工作副本的信息。

find_package(Hg)
if(Hg_FOUND)
  Hg_WC_INFO(${PROJECT_SOURCE_DIR} Project)
  message("Current revision is ${Project_WC_REVISION}")
  message("Current changeset is ${Project_WC_CHANGESET}")
endif()