FindASPELL¶
查找 GNU Aspell 拼写检查器库。
组件¶
此模块支持以下组件
ASPELL
在 4.1 版本中新增。
查找 Aspell 库及其包含路径。
Executable(可执行文件)
在 4.1 版本中新增。
查找 Aspell 命令行交互式拼写检查器可执行文件。
组件可以使用标准 CMake 语法指定
find_package(ASPELL [COMPONENTS <components>...])
如果未指定 COMPONENTS
,则模块默认搜索 ASPELL
和 Executable
组件。
导入的目标¶
当 CMAKE_ROLE
为 PROJECT
时,此模块提供以下导入目标
ASPELL::ASPELL
在 4.1 版本中新增。
封装 Aspell 库使用要求的 If target。仅当找到
ASPELL
组件时才可用。ASPELL::Executable
在 4.1 版本中新增。
封装 Aspell 命令行拼写检查器可执行文件的 If target。仅当找到
Executable
组件时才可用。
结果变量¶
此模块定义了以下变量
ASPELL_FOUND
布尔值,指示是否找到了请求的 Aspell 组件。
ASPELL_VERSION
在 4.1 版本中新增。
如果找到 Aspell,则为其版本字符串。仅当找到
Executable
组件时才能确定。如果版本未确定,则不设置版本值。ASPELL_INCLUDE_DIRS
在 4.1 版本中新增。
使用 Aspell 所需的包含目录。当找到
ASPELL
组件时可用。Aspell 库还可以通过
pspell.h
头文件提供与 Pspell 兼容的旧版接口。如果找到此类接口,也会将其添加到包含目录列表中。ASPELL_LIBRARIES
链接到 Aspell 所需的库。当找到
ASPELL
组件时可用。版本 4.1 中更改: 此变量现在作为常规结果变量而不是缓存变量进行设置。
缓存变量¶
以下缓存变量也可以设置
ASPELL_INCLUDE_DIR
使用
Executable
组件时,包含aspell.h
头文件的目录。ASPELL_LIBRARY
在 4.1 版本中新增。
使用
ASPELL
组件时,Aspell 库的路径。ASPELL_EXECUTABLE
使用
Executable
组件时,aspell
命令行拼写检查器程序的路径。
示例¶
使用 CMake 4.1 或更高版本查找 Aspell 库并将其链接到项目目标
find_package(ASPELL COMPONENTS ASPELL)
target_link_libraries(project_target PRIVATE ASPELL::ASPELL)
在编写支持 CMake 4.0 及更早版本的向后兼容代码时,可以直接在项目中定义本地导入目标
find_package(ASPELL COMPONENTS ASPELL)
if(ASPELL_FOUND AND NOT TARGET ASPELL::ASPELL)
add_library(ASPELL::ASPELL INTERFACE IMPORTED)
set_target_properties(
ASPELL::ASPELL
PROPERTIES
INTERFACE_LINK_LIBRARIES "${ASPELL_LIBRARIES}"
INTERFACE_INCLUDE_DIRECTORIES "${ASPELL_INCLUDE_DIR}"
)
endif()
target_link_libraries(project_target PRIVATE ASPELL::ASPELL)
示例:如何在项目中执行 aspell
命令行拼写检查器
find_package(ASPELL COMPONENTS Executable)
execute_process(COMMAND ${ASPELL_EXECUTABLE} --help)