summaryrefslogtreecommitdiff
path: root/cmake
diff options
context:
space:
mode:
Diffstat (limited to 'cmake')
-rw-r--r--cmake/FindCoCoA.cmake4
-rw-r--r--cmake/deps-utils/CoCoA-patch-0.99712.patch13
2 files changed, 17 insertions, 0 deletions
diff --git a/cmake/FindCoCoA.cmake b/cmake/FindCoCoA.cmake
index 1a4f82e9f..d84bf0f2c 100644
--- a/cmake/FindCoCoA.cmake
+++ b/cmake/FindCoCoA.cmake
@@ -56,6 +56,10 @@ if(NOT CoCoA_FOUND_SYSTEM)
${COMMON_EP_CONFIG}
URL "http://cocoa.dima.unige.it/cocoalib/tgz/CoCoALib-${CoCoA_VERSION}.tgz"
URL_HASH SHA1=873d0b60800cd3852939816ce0aa2e7f72dac4ce
+ # CoCoA requires C++14, but the check does not work with compilers that
+ # default to C++17 or newer. The patch fixes the check.
+ PATCH_COMMAND patch -p1 -d <SOURCE_DIR>
+ -i ${CMAKE_CURRENT_LIST_DIR}/deps-utils/CoCoA-patch-0.99712.patch
BUILD_IN_SOURCE YES
CONFIGURE_COMMAND ./configure --prefix=<INSTALL_DIR>
BUILD_COMMAND ${make_cmd} library
diff --git a/cmake/deps-utils/CoCoA-patch-0.99712.patch b/cmake/deps-utils/CoCoA-patch-0.99712.patch
new file mode 100644
index 000000000..464d39f83
--- /dev/null
+++ b/cmake/deps-utils/CoCoA-patch-0.99712.patch
@@ -0,0 +1,13 @@
+diff --git a/configuration/cxx14.sh b/configuration/cxx14.sh
+index cdbf338..0436983 100755
+--- a/configuration/cxx14.sh
++++ b/configuration/cxx14.sh
+@@ -40,7 +40,7 @@ int main()
+ {
+ int ReturnCode = 0; // will mean c++14 compliant
+ std::cout << "C++ version: " << __cplusplus << std::endl;
+-#if __cplusplus < 201400L
++#if __cplusplus < 201400L || __cplusplus >= 201703L
+ ReturnCode = 1; // NOT C++14 compilant
+ #endif
+ return ReturnCode;
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback