소스 검색

Pass custom compiler to inner CTK and external project builds.

Setting custom compilers in the CTK superbuild configuration had no
effect on the inner CTK build or external projects. This commit adds
passing CMAKE_C_COMPILER and CMAKE_CXX_COMPILER to the configure step
of CTK and external projects. It further sets up a list of common
CMake cache arguments used for all external projects.
Sascha Zelzer 14 년 전
부모
커밋
97ef63ce32

+ 21 - 0
CMake/ctkBlockCheckDependencies.cmake

@@ -43,6 +43,27 @@ if(CTK_SUPERBUILD)
   set(ep_common_c_flags "${CMAKE_C_FLAGS_INIT} ${ADDITIONAL_C_FLAGS}")
   set(ep_common_c_flags "${CMAKE_C_FLAGS_INIT} ${ADDITIONAL_C_FLAGS}")
   set(ep_common_cxx_flags "${CMAKE_CXX_FLAGS_INIT} ${ADDITIONAL_CXX_FLAGS}")
   set(ep_common_cxx_flags "${CMAKE_CXX_FLAGS_INIT} ${ADDITIONAL_CXX_FLAGS}")
 
 
+  set(ep_common_cache_args
+      -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
+      -DCMAKE_C_COMPILER:FILEPATH=${CMAKE_C_COMPILER}
+      -DCMAKE_CXX_COMPILER:FILEPATH=${CMAKE_CXX_COMPILER}
+      -DCMAKE_C_FLAGS:STRING=${ep_common_c_flags}
+      -DCMAKE_CXX_FLAGS:STRING=${ep_common_cxx_flags}
+      -DCMAKE_INSTALL_PREFIX:PATH=${ep_install_dir}
+      -DBUILD_TESTING:BOOL=OFF
+     )
+
+  # Set CMake OSX variable to pass down the external projects
+  set(CMAKE_OSX_EXTERNAL_PROJECT_ARGS)
+  if(APPLE)
+    list(APPEND CMAKE_OSX_EXTERNAL_PROJECT_ARGS
+         -DCMAKE_OSX_ARCHITECTURES:STRING=${CMAKE_OSX_ARCHITECTURES}
+         -DCMAKE_OSX_SYSROOT:STRING=${CMAKE_OSX_SYSROOT}
+         -DCMAKE_OSX_DEPLOYMENT_TARGET:STRING=${CMAKE_OSX_DEPLOYMENT_TARGET}
+        )
+    list(APPEND ep_common_cache_args ${CMAKE_OSX_EXTERNAL_PROJECT_ARGS})
+  endif()
+
   # Compute -G arg for configuring external projects with the same CMake generator:
   # Compute -G arg for configuring external projects with the same CMake generator:
   if(CMAKE_EXTRA_GENERATOR)
   if(CMAKE_EXTRA_GENERATOR)
     set(gen "${CMAKE_EXTRA_GENERATOR} - ${CMAKE_GENERATOR}")
     set(gen "${CMAKE_EXTRA_GENERATOR} - ${CMAKE_GENERATOR}")

+ 1 - 14
CMakeExternals/DCMTK.cmake

@@ -29,14 +29,6 @@ if(${add_project})
       endif()
       endif()
 
 
   #     message(STATUS "Adding project:${proj}")
   #     message(STATUS "Adding project:${proj}")
-    # Set CMake OSX variable to pass down the external project
-    set(CMAKE_OSX_EXTERNAL_PROJECT_ARGS)
-    if(APPLE)
-      list(APPEND CMAKE_OSX_EXTERNAL_PROJECT_ARGS
-        -DCMAKE_OSX_ARCHITECTURES:STRING=${CMAKE_OSX_ARCHITECTURES}
-        -DCMAKE_OSX_SYSROOT:STRING=${CMAKE_OSX_SYSROOT}
-        -DCMAKE_OSX_DEPLOYMENT_TARGET:STRING=${CMAKE_OSX_DEPLOYMENT_TARGET})
-    endif()
     ExternalProject_Add(${proj}
     ExternalProject_Add(${proj}
       SOURCE_DIR ${CMAKE_BINARY_DIR}/${proj}
       SOURCE_DIR ${CMAKE_BINARY_DIR}/${proj}
       BINARY_DIR ${proj}-build
       BINARY_DIR ${proj}-build
@@ -47,18 +39,13 @@ if(${add_project})
       UPDATE_COMMAND ""
       UPDATE_COMMAND ""
       BUILD_COMMAND ""
       BUILD_COMMAND ""
       CMAKE_CACHE_ARGS
       CMAKE_CACHE_ARGS
-        -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
-        -DCMAKE_CXX_FLAGS:STRING=${ep_common_cxx_flags}
-        -DCMAKE_C_FLAGS:STRING=${ep_common_c_flags}
-        -DCMAKE_INSTALL_PREFIX:PATH=${ep_install_dir}
+        ${ep_common_cache_args}
         -DDCMTK_WITH_ZLIB:BOOL=OFF # see github issue #25
         -DDCMTK_WITH_ZLIB:BOOL=OFF # see github issue #25
         -DDCMTK_WITH_OPENSSL:BOOL=OFF # see github issue #25
         -DDCMTK_WITH_OPENSSL:BOOL=OFF # see github issue #25
         -DDCMTK_WITH_PNG:BOOL=OFF # see github issue #25
         -DDCMTK_WITH_PNG:BOOL=OFF # see github issue #25
         -DDCMTK_WITH_TIFF:BOOL=OFF  # see github issue #25
         -DDCMTK_WITH_TIFF:BOOL=OFF  # see github issue #25
         -DDCMTK_WITH_XML:BOOL=OFF  # see github issue #25
         -DDCMTK_WITH_XML:BOOL=OFF  # see github issue #25
         -DDCMTK_FORCE_FPIC_ON_UNIX:BOOL=ON
         -DDCMTK_FORCE_FPIC_ON_UNIX:BOOL=ON
-        ${CMAKE_OSX_EXTERNAL_PROJECT_ARGS}
-        #-DBUILD_TESTING:BOOL=OFF # Not used
         -DDCMTK_OVERWRITE_WIN32_COMPILER_FLAGS:BOOL=OFF
         -DDCMTK_OVERWRITE_WIN32_COMPILER_FLAGS:BOOL=OFF
       )
       )
     set(DCMTK_DIR ${ep_install_dir})
     set(DCMTK_DIR ${ep_install_dir})

+ 1 - 15
CMakeExternals/ITK.cmake

@@ -28,15 +28,6 @@ if(${add_project})
         set(revision_tag ${${proj}_REVISION_TAG})
         set(revision_tag ${${proj}_REVISION_TAG})
       endif()
       endif()
 
 
-      # Set CMake OSX variable to pass down the external project
-      set(CMAKE_OSX_EXTERNAL_PROJECT_ARGS)
-      if(APPLE)
-        list(APPEND CMAKE_OSX_EXTERNAL_PROJECT_ARGS
-          -DCMAKE_OSX_ARCHITECTURES:STRING=${CMAKE_OSX_ARCHITECTURES}
-          -DCMAKE_OSX_SYSROOT:STRING=${CMAKE_OSX_SYSROOT}
-          -DCMAKE_OSX_DEPLOYMENT_TARGET:STRING=${CMAKE_OSX_DEPLOYMENT_TARGET})
-      endif()
-
   #     message(STATUS "Adding project:${proj}")
   #     message(STATUS "Adding project:${proj}")
       ExternalProject_Add(${proj}
       ExternalProject_Add(${proj}
         SOURCE_DIR ${CMAKE_BINARY_DIR}/${proj}
         SOURCE_DIR ${CMAKE_BINARY_DIR}/${proj}
@@ -48,12 +39,7 @@ if(${add_project})
         INSTALL_COMMAND ""
         INSTALL_COMMAND ""
         CMAKE_GENERATOR ${gen}
         CMAKE_GENERATOR ${gen}
         CMAKE_CACHE_ARGS
         CMAKE_CACHE_ARGS
-          -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
-          -DCMAKE_CXX_FLAGS:STRING=${ep_common_cxx_flags}
-          -DCMAKE_C_FLAGS:STRING=${ep_common_c_flags}
-          -DCMAKE_INSTALL_PREFIX:PATH=${ep_install_dir}
-          ${CMAKE_OSX_EXTERNAL_PROJECT_ARGS}
-          -DBUILD_TESTING:BOOL=OFF
+          ${ep_common_cache_args}
           -DBUILD_EXAMPLES:BOOL=OFF
           -DBUILD_EXAMPLES:BOOL=OFF
           -DBUILD_SHARED_LIBS:BOOL=ON
           -DBUILD_SHARED_LIBS:BOOL=ON
           -DITK_USE_REVIEW:BOOL=ON
           -DITK_USE_REVIEW:BOOL=ON

+ 1 - 14
CMakeExternals/KWStyle.cmake

@@ -17,14 +17,6 @@ if(CTK_USE_KWSTYLE)
   if(CTK_SUPERBUILD)
   if(CTK_SUPERBUILD)
 
 
     if(NOT DEFINED CTK_KWSTYLE_EXECUTABLE)
     if(NOT DEFINED CTK_KWSTYLE_EXECUTABLE)
-      # Set CMake OSX variable to pass down the external project
-      set(CMAKE_OSX_EXTERNAL_PROJECT_ARGS)
-      if(APPLE)
-        list(APPEND CMAKE_OSX_EXTERNAL_PROJECT_ARGS
-          -DCMAKE_OSX_ARCHITECTURES:STRING=${CMAKE_OSX_ARCHITECTURES}
-          -DCMAKE_OSX_SYSROOT:STRING=${CMAKE_OSX_SYSROOT}
-          -DCMAKE_OSX_DEPLOYMENT_TARGET:STRING=${CMAKE_OSX_DEPLOYMENT_TARGET})
-      endif()
 
 
       ExternalProject_Add(${proj}
       ExternalProject_Add(${proj}
         SOURCE_DIR ${CMAKE_BINARY_DIR}/${proj}
         SOURCE_DIR ${CMAKE_BINARY_DIR}/${proj}
@@ -35,12 +27,7 @@ if(CTK_USE_KWSTYLE)
         CVS_MODULE "KWStyle"
         CVS_MODULE "KWStyle"
         CMAKE_GENERATOR ${gen}
         CMAKE_GENERATOR ${gen}
         CMAKE_CACHE_ARGS
         CMAKE_CACHE_ARGS
-          -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
-          -DCMAKE_CXX_FLAGS:STRING=${ep_common_cxx_flags}
-          -DCMAKE_C_FLAGS:STRING=${ep_common_c_flags}
-          -DCMAKE_INSTALL_PREFIX:PATH=${ep_install_dir}
-          ${CMAKE_OSX_EXTERNAL_PROJECT_ARGS}
-          -DBUILD_TESTING:BOOL=OFF
+          ${ep_common_cache_args}
         DEPENDS
         DEPENDS
           ${proj_DEPENDENCIES}
           ${proj_DEPENDENCIES}
         )
         )

+ 1 - 14
CMakeExternals/Log4Qt.cmake

@@ -29,15 +29,6 @@ if(${add_project})
         set(revision_tag ${${proj}_REVISION_TAG})
         set(revision_tag ${${proj}_REVISION_TAG})
       endif()
       endif()
 
 
-      # Set CMake OSX variable to pass down the external project
-      set(CMAKE_OSX_EXTERNAL_PROJECT_ARGS)
-      if(APPLE)
-        list(APPEND CMAKE_OSX_EXTERNAL_PROJECT_ARGS
-          -DCMAKE_OSX_ARCHITECTURES:STRING=${CMAKE_OSX_ARCHITECTURES}
-          -DCMAKE_OSX_SYSROOT:STRING=${CMAKE_OSX_SYSROOT}
-          -DCMAKE_OSX_DEPLOYMENT_TARGET:STRING=${CMAKE_OSX_DEPLOYMENT_TARGET})
-      endif()
-
   #     message(STATUS "Adding project:${proj}")
   #     message(STATUS "Adding project:${proj}")
       ExternalProject_Add(${proj}
       ExternalProject_Add(${proj}
         SOURCE_DIR ${CMAKE_BINARY_DIR}/${proj}
         SOURCE_DIR ${CMAKE_BINARY_DIR}/${proj}
@@ -49,11 +40,7 @@ if(${add_project})
         INSTALL_COMMAND ""
         INSTALL_COMMAND ""
         UPDATE_COMMAND ""
         UPDATE_COMMAND ""
         CMAKE_CACHE_ARGS
         CMAKE_CACHE_ARGS
-          -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
-          -DCMAKE_CXX_FLAGS:STRING=${ep_common_cxx_flags}
-          #-DCMAKE_C_FLAGS:STRING=${ep_common_c_flags} # Not used
-          -DCMAKE_INSTALL_PREFIX:PATH=${ep_install_dir}
-          ${CMAKE_OSX_EXTERNAL_PROJECT_ARGS}
+          ${ep_common_cache_args}
           -DQT_QMAKE_EXECUTABLE:FILEPATH=${QT_QMAKE_EXECUTABLE}
           -DQT_QMAKE_EXECUTABLE:FILEPATH=${QT_QMAKE_EXECUTABLE}
         DEPENDS
         DEPENDS
           ${proj_DEPENDENCIES}
           ${proj_DEPENDENCIES}

+ 1 - 13
CMakeExternals/OpenIGTLink.cmake

@@ -24,14 +24,6 @@ if(${add_project})
   if(CTK_SUPERBUILD)
   if(CTK_SUPERBUILD)
 
 
     if(NOT DEFINED OpenIGTLink_DIR)
     if(NOT DEFINED OpenIGTLink_DIR)
-      # Set CMake OSX variable to pass down the external project
-      set(CMAKE_OSX_EXTERNAL_PROJECT_ARGS)
-      if(APPLE)
-        list(APPEND CMAKE_OSX_EXTERNAL_PROJECT_ARGS
-          -DCMAKE_OSX_ARCHITECTURES:STRING=${CMAKE_OSX_ARCHITECTURES}
-          -DCMAKE_OSX_SYSROOT:STRING=${CMAKE_OSX_SYSROOT}
-          -DCMAKE_OSX_DEPLOYMENT_TARGET:STRING=${CMAKE_OSX_DEPLOYMENT_TARGET})
-      endif()
 
 
     #   message(STATUS "Adding project:${proj}")
     #   message(STATUS "Adding project:${proj}")
       ExternalProject_Add(${proj}
       ExternalProject_Add(${proj}
@@ -42,11 +34,7 @@ if(${add_project})
         INSTALL_COMMAND ""
         INSTALL_COMMAND ""
         CMAKE_GENERATOR ${gen}
         CMAKE_GENERATOR ${gen}
         CMAKE_CACHE_ARGS
         CMAKE_CACHE_ARGS
-          -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
-          -DCMAKE_CXX_FLAGS:STRING=${ep_common_cxx_flags}
-          -DCMAKE_C_FLAGS:STRING=${ep_common_c_flags}
-          -DCMAKE_INSTALL_PREFIX:PATH=${ep_install_dir}
-          ${CMAKE_OSX_EXTERNAL_PROJECT_ARGS}
+          ${ep_common_cache_args}
         DEPENDS
         DEPENDS
           ${proj_DEPENDENCIES}
           ${proj_DEPENDENCIES}
         )
         )

+ 1 - 14
CMakeExternals/PythonQt.cmake

@@ -46,15 +46,6 @@ if(${add_project})
         message(FATAL_ERROR "error: Python is required to build ${PROJECT_NAME}")
         message(FATAL_ERROR "error: Python is required to build ${PROJECT_NAME}")
       endif()
       endif()
 
 
-      # Set CMake OSX variable to pass down the external project
-      set(CMAKE_OSX_EXTERNAL_PROJECT_ARGS)
-      if(APPLE)
-        list(APPEND CMAKE_OSX_EXTERNAL_PROJECT_ARGS
-          -DCMAKE_OSX_ARCHITECTURES:STRING=${CMAKE_OSX_ARCHITECTURES}
-          -DCMAKE_OSX_SYSROOT:STRING=${CMAKE_OSX_SYSROOT}
-          -DCMAKE_OSX_DEPLOYMENT_TARGET:STRING=${CMAKE_OSX_DEPLOYMENT_TARGET})
-      endif()
-
       set(revision_tag 7e1e07f34b2420e420e2858e5ea9a49fe1e0d235)
       set(revision_tag 7e1e07f34b2420e420e2858e5ea9a49fe1e0d235)
       if(${proj}_REVISION_TAG)
       if(${proj}_REVISION_TAG)
         set(revision_tag ${${proj}_REVISION_TAG})
         set(revision_tag ${${proj}_REVISION_TAG})
@@ -70,11 +61,7 @@ if(${add_project})
         UPDATE_COMMAND ""
         UPDATE_COMMAND ""
         BUILD_COMMAND ""
         BUILD_COMMAND ""
         CMAKE_CACHE_ARGS
         CMAKE_CACHE_ARGS
-          -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
-          -DCMAKE_CXX_FLAGS:STRING=${ep_common_cxx_flags}
-          #-DCMAKE_C_FLAGS:STRING=${ep_common_c_flags} # Not used
-          -DCMAKE_INSTALL_PREFIX:PATH=${ep_install_dir}
-          ${CMAKE_OSX_EXTERNAL_PROJECT_ARGS}
+          ${ep_common_cache_args}
           -DQT_QMAKE_EXECUTABLE:FILEPATH=${QT_QMAKE_EXECUTABLE}
           -DQT_QMAKE_EXECUTABLE:FILEPATH=${QT_QMAKE_EXECUTABLE}
           -DPYTHON_INCLUDE_DIR:PATH=${PYTHON_INCLUDE_DIR}
           -DPYTHON_INCLUDE_DIR:PATH=${PYTHON_INCLUDE_DIR}
           -DPYTHON_LIBRARY:FILEPATH=${PYTHON_LIBRARY}
           -DPYTHON_LIBRARY:FILEPATH=${PYTHON_LIBRARY}

+ 2 - 18
CMakeExternals/PythonQtGenerator.cmake

@@ -17,14 +17,6 @@ if(CTK_WRAP_PYTHONQT_FULL)
   if(CTK_SUPERBUILD)
   if(CTK_SUPERBUILD)
 
 
     if(NOT DEFINED PYTHONQTGENERATOR_EXECUTABLE)
     if(NOT DEFINED PYTHONQTGENERATOR_EXECUTABLE)
-      # Set CMake OSX variable to pass down the external project
-      set(CMAKE_OSX_EXTERNAL_PROJECT_ARGS)
-      if(APPLE)
-        list(APPEND CMAKE_OSX_EXTERNAL_PROJECT_ARGS
-          -DCMAKE_OSX_ARCHITECTURES:STRING=${CMAKE_OSX_ARCHITECTURES}
-          -DCMAKE_OSX_SYSROOT:STRING=${CMAKE_OSX_SYSROOT}
-          -DCMAKE_OSX_DEPLOYMENT_TARGET:STRING=${CMAKE_OSX_DEPLOYMENT_TARGET})
-      endif()
 
 
       #
       #
       # PythonQtGenerator is the tool allowing to generate the PythonQt decorators using
       # PythonQtGenerator is the tool allowing to generate the PythonQt decorators using
@@ -53,11 +45,7 @@ if(CTK_WRAP_PYTHONQT_FULL)
           CMAKE_GENERATOR ${gen}
           CMAKE_GENERATOR ${gen}
           INSTALL_COMMAND ""
           INSTALL_COMMAND ""
           CMAKE_CACHE_ARGS
           CMAKE_CACHE_ARGS
-            -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
-            -DCMAKE_CXX_FLAGS:STRING=${ep_common_cxx_flags}
-            -DCMAKE_C_FLAGS:STRING=${ep_common_c_flags}
-            -DCMAKE_INSTALL_PREFIX:PATH=${ep_install_dir}
-            ${CMAKE_OSX_EXTERNAL_PROJECT_ARGS}
+            ${ep_common_cache_args}
             -DQT_QMAKE_EXECUTABLE:FILEPATH=${QT_QMAKE_EXECUTABLE}
             -DQT_QMAKE_EXECUTABLE:FILEPATH=${QT_QMAKE_EXECUTABLE}
           DEPENDS
           DEPENDS
             "PythonQt" # To make sure the generator code is checked out, let's depend on PythonQt
             "PythonQt" # To make sure the generator code is checked out, let's depend on PythonQt
@@ -80,11 +68,7 @@ if(CTK_WRAP_PYTHONQT_FULL)
           UPDATE_COMMAND ""
           UPDATE_COMMAND ""
           INSTALL_COMMAND ""
           INSTALL_COMMAND ""
           CMAKE_CACHE_ARGS
           CMAKE_CACHE_ARGS
-            -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
-            -DCMAKE_CXX_FLAGS:STRING=${ep_common_cxx_flags}
-            -DCMAKE_C_FLAGS:STRING=${ep_common_c_flags}
-            -DCMAKE_INSTALL_PREFIX:PATH=${ep_install_dir}
-            ${CMAKE_OSX_EXTERNAL_PROJECT_ARGS}
+            ${ep_common_cache_args}
             -DQT_QMAKE_EXECUTABLE:FILEPATH=${QT_QMAKE_EXECUTABLE}
             -DQT_QMAKE_EXECUTABLE:FILEPATH=${QT_QMAKE_EXECUTABLE}
           )
           )
       endif()
       endif()

+ 1 - 14
CMakeExternals/QtSOAP.cmake

@@ -30,15 +30,6 @@ if(${add_project})
         set(revision_tag ${${proj}_REVISION_TAG})
         set(revision_tag ${${proj}_REVISION_TAG})
       endif()
       endif()
 
 
-      # Set CMake OSX variable to pass down the external project
-      set(CMAKE_OSX_EXTERNAL_PROJECT_ARGS)
-      if(APPLE)
-        list(APPEND CMAKE_OSX_EXTERNAL_PROJECT_ARGS
-          -DCMAKE_OSX_ARCHITECTURES:STRING=${CMAKE_OSX_ARCHITECTURES}
-          -DCMAKE_OSX_SYSROOT:STRING=${CMAKE_OSX_SYSROOT}
-          -DCMAKE_OSX_DEPLOYMENT_TARGET:STRING=${CMAKE_OSX_DEPLOYMENT_TARGET})
-      endif()
-
       #     message(STATUS "Adding project:${proj}")
       #     message(STATUS "Adding project:${proj}")
       ExternalProject_Add(${proj}
       ExternalProject_Add(${proj}
         SOURCE_DIR ${CMAKE_BINARY_DIR}/${proj}
         SOURCE_DIR ${CMAKE_BINARY_DIR}/${proj}
@@ -50,12 +41,8 @@ if(${add_project})
         UPDATE_COMMAND ""
         UPDATE_COMMAND ""
         INSTALL_COMMAND ""
         INSTALL_COMMAND ""
         CMAKE_CACHE_ARGS
         CMAKE_CACHE_ARGS
-          -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
-          -DCMAKE_CXX_FLAGS:STRING=${ep_common_cxx_flags}
-          -DCMAKE_C_FLAGS:STRING=${ep_common_c_flags}
+          ${ep_common_cache_args}
           -DCMAKE_RUNTIME_OUTPUT_DIRECTORY:STRING=${CTK_CMAKE_RUNTIME_OUTPUT_DIRECTORY}
           -DCMAKE_RUNTIME_OUTPUT_DIRECTORY:STRING=${CTK_CMAKE_RUNTIME_OUTPUT_DIRECTORY}
-          -DCMAKE_INSTALL_PREFIX:PATH=${ep_install_dir}
-          ${CMAKE_OSX_EXTERNAL_PROJECT_ARGS}
           -DQT_QMAKE_EXECUTABLE:FILEPATH=${QT_QMAKE_EXECUTABLE}
           -DQT_QMAKE_EXECUTABLE:FILEPATH=${QT_QMAKE_EXECUTABLE}
         DEPENDS
         DEPENDS
           ${proj_DEPENDENCIES}
           ${proj_DEPENDENCIES}

+ 1 - 15
CMakeExternals/VTK.cmake

@@ -42,15 +42,6 @@ if(${add_project} OR CTK_LIB_Scripting/Python/Core_PYTHONQT_USE_VTK)
         set(revision_tag ${${proj}_REVISION_TAG})
         set(revision_tag ${${proj}_REVISION_TAG})
       endif()
       endif()
 
 
-      # Set CMake OSX variable to pass down the external project
-      set(CMAKE_OSX_EXTERNAL_PROJECT_ARGS)
-      if(APPLE)
-        list(APPEND CMAKE_OSX_EXTERNAL_PROJECT_ARGS
-          -DCMAKE_OSX_ARCHITECTURES:STRING=${CMAKE_OSX_ARCHITECTURES}
-          -DCMAKE_OSX_SYSROOT:STRING=${CMAKE_OSX_SYSROOT}
-          -DCMAKE_OSX_DEPLOYMENT_TARGET:STRING=${CMAKE_OSX_DEPLOYMENT_TARGET})
-      endif()
-
   #     message(STATUS "Adding project:${proj}")
   #     message(STATUS "Adding project:${proj}")
       ExternalProject_Add(${proj}
       ExternalProject_Add(${proj}
         SOURCE_DIR ${CMAKE_BINARY_DIR}/${proj}
         SOURCE_DIR ${CMAKE_BINARY_DIR}/${proj}
@@ -62,12 +53,7 @@ if(${add_project} OR CTK_LIB_Scripting/Python/Core_PYTHONQT_USE_VTK)
         INSTALL_COMMAND ""
         INSTALL_COMMAND ""
         CMAKE_GENERATOR ${gen}
         CMAKE_GENERATOR ${gen}
         CMAKE_CACHE_ARGS
         CMAKE_CACHE_ARGS
-          -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
-          -DCMAKE_CXX_FLAGS:STRING=${ep_common_cxx_flags}
-          -DCMAKE_C_FLAGS:STRING=${ep_common_c_flags}
-          -DCMAKE_INSTALL_PREFIX:PATH=${ep_install_dir}
-          ${CMAKE_OSX_EXTERNAL_PROJECT_ARGS}
-          -DBUILD_TESTING:BOOL=OFF
+          ${ep_common_cache_args}
           ${additional_vtk_cmakevars}
           ${additional_vtk_cmakevars}
           -DVTK_WRAP_TCL:BOOL=OFF
           -DVTK_WRAP_TCL:BOOL=OFF
           -DVTK_USE_TK:BOOL=OFF
           -DVTK_USE_TK:BOOL=OFF

+ 1 - 14
CMakeExternals/XIP.cmake

@@ -23,14 +23,6 @@ if(${add_project})
   if(CTK_SUPERBUILD)
   if(CTK_SUPERBUILD)
 
 
     if(NOT DEFINED XIP_DIR)
     if(NOT DEFINED XIP_DIR)
-      # Set CMake OSX variable to pass down the external project
-      set(CMAKE_OSX_EXTERNAL_PROJECT_ARGS)
-      if(APPLE)
-        list(APPEND CMAKE_OSX_EXTERNAL_PROJECT_ARGS
-          -DCMAKE_OSX_ARCHITECTURES:STRING=${CMAKE_OSX_ARCHITECTURES}
-          -DCMAKE_OSX_SYSROOT:STRING=${CMAKE_OSX_SYSROOT}
-          -DCMAKE_OSX_DEPLOYMENT_TARGET:STRING=${CMAKE_OSX_DEPLOYMENT_TARGET})
-      endif()
 
 
       #   message(STATUS "Adding project:${proj}")
       #   message(STATUS "Adding project:${proj}")
       ExternalProject_Add(${proj}
       ExternalProject_Add(${proj}
@@ -42,12 +34,7 @@ if(${add_project})
         INSTALL_COMMAND ""
         INSTALL_COMMAND ""
         CMAKE_GENERATOR ${gen}
         CMAKE_GENERATOR ${gen}
         CMAKE_CACHE_ARGS
         CMAKE_CACHE_ARGS
-          -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
-          -DCMAKE_CXX_FLAGS:STRING=${ep_common_cxx_flags}
-          -DCMAKE_C_FLAGS:STRING=${ep_common_c_flags}
-          -DCMAKE_INSTALL_PREFIX:PATH=${ep_install_dir}
-          ${CMAKE_OSX_EXTERNAL_PROJECT_ARGS}
-          -DBUILD_TESTING:BOOL=OFF
+          ${ep_common_cache_args}
           -DHAS_VTK:BOOL=OFF
           -DHAS_VTK:BOOL=OFF
           -DHAS_ITK:BOOL=OFF
           -DHAS_ITK:BOOL=OFF
         )
         )

+ 1 - 15
CMakeExternals/ZMQ.cmake

@@ -30,15 +30,6 @@ if(${add_project})
         set(revision_tag ${${proj}_REVISION_TAG})
         set(revision_tag ${${proj}_REVISION_TAG})
       endif()
       endif()
 
 
-      # Set CMake OSX variable to pass down the external project
-      set(CMAKE_OSX_EXTERNAL_PROJECT_ARGS)
-      if(APPLE)
-        list(APPEND CMAKE_OSX_EXTERNAL_PROJECT_ARGS
-          -DCMAKE_OSX_ARCHITECTURES:STRING=${CMAKE_OSX_ARCHITECTURES}
-          -DCMAKE_OSX_SYSROOT:STRING=${CMAKE_OSX_SYSROOT}
-          -DCMAKE_OSX_DEPLOYMENT_TARGET:STRING=${CMAKE_OSX_DEPLOYMENT_TARGET})
-      endif()
-
     #   message(STATUS "Adding project:${proj}")
     #   message(STATUS "Adding project:${proj}")
       ExternalProject_Add(${proj}
       ExternalProject_Add(${proj}
         SOURCE_DIR ${CMAKE_BINARY_DIR}/${proj}
         SOURCE_DIR ${CMAKE_BINARY_DIR}/${proj}
@@ -50,12 +41,7 @@ if(${add_project})
         INSTALL_COMMAND ""
         INSTALL_COMMAND ""
         CMAKE_GENERATOR ${gen}
         CMAKE_GENERATOR ${gen}
         CMAKE_CACHE_ARGS
         CMAKE_CACHE_ARGS
-          -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
-          -DCMAKE_CXX_FLAGS:STRING=${ep_common_cxx_flags}
-          -DCMAKE_C_FLAGS:STRING=${ep_common_c_flags}
-          -DCMAKE_INSTALL_PREFIX:PATH=${ep_install_dir}
-          ${CMAKE_OSX_EXTERNAL_PROJECT_ARGS}
-          -DBUILD_TESTING:BOOL=OFF
+          ${ep_common_cache_args}
           -DBUILD_SHARED_LIBS:BOOL=ON
           -DBUILD_SHARED_LIBS:BOOL=ON
           -DZMQ_BUILD_DEVICES:BOOL=ON
           -DZMQ_BUILD_DEVICES:BOOL=ON
           -DZMQ_BUILD_PERFORMANCE_TESTS:BOOL=ON
           -DZMQ_BUILD_PERFORMANCE_TESTS:BOOL=ON

+ 1 - 10
CMakeExternals/qxmlrpc.cmake

@@ -24,15 +24,6 @@ if(${add_project})
   if(CTK_SUPERBUILD)
   if(CTK_SUPERBUILD)
 
 
     if(NOT DEFINED qxmlrpc_DIR)
     if(NOT DEFINED qxmlrpc_DIR)
-    
-      # Set CMake OSX variable to pass down the external project
-      set(CMAKE_OSX_EXTERNAL_PROJECT_ARGS)
-      if(APPLE)
-        list(APPEND CMAKE_OSX_EXTERNAL_PROJECT_ARGS
-          -DCMAKE_OSX_ARCHITECTURES:STRING=${CMAKE_OSX_ARCHITECTURES}
-          -DCMAKE_OSX_SYSROOT:STRING=${CMAKE_OSX_SYSROOT}
-          -DCMAKE_OSX_DEPLOYMENT_TARGET:STRING=${CMAKE_OSX_DEPLOYMENT_TARGET})
-      endif()
       
       
       #message(STATUS "Adding project:${proj}")
       #message(STATUS "Adding project:${proj}")
       ExternalProject_Add(${proj}
       ExternalProject_Add(${proj}
@@ -44,7 +35,7 @@ if(${add_project})
         CMAKE_GENERATOR ${gen}
         CMAKE_GENERATOR ${gen}
         INSTALL_COMMAND ""
         INSTALL_COMMAND ""
         CMAKE_ARGS
         CMAKE_ARGS
-          ${ep_common_args}
+          ${ep_common_cache_args}
           -DQT_QMAKE_EXECUTABLE:FILEPATH=${QT_QMAKE_EXECUTABLE}
           -DQT_QMAKE_EXECUTABLE:FILEPATH=${QT_QMAKE_EXECUTABLE}
         DEPENDS
         DEPENDS
           ${proj_DEPENDENCIES}
           ${proj_DEPENDENCIES}

+ 11 - 17
SuperBuild.cmake

@@ -116,16 +116,6 @@ string(REPLACE ";" "^" CTK_SUPERBUILD_EP_VARNAMES "${CTK_SUPERBUILD_EP_VARNAMES}
 # endforeach()
 # endforeach()
 
 
 #-----------------------------------------------------------------------------
 #-----------------------------------------------------------------------------
-# Set CMake OSX variable to pass down the external project
-set(CMAKE_OSX_EXTERNAL_PROJECT_ARGS)
-if(APPLE)
-  list(APPEND CMAKE_OSX_EXTERNAL_PROJECT_ARGS
-    -DCMAKE_OSX_ARCHITECTURES:STRING=${CMAKE_OSX_ARCHITECTURES}
-    -DCMAKE_OSX_SYSROOT:STRING=${CMAKE_OSX_SYSROOT}
-    -DCMAKE_OSX_DEPLOYMENT_TARGET:STRING=${CMAKE_OSX_DEPLOYMENT_TARGET})
-endif()
-
-#-----------------------------------------------------------------------------
 # CTK Configure
 # CTK Configure
 #
 #
 set(proj CTK-Configure)
 set(proj CTK-Configure)
@@ -134,12 +124,21 @@ ExternalProject_Add(${proj}
   DOWNLOAD_COMMAND ""
   DOWNLOAD_COMMAND ""
   CMAKE_GENERATOR ${gen}
   CMAKE_GENERATOR ${gen}
   CMAKE_ARGS
   CMAKE_ARGS
+    -DCTK_SUPERBUILD:BOOL=OFF
+    -DCTK_SUPERBUILD_BINARY_DIR:PATH=${CTK_BINARY_DIR}
     ${ctk_superbuild_boolean_args}
     ${ctk_superbuild_boolean_args}
+    -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
+    -DCMAKE_C_COMPILER:FILEPATH=${CMAKE_C_COMPILER}
+    -DCMAKE_CXX_COMPILER:FILEPATH=${CMAKE_CXX_COMPILER}
+    -DCMAKE_CXX_FLAGS_INIT:STRING=${CMAKE_CXX_FLAGS_INIT}
+    -DCMAKE_C_FLAGS_INIT:STRING=${CMAKE_C_FLAGS_INIT}
+    -DADDITIONAL_C_FLAGS:STRING=${ADDITIONAL_C_FLAGS}
+    -DADDITIONAL_CXX_FLAGS:STRING=${ADDITIONAL_CXX_FLAGS}
+    -DCMAKE_INSTALL_PREFIX:PATH=${ep_install_dir}
+    -DCTK_BUILD_SHARED_LIBS:BOOL=${CTK_BUILD_SHARED_LIBS}
     ${CMAKE_OSX_EXTERNAL_PROJECT_ARGS}
     ${CMAKE_OSX_EXTERNAL_PROJECT_ARGS}
-    -DCTK_SUPERBUILD:BOOL=OFF
     -DDOCUMENTATION_ARCHIVES_OUTPUT_DIRECTORY:PATH=${DOCUMENTATION_ARCHIVES_OUTPUT_DIRECTORY}
     -DDOCUMENTATION_ARCHIVES_OUTPUT_DIRECTORY:PATH=${DOCUMENTATION_ARCHIVES_OUTPUT_DIRECTORY}
     -DDOXYGEN_EXECUTABLE:FILEPATH=${DOXYGEN_EXECUTABLE}
     -DDOXYGEN_EXECUTABLE:FILEPATH=${DOXYGEN_EXECUTABLE}
-    -DCTK_SUPERBUILD_BINARY_DIR:PATH=${CTK_BINARY_DIR}
     -DCTK_CMAKE_ARCHIVE_OUTPUT_DIRECTORY:PATH=${CTK_CMAKE_ARCHIVE_OUTPUT_DIRECTORY}
     -DCTK_CMAKE_ARCHIVE_OUTPUT_DIRECTORY:PATH=${CTK_CMAKE_ARCHIVE_OUTPUT_DIRECTORY}
     -DCTK_CMAKE_LIBRARY_OUTPUT_DIRECTORY:PATH=${CTK_CMAKE_LIBRARY_OUTPUT_DIRECTORY}
     -DCTK_CMAKE_LIBRARY_OUTPUT_DIRECTORY:PATH=${CTK_CMAKE_LIBRARY_OUTPUT_DIRECTORY}
     -DCTK_CMAKE_RUNTIME_OUTPUT_DIRECTORY:PATH=${CTK_CMAKE_RUNTIME_OUTPUT_DIRECTORY}
     -DCTK_CMAKE_RUNTIME_OUTPUT_DIRECTORY:PATH=${CTK_CMAKE_RUNTIME_OUTPUT_DIRECTORY}
@@ -148,11 +147,6 @@ ExternalProject_Add(${proj}
     -DCTK_INSTALL_QTPLUGIN_DIR:STRING=${CTK_INSTALL_QTPLUGIN_DIR}
     -DCTK_INSTALL_QTPLUGIN_DIR:STRING=${CTK_INSTALL_QTPLUGIN_DIR}
     -DCTK_INSTALL_INCLUDE_DIR:STRING=${CTK_INSTALL_INCLUDE_DIR}
     -DCTK_INSTALL_INCLUDE_DIR:STRING=${CTK_INSTALL_INCLUDE_DIR}
     -DCTK_INSTALL_DOC_DIR:STRING=${CTK_INSTALL_DOC_DIR}
     -DCTK_INSTALL_DOC_DIR:STRING=${CTK_INSTALL_DOC_DIR}
-    -DCTK_BUILD_SHARED_LIBS:BOOL=${CTK_BUILD_SHARED_LIBS}
-    -DCMAKE_INSTALL_PREFIX:PATH=${ep_install_dir}
-    -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
-    -DCTK_CXX_FLAGS:STRING=${CTK_CXX_FLAGS}
-    -DCTK_C_FLAGS:STRING=${CTK_C_FLAGS}
     -DCTK_EXTERNAL_LIBRARY_DIRS:STRING=${CTK_EXTERNAL_LIBRARY_DIRS}
     -DCTK_EXTERNAL_LIBRARY_DIRS:STRING=${CTK_EXTERNAL_LIBRARY_DIRS}
     -DQT_QMAKE_EXECUTABLE:FILEPATH=${QT_QMAKE_EXECUTABLE}
     -DQT_QMAKE_EXECUTABLE:FILEPATH=${QT_QMAKE_EXECUTABLE}
     ${CTK_SUPERBUILD_EP_ARGS}
     ${CTK_SUPERBUILD_EP_ARGS}