From: maier Date: Tue, 6 Nov 2012 13:41:53 +0000 (+0000) Subject: Major cleanup in deal.IIConfig.cmake X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=21aa28a70a4d3bec104e89ba46367c812cc08075;p=dealii-svn.git Major cleanup in deal.IIConfig.cmake git-svn-id: https://svn.dealii.org/branches/branch_cmake@27426 0785d39b-7218-0410-832d-ea1e28bc413d --- diff --git a/deal.II/cmake/config/CMakeLists.txt b/deal.II/cmake/config/CMakeLists.txt index 40070a2e39..9182607813 100644 --- a/deal.II/cmake/config/CMakeLists.txt +++ b/deal.II/cmake/config/CMakeLists.txt @@ -28,7 +28,6 @@ CONFIGURE_FILE( # # ########################################################################### - INSTALL(FILES ${CMAKE_SOURCE_DIR}/cmake/macros/macro_deal_ii_initialize_cached_variables.cmake ${CMAKE_SOURCE_DIR}/cmake/macros/macro_deal_ii_invoke_autopilot.cmake @@ -44,24 +43,38 @@ INSTALL(FILES # # ########################################################################### +# +# Populate a bunch of CONFIG_* variables with useful information: +# + +FOREACH(_build ${DEAL_II_BUILD_TYPES}) + IF(_build MATCHES DEBUG) + SET(_keyword "debug") + ELSE() + SET(_keyword "optimized") + ENDIF() -FOREACH(build ${DEAL_II_BUILD_TYPES}) - SET(CONFIG_LIBRARIES_${build} - ${MAKEFILE_LIBRARY_${build}} + SET(CONFIG_LIBRARIES_${_build} + ${MAKEFILE_LIBRARY_${_build}} ${DEAL_II_EXTERNAL_LIBRARIES} - ${DEAL_II_EXTERNAL_LIBRARIES_${build}} - ) - IF(NOT "${CONFIG_LIBRARIES_${build}}" STREQUAL "") - IF(build MATCHES DEBUG) - SET(keyword "debug") - ELSE() - SET(keyword "optmized") - ENDIF() + ${DEAL_II_EXTERNAL_LIBRARIES_${_build}} + ) + + IF(NOT "${CONFIG_LIBRARIES_${_build}}" STREQUAL "") LIST(APPEND CONFIG_LIBRARIES - ${keyword} - ${CONFIG_LIBRARIES_${build}} + ${_keyword} + ${CONFIG_LIBRARIES_${_build}} ) ENDIF() + + SET(CONFIG_TARGET_${_build} + ${DEAL_II_BASE_NAME}${DEAL_II_${_build}_SUFFIX} + ) + + LIST(APPEND CONFIG_TARGET + ${_keyword} + ${DEAL_II_BASE_NAME}${DEAL_II_${_build}_SUFFIX} + ) ENDFOREACH() SET(CONFIG_INCLUDE_DIRS @@ -75,30 +88,24 @@ CONFIGURE_FILE( @ONLY ) -# -# Append target information: -# -FOREACH(build ${DEAL_II_BUILD_TYPES}) - FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/${DEAL_II_PROJECT_CONFIG_NAME}Config.cmake - "SET(DEAL_II_TARGET_${build} \"${DEAL_II_BASE_NAME}${DEAL_II_${build}_SUFFIX}\")\n" - ) -ENDFOREACH() - # # Append feature configuration: # -FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/${DEAL_II_PROJECT_CONFIG_NAME}Config.cmake + +SET(_file ${CMAKE_CURRENT_BINARY_DIR}/${DEAL_II_PROJECT_CONFIG_NAME}Config.cmake) +FILE(APPEND ${_file} "\n\n#\n# Feature configuration:\n#\n\n" ) GET_CMAKE_PROPERTY(res VARIABLES) FOREACH(var ${res}) IF(var MATCHES "DEAL_II_WITH") - FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/${DEAL_II_PROJECT_CONFIG_NAME}Config.cmake + FILE(APPEND ${_file} "SET(${var} ${${var}})\n" ) ENDIF() ENDFOREACH() + CONFIGURE_FILE( ${CMAKE_CURRENT_SOURCE_DIR}/ConfigVersion.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/${DEAL_II_PROJECT_CONFIG_NAME}ConfigVersion.cmake diff --git a/deal.II/cmake/config/Config.cmake.in b/deal.II/cmake/config/Config.cmake.in index 395fcecee4..b09bbf6dc0 100644 --- a/deal.II/cmake/config/Config.cmake.in +++ b/deal.II/cmake/config/Config.cmake.in @@ -32,7 +32,9 @@ SET(DEAL_II_VERSION_MAJOR "@DEAL_II_VERSION_MAJOR@") SET(DEAL_II_VERSION_MINOR "@DEAL_II_VERSION_MINOR@") SET(DEAL_II_PROJECT_CONFIG_NAME "@DEAL_II_PROJECT_CONFIG_NAME@") + SET(DEAL_II_BUILD_TYPE "@CMAKE_BUILD_TYPE@") +SET(DEAL_II_BUILD_TYPES "@DEAL_II_BUILD_TYPES@") # @@ -131,7 +133,13 @@ SET(DEAL_II_LIBRARIES "@CONFIG_LIBRARIES@") # Information about library targets # -SET(DEAL_II_BUILD_TYPES "@DEAL_II_BUILD_TYPES@") - SET(DEAL_II_TARGET_CONFIG "${DEAL_II_PATH}/${DEAL_II_PROJECT_CONFIG_RELDIR}/${DEAL_II_PROJECT_CONFIG_NAME}Targets.cmake") -SET(DEAL_II_TARGET_BASE_NAME "@DEAL_II_BASE_NAME@") + +# The Debug target: +SET(DEAL_II_TARGET_DEBUG "@CONFIG_TARGET_DEBUG@") + +# The Release target: +SET(DEAL_II_TARGET_RELEASE "@CONFIG_TARGET_RELEASE@") + +# Full list of targets with "debug" and "optimized" keywords for easy use with TARGET_LINK_LIBRARIES: +SET(DEAL_II_TARGET "@CONFIG_TARGET@")