Переглянути джерело

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 13 роки тому
батько
коміт
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_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:
   if(CMAKE_EXTRA_GENERATOR)
     set(gen "${CMAKE_EXTRA_GENERATOR} - ${CMAKE_GENERATOR}")

+ 1 - 14
CMakeExternals/DCMTK.cmake

@@ -29,14 +29,6 @@ if(${add_project})
       endif()
 
   #     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}
       SOURCE_DIR ${CMAKE_BINARY_DIR}/${proj}
       BINARY_DIR ${proj}-build
@@ -47,18 +39,13 @@ if(${add_project})
       UPDATE_COMMAND ""
       BUILD_COMMAND ""
       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_OPENSSL: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_XML:BOOL=OFF  # see github issue #25
         -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
       )
     set(DCMTK_DIR ${ep_install_dir})

+ 1 - 15
CMakeExternals/ITK.cmake

@@ -28,15 +28,6 @@ if(${add_project})
         set(revision_tag ${${proj}_REVISION_TAG})
       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}")
       ExternalProject_Add(${proj}
         SOURCE_DIR ${CMAKE_BINARY_DIR}/${proj}
@@ -48,12 +39,7 @@ if(${add_project})
         INSTALL_COMMAND ""
         CMAKE_GENERATOR ${gen}
         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_SHARED_LIBS:BOOL=ON
           -DITK_USE_REVIEW:BOOL=ON

+ 1 - 14
CMakeExternals/KWStyle.cmake

@@ -17,14 +17,6 @@ if(CTK_USE_KWSTYLE)
   if(CTK_SUPERBUILD)
 
     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}
         SOURCE_DIR ${CMAKE_BINARY_DIR}/${proj}
@@ -35,12 +27,7 @@ if(CTK_USE_KWSTYLE)
         CVS_MODULE "KWStyle"
         CMAKE_GENERATOR ${gen}
         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
           ${proj_DEPENDENCIES}
         )

+ 1 - 14
CMakeExternals/Log4Qt.cmake

@@ -29,15 +29,6 @@ if(${add_project})
         set(revision_tag ${${proj}_REVISION_TAG})
       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}")
       ExternalProject_Add(${proj}
         SOURCE_DIR ${CMAKE_BINARY_DIR}/${proj}
@@ -49,11 +40,7 @@ if(${add_project})
         INSTALL_COMMAND ""
         UPDATE_COMMAND ""
         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}
         DEPENDS
           ${proj_DEPENDENCIES}

+ 1 - 13
CMakeExternals/OpenIGTLink.cmake

@@ -24,14 +24,6 @@ if(${add_project})
   if(CTK_SUPERBUILD)
 
     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}")
       ExternalProject_Add(${proj}
@@ -42,11 +34,7 @@ if(${add_project})
         INSTALL_COMMAND ""
         CMAKE_GENERATOR ${gen}
         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
           ${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}")
       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)
       if(${proj}_REVISION_TAG)
         set(revision_tag ${${proj}_REVISION_TAG})
@@ -70,11 +61,7 @@ if(${add_project})
         UPDATE_COMMAND ""
         BUILD_COMMAND ""
         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}
           -DPYTHON_INCLUDE_DIR:PATH=${PYTHON_INCLUDE_DIR}
           -DPYTHON_LIBRARY:FILEPATH=${PYTHON_LIBRARY}

+ 2 - 18
CMakeExternals/PythonQtGenerator.cmake

@@ -17,14 +17,6 @@ if(CTK_WRAP_PYTHONQT_FULL)
   if(CTK_SUPERBUILD)
 
     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
@@ -53,11 +45,7 @@ if(CTK_WRAP_PYTHONQT_FULL)
           CMAKE_GENERATOR ${gen}
           INSTALL_COMMAND ""
           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}
           DEPENDS
             "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 ""
           INSTALL_COMMAND ""
           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}
           )
       endif()

+ 1 - 14
CMakeExternals/QtSOAP.cmake

@@ -30,15 +30,6 @@ if(${add_project})
         set(revision_tag ${${proj}_REVISION_TAG})
       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}")
       ExternalProject_Add(${proj}
         SOURCE_DIR ${CMAKE_BINARY_DIR}/${proj}
@@ -50,12 +41,8 @@ if(${add_project})
         UPDATE_COMMAND ""
         INSTALL_COMMAND ""
         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_INSTALL_PREFIX:PATH=${ep_install_dir}
-          ${CMAKE_OSX_EXTERNAL_PROJECT_ARGS}
           -DQT_QMAKE_EXECUTABLE:FILEPATH=${QT_QMAKE_EXECUTABLE}
         DEPENDS
           ${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})
       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}")
       ExternalProject_Add(${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 ""
         CMAKE_GENERATOR ${gen}
         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}
           -DVTK_WRAP_TCL:BOOL=OFF
           -DVTK_USE_TK:BOOL=OFF

+ 1 - 14
CMakeExternals/XIP.cmake

@@ -23,14 +23,6 @@ if(${add_project})
   if(CTK_SUPERBUILD)
 
     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}")
       ExternalProject_Add(${proj}
@@ -42,12 +34,7 @@ if(${add_project})
         INSTALL_COMMAND ""
         CMAKE_GENERATOR ${gen}
         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_ITK:BOOL=OFF
         )

+ 1 - 15
CMakeExternals/ZMQ.cmake

@@ -30,15 +30,6 @@ if(${add_project})
         set(revision_tag ${${proj}_REVISION_TAG})
       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}")
       ExternalProject_Add(${proj}
         SOURCE_DIR ${CMAKE_BINARY_DIR}/${proj}
@@ -50,12 +41,7 @@ if(${add_project})
         INSTALL_COMMAND ""
         CMAKE_GENERATOR ${gen}
         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
           -DZMQ_BUILD_DEVICES:BOOL=ON
           -DZMQ_BUILD_PERFORMANCE_TESTS:BOOL=ON

+ 1 - 10
CMakeExternals/qxmlrpc.cmake

@@ -24,15 +24,6 @@ if(${add_project})
   if(CTK_SUPERBUILD)
 
     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}")
       ExternalProject_Add(${proj}
@@ -44,7 +35,7 @@ if(${add_project})
         CMAKE_GENERATOR ${gen}
         INSTALL_COMMAND ""
         CMAKE_ARGS
-          ${ep_common_args}
+          ${ep_common_cache_args}
           -DQT_QMAKE_EXECUTABLE:FILEPATH=${QT_QMAKE_EXECUTABLE}
         DEPENDS
           ${proj_DEPENDENCIES}

+ 11 - 17
SuperBuild.cmake

@@ -116,16 +116,6 @@ string(REPLACE ";" "^" CTK_SUPERBUILD_EP_VARNAMES "${CTK_SUPERBUILD_EP_VARNAMES}
 # 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
 #
 set(proj CTK-Configure)
@@ -134,12 +124,21 @@ ExternalProject_Add(${proj}
   DOWNLOAD_COMMAND ""
   CMAKE_GENERATOR ${gen}
   CMAKE_ARGS
+    -DCTK_SUPERBUILD:BOOL=OFF
+    -DCTK_SUPERBUILD_BINARY_DIR:PATH=${CTK_BINARY_DIR}
     ${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}
-    -DCTK_SUPERBUILD:BOOL=OFF
     -DDOCUMENTATION_ARCHIVES_OUTPUT_DIRECTORY:PATH=${DOCUMENTATION_ARCHIVES_OUTPUT_DIRECTORY}
     -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_LIBRARY_OUTPUT_DIRECTORY:PATH=${CTK_CMAKE_LIBRARY_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_INCLUDE_DIR:STRING=${CTK_INSTALL_INCLUDE_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}
     -DQT_QMAKE_EXECUTABLE:FILEPATH=${QT_QMAKE_EXECUTABLE}
     ${CTK_SUPERBUILD_EP_ARGS}