12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- # Distributed under the OSI-approved BSD 3-Clause License. See accompanying
- # file Copyright.txt or https://cmake.org/licensing for details.
- #[=======================================================================[.rst:
- FindWish
- --------
- Find wish installation
- This module finds if TCL is installed and determines where the include
- files and libraries are. It also determines what the name of the
- library is. This code sets the following variables:
- ::
- TK_WISH = the path to the wish executable
- if UNIX is defined, then it will look for the cygwin version first
- #]=======================================================================]
- if(UNIX)
- find_program(TK_WISH cygwish80 )
- endif()
- get_filename_component(TCL_TCLSH_PATH "${TCL_TCLSH}" PATH)
- get_filename_component(TCL_TCLSH_PATH_PARENT "${TCL_TCLSH_PATH}" PATH)
- string(REGEX REPLACE
- "^.*tclsh([0-9]\\.*[0-9]).*$" "\\1" TCL_TCLSH_VERSION "${TCL_TCLSH}")
- get_filename_component(TCL_INCLUDE_PATH_PARENT "${TCL_INCLUDE_PATH}" PATH)
- get_filename_component(TK_INCLUDE_PATH_PARENT "${TK_INCLUDE_PATH}" PATH)
- get_filename_component(TCL_LIBRARY_PATH "${TCL_LIBRARY}" PATH)
- get_filename_component(TCL_LIBRARY_PATH_PARENT "${TCL_LIBRARY_PATH}" PATH)
- string(REGEX REPLACE
- "^.*tcl([0-9]\\.*[0-9]).*$" "\\1" TCL_LIBRARY_VERSION "${TCL_LIBRARY}")
- get_filename_component(TK_LIBRARY_PATH "${TK_LIBRARY}" PATH)
- get_filename_component(TK_LIBRARY_PATH_PARENT "${TK_LIBRARY_PATH}" PATH)
- string(REGEX REPLACE
- "^.*tk([0-9]\\.*[0-9]).*$" "\\1" TK_LIBRARY_VERSION "${TK_LIBRARY}")
- set(TCLTK_POSSIBLE_BIN_PATHS
- "${TCL_INCLUDE_PATH_PARENT}/bin"
- "${TK_INCLUDE_PATH_PARENT}/bin"
- "${TCL_LIBRARY_PATH_PARENT}/bin"
- "${TK_LIBRARY_PATH_PARENT}/bin"
- "${TCL_TCLSH_PATH_PARENT}/bin"
- )
- if(WIN32)
- get_filename_component(
- ActiveTcl_CurrentVersion
- "[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActiveTcl;CurrentVersion]"
- NAME)
- set(TCLTK_POSSIBLE_BIN_PATHS ${TCLTK_POSSIBLE_BIN_PATHS}
- "[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActiveTcl\\${ActiveTcl_CurrentVersion}]/bin"
- "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.6;Root]/bin"
- "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.5;Root]/bin"
- "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.4;Root]/bin"
- "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.3;Root]/bin"
- "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.2;Root]/bin"
- "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.0;Root]/bin"
- )
- endif()
- set(TK_WISH_NAMES
- wish
- wish${TCL_LIBRARY_VERSION} wish${TK_LIBRARY_VERSION} wish${TCL_TCLSH_VERSION}
- wish86 wish8.6
- wish85 wish8.5
- wish84 wish8.4
- wish83 wish8.3
- wish82 wish8.2
- wish80 wish8.0
- )
- find_program(TK_WISH
- NAMES ${TK_WISH_NAMES}
- HINTS ${TCLTK_POSSIBLE_BIN_PATHS}
- )
- mark_as_advanced(TK_WISH)
|