-
Notifications
You must be signed in to change notification settings - Fork 460
/
SlicerBlockInstallTcl.cmake
49 lines (43 loc) · 1.51 KB
/
SlicerBlockInstallTcl.cmake
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# -------------------------------------------------------------------------
# Find and install Tcl
# -------------------------------------------------------------------------
if(Slicer_USE_PYTHONQT_WITH_TCL)
if(NOT Slicer_TCL_DIR)
get_filename_component(Slicer_TCL_DIR "${TCL_INCLUDE_PATH}" PATH)
endif()
if(NOT EXISTS "${Slicer_TCL_DIR}/bin/tclsh${TCL_TK_VERSION_DOT}" AND
NOT EXISTS "${Slicer_TCL_DIR}/bin/tclsh${TCL_TK_VERSION}.exe")
message(STATUS "Not Packaging TCL (cannot found: ${Slicer_TCL_DIR}/bin/tclsh${TCL_TK_VERSION_DOT} or ${Slicer_TCL_DIR}/bin/tclsh${TCL_TK_VERSION}.exe)")
set(Slicer_TCL_DIR "")
endif()
set(TclTk_INSTALL_LIB_DIR ${Slicer_INSTALL_ROOT}lib/TclTk)
if(Slicer_TCL_DIR)
set(extra_exclude_pattern)
if(UNIX)
list(APPEND extra_exclude_pattern
REGEX "/bin" EXCLUDE
)
endif()
if(APPLE)
list(APPEND extra_exclude_pattern
REGEX "lib/libtcl${TCL_TK_VERSION_DOT}.dylib" EXCLUDE
REGEX "lib/libtk${TCL_TK_VERSION_DOT}.dylib" EXCLUDE
)
endif()
install(DIRECTORY
${Slicer_TCL_DIR}/
DESTINATION ${TclTk_INSTALL_LIB_DIR}
USE_SOURCE_PERMISSIONS
REGEX "/man" EXCLUDE
REGEX "/include" EXCLUDE
REGEX "/demos" EXCLUDE
PATTERN "*.a" EXCLUDE
PATTERN "*.sh" EXCLUDE
PATTERN "*.c" EXCLUDE
PATTERN "tclsh${TCL_TK_VERSION_DOT}" EXCLUDE
PATTERN "wish${TCL_TK_VERSION_DOT}" EXCLUDE
PATTERN ".svn" EXCLUDE
${extra_exclude_pattern}
)
endif()
endif()