FindIce¶
在版本 3.1 中添加。
查找 ZeroC Internet Communication Engine (ICE) 程序、库和数据文件。
此模块支持多个组件。组件可以包括下列任意内容: Freeze
、Glacier2
、Ice
、IceBox
、IceDB
、IceDiscovery
、IceGrid
、IceLocatorDiscovery
、IcePatch
、IceSSL
、IceStorm
、IceUtil
、IceXML
或 Slice
。
Ice 3.7 及更高版本还包括特定于 C++11 的组件:Glacier2++11
、Ice++11
、IceBox++11
、IceDiscovery++11
IceGrid
、IceLocatorDiscovery++11
、IceSSL++11
、IceStorm++11
请注意,受支持组件的集合是 Ice 版本相关的。
在版本 3.4 中添加: 针对组件和大多数 EXECUTABLE
变量导入了目标。
在版本 3.7 中添加: 调试和发布变量分别被发现。
在版本 3.10 中添加: Ice 3.7 支持,包括新组件、程序和 Nuget 包。
此模块在多个变量中报告有关 Ice 安装的信息。常规变量
Ice_VERSION - Ice release version
Ice_FOUND - true if the main programs and libraries were found
Ice_LIBRARIES - component libraries to be linked
Ice_INCLUDE_DIRS - the directories containing the Ice headers
Ice_SLICE_DIRS - the directories containing the Ice slice interface
definitions
导入的目标
Ice::<C>
其中 <C>
是 Ice 组件的名称,例如 Ice::Glacier2
或 Ice++11
。
Ice slice 程序报告在
Ice_SLICE2CONFLUENCE_EXECUTABLE - path to slice2confluence executable
Ice_SLICE2CPP_EXECUTABLE - path to slice2cpp executable
Ice_SLICE2CS_EXECUTABLE - path to slice2cs executable
Ice_SLICE2FREEZEJ_EXECUTABLE - path to slice2freezej executable
Ice_SLICE2FREEZE_EXECUTABLE - path to slice2freeze executable
Ice_SLICE2HTML_EXECUTABLE - path to slice2html executable
Ice_SLICE2JAVA_EXECUTABLE - path to slice2java executable
Ice_SLICE2JS_EXECUTABLE - path to slice2js executable
Ice_SLICE2MATLAB_EXECUTABLE - path to slice2matlab executable
Ice_SLICE2OBJC_EXECUTABLE - path to slice2objc executable
Ice_SLICE2PHP_EXECUTABLE - path to slice2php executable
Ice_SLICE2PY_EXECUTABLE - path to slice2py executable
Ice_SLICE2RB_EXECUTABLE - path to slice2rb executable
在版本 3.14 中添加: 针对 slice2confluence
和 slice2matlab
的变量。
Ice 程序报告在
Ice_GLACIER2ROUTER_EXECUTABLE - path to glacier2router executable
Ice_ICEBOX_EXECUTABLE - path to icebox executable
Ice_ICEBOXXX11_EXECUTABLE - path to icebox++11 executable
Ice_ICEBOXADMIN_EXECUTABLE - path to iceboxadmin executable
Ice_ICEBOXD_EXECUTABLE - path to iceboxd executable
Ice_ICEBOXNET_EXECUTABLE - path to iceboxnet executable
Ice_ICEBRIDGE_EXECUTABLE - path to icebridge executable
Ice_ICEGRIDADMIN_EXECUTABLE - path to icegridadmin executable
Ice_ICEGRIDDB_EXECUTABLE - path to icegriddb executable
Ice_ICEGRIDNODE_EXECUTABLE - path to icegridnode executable
Ice_ICEGRIDNODED_EXECUTABLE - path to icegridnoded executable
Ice_ICEGRIDREGISTRY_EXECUTABLE - path to icegridregistry executable
Ice_ICEGRIDREGISTRYD_EXECUTABLE - path to icegridregistryd executable
Ice_ICEPATCH2CALC_EXECUTABLE - path to icepatch2calc executable
Ice_ICEPATCH2CLIENT_EXECUTABLE - path to icepatch2client executable
Ice_ICEPATCH2SERVER_EXECUTABLE - path to icepatch2server executable
Ice_ICESERVICEINSTALL_EXECUTABLE - path to iceserviceinstall executable
Ice_ICESTORMADMIN_EXECUTABLE - path to icestormadmin executable
Ice_ICESTORMDB_EXECUTABLE - path to icestormdb executable
Ice_ICESTORMMIGRATE_EXECUTABLE - path to icestormmigrate executable
Ice db 程序(仅 Windows;所有其他平台上的标准系统版本)报告在
Ice_DB_ARCHIVE_EXECUTABLE - path to db_archive executable
Ice_DB_CHECKPOINT_EXECUTABLE - path to db_checkpoint executable
Ice_DB_DEADLOCK_EXECUTABLE - path to db_deadlock executable
Ice_DB_DUMP_EXECUTABLE - path to db_dump executable
Ice_DB_HOTBACKUP_EXECUTABLE - path to db_hotbackup executable
Ice_DB_LOAD_EXECUTABLE - path to db_load executable
Ice_DB_LOG_VERIFY_EXECUTABLE - path to db_log_verify executable
Ice_DB_PRINTLOG_EXECUTABLE - path to db_printlog executable
Ice_DB_RECOVER_EXECUTABLE - path to db_recover executable
Ice_DB_STAT_EXECUTABLE - path to db_stat executable
Ice_DB_TUNER_EXECUTABLE - path to db_tuner executable
Ice_DB_UPGRADE_EXECUTABLE - path to db_upgrade executable
Ice_DB_VERIFY_EXECUTABLE - path to db_verify executable
Ice_DUMPDB_EXECUTABLE - path to dumpdb executable
Ice_TRANSFORMDB_EXECUTABLE - path to transformdb executable
Ice 组件库报告在
Ice_<C>_FOUND - ON if component was found
Ice_<C>_LIBRARIES - libraries for component
请注意,<C>
是组件的大写名称。
此模块从读取有关搜索结果的提示
Ice_HOME - the root of the Ice installation
环境变量 ICE_HOME
也可用;Ice_HOME 变量优先。
注意
在 Windows 上,Ice 3.7.0 及更高版本通过 NuGet 包管理器提供库。将使用 CMAKE_PREFIX_PATH
搜索适当的 NuGet 包,或者也可以将 Ice_HOME
设置为特定 NuGet 包的位置以限制搜索。
还可能设置以下缓存变量
Ice_<P>_EXECUTABLE - the path to executable <P>
Ice_INCLUDE_DIR - the directory containing the Ice headers
Ice_SLICE_DIR - the directory containing the Ice slice interface
definitions
Ice_<C>_LIBRARY - the library for component <C>
注意
在大多数情况下,除非提供了多个 Ice 版本并且需要特定版本,否则无需设置上述变量。在 Windows 上,可以通过注册表找到最新版本的 Ice。在 Unix 上,程序、头文件和库通常位于标准位置,但可能不会自动检测到 Ice_SLICE_DIRS(已搜索到公知的位置)。如果设置了 Ice_HOME,所有其他变量都会使用默认值。可以设置 Ice_HOME 并有选择地为其他组件指定备用位置;例如,对于较新的 Visual Studio 版本,如果启发式算法不足以识别特定 Visual Studio 版本的正确程序和库,则可能需要这样做。
可以通过设置其他变量来控制此模块
Ice_DEBUG - Set to ON to enable debug output from FindIce.