From bd28610ec347b5d302f708ad5b66409fe350340b Mon Sep 17 00:00:00 2001 From: Sebastien Barre Date: Fri, 25 Jan 2008 13:07:59 -0500 Subject: ENH: update for Tcl/Tk 8.5 --- Modules/FindPerl.cmake | 29 ++++++++----- Modules/FindTCL.cmake | 105 ++++++++++++++++++++++++++-------------------- Modules/FindTclStub.cmake | 36 +++++++++------- Modules/FindTclsh.cmake | 36 +++++++++------- Modules/FindWish.cmake | 36 +++++++++------- 5 files changed, 138 insertions(+), 104 deletions(-) diff --git a/Modules/FindPerl.cmake b/Modules/FindPerl.cmake index 0ce3408..b3c5e4f 100644 --- a/Modules/FindPerl.cmake +++ b/Modules/FindPerl.cmake @@ -6,25 +6,32 @@ INCLUDE(FindCygwin) -GET_FILENAME_COMPONENT( - ActivePerl_CurrentVersion - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActivePerl;CurrentVersion]" - NAME) - -FIND_PROGRAM(PERL_EXECUTABLE - perl - "C:/Perl/bin" - [HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActivePerl\\${ActivePerl_CurrentVersion}]/bin +SET(PERL_POSSIBLE_BIN_PATHS ${CYGWIN_INSTALL_PATH}/bin ) +IF(WIN32) + GET_FILENAME_COMPONENT( + ActivePerl_CurrentVersion + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActivePerl;CurrentVersion]" + NAME) + SET(PERL_POSSIBLE_BIN_PATHS ${PERL_POSSIBLE_BIN_PATHS} + "C:/Perl/bin" + [HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActivePerl\\${ActivePerl_CurrentVersion}]/bin + ) +ENDIF(WIN32) + +FIND_PROGRAM(PERL_EXECUTABLE + NAMES perl + PATHS ${PERL_POSSIBLE_BIN_PATHS} + ) # Deprecated settings for compatibility with CMake1.4 -SET (PERL ${PERL_EXECUTABLE}) +SET(PERL ${PERL_EXECUTABLE}) # handle the QUIETLY and REQUIRED arguments and set PERL_FOUND to TRUE if # all listed variables are TRUE INCLUDE(FindPackageHandleStandardArgs) FIND_PACKAGE_HANDLE_STANDARD_ARGS(Perl DEFAULT_MSG PERL_EXECUTABLE) -MARK_AS_ADVANCED( PERL_EXECUTABLE ) +MARK_AS_ADVANCED(PERL_EXECUTABLE) diff --git a/Modules/FindTCL.cmake b/Modules/FindTCL.cmake index 8a6a1ee..6af7ea7 100644 --- a/Modules/FindTCL.cmake +++ b/Modules/FindTCL.cmake @@ -50,31 +50,35 @@ GET_FILENAME_COMPONENT(TCL_LIBRARY_PATH_PARENT "${TCL_LIBRARY_PATH}" PATH) GET_FILENAME_COMPONENT(TK_LIBRARY_PATH "${TK_LIBRARY}" PATH) GET_FILENAME_COMPONENT(TK_LIBRARY_PATH_PARENT "${TK_LIBRARY_PATH}" PATH) -GET_FILENAME_COMPONENT( - ActiveTcl_CurrentVersion - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActiveTcl;CurrentVersion]" - NAME) - -SET (TCLTK_POSSIBLE_LIB_PATHS +SET(TCLTK_POSSIBLE_LIB_PATHS "${TCL_INCLUDE_PATH_PARENT}/lib" "${TK_INCLUDE_PATH_PARENT}/lib" "${TCL_LIBRARY_PATH}" "${TK_LIBRARY_PATH}" "${TCL_TCLSH_PATH_PARENT}/lib" "${TK_WISH_PATH_PARENT}/lib" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActiveTcl\\${ActiveTcl_CurrentVersion}]/lib" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.6;Root]/lib" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.5;Root]/lib" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.4;Root]/lib" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.3;Root]/lib" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.2;Root]/lib" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.0;Root]/lib" - "$ENV{ProgramFiles}/Tcl/Lib" - "C:/Program Files/Tcl/lib" - "C:/Tcl/lib" /usr/lib /usr/local/lib -) + ) + +IF(WIN32) + GET_FILENAME_COMPONENT( + ActiveTcl_CurrentVersion + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActiveTcl;CurrentVersion]" + NAME) + SET(TCLTK_POSSIBLE_LIB_PATHS ${TCLTK_POSSIBLE_LIB_PATHS} + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActiveTcl\\${ActiveTcl_CurrentVersion}]/lib" + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.6;Root]/lib" + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.5;Root]/lib" + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.4;Root]/lib" + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.3;Root]/lib" + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.2;Root]/lib" + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.0;Root]/lib" + "$ENV{ProgramFiles}/Tcl/Lib" + "C:/Program Files/Tcl/lib" + "C:/Tcl/lib" + ) +ENDIF(WIN32) FIND_LIBRARY(TCL_LIBRARY NAMES tcl @@ -85,7 +89,7 @@ FIND_LIBRARY(TCL_LIBRARY tcl82 tcl8.2 tcl80 tcl8.0 PATHS ${TCLTK_POSSIBLE_LIB_PATHS} -) + ) FIND_LIBRARY(TK_LIBRARY NAMES tk @@ -96,7 +100,7 @@ FIND_LIBRARY(TK_LIBRARY tk82 tk8.2 tk80 tk8.0 PATHS ${TCLTK_POSSIBLE_LIB_PATHS} -) + ) CMAKE_FIND_FRAMEWORKS(Tcl) CMAKE_FIND_FRAMEWORKS(Tk) @@ -120,7 +124,7 @@ IF(Tk_FRAMEWORKS) ENDIF(NOT TK_INCLUDE_PATH) ENDIF(Tk_FRAMEWORKS) -SET (TCLTK_POSSIBLE_INCLUDE_PATHS +SET(TCLTK_POSSIBLE_INCLUDE_PATHS "${TCL_LIBRARY_PATH_PARENT}/include" "${TK_LIBRARY_PATH_PARENT}/include" "${TCL_INCLUDE_PATH}" @@ -129,16 +133,6 @@ SET (TCLTK_POSSIBLE_INCLUDE_PATHS ${TK_FRAMEWORK_INCLUDES} "${TCL_TCLSH_PATH_PARENT}/include" "${TK_WISH_PATH_PARENT}/include" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActiveTcl\\${ActiveTcl_CurrentVersion}]/include" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.6;Root]/include" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.5;Root]/include" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.4;Root]/include" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.3;Root]/include" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.2;Root]/include" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.0;Root]/include" - "$ENV{ProgramFiles}/Tcl/include" - "C:/Program Files/Tcl/include" - "C:/Tcl/include" /usr/include /usr/local/include /usr/include/tcl8.6 @@ -147,21 +141,42 @@ SET (TCLTK_POSSIBLE_INCLUDE_PATHS /usr/include/tcl8.3 /usr/include/tcl8.2 /usr/include/tcl8.0 -) - -FIND_PATH(TCL_INCLUDE_PATH tcl.h - ${TCLTK_POSSIBLE_INCLUDE_PATHS} NO_DEFAULT_PATH -) -FIND_PATH(TCL_INCLUDE_PATH tcl.h - ${TCLTK_POSSIBLE_INCLUDE_PATHS} -) - -FIND_PATH(TK_INCLUDE_PATH tk.h - ${TCLTK_POSSIBLE_INCLUDE_PATHS} NO_DEFAULT_PATH -) -FIND_PATH(TK_INCLUDE_PATH tk.h - ${TCLTK_POSSIBLE_INCLUDE_PATHS} -) + ) + +IF(WIN32) + SET(TCLTK_POSSIBLE_INCLUDE_PATHS ${TCLTK_POSSIBLE_INCLUDE_PATHS} + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActiveTcl\\${ActiveTcl_CurrentVersion}]/include" + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.6;Root]/include" + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.5;Root]/include" + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.4;Root]/include" + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.3;Root]/include" + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.2;Root]/include" + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.0;Root]/include" + "$ENV{ProgramFiles}/Tcl/include" + "C:/Program Files/Tcl/include" + "C:/Tcl/include" + ) +ENDIF(WIN32) + +FIND_PATH(TCL_INCLUDE_PATH + NAMES tcl.h + PATHS ${TCLTK_POSSIBLE_INCLUDE_PATHS} + NO_DEFAULT_PATH + ) +FIND_PATH(TCL_INCLUDE_PATH + NAMES tcl.h + PATHS ${TCLTK_POSSIBLE_INCLUDE_PATHS} + ) + +FIND_PATH(TK_INCLUDE_PATH + NAMES tk.h + PATHS ${TCLTK_POSSIBLE_INCLUDE_PATHS} + NO_DEFAULT_PATH + ) +FIND_PATH(TK_INCLUDE_PATH + NAMES tk.h + PATHS ${TCLTK_POSSIBLE_INCLUDE_PATHS} + ) # handle the QUIETLY and REQUIRED arguments and set TCL_FOUND to TRUE if # all listed variables are TRUE diff --git a/Modules/FindTclStub.cmake b/Modules/FindTclStub.cmake index 9faf1fa..05d43da 100644 --- a/Modules/FindTclStub.cmake +++ b/Modules/FindTclStub.cmake @@ -37,32 +37,36 @@ GET_FILENAME_COMPONENT(TCL_LIBRARY_PATH_PARENT "${TCL_LIBRARY_PATH}" PATH) GET_FILENAME_COMPONENT(TK_LIBRARY_PATH "${TK_LIBRARY}" PATH) GET_FILENAME_COMPONENT(TK_LIBRARY_PATH_PARENT "${TK_LIBRARY_PATH}" PATH) -GET_FILENAME_COMPONENT( - ActiveTcl_CurrentVersion - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActiveTcl;CurrentVersion]" - NAME) - -SET (TCLTK_POSSIBLE_LIB_PATHS +SET(TCLTK_POSSIBLE_LIB_PATHS "${TCL_INCLUDE_PATH_PARENT}/lib" "${TK_INCLUDE_PATH_PARENT}/lib" "${TCL_LIBRARY_PATH}" "${TK_LIBRARY_PATH}" "${TCL_TCLSH_PATH_PARENT}/lib" "${TK_WISH_PATH_PARENT}/lib" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActiveTcl\\${ActiveTcl_CurrentVersion}]/lib" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.6;Root]/lib" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.5;Root]/lib" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.4;Root]/lib" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.3;Root]/lib" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.2;Root]/lib" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.0;Root]/lib" - "$ENV{ProgramFiles}/Tcl/Lib" - "C:/Program Files/Tcl/lib" - "C:/Tcl/lib" /usr/lib /usr/local/lib ) +IF(WIN32) + GET_FILENAME_COMPONENT( + ActiveTcl_CurrentVersion + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActiveTcl;CurrentVersion]" + NAME) + SET(TCLTK_POSSIBLE_LIB_PATHS ${TCLTK_POSSIBLE_LIB_PATHS} + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActiveTcl\\${ActiveTcl_CurrentVersion}]/lib" + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.6;Root]/lib" + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.5;Root]/lib" + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.4;Root]/lib" + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.3;Root]/lib" + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.2;Root]/lib" + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.0;Root]/lib" + "$ENV{ProgramFiles}/Tcl/Lib" + "C:/Program Files/Tcl/lib" + "C:/Tcl/lib" + ) +ENDIF(WIN32) + FIND_LIBRARY(TCL_STUB_LIBRARY NAMES tclstub tclstub86 tclstub8.6 diff --git a/Modules/FindTclsh.cmake b/Modules/FindTclsh.cmake index e67c941..c9940cf 100644 --- a/Modules/FindTclsh.cmake +++ b/Modules/FindTclsh.cmake @@ -23,25 +23,29 @@ GET_FILENAME_COMPONENT(TCL_LIBRARY_PATH_PARENT "${TCL_LIBRARY_PATH}" PATH) GET_FILENAME_COMPONENT(TK_LIBRARY_PATH "${TK_LIBRARY}" PATH) GET_FILENAME_COMPONENT(TK_LIBRARY_PATH_PARENT "${TK_LIBRARY_PATH}" PATH) -GET_FILENAME_COMPONENT( - ActiveTcl_CurrentVersion - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActiveTcl;CurrentVersion]" - NAME) - 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" "${TK_WISH_PATH_PARENT}/bin" - "[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" -) + ) + +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(WIN32) SET(TCL_TCLSH_NAMES tclsh @@ -51,16 +55,16 @@ SET(TCL_TCLSH_NAMES tclsh83 tclsh8.3 tclsh82 tclsh8.2 tclsh80 tclsh8.0 -) + ) FIND_PROGRAM(TCL_TCLSH NAMES ${TCL_TCLSH_NAMES} PATHS ${TCLTK_POSSIBLE_BIN_PATHS} NO_DEFAULT_PATH -) + ) FIND_PROGRAM(TCL_TCLSH NAMES ${TCL_TCLSH_NAMES} PATHS ${TCLTK_POSSIBLE_BIN_PATHS} -) + ) # handle the QUIETLY and REQUIRED arguments and set TIFF_FOUND to TRUE if # all listed variables are TRUE diff --git a/Modules/FindWish.cmake b/Modules/FindWish.cmake index ce17aec..4bafe76 100644 --- a/Modules/FindWish.cmake +++ b/Modules/FindWish.cmake @@ -22,25 +22,29 @@ GET_FILENAME_COMPONENT(TCL_LIBRARY_PATH_PARENT "${TCL_LIBRARY_PATH}" PATH) GET_FILENAME_COMPONENT(TK_LIBRARY_PATH "${TK_LIBRARY}" PATH) GET_FILENAME_COMPONENT(TK_LIBRARY_PATH_PARENT "${TK_LIBRARY_PATH}" PATH) -GET_FILENAME_COMPONENT( - ActiveTcl_CurrentVersion - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActiveTcl;CurrentVersion]" - NAME) - 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" - "[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" -) + ) + +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(WIN32) SET(TK_WISH_NAMES wish @@ -50,15 +54,15 @@ SET(TK_WISH_NAMES wish83 wish8.3 wish82 wish8.2 wish80 wish8.0 -) + ) FIND_PROGRAM(TK_WISH NAMES ${TK_WISH_NAMES} PATHS ${TCLTK_POSSIBLE_BIN_PATHS} NO_DEFAULT_PATH -) + ) FIND_PROGRAM(TK_WISH NAMES ${TK_WISH_NAMES} PATHS ${TCLTK_POSSIBLE_BIN_PATHS} -) + ) MARK_AS_ADVANCED(TK_WISH) -- cgit v0.12