Index: Modules/FindTCL.cmake --- Modules/FindTCL.cmake.orig +++ Modules/FindTCL.cmake @@ -49,19 +49,36 @@ include(${CMAKE_CURRENT_LIST_DIR}/CMakeFindFrameworks. include(${CMAKE_CURRENT_LIST_DIR}/FindTclsh.cmake) include(${CMAKE_CURRENT_LIST_DIR}/FindWish.cmake) +set(MODTCL_VERSION $ENV{MODTCL_VERSION}) +set(MODTK_VERSION $ENV{MODTK_VERSION}) +set(MODTCL_INCDIR $ENV{MODTCL_INCDIR}) +set(MODTK_INCDIR $ENV{MODTK_INCDIR}) +set(MODTCL_LIB $ENV{MODTCL_LIB}) +set(MODTK_LIB $ENV{MODTK_LIB}) +set(MODTCL_LIBDIR $ENV{MODTCL_LIBDIR}) +set(MODTK_LIBDIR $ENV{MODTK_LIBDIR}) + if(TCLSH_VERSION_STRING) set(TCL_TCLSH_VERSION "${TCLSH_VERSION_STRING}") else() 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}") + if(MODTCL_VERSION) + set(TCL_TCLSH_VERSION "${MODTCL_VERSION}") + else(MODTCL_VERSION) + string(REGEX REPLACE + "^.*tclsh([0-9]\\.*[0-9]).*$" "\\1" TCL_TCLSH_VERSION "${TCL_TCLSH}") + endif(MODTCL_VERSION) endif() get_filename_component(TK_WISH_PATH "${TK_WISH}" PATH) get_filename_component(TK_WISH_PATH_PARENT "${TK_WISH_PATH}" PATH) -string(REGEX REPLACE - "^.*wish([0-9]\\.*[0-9]).*$" "\\1" TK_WISH_VERSION "${TK_WISH}") +if(MODTK_VERSION) + set(TK_WISH_VERSION "${MODTK_VERSION}") +else(MODTK_VERSION) + string(REGEX REPLACE + "^.*wish([0-9]\\.*[0-9]).*$" "\\1" TK_WISH_VERSION "${TK_WISH}") +endif(MODTK_VERSION) get_filename_component(TCL_INCLUDE_PATH_PARENT "${TCL_INCLUDE_PATH}" PATH) get_filename_component(TK_INCLUDE_PATH_PARENT "${TK_INCLUDE_PATH}" PATH) @@ -76,15 +93,35 @@ get_filename_component(TK_LIBRARY_PATH_PARENT "${TK_LI string(REGEX REPLACE "^.*tk([0-9]\\.*[0-9]).*$" "\\1" TK_LIBRARY_VERSION "${TK_LIBRARY}") -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" -) +set(TCLTK_OPENBSD_LIB_PATHS) +if(MODTCL_LIBDIR) + list(APPEND TCLTK_OPENBSD_LIB_PATHS "${MODTCL_LIBDIR}") +endif() + +if(MODTK_LIBDIR) + list(APPEND TCLTK_OPENBSD_LIB_PATHS "${MODTK_LIBDIR}") +endif() + +if(NOT "${TCLTK_OPENBSD_LIB_PATHS}" STREQUAL "") + set(TCLTK_POSSIBLE_LIB_PATHS + "${TCLTK_OPENBSD_LIB_PATHS}" + ) +else() + 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" + ${LOCALBASE}/lib/tcl/tcl8.6 + ${LOCALBASE}/lib/tcl/tk8.6 + ${LOCALBASE}/lib/tcl/tcl8.5 + ${LOCALBASE}/lib/tcl/tk8.5 + ) +endif() + set(TCLTK_POSSIBLE_LIB_PATH_SUFFIXES lib/tcl/tcl8.7 lib/tcl/tk8.7 @@ -167,16 +204,6 @@ if(Tk_FRAMEWORKS) endif() endif() -set(TCLTK_POSSIBLE_INCLUDE_PATHS - "${TCL_LIBRARY_PATH_PARENT}/include" - "${TK_LIBRARY_PATH_PARENT}/include" - "${TCL_INCLUDE_PATH}" - "${TK_INCLUDE_PATH}" - ${TCL_FRAMEWORK_INCLUDES} - ${TK_FRAMEWORK_INCLUDES} - "${TCL_TCLSH_PATH_PARENT}/include" - "${TK_WISH_PATH_PARENT}/include" - ) set(TCLTK_POSSIBLE_INCLUDE_PATH_SUFFIXES include/tcl${TK_LIBRARY_VERSION} @@ -193,6 +220,36 @@ set(TCLTK_POSSIBLE_INCLUDE_PATH_SUFFIXES include/tcl8.2 include/tcl8.0 ) +set(TCLTK_OPENBSD_INCLUDE_PATHS) + +if(MODTCL_INCDIR) + list(APPEND TCLTK_OPENBSD_INCLUDE_PATHS "${MODTCL_INCDIR}") +endif() + +if(MODTK_INCDIR) + list(APPEND TCLTK_OPENBSD_INCLUDE_PATHS "${MODTK_INCDIR}") +endif() + +if(NOT "${TCLTK_OPENBSD_INCLUDE_PATHS}" STREQUAL "") + set(TCLTK_POSSIBLE_INCLUDE_PATHS + "${TCLTK_OPENBSD_INCLUDE_PATHS}" + ) +else() + set(TCLTK_POSSIBLE_INCLUDE_PATHS + "${TCL_LIBRARY_PATH_PARENT}/include" + "${TK_LIBRARY_PATH_PARENT}/include" + "${TCL_INCLUDE_PATH}" + "${TK_INCLUDE_PATH}" + ${TCL_FRAMEWORK_INCLUDES} + ${TK_FRAMEWORK_INCLUDES} + "${TCL_TCLSH_PATH_PARENT}/include" + "${TK_WISH_PATH_PARENT}/include" + ${LOCALBASE}/include/tcl8.6 + ${LOCALBASE}/include/tk8.6 + ${LOCALBASE}/include/tcl8.5 + ${LOCALBASE}/include/tk8.5 + ) +endif() if(WIN32) set(TCLTK_POSSIBLE_INCLUDE_PATHS ${TCLTK_POSSIBLE_INCLUDE_PATHS}