<pre style='margin:0'>
Herby Gillot (herbygillot) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/16a9317597ee4e84f5f04780cb521eb568b1423d">https://github.com/macports/macports-ports/commit/16a9317597ee4e84f5f04780cb521eb568b1423d</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 16a9317597ee4e84f5f04780cb521eb568b1423d
</span>Author: Sergey Fedorov <vital.had@gmail.com>
AuthorDate: Wed Mar 8 18:05:32 2023 +0800

<span style='display:block; white-space:pre;color:#404040;'>    R-RcppDist: support tests, add OpenMP variant
</span>---
 R/R-RcppDist/Portfile                | 21 +++++++++++++++
 R/R-RcppDist/files/patch-openmp.diff | 51 ++++++++++++++++++++++++++++++++++++
 2 files changed, 72 insertions(+)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/R/R-RcppDist/Portfile b/R/R-RcppDist/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 503b9bd16b4..077238806fe 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/R/R-RcppDist/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/R/R-RcppDist/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -18,3 +18,24 @@ depends_lib-append  port:R-Rcpp \
</span>                     port:R-RcppArmadillo
 
 compilers.setup     require_fortran
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant openmp description "Enable OpenMP support" {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Configure script is broken for OpenMP detection.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # https://github.com/duckmayr/RcppDist/issues/8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    patchfiles      patch-openmp.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    post-patch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if {[string match *gcc* ${configure.compiler}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            reinplace "s,@OPENMP_FLAG@,-fopenmp,g" ${worksrcpath}/src/Makevars.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        } elseif {[string match *clang* ${configure.compiler}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            reinplace "s,@OPENMP_FLAG@,-I${prefix}/include/libomp -fopenmp -L${prefix}/lib/libomp -lomp,g" ${worksrcpath}/src/Makevars.in
</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;'>+    compiler.openmp_version 3.0
</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;'>+depends_test-append port:R-knitr \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:R-rmarkdown \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:R-tinytest
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+test.run            yes
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/R/R-RcppDist/files/patch-openmp.diff b/R/R-RcppDist/files/patch-openmp.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..5277139c932
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/R/R-RcppDist/files/patch-openmp.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,51 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- configure.orig 2018-10-21 21:45:50.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ configure      2023-03-08 17:55:47.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2437,48 +2437,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
</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;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-## Default the OpenMP flag to the empty string.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-## If and only if OpenMP is found, expand to $(SHLIB_OPENMP_CXXFLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-openmp_flag=""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-openmp_cflag=""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-## Check for broken systems produced by a corporation based in Cupertino
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for macOS" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-$as_echo_n "checking for macOS... " >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-RSysinfoName=$("${R_HOME}/bin/Rscript" --vanilla -e 'cat(Sys.info()["sysname"])')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-if test x"${RSysinfoName}" == x"Darwin"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-$as_echo "found" >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: OpenMP unavailable and turned off." >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-$as_echo "$as_me: WARNING: OpenMP unavailable and turned off." >&2;}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   openmp_flag="-DARMA_DONT_USE_OPENMP"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found as on ${RSysinfoName}" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-$as_echo "not found as on ${RSysinfoName}" >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   ## Check for OpenMP
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for OpenMP" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-$as_echo_n "checking for OpenMP... " >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   ## if R has -fopenmp we should be good
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   allldflags=$(${R_HOME}/bin/R CMD config --ldflags)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   hasOpenMP=$(echo ${allldflags} | grep -- -fopenmp)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   if test x"${hasOpenMP}" == x""; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: missing" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-$as_echo "missing" >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    openmp_flag="-DARMA_DONT_USE_OPENMP"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-$as_echo "found" >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    openmp_flag='$(SHLIB_OPENMP_CXXFLAGS)'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    openmp_cflag='$(SHLIB_OPENMP_CFLAGS)'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-OPENMP_CFLAG="${openmp_cflag}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-OPENMP_FLAG="${openmp_flag}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ac_config_files="$ac_config_files src/Makevars"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ cat >confcache <<\_ACEOF
</span></pre><pre style='margin:0'>

</pre>