From 26ef684c7e49f3614d43f9f086cb3dc3fad15dfa Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Christoph=20Gr=C3=BCninger?= <gruenich@dune-project.org>
Date: Fri, 21 Mar 2014 16:49:26 +0100
Subject: [PATCH] [CMake] Add check for HAVE_CONSTEXPR.

---
 cmake/modules/CheckCXX11Features.cmake | 18 ++++++++++++++++++
 config.h.cmake                         |  3 +++
 2 files changed, 21 insertions(+)

diff --git a/cmake/modules/CheckCXX11Features.cmake b/cmake/modules/CheckCXX11Features.cmake
index 7a564304c..7ddaf3021 100644
--- a/cmake/modules/CheckCXX11Features.cmake
+++ b/cmake/modules/CheckCXX11Features.cmake
@@ -324,4 +324,22 @@ check_cxx_source_compiles("
 " HAVE_INITIALIZER_LIST
 )
 
+# constexpr
+check_cxx_source_compiles("
+  constexpr int foo()
+  { return 0; }
+
+  template<int v>
+  struct A
+  {
+    static const int value = v;
+  };
+
+  int main(void)
+  {
+    return A<foo()>::value;
+  }
+" HAVE_CONSTEXPR
+)
+
 cmake_pop_check_state()
diff --git a/config.h.cmake b/config.h.cmake
index 7e1d86719..6972a7da4 100644
--- a/config.h.cmake
+++ b/config.h.cmake
@@ -160,6 +160,9 @@
 /* Define to 1 if initializer list is supported */
 #cmakedefine HAVE_INITIALIZER_LIST 1
 
+/* Define to 1 if C++11 constexpr is supported */
+#cmakedefine HAVE_CONSTEXPR 1
+
 /* Define to if the UMFPack library is available */
 #cmakedefine HAVE_UMFPACK ENABLE_UMFPACK
 
-- 
GitLab