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)