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