Cloned library of VTK-5.0.0 with extra build files for internal package management.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

201 lines
6.3 KiB

# Defined local options to add to VTK Tcl interpreter
#
# Example of such options are:
# VTK_EXTRA_TCL_WRAPPING_CODE which should define extra code that will be
# added to vtkTkAppInitConfigure.h. This code may include something like
#
#
# extern "C" int Vtkmyspecialtcl_Init(Tcl_Interp *interp);
# #define VTK_EXTRA_TCL_INIT \
# if (Vtkmyspecialtcl_Init(interp) == TCL_ERROR) \
# {
# return TCL_ERROR;
# }
#
# and
#
# SET(VTK_EXTRA_TCL_LIBRARIES ${VTK_EXTRA_TCL_LIBRARIES} vtkMySpecialTCL)
INCLUDE (${VTK_BINARY_DIR}/Wrapping/Tcl/LocalUserOptions.cmake OPTIONAL)
INCLUDE (${VTK_SOURCE_DIR}/Wrapping/Tcl/LocalUserOptions.cmake OPTIONAL)
CONFIGURE_FILE(
${VTK_SOURCE_DIR}/Wrapping/Tcl/vtkTkAppInitConfigure.h.in
${VTK_BINARY_DIR}/Wrapping/Tcl/vtkTkAppInitConfigure.h
@ONLY IMMEDIATE
)
IF (NOT TCL_LIBRARY)
MESSAGE("VTK_WRAP_TCL is ON, but the Tcl library was not found. Please set TCL_LIBRARY." "Error")
ENDIF (NOT TCL_LIBRARY)
IF (WIN32)
IF (NOT BORLAND)
IF(NOT CYGWIN)
CONFIGURE_FILE(
${CMAKE_CURRENT_SOURCE_DIR}/resources/vtk.rc.in
${CMAKE_CURRENT_BINARY_DIR}/resources/vtk.rc)
INCLUDE_DIRECTORIES(
"${VTK_TK_RESOURCES_DIR}"
"${CMAKE_CURRENT_SOURCE_DIR}/resources"
"${CMAKE_CURRENT_BINARY_DIR}/resources"
)
SET(VTK_EXE_RESOURCE_FILES
"${CMAKE_CURRENT_BINARY_DIR}/resources/vtk.rc")
ENDIF(NOT CYGWIN)
ENDIF (NOT BORLAND)
ENDIF (WIN32)
# Create the vtk Tcl wrapper executable.
ADD_EXECUTABLE(vtk vtkTkAppInit.cxx ${VTK_EXE_RESOURCE_FILES})
TARGET_LINK_LIBRARIES (vtk
vtkCommonTCL
vtkFilteringTCL
vtkGraphicsTCL
vtkImagingTCL
vtkIOTCL
)
IF(VTK_USE_CARBON)
FIND_PROGRAM(VTK_APPLE_RESOURCE Rez /Developer/Tools)
IF(VTK_APPLE_RESOURCE)
ADD_CUSTOM_COMMAND(
SOURCE vtk
COMMAND ${VTK_APPLE_RESOURCE}
ARGS Carbon.r -o ${VTK_EXECUTABLE_DIR}/vtk
TARGET vtk
)
ENDIF(VTK_APPLE_RESOURCE)
ENDIF(VTK_USE_CARBON)
IF (VTK_USE_RENDERING)
TARGET_LINK_LIBRARIES(vtk vtkRenderingTCL)
TARGET_LINK_LIBRARIES(vtk vtkVolumeRenderingTCL)
TARGET_LINK_LIBRARIES(vtk vtkHybridTCL)
TARGET_LINK_LIBRARIES(vtk vtkWidgetsTCL)
ENDIF (VTK_USE_RENDERING)
IF (VTK_USE_PARALLEL)
TARGET_LINK_LIBRARIES(vtk vtkParallelTCL)
ENDIF (VTK_USE_PARALLEL)
# Link to extra TCL libraries
FOREACH(lib ${VTK_EXTRA_TCL_LIBRARIES})
TARGET_LINK_LIBRARIES(vtk ${lib})
ENDFOREACH(lib)
# Setup install location for vtk tcl scripts.
SET(VTK_TCL_INSTALL_DIR ${VTK_INSTALL_TCL_DIR}/tcl)
IF(NOT VTK_INSTALL_NO_RUNTIME)
INSTALL_TARGETS(${VTK_INSTALL_BIN_DIR} vtk)
ENDIF(NOT VTK_INSTALL_NO_RUNTIME)
# Create the pvtk Tcl wrapper executable with MPI support.
IF (VTK_USE_PARALLEL)
IF (VTK_USE_MPI)
ADD_EXECUTABLE(pvtk vtkParaTkAppInit.cxx ${VTK_EXE_RESOURCE_FILES})
IF(VTK_USE_CARBON)
FIND_PROGRAM(VTK_APPLE_RESOURCE Rez /Developer/Tools)
IF(VTK_APPLE_RESOURCE)
ADD_CUSTOM_COMMAND(
SOURCE pvtk
COMMAND ${VTK_APPLE_RESOURCE}
ARGS Carbon.r -o ${VTK_EXECUTABLE_DIR}/pvtk
TARGET pvtk
)
ENDIF(VTK_APPLE_RESOURCE)
ENDIF(VTK_USE_CARBON)
TARGET_LINK_LIBRARIES (pvtk
vtkCommonTCL
vtkFilteringTCL
vtkGraphicsTCL
vtkImagingTCL
vtkIOTCL
vtkParallelTCL
)
IF (VTK_USE_RENDERING)
TARGET_LINK_LIBRARIES(pvtk vtkHybridTCL)
TARGET_LINK_LIBRARIES(pvtk vtkWidgetsTCL)
TARGET_LINK_LIBRARIES(pvtk vtkVolumeRenderingTCL)
ENDIF (VTK_USE_RENDERING)
IF(NOT VTK_INSTALL_NO_RUNTIME)
INSTALL_TARGETS(${VTK_INSTALL_BIN_DIR} pvtk)
ENDIF(NOT VTK_INSTALL_NO_RUNTIME)
ENDIF (VTK_USE_MPI)
ENDIF (VTK_USE_PARALLEL)
# Process all packages
SUBDIRS(vtk vtkbase vtkcommon vtkfiltering vtkgraphics vtkimaging vtkinteraction vtkio vtktesting)
IF(NOT VTK_INSTALL_NO_DOCUMENTATION)
INSTALL_FILES(${VTK_TCL_INSTALL_DIR} "" README)
ENDIF(NOT VTK_INSTALL_NO_DOCUMENTATION)
IF(NOT VTK_INSTALL_NO_DEVELOPMENT)
INSTALL_FILES(${VTK_TCL_INSTALL_DIR} .c vtktcl)
ENDIF(NOT VTK_INSTALL_NO_DEVELOPMENT)
SET(VTK_TCL_RENDERING_CONFIG "")
SET(VTK_TCL_VOLUMERENDERING_CONFIG "")
SET(VTK_TCL_HYBRID_CONFIG "")
SET(VTK_TCL_WIDGETS_CONFIG "")
SET(VTK_TCL_PARALLEL_CONFIG "")
IF (VTK_USE_PARALLEL)
SET(VTK_TCL_PARALLEL_CONFIG "Parallel")
SUBDIRS(vtkparallel)
ENDIF (VTK_USE_PARALLEL)
IF (VTK_USE_RENDERING)
SET(VTK_TCL_WIDGETS_CONFIG "Widgets")
SUBDIRS(vtkwidgets)
SET(VTK_TCL_HYBRID_CONFIG "Hybrid")
SUBDIRS(vtkhybrid)
SET(VTK_TCL_VOLUMERENDERING_CONFIG "VolumeRendering")
SUBDIRS(vtkvolumerendering)
SET(VTK_TCL_RENDERING_CONFIG "Rendering")
SUBDIRS(vtkrendering)
ENDIF (VTK_USE_RENDERING)
# Configure the Tcl package index files for the build tree.
SET(VTK_TCL_SCRIPT_DIR "${VTK_SOURCE_DIR}/Wrapping/Tcl")
SET(VTK_TCL_LIBNAME_PREFIX "${CMAKE_SHARED_LIBRARY_PREFIX}")
SET(VTK_TCL_CONFIGURATION_TYPES ${CMAKE_CONFIGURATION_TYPES})
IF(VTK_TCL_CONFIGURATION_TYPES)
FOREACH(config ${VTK_TCL_CONFIGURATION_TYPES})
SET(VTK_TCL_LIBRARY_DIR "${LIBRARY_OUTPUT_PATH}/${config}")
CONFIGURE_FILE(${VTK_SOURCE_DIR}/Wrapping/Tcl/pkgIndex.tcl.in
${VTK_BINARY_DIR}/Wrapping/Tcl/${config}/pkgIndex.tcl
@ONLY IMMEDIATE)
ENDFOREACH(config)
ELSE(VTK_TCL_CONFIGURATION_TYPES)
SET(VTK_TCL_LIBRARY_DIR "${LIBRARY_OUTPUT_PATH}")
CONFIGURE_FILE(${VTK_SOURCE_DIR}/Wrapping/Tcl/pkgIndex.tcl.in
${VTK_BINARY_DIR}/Wrapping/Tcl/pkgIndex.tcl
@ONLY IMMEDIATE)
ENDIF(VTK_TCL_CONFIGURATION_TYPES)
# Configure the Tcl package index file for the install tree.
SET(VTK_TCL_SCRIPT_DIR "[file dirname [info script]]/tcl")
IF(UNIX)
SET(VTK_TCL_LIBRARY_DIR "[file dirname [file dirname [info script]]]")
ELSE(UNIX)
SET(VTK_TCL_LIBRARY_DIR
"[file join [file dirname [file dirname [file dirname [info script]]]] bin]")
ENDIF(UNIX)
CONFIGURE_FILE(${VTK_SOURCE_DIR}/Wrapping/Tcl/pkgIndex.tcl.in
${VTK_BINARY_DIR}/Wrapping/Tcl/Install/Hide/pkgIndex.tcl
@ONLY IMMEDIATE)
IF(NOT VTK_INSTALL_NO_RUNTIME)
INSTALL_FILES(${VTK_INSTALL_TCL_DIR} FILES
${VTK_BINARY_DIR}/Wrapping/Tcl/Install/Hide/pkgIndex.tcl)
ENDIF(NOT VTK_INSTALL_NO_RUNTIME)
# Allow the user to customize their build with some local options
#
INCLUDE (${VTK_BINARY_DIR}/Wrapping/Tcl/LocalUserOptions.cmake OPTIONAL)
INCLUDE (${VTK_SOURCE_DIR}/Wrapping/Tcl/LocalUserOptions.cmake OPTIONAL)