<pre style='margin:0'>
Eric A. Borisch (eborisch) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/30a4c674ed207981f0c7bf9c5f1121ccffd1aa3a">https://github.com/macports/macports-ports/commit/30a4c674ed207981f0c7bf9c5f1121ccffd1aa3a</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new 30a4c674ed2 eigen3: Include upstream OpenMP fix. (#8883)
</span>30a4c674ed2 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 30a4c674ed207981f0c7bf9c5f1121ccffd1aa3a
</span>Author: Eric A. Borisch <borisch.eric@mayo.edu>
AuthorDate: Wed Oct 21 15:36:39 2020 -0500

<span style='display:block; white-space:pre;color:#404040;'>    eigen3: Include upstream OpenMP fix. (#8883)
</span>---
 math/eigen3/Portfile              |  3 ++-
 math/eigen3/files/openmp_fix.diff | 43 +++++++++++++++++++++++++++++++++++++++
 2 files changed, 45 insertions(+), 1 deletion(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/math/eigen3/Portfile b/math/eigen3/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index ac257d52f3a..b261d940eba 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/math/eigen3/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/math/eigen3/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -19,9 +19,10 @@ depends_build-append    port:pkgconfig
</span> 
 if {${subport} eq ${name}} {
     gitlab.setup        libeigen eigen 3.3.8
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    revision            0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    revision            1
</span>     conflicts           eigen3-devel
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    patchfiles          openmp_fix.diff
</span>     checksums \
         rmd160  af037485f91b43ef4e6622b14ba9c0de1b521679 \
         sha256  0215c6593c4ee9f1f7f28238c4e8995584ebf3b556e9dbf933d84feb98d5b9ef \
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/math/eigen3/files/openmp_fix.diff b/math/eigen3/files/openmp_fix.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..b407e82dc40
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/math/eigen3/files/openmp_fix.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,43 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://gitlab.com/libeigen/eigen/-/issues/2011
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- Eigen/src/Core/products/Parallelizer.h.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ Eigen/src/Core/products/Parallelizer.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -132,8 +132,7 @@ void parallelize_gemm(const Functor& func, Index rows, Index cols, Index depth,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ei_declare_aligned_stack_constructed_variable(GemmParallelInfo<Index>,info,threads,0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  int errorCount = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  #pragma omp parallel num_threads(threads) reduction(+: errorCount)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  #pragma omp parallel num_threads(threads)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     Index i = omp_get_thread_num();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     // Note that the actual number of threads might be lower than the number of request ones.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -152,14 +151,11 @@ void parallelize_gemm(const Functor& func, Index rows, Index cols, Index depth,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     info[i].lhs_start = r0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     info[i].lhs_length = actualBlockRows;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    EIGEN_TRY {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      if(transpose) func(c0, actualBlockCols, 0, rows, info);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      else          func(0, rows, c0, actualBlockCols, info);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    } EIGEN_CATCH(...) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      ++errorCount;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if(transpose)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      func(c0, actualBlockCols, 0, rows, info);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      func(0, rows, c0, actualBlockCols, info);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  if (errorCount) EIGEN_THROW_X(Eigen::eigen_assert_exception());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- test/CMakeLists.txt.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ test/CMakeLists.txt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -163,7 +163,7 @@ ei_add_test(constructor)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ei_add_test(linearstructure)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ei_add_test(integer_types)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ei_add_test(unalignedcount)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-if(NOT EIGEN_TEST_NO_EXCEPTIONS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if(NOT EIGEN_TEST_NO_EXCEPTIONS AND NOT EIGEN_TEST_OPENMP)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ei_add_test(exceptions)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ endif()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ei_add_test(redux)
</span></pre><pre style='margin:0'>

</pre>