<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/14a4fdc193b0698fe835c37614a229b1ef0d0b8f">https://github.com/macports/macports-ports/commit/14a4fdc193b0698fe835c37614a229b1ef0d0b8f</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 14a4fdc193b0698fe835c37614a229b1ef0d0b8f
</span>Author: Sergey Fedorov <vital.had@gmail.com>
AuthorDate: Sat Mar 25 05:57:33 2023 +0700

<span style='display:block; white-space:pre;color:#404040;'>    R-lazyNumbers: new port
</span>---
 R/R-lazyNumbers/Portfile                   | 37 ++++++++++++++++++++++++++++++
 R/R-lazyNumbers/files/patch-isinf.diff     | 33 ++++++++++++++++++++++++++
 R/R-lazyNumbers/files/patch-libatomic.diff |  8 +++++++
 3 files changed, 78 insertions(+)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/R/R-lazyNumbers/Portfile b/R/R-lazyNumbers/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..ddd61e7e8ca
</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-lazyNumbers/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,37 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortSystem          1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           R 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+R.setup             cran stla lazyNumbers 1.2.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories-append   math
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers         {@barracuda156 gmail.com:vital.had} openmaintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license             GPL-3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description         Exact floating-point arithmetic
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description    {*}${description}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           rmd160  f63d668b0598c8dfaedd59eda55a78f8f39c66ef \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  1400fa9cf96664cfe9f5895e9fc9d9117299f1b857ac5b09f0439ecdd2918035 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    24528
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_build-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:pkgconfig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib-append  port:gmp \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:mpfr \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:R-BH \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:R-Rcpp \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:R-RcppCGAL \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:R-RcppEigen
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://github.com/stla/lazyNumbers/issues/1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles          patch-isinf.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://github.com/stla/lazyNumbers/issues/2
</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;'>+    patchfiles-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    patch-libatomic.diff
</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-testthat
</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-lazyNumbers/files/patch-isinf.diff b/R/R-lazyNumbers/files/patch-isinf.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..401ca8d8a20
</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-lazyNumbers/files/patch-isinf.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,33 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/lazyNumbers.cpp.orig       2022-11-19 15:43:41.000000000 +0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/lazyNumbers.cpp    2023-03-25 00:41:50.000000000 +0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -238,10 +238,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ bool isLazyNaN_or_Inf(lazyNumber x) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   std::pair<double, double> interval1 = CGAL::to_interval(x);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   bool out = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  if(isinf(interval1.first) && isinf(interval1.second)) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if(std::isinf(interval1.first) && std::isinf(interval1.second)) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     // lazyNumber invx = lazyNumber(1) / x;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     // std::pair<double, double> interval2 = CGAL::to_interval(invx);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    // if(isinf(interval2.first) && isinf(interval2.second)) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    // if(std::isinf(interval2.first) && std::isinf(interval2.second)) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       out = true;
</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;'>+@@ -333,7 +333,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   const size_t n = nv.size();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lazyVector lv(n);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   for(size_t i = 0; i < n; i++) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    if(isinf(nv(i))) { 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if(std::isinf(nv(i))) { 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       if(nv(i) > 0) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         lazyNumber x(Quotient(1) / Quotient(0));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         lv[i] = lazyScalar(x);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -361,7 +361,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   for(size_t j = 0; j < ncol; j++) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     Rcpp::NumericVector colj = nm(Rcpp::_, j);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     for(size_t i = 0; i < nrow; i++) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      if(isinf(colj(i))) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if(std::isinf(colj(i))) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if(colj(i) > 0) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           lazyNumber x(Quotient(1) / Quotient(0));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           lm(i, j) = lazyScalar(x);
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/R/R-lazyNumbers/files/patch-libatomic.diff b/R/R-lazyNumbers/files/patch-libatomic.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..d65110b6206
</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-lazyNumbers/files/patch-libatomic.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/Makevars.in.orig   2022-10-19 14:25:41.000000000 +0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/Makevars.in        2023-03-25 01:24:47.000000000 +0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2,4 +2,4 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ CXX_STD = CXX17
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ PKG_CXXFLAGS = -DCGAL_HEADER_ONLY=1 @PKG_CXXFLAGS@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-PKG_LIBS = @PKG_LIBS@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++PKG_LIBS = @PKG_LIBS@ -latomic
</span></pre><pre style='margin:0'>

</pre>