FindIce.cmake 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521
  1. #.rst:
  2. # FindIce
  3. # -------
  4. #
  5. # Find the ZeroC Internet Communication Engine (ICE) programs,
  6. # libraries and datafiles.
  7. #
  8. # This module supports multiple components.
  9. # Components can include any of: ``Freeze``, ``Glacier2``, ``Ice``,
  10. # ``IceBox``, ``IceDB``, ``IceGrid``, ``IcePatch``, ``IceSSL``,
  11. # ``IceStorm``, ``IceUtil``, ``IceXML``, or ``Slice``.
  12. #
  13. # This module reports information about the Ice installation in
  14. # several variables. General variables::
  15. #
  16. # Ice_VERSION - Ice release version
  17. # Ice_FOUND - true if the main programs and libraries were found
  18. # Ice_LIBRARIES - component libraries to be linked
  19. # Ice_INCLUDE_DIRS - the directories containing the Ice headers
  20. # Ice_SLICE_DIRS - the directories containing the Ice slice interface
  21. # definitions
  22. #
  23. # Imported targets::
  24. #
  25. # Ice::<C>
  26. #
  27. # Where ``<C>`` is the name of an Ice component, for example
  28. # ``Ice::Glacier2``.
  29. #
  30. # Ice slice programs are reported in::
  31. #
  32. # Ice_SLICE2CPP_EXECUTABLE - path to slice2cpp executable
  33. # Ice_SLICE2CS_EXECUTABLE - path to slice2cs executable
  34. # Ice_SLICE2FREEZEJ_EXECUTABLE - path to slice2freezej executable
  35. # Ice_SLICE2FREEZE_EXECUTABLE - path to slice2freeze executable
  36. # Ice_SLICE2HTML_EXECUTABLE - path to slice2html executable
  37. # Ice_SLICE2JAVA_EXECUTABLE - path to slice2java executable
  38. # Ice_SLICE2JS_EXECUTABLE - path to slice2js executable
  39. # Ice_SLICE2PHP_EXECUTABLE - path to slice2php executable
  40. # Ice_SLICE2PY_EXECUTABLE - path to slice2py executable
  41. # Ice_SLICE2RB_EXECUTABLE - path to slice2rb executable
  42. #
  43. # Ice programs are reported in::
  44. #
  45. # Ice_GLACIER2ROUTER_EXECUTABLE - path to glacier2router executable
  46. # Ice_ICEBOX_EXECUTABLE - path to icebox executable
  47. # Ice_ICEBOXADMIN_EXECUTABLE - path to iceboxadmin executable
  48. # Ice_ICEBOXD_EXECUTABLE - path to iceboxd executable
  49. # Ice_ICEBOXNET_EXECUTABLE - path to iceboxnet executable
  50. # Ice_ICEGRIDADMIN_EXECUTABLE - path to icegridadmin executable
  51. # Ice_ICEGRIDNODE_EXECUTABLE - path to icegridnode executable
  52. # Ice_ICEGRIDNODED_EXECUTABLE - path to icegridnoded executable
  53. # Ice_ICEGRIDREGISTRY_EXECUTABLE - path to icegridregistry executable
  54. # Ice_ICEGRIDREGISTRYD_EXECUTABLE - path to icegridregistryd executable
  55. # Ice_ICEPATCH2CALC_EXECUTABLE - path to icepatch2calc executable
  56. # Ice_ICEPATCH2CLIENT_EXECUTABLE - path to icepatch2client executable
  57. # Ice_ICEPATCH2SERVER_EXECUTABLE - path to icepatch2server executable
  58. # Ice_ICESERVICEINSTALL_EXECUTABLE - path to iceserviceinstall executable
  59. # Ice_ICESTORMADMIN_EXECUTABLE - path to icestormadmin executable
  60. # Ice_ICESTORMMIGRATE_EXECUTABLE - path to icestormmigrate executable
  61. #
  62. # Ice db programs (Windows only; standard system versions on all other
  63. # platforms) are reported in::
  64. #
  65. # Ice_DB_ARCHIVE_EXECUTABLE - path to db_archive executable
  66. # Ice_DB_CHECKPOINT_EXECUTABLE - path to db_checkpoint executable
  67. # Ice_DB_DEADLOCK_EXECUTABLE - path to db_deadlock executable
  68. # Ice_DB_DUMP_EXECUTABLE - path to db_dump executable
  69. # Ice_DB_HOTBACKUP_EXECUTABLE - path to db_hotbackup executable
  70. # Ice_DB_LOAD_EXECUTABLE - path to db_load executable
  71. # Ice_DB_LOG_VERIFY_EXECUTABLE - path to db_log_verify executable
  72. # Ice_DB_PRINTLOG_EXECUTABLE - path to db_printlog executable
  73. # Ice_DB_RECOVER_EXECUTABLE - path to db_recover executable
  74. # Ice_DB_STAT_EXECUTABLE - path to db_stat executable
  75. # Ice_DB_TUNER_EXECUTABLE - path to db_tuner executable
  76. # Ice_DB_UPGRADE_EXECUTABLE - path to db_upgrade executable
  77. # Ice_DB_VERIFY_EXECUTABLE - path to db_verify executable
  78. # Ice_DUMPDB_EXECUTABLE - path to dumpdb executable
  79. # Ice_TRANSFORMDB_EXECUTABLE - path to transformdb executable
  80. #
  81. # Ice component libraries are reported in::
  82. #
  83. # Ice_<C>_FOUND - ON if component was found
  84. # Ice_<C>_LIBRARIES - libraries for component
  85. #
  86. # Note that ``<C>`` is the uppercased name of the component.
  87. #
  88. # This module reads hints about search results from::
  89. #
  90. # Ice_HOME - the root of the Ice installation
  91. #
  92. # The environment variable ``ICE_HOME`` may also be used; the
  93. # Ice_HOME variable takes precedence.
  94. #
  95. # The following cache variables may also be set::
  96. #
  97. # Ice_<P>_EXECUTABLE - the path to executable <P>
  98. # Ice_INCLUDE_DIR - the directory containing the Ice headers
  99. # Ice_SLICE_DIR - the directory containing the Ice slice interface
  100. # definitions
  101. # Ice_<C>_LIBRARY - the library for component <C>
  102. #
  103. # .. note::
  104. #
  105. # In most cases none of the above variables will require setting,
  106. # unless multiple Ice versions are available and a specific version
  107. # is required. On Windows, the most recent version of Ice will be
  108. # found through the registry. On Unix, the programs, headers and
  109. # libraries will usually be in standard locations, but Ice_SLICE_DIRS
  110. # might not be automatically detected (commonly known locations are
  111. # searched). All the other variables are defaulted using Ice_HOME,
  112. # if set. It's possible to set Ice_HOME and selectively specify
  113. # alternative locations for the other components; this might be
  114. # required for e.g. newer versions of Visual Studio if the
  115. # heuristics are not sufficient to identify the correct programs and
  116. # libraries for the specific Visual Studio version.
  117. #
  118. # Other variables one may set to control this module are::
  119. #
  120. # Ice_DEBUG - Set to ON to enable debug output from FindIce.
  121. # Written by Roger Leigh <rleigh@codelibre.net>
  122. #=============================================================================
  123. # Copyright 2014-2015 University of Dundee
  124. #
  125. # Distributed under the OSI-approved BSD License (the "License");
  126. # see accompanying file Copyright.txt for details.
  127. #
  128. # This software is distributed WITHOUT ANY WARRANTY; without even the
  129. # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  130. # See the License for more information.
  131. #=============================================================================
  132. # (To distribute this file outside of CMake, substitute the full
  133. # License text for the above reference.)
  134. # The Ice checks are contained in a function due to the large number
  135. # of temporary variables needed.
  136. function(_Ice_FIND)
  137. # Released versions of Ice, including generic short forms
  138. set(ice_versions
  139. 3
  140. 3.6
  141. 3.6.0
  142. 3.5
  143. 3.5.1
  144. 3.5.0
  145. 3.4
  146. 3.4.2
  147. 3.4.1
  148. 3.4.0
  149. 3.3
  150. 3.3.1
  151. 3.3.0)
  152. # Set up search paths, taking compiler into account. Search Ice_HOME,
  153. # with ICE_HOME in the environment as a fallback if unset.
  154. if(Ice_HOME)
  155. list(APPEND ice_roots "${Ice_HOME}")
  156. else()
  157. if(NOT "$ENV{ICE_HOME}" STREQUAL "")
  158. file(TO_CMAKE_PATH "$ENV{ICE_HOME}" NATIVE_PATH)
  159. list(APPEND ice_roots "${NATIVE_PATH}")
  160. set(Ice_HOME "${NATIVE_PATH}"
  161. CACHE PATH "Location of the Ice installation" FORCE)
  162. endif()
  163. endif()
  164. if(CMAKE_SIZEOF_VOID_P EQUAL 8)
  165. # 64-bit path suffix
  166. set(_x64 "/x64")
  167. # 64-bit library directory
  168. set(_lib64 "lib64")
  169. endif()
  170. if(MSVC_VERSION)
  171. # VS 8.0
  172. if(NOT MSVC_VERSION VERSION_LESS 1400 AND MSVC_VERSION VERSION_LESS 1500)
  173. set(vcver "vc80")
  174. set(vcyear "2005")
  175. # VS 9.0
  176. elseif(NOT MSVC_VERSION VERSION_LESS 1500 AND MSVC_VERSION VERSION_LESS 1600)
  177. set(vcver "vc90")
  178. set(vcyear "2008")
  179. # VS 10.0
  180. elseif(NOT MSVC_VERSION VERSION_LESS 1600 AND MSVC_VERSION VERSION_LESS 1700)
  181. set(vcver "vc100")
  182. # VS 11.0
  183. elseif(NOT MSVC_VERSION VERSION_LESS 1700 AND MSVC_VERSION VERSION_LESS 1800)
  184. set(vcver "vc110")
  185. # VS 12.0
  186. elseif(NOT MSVC_VERSION VERSION_LESS 1800 AND MSVC_VERSION VERSION_LESS 1900)
  187. set(vcver "vc120")
  188. # VS 14.0
  189. elseif(NOT MSVC_VERSION VERSION_LESS 1900 AND MSVC_VERSION VERSION_LESS 2000)
  190. set(vcver "vc140")
  191. endif()
  192. endif()
  193. # For compatibility with ZeroC Windows builds.
  194. if(vcver)
  195. # Earlier Ice (3.3) builds don't use vcnnn subdirectories, but are harmless to check.
  196. list(APPEND ice_binary_suffixes "bin/${vcver}${_x64}" "bin/${vcver}")
  197. list(APPEND ice_library_suffixes "lib/${vcver}${_x64}" "lib/${vcver}")
  198. endif()
  199. # Generic 64-bit and 32-bit directories
  200. list(APPEND ice_binary_suffixes "bin${_x64}" "bin")
  201. list(APPEND ice_library_suffixes "${_lib64}" "lib${_x64}" "lib")
  202. list(APPEND ice_include_suffixes "include")
  203. list(APPEND ice_slice_suffixes "slice")
  204. # On Windows, look in the registry for install locations. Different
  205. # versions of Ice install support different compiler versions.
  206. if(vcver)
  207. foreach(ice_version ${ice_versions})
  208. # Ice 3.3 releases use a Visual Studio year suffix and value is
  209. # enclosed in double quotes, though only the leading quote is
  210. # returned by get_filename_component.
  211. unset(ice_location)
  212. if(vcyear)
  213. get_filename_component(ice_location
  214. "[HKEY_LOCAL_MACHINE\\SOFTWARE\\ZeroC\\Ice ${ice_version} for Visual Studio ${vcyear};InstallDir]"
  215. PATH)
  216. if(ice_location AND NOT ("${ice_location}" STREQUAL "/registry" OR "${ice_location}" STREQUAL "/"))
  217. string(REGEX REPLACE "^\"(.*)\"?$" "\\1" ice_location "${ice_location}")
  218. get_filename_component(ice_location "${ice_location}" ABSOLUTE)
  219. else()
  220. unset(ice_location)
  221. endif()
  222. endif()
  223. # Ice 3.4+ releases don't use a suffix
  224. if(NOT ice_location OR "${ice_location}" STREQUAL "/registry")
  225. get_filename_component(ice_location
  226. "[HKEY_LOCAL_MACHINE\\SOFTWARE\\ZeroC\\Ice ${ice_version};InstallDir]"
  227. ABSOLUTE)
  228. endif()
  229. if(ice_location AND NOT "${ice_location}" STREQUAL "/registry")
  230. list(APPEND ice_roots "${ice_location}")
  231. endif()
  232. endforeach()
  233. else()
  234. foreach(ice_version ${ice_versions})
  235. # Prefer 64-bit variants if present (and using a 64-bit compiler)
  236. list(APPEND ice_roots "/opt/Ice-${ice_version}")
  237. endforeach()
  238. endif()
  239. set(db_programs
  240. db_archive
  241. db_checkpoint
  242. db_deadlock
  243. db_dump
  244. db_hotbackup
  245. db_load
  246. db_log_verify
  247. db_printlog
  248. db_recover
  249. db_stat
  250. db_tuner
  251. db_upgrade
  252. db_verify
  253. dumpdb
  254. transformdb)
  255. set(ice_programs
  256. glacier2router
  257. icebox
  258. iceboxadmin
  259. iceboxd
  260. iceboxnet
  261. icegridadmin
  262. icegridnode
  263. icegridnoded
  264. icegridregistry
  265. icegridregistryd
  266. icepatch2calc
  267. icepatch2client
  268. icepatch2server
  269. iceserviceinstall
  270. icestormadmin
  271. icestormmigrate)
  272. set(slice_programs
  273. slice2cpp
  274. slice2cs
  275. slice2freezej
  276. slice2freeze
  277. slice2html
  278. slice2java
  279. slice2js
  280. slice2php
  281. slice2py
  282. slice2rb)
  283. # Find all Ice programs
  284. foreach(program ${db_programs} ${ice_programs} ${slice_programs})
  285. string(TOUPPER "${program}" program_upcase)
  286. set(cache_var "Ice_${program_upcase}_EXECUTABLE")
  287. set(program_var "Ice_${program_upcase}_EXECUTABLE")
  288. find_program("${cache_var}" "${program}"
  289. HINTS ${ice_roots}
  290. PATH_SUFFIXES ${ice_binary_suffixes}
  291. DOC "Ice ${program} executable")
  292. mark_as_advanced(cache_var)
  293. set("${program_var}" "${${cache_var}}" PARENT_SCOPE)
  294. endforeach()
  295. # Get version.
  296. if(Ice_SLICE2CPP_EXECUTABLE)
  297. # Execute in C locale for safety
  298. set(_Ice_SAVED_LC_ALL "$ENV{LC_ALL}")
  299. set(ENV{LC_ALL} C)
  300. execute_process(COMMAND ${Ice_SLICE2CPP_EXECUTABLE} --version
  301. ERROR_VARIABLE Ice_VERSION_SLICE2CPP_FULL
  302. ERROR_STRIP_TRAILING_WHITESPACE)
  303. # restore the previous LC_ALL
  304. set(ENV{LC_ALL} ${_Ice_SAVED_LC_ALL})
  305. # Make short version
  306. string(REGEX REPLACE "^(.*)\\.[^.]*$" "\\1" Ice_VERSION_SLICE2CPP_SHORT "${Ice_VERSION_SLICE2CPP_FULL}")
  307. set(Ice_VERSION "${Ice_VERSION_SLICE2CPP_FULL}" PARENT_SCOPE)
  308. endif()
  309. if(NOT Ice_FIND_QUIETLY)
  310. message(STATUS "Ice version: ${Ice_VERSION_SLICE2CPP_FULL}")
  311. endif()
  312. # Find include directory
  313. find_path(Ice_INCLUDE_DIR
  314. NAMES "Ice/Ice.h"
  315. HINTS ${ice_roots}
  316. PATH_SUFFIXES ${ice_include_suffixes}
  317. DOC "Ice include directory")
  318. set(Ice_INCLUDE_DIR "${Ice_INCLUDE_DIR}" PARENT_SCOPE)
  319. # In common use on Linux, MacOS X (homebrew) and FreeBSD; prefer
  320. # version-specific dir
  321. list(APPEND ice_slice_paths
  322. /usr/local/share /usr/share)
  323. list(APPEND ice_slice_suffixes
  324. "Ice-${Ice_VERSION_SLICE2CPP_FULL}/slice"
  325. "Ice-${Ice_VERSION_SLICE2CPP_SHORT}/slice"
  326. Ice)
  327. # Find slice directory
  328. find_path(Ice_SLICE_DIR
  329. NAMES "Ice/Connection.ice"
  330. HINTS ${ice_roots}
  331. ${ice_slice_paths}
  332. PATH_SUFFIXES ${ice_slice_suffixes}
  333. NO_DEFAULT_PATH
  334. DOC "Ice slice directory")
  335. set(Ice_SLICE_DIR "${Ice_SLICE_DIR}" PARENT_SCOPE)
  336. # Find all Ice libraries
  337. set(Ice_REQUIRED_LIBS_FOUND ON)
  338. foreach(component ${Ice_FIND_COMPONENTS})
  339. string(TOUPPER "${component}" component_upcase)
  340. set(component_cache "Ice_${component_upcase}_LIBRARY")
  341. set(component_found "${component_upcase}_FOUND")
  342. find_library("${component_cache}" "${component}"
  343. HINTS ${ice_roots}
  344. PATH_SUFFIXES ${ice_library_suffixes}
  345. DOC "Ice ${component} library")
  346. mark_as_advanced("${component_cache}")
  347. if(${component_cache})
  348. set("${component_found}" ON)
  349. list(APPEND Ice_LIBRARY "${${component_cache}}")
  350. endif()
  351. mark_as_advanced("${component_found}")
  352. set("${component_cache}" "${${component_cache}}" PARENT_SCOPE)
  353. set("${component_found}" "${${component_found}}" PARENT_SCOPE)
  354. if(${component_found})
  355. if (Ice_FIND_REQUIRED_${component})
  356. list(APPEND Ice_LIBS_FOUND "${component} (required)")
  357. else()
  358. list(APPEND Ice_LIBS_FOUND "${component} (optional)")
  359. endif()
  360. else()
  361. if (Ice_FIND_REQUIRED_${component})
  362. set(Ice_REQUIRED_LIBS_FOUND OFF)
  363. list(APPEND Ice_LIBS_NOTFOUND "${component} (required)")
  364. else()
  365. list(APPEND Ice_LIBS_NOTFOUND "${component} (optional)")
  366. endif()
  367. endif()
  368. endforeach()
  369. set(_Ice_REQUIRED_LIBS_FOUND "${Ice_REQUIRED_LIBS_FOUND}" PARENT_SCOPE)
  370. set(Ice_LIBRARY "${Ice_LIBRARY}" PARENT_SCOPE)
  371. if(NOT Ice_FIND_QUIETLY)
  372. if(Ice_LIBS_FOUND)
  373. message(STATUS "Found the following Ice libraries:")
  374. foreach(found ${Ice_LIBS_FOUND})
  375. message(STATUS " ${found}")
  376. endforeach()
  377. endif()
  378. if(Ice_LIBS_NOTFOUND)
  379. message(STATUS "The following Ice libraries were not found:")
  380. foreach(notfound ${Ice_LIBS_NOTFOUND})
  381. message(STATUS " ${notfound}")
  382. endforeach()
  383. endif()
  384. endif()
  385. if(Ice_DEBUG)
  386. message(STATUS "--------FindIce.cmake search debug--------")
  387. message(STATUS "ICE binary path search order: ${ice_roots}")
  388. message(STATUS "ICE include path search order: ${ice_roots}")
  389. message(STATUS "ICE slice path search order: ${ice_roots} ${ice_slice_paths}")
  390. message(STATUS "ICE library path search order: ${ice_roots}")
  391. message(STATUS "----------------")
  392. endif()
  393. endfunction()
  394. _Ice_FIND()
  395. include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake)
  396. FIND_PACKAGE_HANDLE_STANDARD_ARGS(Ice
  397. FOUND_VAR Ice_FOUND
  398. REQUIRED_VARS Ice_SLICE2CPP_EXECUTABLE
  399. Ice_INCLUDE_DIR
  400. Ice_SLICE_DIR
  401. Ice_LIBRARY
  402. _Ice_REQUIRED_LIBS_FOUND
  403. VERSION_VAR Ice_VERSION
  404. FAIL_MESSAGE "Failed to find all Ice components")
  405. unset(_Ice_REQUIRED_LIBS_FOUND)
  406. if(Ice_FOUND)
  407. set(Ice_INCLUDE_DIRS "${Ice_INCLUDE_DIR}")
  408. set(Ice_SLICE_DIRS "${Ice_SLICE_DIR}")
  409. set(Ice_LIBRARIES "${Ice_LIBRARY}")
  410. foreach(_Ice_component ${Ice_FIND_COMPONENTS})
  411. string(TOUPPER "${_Ice_component}" _Ice_component_upcase)
  412. set(_Ice_component_cache "Ice_${_Ice_component_upcase}_LIBRARY")
  413. set(_Ice_component_lib "Ice_${_Ice_component_upcase}_LIBRARIES")
  414. set(_Ice_component_found "${_Ice_component_upcase}_FOUND")
  415. set(_Ice_imported_target "Ice::${_Ice_component}")
  416. if(${_Ice_component_found})
  417. set("${_Ice_component_lib}" "${${_Ice_component_cache}}")
  418. if(NOT TARGET ${_Ice_imported_target})
  419. add_library(${_Ice_imported_target} UNKNOWN IMPORTED)
  420. set_target_properties(${_Ice_imported_target} PROPERTIES
  421. IMPORTED_LOCATION "${${_Ice_component_cache}}"
  422. INTERFACE_INCLUDE_DIRECTORIES "${Ice_INCLUDE_DIR}")
  423. endif()
  424. endif()
  425. unset(_Ice_component_upcase)
  426. unset(_Ice_component_cache)
  427. unset(_Ice_component_lib)
  428. unset(_Ice_component_found)
  429. unset(_Ice_imported_target)
  430. endforeach()
  431. endif()
  432. if(Ice_DEBUG)
  433. message(STATUS "--------FindIce.cmake results debug--------")
  434. message(STATUS "Ice_VERSION number: ${Ice_VERSION}")
  435. message(STATUS "Ice_HOME directory: ${Ice_HOME}")
  436. message(STATUS "Ice_INCLUDE_DIR directory: ${Ice_INCLUDE_DIR}")
  437. message(STATUS "Ice_SLICE_DIR directory: ${Ice_SLICE_DIR}")
  438. message(STATUS "Ice_LIBRARIES: ${Ice_LIBRARIES}")
  439. message(STATUS "slice2cpp executable: ${Ice_SLICE2CPP_EXECUTABLE}")
  440. message(STATUS "slice2cs executable: ${Ice_SLICE2CS_EXECUTABLE}")
  441. message(STATUS "slice2freezej executable: ${Ice_SLICE2FREEZEJ_EXECUTABLE}")
  442. message(STATUS "slice2freeze executable: ${Ice_SLICE2FREEZE_EXECUTABLE}")
  443. message(STATUS "slice2html executable: ${Ice_SLICE2HTML_EXECUTABLE}")
  444. message(STATUS "slice2java executable: ${Ice_SLICE2JAVA_EXECUTABLE}")
  445. message(STATUS "slice2js executable: ${Ice_SLICE2JS_EXECUTABLE}")
  446. message(STATUS "slice2php executable: ${Ice_SLICE2PHP_EXECUTABLE}")
  447. message(STATUS "slice2py executable: ${Ice_SLICE2PY_EXECUTABLE}")
  448. message(STATUS "slice2rb executable: ${Ice_SLICE2RB_EXECUTABLE}")
  449. message(STATUS "glacier2router executable: ${Ice_GLACIER2ROUTER_EXECUTABLE}")
  450. message(STATUS "icebox executable: ${Ice_ICEBOX_EXECUTABLE}")
  451. message(STATUS "iceboxadmin executable: ${Ice_ICEBOXADMIN_EXECUTABLE}")
  452. message(STATUS "iceboxd executable: ${Ice_ICEBOXD_EXECUTABLE}")
  453. message(STATUS "iceboxnet executable: ${Ice_ICEBOXNET_EXECUTABLE}")
  454. message(STATUS "icegridadmin executable: ${Ice_ICEGRIDADMIN_EXECUTABLE}")
  455. message(STATUS "icegridnode executable: ${Ice_ICEGRIDNODE_EXECUTABLE}")
  456. message(STATUS "icegridnoded executable: ${Ice_ICEGRIDNODED_EXECUTABLE}")
  457. message(STATUS "icegridregistry executable: ${Ice_ICEGRIDREGISTRY_EXECUTABLE}")
  458. message(STATUS "icegridregistryd executable: ${Ice_ICEGRIDREGISTRYD_EXECUTABLE}")
  459. message(STATUS "icepatch2calc executable: ${Ice_ICEPATCH2CALC_EXECUTABLE}")
  460. message(STATUS "icepatch2client executable: ${Ice_ICEPATCH2CLIENT_EXECUTABLE}")
  461. message(STATUS "icepatch2server executable: ${Ice_ICEPATCH2SERVER_EXECUTABLE}")
  462. message(STATUS "iceserviceinstall executable: ${Ice_ICESERVICEINSTALL_EXECUTABLE}")
  463. message(STATUS "icestormadmin executable: ${Ice_ICESTORMADMIN_EXECUTABLE}")
  464. message(STATUS "icestormmigrate executable: ${Ice_ICESTORMMIGRATE_EXECUTABLE}")
  465. message(STATUS "db_archive executable: ${Ice_DB_ARCHIVE_EXECUTABLE}")
  466. message(STATUS "db_checkpoint executable: ${Ice_DB_CHECKPOINT_EXECUTABLE}")
  467. message(STATUS "db_deadlock executable: ${Ice_DB_DEADLOCK_EXECUTABLE}")
  468. message(STATUS "db_dump executable: ${Ice_DB_DUMP_EXECUTABLE}")
  469. message(STATUS "db_hotbackup executable: ${Ice_DB_HOTBACKUP_EXECUTABLE}")
  470. message(STATUS "db_load executable: ${Ice_DB_LOAD_EXECUTABLE}")
  471. message(STATUS "db_log_verify executable: ${Ice_DB_LOG_VERIFY_EXECUTABLE}")
  472. message(STATUS "db_printlog executable: ${Ice_DB_PRINTLOG_EXECUTABLE}")
  473. message(STATUS "db_recover executable: ${Ice_DB_RECOVER_EXECUTABLE}")
  474. message(STATUS "db_stat executable: ${Ice_DB_STAT_EXECUTABLE}")
  475. message(STATUS "db_tuner executable: ${Ice_DB_TUNER_EXECUTABLE}")
  476. message(STATUS "db_upgrade executable: ${Ice_DB_UPGRADE_EXECUTABLE}")
  477. message(STATUS "db_verify executable: ${Ice_DB_VERIFY_EXECUTABLE}")
  478. message(STATUS "dumpdb executable: ${Ice_DUMPDB_EXECUTABLE}")
  479. message(STATUS "transformdb executable: ${Ice_TRANSFORMDB_EXECUTABLE}")
  480. foreach(component ${Ice_FIND_COMPONENTS})
  481. string(TOUPPER "${component}" component_upcase)
  482. set(component_lib "Ice_${component_upcase}_LIBRARIES")
  483. set(component_found "${component_upcase}_FOUND")
  484. message(STATUS "${component} library found: ${${component_found}}")
  485. message(STATUS "${component} library: ${${component_lib}}")
  486. endforeach()
  487. message(STATUS "----------------")
  488. endif()