From 6779736b56c0204b91c0165850ae7ac9b8d0839b Mon Sep 17 00:00:00 2001 From: Dominic Kempf <dominic.kempf@iwr.uni-heidelberg.de> Date: Wed, 25 Feb 2015 21:11:48 +0100 Subject: [PATCH] Introduce an APPEND parameter on the dune_register_package_flags macro By default, the new falgs are prepended to the list of flags. This way, the most general libraries (whihc are usually checked first) appear at the end of the list. Adding the APPEND option to the call allows to explicitly append them at the end. --- cmake/modules/DuneEnableAllPackages.cmake | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/cmake/modules/DuneEnableAllPackages.cmake b/cmake/modules/DuneEnableAllPackages.cmake index 9af4ec84d..50f44377b 100644 --- a/cmake/modules/DuneEnableAllPackages.cmake +++ b/cmake/modules/DuneEnableAllPackages.cmake @@ -58,7 +58,7 @@ endmacro(dune_enable_all_packages) function(dune_register_package_flags) include(CMakeParseArguments) - set(OPTIONS PREPEND) + set(OPTIONS APPEND) set(SINGLEARGS) set(MULTIARGS COMPILE_DEFINITIONS INCLUDE_DIRS LIBRARIES) cmake_parse_arguments(REGISTRY "${OPTIONS}" "${SINGLEARGS}" "${MULTIARGS}" ${ARGN}) @@ -67,16 +67,16 @@ function(dune_register_package_flags) message(WARNING "Unrecognized arguments for dune_register_package_flags!") endif() - if(REG_PREPEND) - get_property(GLOBAL PROPERTY ALL_PKG_INCS all_incs) - get_property(GLOBAL PROPERTY ALL_PKG_LIBS all_libs) - get_property(GLOBAL PROPERTY ALL_PKG_DEFS all_defs) - set_property(GLOBAL PROPERTY ALL_PKG_INCS "${REGISTRY_INCLUDE_DIRS}" "${all_incs}") - set_property(GLOBAL PROPERTY ALL_PKG_LIBS "${REGISTRY_LIBRARIES}" "${all_libs}") - set_property(GLOBAL PROPERTY ALL_PKG_DEFS "${REGISTRY_COMPILE_DEFINITIONS}" "${all_defs}") - else() + if(REGISTRY_APPEND) set_property(GLOBAL APPEND PROPERTY ALL_PKG_INCS "${REGISTRY_INCLUDE_DIRS}") set_property(GLOBAL APPEND PROPERTY ALL_PKG_LIBS "${REGISTRY_LIBRARIES}") set_property(GLOBAL APPEND PROPERTY ALL_PKG_DEFS "${REGISTRY_COMPILE_DEFINITIONS}") - endif() + else(REGISTRY_APPEND) + get_property(all_incs GLOBAL PROPERTY ALL_PKG_INCS) + get_property(all_libs GLOBAL PROPERTY ALL_PKG_LIBS) + get_property(all_defs GLOBAL PROPERTY ALL_PKG_DEFS) + set_property(GLOBAL PROPERTY ALL_PKG_INCS "${REGISTRY_INCLUDE_DIRS}" "${all_incs}") + set_property(GLOBAL PROPERTY ALL_PKG_LIBS "${REGISTRY_LIBRARIES}" "${all_libs}") + set_property(GLOBAL PROPERTY ALL_PKG_DEFS "${REGISTRY_COMPILE_DEFINITIONS}" "${all_defs}") + endif(REGISTRY_APPEND) endfunction(dune_register_package_flags) -- GitLab