From cb55b785d87c4388b82bb97a89e84fce852f781a Mon Sep 17 00:00:00 2001
From: Timo Heister <timo.heister@gmail.com>
Date: Fri, 11 Feb 2022 14:41:18 -0500
Subject: [PATCH] opencascade: fix isfinite error

On M1 opencascade fails to compile, fix by adding a patch.
---
 deal.II-toolchain/packages/opencascade.package |  2 ++
 deal.II-toolchain/patches/oce-isfinite.patch   | 11 +++++++++++
 2 files changed, 13 insertions(+)
 create mode 100644 deal.II-toolchain/patches/oce-isfinite.patch

diff --git a/deal.II-toolchain/packages/opencascade.package b/deal.II-toolchain/packages/opencascade.package
index eae3068..061504a 100644
--- a/deal.II-toolchain/packages/opencascade.package
+++ b/deal.II-toolchain/packages/opencascade.package
@@ -61,6 +61,8 @@ package_specific_patch () {
     cd ${UNPACK_PATH}/${EXTRACTSTO}
     cecho ${WARN} "applying patch for missing xlocale.h for glibc v2.26 and above"
     patch -p0 --forward < ${ORIG_DIR}/${PROJECT}/patches/oce-xlocale.patch || true
+    cecho ${WARN} "applying patch for isfinite"
+    patch -p0 --forward < ${ORIG_DIR}/${PROJECT}/patches/oce-isfinite.patch
 }
 
 package_specific_register () {
diff --git a/deal.II-toolchain/patches/oce-isfinite.patch b/deal.II-toolchain/patches/oce-isfinite.patch
new file mode 100644
index 0000000..1811187
--- /dev/null
+++ b/deal.II-toolchain/patches/oce-isfinite.patch
@@ -0,0 +1,11 @@
+--- src/OSD/OSD.cxx     2022-02-11 14:34:21.726133403 -0500
++++ src.patched/OSD/OSD.cxx     2022-02-11 14:33:27.025817808 -0500
+@@ -18,7 +18,7 @@
+ #include <math.h>
+ #ifdef WNT
+ # define finite _finite
+-#elif defined(isfinite)
++#else
+ # define finite isfinite
+ #endif
+
-- 
2.39.5