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
|
#
# Before calling this, ensure that the following variables are set:
#
# VTK_GLOB_LIBS - a path containing a wildcard suitable for globbing
# VTK_INSTALLED_HEADERS - the path containing all headers for the framework
# CMAKE_FRAMEWORK_INSTALL_PREFIX - the path in which to make vtk.framework
#
# Make sure VTK is installed.
if (NOT EXISTS "@VTK_INSTALLED_HEADERS@")
message(FATAL_ERROR
"VTK not installed. Build the source then build the 'install' target.")
endif()
# Ensure a framework path is set
if (NOT EXISTS "@CMAKE_FRAMEWORK_INSTALL_PREFIX@")
message(FATAL_ERROR
"Please specify a CMAKE_FRAMEWORK_INSTALL_PREFIX.")
endif()
# Glob all input libs
file(GLOB VTK_LIB_GLOB
@VTK_GLOB_LIBS@
)
# Set framework output path
set(FRAMEWORK_PATH "@CMAKE_FRAMEWORK_INSTALL_PREFIX@/vtk.framework")
# Do these individually, as we don't want them piped
execute_process(COMMAND mkdir -p "${FRAMEWORK_PATH}")
execute_process(COMMAND mkdir -p "${FRAMEWORK_PATH}/Headers")
execute_process(COMMAND cp -r "@VTK_INSTALLED_HEADERS@/"
"${FRAMEWORK_PATH}/Headers/.")
execute_process(COMMAND libtool -static -o
"${FRAMEWORK_PATH}/vtk_lib"
${VTK_LIB_GLOB})
execute_process(COMMAND lipo -create "${FRAMEWORK_PATH}/vtk_lib"
-output "${FRAMEWORK_PATH}/vtk")
execute_process(COMMAND rm "${FRAMEWORK_PATH}/vtk_lib")
message(STATUS "Created ${FRAMEWORK_PATH}")
|