Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
Sep 13, 2008, 9:32:44 PM (16 years ago)
Author:
landauf
Message:

Many changes in almost all FindXYZ.cmake files. They now throw errors if something wasn't found.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • code/trunk/cmake/FindTCL.cmake

    r1505 r1776  
    55#  TCL_LIBRARY        = path to Tcl library (tcl tcl80)
    66#  TCL_LIBRARY_DEBUG  = path to Tcl library (debug)
    7 #  TCL_STUB_LIBRARY   = path to Tcl stub library
    8 #  TCL_STUB_LIBRARY_DEBUG = path to debug stub library
    97#  TCL_INCLUDE_PATH   = path to where tcl.h can be found
    10 #  TCL_TCLSH          = path to tclsh binary (tcl tcl80)
    11 #  TK_LIBRARY         = path to Tk library (tk tk80 etc)
    12 #  TK_LIBRARY_DEBUG   = path to Tk library (debug)
    13 #  TK_STUB_LIBRARY    = path to Tk stub library
    14 #  TK_STUB_LIBRARY_DEBUG = path to debug Tk stub library
    15 #  TK_INCLUDE_PATH    = path to where tk.h can be found
    16 #  TK_INTERNAL_PATH   = path to where tkWinInt.h is found
    17 #  TK_WISH            = full path to the wish executable
     8#
     9# Several changes and additions by Fabian 'x3n' Landau
     10#                 > www.orxonox.net <
    1811
    19 INCLUDE(CMakeFindFrameworks)
    20 INCLUDE(FindTclsh)
    21 INCLUDE(FindWish)
    22 
    23 GET_FILENAME_COMPONENT(TCL_TCLSH_PATH "${TCL_TCLSH}" PATH)
    24 GET_FILENAME_COMPONENT(TK_WISH_PATH "${TK_WISH}" PATH)
     12IF (TCL_LIBRARY AND TCL_INCLUDE_PATH)
     13  SET(TCL_FIND_QUIETLY TRUE)
     14ENDIF (TCL_LIBRARY AND TCL_INCLUDE_PATH)
    2515
    2616SET (TCLTK_POSSIBLE_LIB_PATHS
     
    3222  "C:/Program Files/Tcl/lib"
    3323  "C:/Tcl/lib"
     24  [HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.5;Root]/lib
    3425  [HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.4;Root]/lib
    35   [HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.3;Root]/lib
    36   [HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.2;Root]/lib
    37   [HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.0;Root]/lib
    3826  /usr/lib
    3927  /usr/local/lib
     
    4533
    4634FIND_LIBRARY(TCL_LIBRARY
    47   NAMES tcl tcl85 tcl8.5 tcl84 tcl8.4 tcl83 tcl8.3 tcl82 tcl8.2 tcl80 tcl8.0
     35  NAMES tcl tcl85 tcl8.5 tcl84 tcl8.4
    4836  PATHS ${TCLTK_POSSIBLE_LIB_PATHS}
    4937)
    5038
    5139FIND_LIBRARY(TCL_LIBRARY_DEBUG
    52   NAMES tcld tcl85d tcl8.5d tcl84d tcl8.4d tcl83d tcl8.3d tcl82d tcl8.2d tcl80d tcl8.0d
     40  NAMES tcld tcl85d tcl8.5d tcl84d tcl8.4d
    5341  PATHS ${TCLTK_POSSIBLE_LIB_PATHS}
    5442)
    55 
    56 FIND_LIBRARY(TCL_STUB_LIBRARY
    57   NAMES tclstub tclstub84 tclstub8.4 tclstub83 tclstub8.3 tclstub82 tclstub8.2 tclstub80 tclstub8.0
    58   PATHS ${TCLTK_POSSIBLE_LIB_PATHS}
    59 )
    60 
    61 FIND_LIBRARY(TCL_STUB_LIBRARY_DEBUG
    62   NAMES tclstubd tclstub84d tclstub8.4d tclstub83d tclstub8.3d tclstub82d tclstub8.2d tclstub80d tclstub8.0d
    63   PATHS ${TCLTK_POSSIBLE_LIB_PATHS}
    64 )
    65 
    66 FIND_LIBRARY(TK_LIBRARY
    67   NAMES tk tk84 tk8.4 tk83 tk8.3 tk82 tk8.2 tk80 tk8.0
    68   PATHS ${TCLTK_POSSIBLE_LIB_PATHS}
    69 )
    70 
    71 FIND_LIBRARY(TK_LIBRARY_DEBUG
    72   NAMES tkd tk84d tk8.4d tk83d tk8.3d tk82d tk8.2d tk80d tk8.0d
    73   PATHS ${TCLTK_POSSIBLE_LIB_PATHS}
    74 )
    75 
    76 FIND_LIBRARY(TK_STUB_LIBRARY
    77   NAMES tkstub tkstub84 tkstub8.4 tkstub83 tkstub8.3 tkstub82 tkstub8.2 tkstub80 tkstub8.0
    78   PATHS ${TCLTK_POSSIBLE_LIB_PATHS}
    79 )
    80 
    81 FIND_LIBRARY(TK_STUB_LIBRARY_DEBUG
    82   NAMES tkstubd tkstub84d tkstub8.4d tkstub83d tkstub8.3d tkstub82d tkstub8.2d tkstub80d tkstub8.0d
    83   PATHS ${TCLTK_POSSIBLE_LIB_PATHS}
    84 )
    85 
    86 CMAKE_FIND_FRAMEWORKS(Tcl)
    87 CMAKE_FIND_FRAMEWORKS(Tk)
    88 
    89 SET(TCL_FRAMEWORK_INCLUDES)
    90 IF(Tcl_FRAMEWORKS)
    91   IF(NOT TCL_INCLUDE_PATH)
    92     FOREACH(dir ${Tcl_FRAMEWORKS})
    93       SET(TCL_FRAMEWORK_INCLUDES ${TCL_FRAMEWORK_INCLUDES} ${dir}/Headers)
    94     ENDFOREACH(dir)
    95   ENDIF(NOT TCL_INCLUDE_PATH)
    96 ENDIF(Tcl_FRAMEWORKS)
    97 
    98 SET(TK_FRAMEWORK_INCLUDES)
    99 IF(Tk_FRAMEWORKS)
    100   IF(NOT TK_INCLUDE_PATH)
    101     FOREACH(dir ${Tk_FRAMEWORKS})
    102       SET(TK_FRAMEWORK_INCLUDES ${TK_FRAMEWORK_INCLUDES}
    103         ${dir}/Headers ${dir}/PrivateHeaders)
    104     ENDFOREACH(dir)
    105   ENDIF(NOT TK_INCLUDE_PATH)
    106 ENDIF(Tk_FRAMEWORKS)
    107 
    108 GET_FILENAME_COMPONENT(TCL_LIBRARY_PATH "${TCL_LIBRARY}" PATH)
    109 GET_FILENAME_COMPONENT(TK_LIBRARY_PATH "${TK_LIBRARY}" PATH)
    11043
    11144SET (TCLTK_POSSIBLE_INCLUDE_PATHS
     
    11447  "${TCL_LIBRARY_PATH}/../include"
    11548  "${TK_LIBRARY_PATH}/../include"
     49  [HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.5;Root]/include
    11650  [HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.4;Root]/include
    117   [HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.3;Root]/include
    118   [HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.2;Root]/include
    119   [HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.0;Root]/include
    12051  "$ENV{ProgramFiles}/Tcl/include"
    12152  "C:/Program Files/Tcl/include"
     
    12354  /usr/include
    12455  /usr/local/include
     56  /usr/include/tcl8.5
    12557  /usr/include/tcl8.4
    126   /usr/include/tcl8.3
    127   /usr/include/tcl8.2
    128   /usr/include/tcl8.0
    12958  ../libs/tcl8.5.2/generic
    13059)
     
    13463)
    13564
    136 FIND_PATH(TK_INCLUDE_PATH tk.h
    137   ${TK_FRAMEWORK_INCLUDES} ${TCLTK_POSSIBLE_INCLUDE_PATHS}
    138 )
    13965
    140 IF (WIN32)
    141   FIND_PATH(TK_INTERNAL_PATH tkWinInt.h
    142     ${TCLTK_POSSIBLE_INCLUDE_PATHS}
    143   )
    144   MARK_AS_ADVANCED(TK_INTERNAL_PATH)
    145 ENDIF(WIN32)
    146 
    147 MARK_AS_ADVANCED(
    148     TCL_TCLSH_PATH
    149     TK_WISH_PATH
    150     TCL_INCLUDE_PATH
    151     TK_INCLUDE_PATH
    152     TCL_LIBRARY
    153     TCL_LIBRARY_DEBUG
    154     TK_LIBRARY 
    155     TK_LIBRARY_DEBUG
    156   TCL_STUB_LIBRARY
    157   TCL_STUB_LIBRARY_DEBUG
    158   TK_STUB_LIBRARY 
    159   TK_STUB_LIBRARY
    160   TK_STUB_LIBRARY_DEBUG
    161   )
     66IF (TCL_LIBRARY AND TCL_INCLUDE_PATH)
     67  IF (NOT TCL_FIND_QUIETLY)
     68    MESSAGE(STATUS "Tcl was found")
     69    IF (VERBOSE_FIND)
     70      MESSAGE (STATUS "  include path: ${TCL_INCLUDE_PATH}")
     71      MESSAGE (STATUS "  library path: ${TCL_LIBRARY}")
     72      MESSAGE (STATUS "  libraries:    tcld tcl85d tcl8.5d tcl84d tcl8.4d")
     73    ENDIF (VERBOSE_FIND)
     74  ENDIF (NOT TCL_FIND_QUIETLY)
     75ELSE (TCL_LIBRARY AND TCL_INCLUDE_PATH)
     76  IF (NOT TCL_INCLUDE_PATH)
     77    MESSAGE(SEND_ERROR "Tcl include path was not found.")
     78  ENDIF (NOT TCL_INCLUDE_PATH)
     79  IF (NOT TCL_LIBRARY )
     80    MESSAGE(SEND_ERROR "Tcl library was not found.")
     81  ENDIF (NOT TCL_LIBRARY )
     82ENDIF (TCL_LIBRARY AND TCL_INCLUDE_PATH)
    16283
    16384IF(TCL_INCLUDE_PATH)
    164   IF(TK_INCLUDE_PATH)
    165     IF(TCL_LIBRARY)
    166       IF(TK_LIBRARY)
    167         SET(TCL_FOUND 1)
    168       ENDIF(TK_LIBRARY)
    169     ENDIF(TCL_LIBRARY)
    170   ENDIF(TK_INCLUDE_PATH)
     85  IF(TCL_LIBRARY)
     86    SET(TCL_FOUND 1)
     87  ENDIF(TCL_LIBRARY)
    17188ENDIF(TCL_INCLUDE_PATH)
Note: See TracChangeset for help on using the changeset viewer.