FindOpenSP

在 3.25 版本中新增。

查找 OpenSP 库。OpenSP 是 SGML(标准通用标记语言)解析器的一个开源实现。

导入的目标

此模块提供以下 导入目标

OpenSP::OpenSP

封装 OpenSP 库使用需求的 Target,仅在找到 OpenSP 时可用。

结果变量

此模块定义了以下变量

OpenSP_FOUND

布尔值,指示(请求版本)的 OpenSP 是否可用。

OpenSP_VERSION

找到的 OpenSP 的版本。

OpenSP_VERSION_MAJOR

OpenSP 的主版本号。

OpenSP_VERSION_MINOR

OpenSP 的次版本号。

OpenSP_VERSION_PATCH

OpenSP 的补丁版本号。

OpenSP_INCLUDE_DIRS

包含使用 OpenSP 库所需的头文件的目录。

OpenSP_LIBRARIES

使用 OpenSP 所需链接的库。在使用 `OpenSP::OpenSP` 导入 Target 时,可以将其传递给 `target_link_libraries()` 命令;如果不使用导入 Target,则可以省略。

缓存变量

以下缓存变量也可以设置

OpenSP_INCLUDE_DIR

OpenSP 的 include 目录。

OpenSP_LIBRARY

`osp` 库的绝对路径。

OpenSP_MULTI_BYTE

如果在 OpenSP 的 `config.h` 头文件中找到了 `SP_MULTI_BYTE` 定义,则为 True,这表示 OpenSP 库是用多字节字符支持编译的。为了避免字符解码问题,消耗方 Target 需要定义 `SP_MULTI_BYTE` 预处理器宏来匹配此值。

示例

查找 OpenSP 库并将其链接到项目 Target

find_package(OpenSP)
target_link_libraries(project_target PRIVATE OpenSP::OpenSP)