changeset 2062:e251e813dbb8

vtk patch for building without wine
author Muellni <mmuellen@gmx.de>
date Mon, 31 Oct 2011 09:04:03 +0100
parents 80ed52d8ce84
children 3623b7b968d0
files src/vtk-3-compile-tools.patch src/vtk-4-compile-tools.patch src/vtk.mk
diffstat 3 files changed, 122 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/vtk-3-compile-tools.patch	Mon Oct 31 09:04:03 2011 +0100
@@ -0,0 +1,55 @@
+--- VTK/Utilities/kwsys/CMakeLists.txt	2011-08-24 15:37:12.000000000 +0200
++++ VTK/Utilities/kwsys/CMakeLists.txt	2011-10-30 00:06:06.402085234 +0200
+@@ -937,13 +937,20 @@
+ # file and build it into the library.  Win9x platforms reproduce the
+ # executable into a temporary directory when it is needed.
+ IF(KWSYS_USE_Process)
+-  IF(NOT UNIX)
++  IF(NOT CMAKE_CROSSCOMPILING)
+     # Build the forwarding executable itself and a program that will
+     # encode it into a C file.
+-    ADD_EXECUTABLE(${KWSYS_NAMESPACE}ProcessFwd9x ProcessFwd9x.c)
+     ADD_EXECUTABLE(${KWSYS_NAMESPACE}EncodeExecutable EncodeExecutable.c)
+-    KWSYS_SET_PROPERTY(TARGET ${KWSYS_NAMESPACE}ProcessFwd9x PROPERTY LABELS ${KWSYS_LABELS_EXE})
+     KWSYS_SET_PROPERTY(TARGET ${KWSYS_NAMESPACE}EncodeExecutable PROPERTY LABELS ${KWSYS_LABELS_EXE})
++    EXPORT(TARGETS ${KWSYS_NAMESPACE}EncodeExecutable FILE ${EXPORT_EXECUTABLES_FILE} NAMESPACE "${EXPORT_EXECUTABLES_NAMESPACE}" APPEND)
++    IF(COMPILE_TOOLS_TARGET)
++      ADD_DEPENDENCIES(${COMPILE_TOOLS_TARGET} ${KWSYS_NAMESPACE}EncodeExecutable)
++    ENDIF(COMPILE_TOOLS_TARGET)
++  ENDIF(NOT CMAKE_CROSSCOMPILING)
++  
++  IF(NOT UNIX)  
++    ADD_EXECUTABLE(${KWSYS_NAMESPACE}ProcessFwd9x ProcessFwd9x.c)
++    KWSYS_SET_PROPERTY(TARGET ${KWSYS_NAMESPACE}ProcessFwd9x PROPERTY LABELS ${KWSYS_LABELS_EXE})
+ 
+     # Construct the location of the executable to be encoded.
+     SET(BIN_DIR ${CMAKE_CURRENT_BINARY_DIR})
+@@ -957,24 +964,23 @@
+     ENDIF(CMAKE_BUILD_TOOL MATCHES "make")
+ 
+     # Take advantage of a better custom command syntax if possible.
+-    SET(CMD ${BIN_DIR}${CFG_INTDIR}/${KWSYS_NAMESPACE}EncodeExecutable.exe)
+     SET(FWD ${BIN_DIR}${CFG_INTDIR}/${KWSYS_NAMESPACE}ProcessFwd9x.exe)
+     IF("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 1.6)
+       ADD_CUSTOM_COMMAND(
+         OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${KWSYS_NAMESPACE}ProcessFwd9xEnc.c
+-        COMMAND ${CMD}
++        COMMAND ${KWSYS_NAMESPACE}EncodeExecutable
+         ARGS ${FWD} ${CMAKE_CURRENT_BINARY_DIR}/${KWSYS_NAMESPACE}ProcessFwd9xEnc.c
+              ${KWSYS_NAMESPACE} ProcessFwd9x
+-        DEPENDS ${CMD} ${FWD})
++        DEPENDS ${KWSYS_NAMESPACE}EncodeExecutable ${FWD})
+     ELSE("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 1.6)
+       ADD_CUSTOM_COMMAND(
+         TARGET ${KWSYS_NAMESPACE}
+         SOURCE ${CMAKE_CURRENT_SOURCE_DIR}/ProcessFwd9x.c
+-        COMMAND ${CMD}
++        COMMAND ${KWSYS_NAMESPACE}EncodeExecutable
+         ARGS ${FWD} ${CMAKE_CURRENT_BINARY_DIR}/${KWSYS_NAMESPACE}ProcessFwd9xEnc.c
+              ${KWSYS_NAMESPACE} ProcessFwd9x
+         OUTPUTS ${CMAKE_CURRENT_BINARY_DIR}/${KWSYS_NAMESPACE}ProcessFwd9xEnc.c
+-        DEPENDS ${CMD} ${FWD})
++        DEPENDS ${KWSYS_NAMESPACE}EncodeExecutable ${FWD})
+     ENDIF("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" GREATER 1.6)
+ 
+     # Make sure build occurs in proper order.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/vtk-4-compile-tools.patch	Mon Oct 31 09:04:03 2011 +0100
@@ -0,0 +1,61 @@
+--- VTK/Utilities/vtkhdf5/src/CMakeLists.txt	2011-08-24 15:37:13.000000000 +0200
++++ VTK/Utilities/vtkhdf5/src/CMakeLists.txt	2011-10-30 00:13:16.798098058 +0200
+@@ -572,34 +572,40 @@
+ # Setup the H5Detect utility which generates H5Tinit with platform
+ # specific type checks inside
+ #-----------------------------------------------------------------------------
+-SET (CMD ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}${CFG_INIT}/H5detect${EXE_EXT})
+-IF (XCODE)
+-  SET (CMD "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/\${CONFIGURATION}/H5detect")
+-ENDIF (XCODE)
+-ADD_EXECUTABLE (H5detect ${HDF5_SRC_DIR}/H5detect.c)
+-IF (WIN32)
+-  TARGET_LINK_LIBRARIES (H5detect "ws2_32.lib")
+-ENDIF (WIN32)
++IF(NOT CMAKE_CROSSCOMPILING)
++  ADD_EXECUTABLE (H5detect ${HDF5_SRC_DIR}/H5detect.c)
++  IF (WIN32)
++    TARGET_LINK_LIBRARIES (H5detect "ws2_32.lib")
++  ENDIF (WIN32)
++
++  EXPORT(TARGETS H5detect FILE ${EXPORT_EXECUTABLES_FILE} NAMESPACE "${EXPORT_EXECUTABLES_NAMESPACE}" APPEND)
++  IF(COMPILE_TOOLS_TARGET)
++    ADD_DEPENDENCIES(${COMPILE_TOOLS_TARGET} H5detect)
++  ENDIF(COMPILE_TOOLS_TARGET)
++ENDIF(NOT CMAKE_CROSSCOMPILING)
+ 
+ ADD_CUSTOM_COMMAND (
+     OUTPUT ${HDF5_BINARY_DIR}/H5Tinit.c
+-    COMMAND ${CMD}
++    COMMAND H5detect
+     ARGS > ${HDF5_BINARY_DIR}/H5Tinit.c
+     DEPENDS H5detect
+ )
+ 
+-SET (CMDL ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}${CFG_INIT}/H5make_libsettings${EXE_EXT})
+-IF (XCODE)
+-  SET (CMDL "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/\${CONFIGURATION}/H5make_libsettings")
+-ENDIF (XCODE)
+-ADD_EXECUTABLE (H5make_libsettings ${HDF5_SRC_DIR}/H5make_libsettings.c)
+-IF (WIN32)
+-  TARGET_LINK_LIBRARIES (H5make_libsettings "ws2_32.lib")
+-ENDIF (WIN32)
++IF(NOT CMAKE_CROSSCOMPILING)
++  ADD_EXECUTABLE (H5make_libsettings ${HDF5_SRC_DIR}/H5make_libsettings.c)
++  IF (WIN32)
++    TARGET_LINK_LIBRARIES (H5make_libsettings "ws2_32.lib")
++  ENDIF (WIN32)
+ 
++  EXPORT(TARGETS H5make_libsettings FILE ${EXPORT_EXECUTABLES_FILE} NAMESPACE "${EXPORT_EXECUTABLES_NAMESPACE}" APPEND)
++  IF(COMPILE_TOOLS_TARGET)
++    ADD_DEPENDENCIES(${COMPILE_TOOLS_TARGET} H5make_libsettings)
++  ENDIF(COMPILE_TOOLS_TARGET)
++ENDIF(NOT CMAKE_CROSSCOMPILING)
++  
+ ADD_CUSTOM_COMMAND (
+     OUTPUT ${HDF5_BINARY_DIR}/H5lib_settings.c
+-    COMMAND ${CMDL}
++    COMMAND H5make_libsettings
+     ARGS > ${HDF5_BINARY_DIR}/H5lib_settings.c
+     DEPENDS H5make_libsettings
+ )
--- a/src/vtk.mk	Tue Oct 25 23:32:42 2011 +0200
+++ b/src/vtk.mk	Mon Oct 31 09:04:03 2011 +0100
@@ -16,12 +16,17 @@
 endef
 
 define $(PKG)_BUILD
+
+    # first we need a native build for compile tools
     mkdir '$(1)/native_build'
     cd '$(1)/native_build' && cmake \
         -DCMAKE_INSTALL_PREFIX='$(PREFIX)/$(TARGET)'\
+        -DCMAKE_BUILD_TYPE='Release'\
         ..
+    # only the Utilities need to be built
     $(MAKE) -C '$(1)/native_build/Utilities' -j '$(JOBS)' VERBOSE=1
-    
+        
+    # now for the cross compilation
     mkdir '$(1)/cross_build'
     cd '$(1)/cross_build' && cmake \
         -C '$(1)/TryRunResults.cmake'\