<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/f6de9189e5b332eccb459105735619e6087f7a9e">https://github.com/macports/macports-ports/commit/f6de9189e5b332eccb459105735619e6087f7a9e</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit f6de9189e5b332eccb459105735619e6087f7a9e
</span>Author: Sergey Fedorov <vital.had@gmail.com>
AuthorDate: Thu Jun 15 18:50:22 2023 +0800

<span style='display:block; white-space:pre;color:#404040;'>    R-lightgbm: new port
</span>---
 R/R-lightgbm/Portfile                        | 32 ++++++++++++++++++++++++++++
 R/R-lightgbm/files/patch-unbreak-openmp.diff | 13 +++++++++++
 R/R-lightgbm/files/patch-unbreak-ppc.diff    | 20 +++++++++++++++++
 3 files changed, 65 insertions(+)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/R/R-lightgbm/Portfile b/R/R-lightgbm/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..985ce6b6ea8
</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-lightgbm/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,32 @@
</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 Microsoft lightgbm 3.3.5
</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         nomaintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license             MIT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description         Light Gradient Boosting Machine
</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  e327edb8dff2089cde7b80a300ec62f7eab13473 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  309f7d1575ec1f935ecd2716b3541dbc993357b51ffee65c685322a2e27bdfae \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    1487860
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# OpenMP detected is broken: https://github.com/fabsig/GPBoost/issues/95
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Also it uses an outdated Eigen with yet unfixed Altivec headers.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# For now, just disable vectorization on PowerPC.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles          patch-unbreak-openmp.diff \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    patch-unbreak-ppc.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib-append  port:R-data.table \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:R-jsonlite \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:R-R6
</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;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# FIXME: linking on Rosetta may fail: https://github.com/microsoft/LightGBM/issues/5931
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# No problem when building natively on PowerPC.
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/R/R-lightgbm/files/patch-unbreak-openmp.diff b/R/R-lightgbm/files/patch-unbreak-openmp.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..8331ad489e0
</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-lightgbm/files/patch-unbreak-openmp.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,13 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- configure.orig 2023-06-15 17:12:01.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ configure      2023-06-15 17:16:24.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1799,8 +1799,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if test `uname -s` = "Darwin"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     OPENMP_CXXFLAGS='-Xclang -fopenmp'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if clang --version | grep -i "clang" > dev/null; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     OPENMP_LIB='-lomp'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     # libomp 15.0+ from brew is keg-only (i.e. not symlinked into the standard paths search by the linker),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     # so need to search in other locations.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     # See https://github.com/Homebrew/homebrew-core/issues/112107#issuecomment-1278042927.
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/R/R-lightgbm/files/patch-unbreak-ppc.diff b/R/R-lightgbm/files/patch-unbreak-ppc.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..b5eff8b231d
</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-lightgbm/files/patch-unbreak-ppc.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,20 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/include/Eigen/Core.orig    2023-01-12 06:12:05.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/include/Eigen/Core 2023-06-15 17:13:56.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -199,7 +199,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   #include "src/Core/arch/SSE/TypeCasting.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   #include "src/Core/arch/SSE/MathFunctions.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   #include "src/Core/arch/SSE/Complex.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#elif defined(EIGEN_VECTORIZE_ALTIVEC) || defined(EIGEN_VECTORIZE_VSX)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#elif (defined(EIGEN_VECTORIZE_ALTIVEC) || defined(EIGEN_VECTORIZE_VSX)) && !defined(__APPLE__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   #include "src/Core/arch/AltiVec/PacketMath.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   #include "src/Core/arch/AltiVec/MathFunctions.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   #include "src/Core/arch/AltiVec/Complex.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -335,7 +335,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "src/Core/CoreIterators.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "src/Core/ConditionEstimator.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if EIGEN_ARCH_PPC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if EIGEN_ARCH_PPC && !defined(__APPLE__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "src/Core/arch/AltiVec/MatrixProduct.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span></pre><pre style='margin:0'>

</pre>