<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/ba9f713ada2257c2fe9d1ad0ed3602996d318bac">https://github.com/macports/macports-ports/commit/ba9f713ada2257c2fe9d1ad0ed3602996d318bac</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 ba9f713ada2 polysolve: new port in math
</span>ba9f713ada2 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit ba9f713ada2257c2fe9d1ad0ed3602996d318bac
</span>Author: barracuda156 <vital.had@gmail.com>
AuthorDate: Sat Jul 1 15:03:42 2023 +0800

<span style='display:block; white-space:pre;color:#404040;'>    polysolve: new port in math
</span>---
 math/polysolve/Portfile                    | 59 +++++++++++++++++++++++++++
 math/polysolve/files/patch-CMakeLists.diff | 64 ++++++++++++++++++++++++++++++
 2 files changed, 123 insertions(+)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/math/polysolve/Portfile b/math/polysolve/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..e046d67c515
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/math/polysolve/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,59 @@
</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           cmake 1.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           github 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.setup        polyfem polysolve 91f7e3a4a44df4ca541cb46923d5593a49254efd
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version             2023.06.29
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories          math
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license             MIT
</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;'>+description         Easy-to-use wrapper for linear solver.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description    This library contains a cross-platform Eigen wrapper for many different external linear solvers.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+homepage            https://polyfem.github.io
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           rmd160  e932aeaf28a95776f8db4130a1ac745094d75aae \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  5b5b88d653a676a2a0307e1f70ba48641c36f4741fba97e7fe2057adb4275874 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    52538
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib-append  path:share/pkgconfig/eigen3.pc:eigen3 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:hypre \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:nlohmann-json
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Use Macports libs. Related issue: https://github.com/polyfem/polysolve/issues/37
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append   patch-CMakeLists.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.cxx_standard   2014
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Match settings in hypre port:
</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;'>+if {[string match *clang* ${configure.compiler}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.cxxflags-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -I${prefix}/include/libomp \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -Wno-c++11-narrowing
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.ldflags-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -L${prefix}/lib/libomp -lomp
</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;'>+# Accelerate support is broken at the moment: https://github.com/polyfem/polysolve/issues/38
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DEIGEN_WITH_MKL=OFF \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DPOLYSOLVE_LARGE_INDEX=OFF \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DPOLYSOLVE_WITH_ACCELERATE=OFF \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DPOLYSOLVE_WITH_AMGCL=OFF \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DPOLYSOLVE_WITH_CCACHE=OFF \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DPOLYSOLVE_WITH_CHOLMOD=OFF \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DPOLYSOLVE_WITH_CUSOLVER=OFF \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DPOLYSOLVE_WITH_HYPRE=ON \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DPOLYSOLVE_WITH_MKL=OFF \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DPOLYSOLVE_WITH_PARDISO=OFF \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DPOLYSOLVE_WITH_SANITIZERS=OFF \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DPOLYSOLVE_WITH_SPECTRA=OFF \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DPOLYSOLVE_WITH_SUPERLU=OFF \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DPOLYSOLVE_WITH_TESTS=OFF \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DPOLYSOLVE_WITH_UMFPACK=OFF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    copy ${cmake.build_dir}/libpolysolve.a ${destroot}${prefix}/lib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/math/polysolve/files/patch-CMakeLists.diff b/math/polysolve/files/patch-CMakeLists.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..d7ef8602452
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/math/polysolve/files/patch-CMakeLists.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,64 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- CMakeLists.txt.orig    2023-06-30 02:43:40.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ CMakeLists.txt 2023-07-01 14:37:52.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -56,7 +56,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ project(PolySolve
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         DESCRIPTION "Easy-to-use wrapper for linear solver"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        LANGUAGES CXX)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        LANGUAGES C CXX)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if(CMAKE_HOST_SYSTEM_PROCESSOR STREQUAL "arm64" AND APPLE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     set(POLYSOLVE_NOT_ON_APPLE_SILICON OFF)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -107,11 +107,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ### Configuration
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake/polysolve/")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake/recipes/")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake/find/")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # General CMake utils
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-include(polysolve_cpm_cache)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ include(polysolve_use_colors)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Sort projects inside the solution
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -155,13 +153,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Accelerate solver
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if(POLYSOLVE_WITH_ACCELERATE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    include(CPM)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    CPMAddPackage(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        NAME eigen
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        GIT_REPOSITORY https://gitlab.com/libeigen/eigen.git
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        GIT_TAG 969c31eefcdfaab11da763bea3f7502086673ab0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        DOWNLOAD_ONLY ON
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     set(BLA_VENDOR Apple)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     find_package(BLAS REQUIRED)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     find_package(LAPACK REQUIRED)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -178,13 +169,15 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     add_sanitizers(polysolve)
</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;'>+-include(eigen)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++find_package(Eigen3 3.3 REQUIRED NO_MODULE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ target_link_libraries(polysolve PUBLIC Eigen3::Eigen)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Hypre (GNU Lesser General Public License)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if(POLYSOLVE_WITH_HYPRE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    include(hypre)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    find_package(HYPRE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    find_package(OpenMP)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     target_link_libraries(polysolve PUBLIC HYPRE::HYPRE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    target_link_libraries(polysolve PUBLIC OpenMP::OpenMP_C)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     target_compile_definitions(polysolve PUBLIC -DPOLYSOLVE_WITH_HYPRE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if(HYPRE_WITH_MPI)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         target_compile_definitions(polysolve PUBLIC HYPRE_WITH_MPI)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -192,7 +185,7 @@
</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;'>+ # Json (MIT)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-include(json)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++find_package(nlohmann_json)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ target_link_libraries(polysolve PUBLIC nlohmann_json::nlohmann_json)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Accelerate solvers
</span></pre><pre style='margin:0'>

</pre>