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 預設所有其他變數。可以設定 Ice_HOME 並選擇性地為其他組件指定替代位置;如果啟發式方法不足以識別特定 Visual Studio 版本的正確程式和函式庫,則可能需要針對較新版本的 Visual Studio 執行此操作。
可以設定來控制此模組的其他變數如下
Ice_DEBUG - Set to ON to enable debug output from FindIce.