<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/786ee3ddd5568c8edd164645ed8d704789e82b86">https://github.com/macports/macports-ports/commit/786ee3ddd5568c8edd164645ed8d704789e82b86</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 786ee3ddd55 fortran-stdlib: new port
</span>786ee3ddd55 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 786ee3ddd5568c8edd164645ed8d704789e82b86
</span>Author: barracuda156 <vital.had@gmail.com>
AuthorDate: Wed Feb 22 21:03:54 2023 +0800

<span style='display:block; white-space:pre;color:#404040;'>    fortran-stdlib: new port
</span>---
 lang/fortran-stdlib/Portfile                       |  70 ++++++++++++
 ...r-equality-between-Fortran-and-C-logicals.patch | 119 +++++++++++++++++++++
 2 files changed, 189 insertions(+)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/fortran-stdlib/Portfile b/lang/fortran-stdlib/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..291e5194c3e
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/fortran-stdlib/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,70 @@
</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           compiler_blacklist_versions 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           compilers 1.0
</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;'>+name                fortran-stdlib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.setup        fortran-lang stdlib fba31e0db6375e9207438d2815b8552dc87c6f0b
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version             2023.02.22
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories-append   lang fortran
</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         Fortran Standard Library
</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  328d76940bf758be5ba725f163d80808d97e4f7f \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  9e6cccccf57d44d6c095a42b0595c538da03874d96655fb7363fd304cc87611f \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    373896
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+cmake.generator     Ninja
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set py_ver          3.11
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set py_ver_nodot    [string map {. {}} ${py_ver}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_build-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:py${py_ver_nodot}-fypp \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:python${py_ver_nodot}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platform darwin {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${os.major} < 13} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        depends_build-append    port:git
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        git.cmd                 ${prefix}/bin/git
</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;'>+post-extract {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    move ${worksrcpath}/test/string/test_string_assignment.f90 ${worksrcpath}/test/string/test_string_assignment.fypp
</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;'>+patch.pre_args      -p1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles          0001-Check-for-equality-between-Fortran-and-C-logicals.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compilers.setup require_fortran
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.blacklist-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    {*gcc-[34].*} {macports-gcc-[58]}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DPython_EXECUTABLE=${prefix}/bin/python${py_ver} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DFYPP=${prefix}/bin/fypp-${py_ver} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DCMAKE_BUILD_TYPE=NoConfig \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DCMAKE_MAXIMUM_RANK:String=7 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DBUILD_SHARED_LIBS=ON \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DBUILD_TESTING=OFF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platform darwin powerpc {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # See: https://github.com/fortran-lang/stdlib/issues/694
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.args-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DWITH_XDP=OFF
</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;'>+variant tests description "Enable testing" {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.pre_args-replace \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DCMAKE_BUILD_WITH_INSTALL_RPATH:BOOL=ON \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DCMAKE_BUILD_WITH_INSTALL_RPATH:BOOL=OFF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.args-replace \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DBUILD_TESTING=OFF \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DBUILD_TESTING=ON
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    test.run        yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    test.cmd        ctest
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/fortran-stdlib/files/0001-Check-for-equality-between-Fortran-and-C-logicals.patch b/lang/fortran-stdlib/files/0001-Check-for-equality-between-Fortran-and-C-logicals.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..35cb389b0c0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/fortran-stdlib/files/0001-Check-for-equality-between-Fortran-and-C-logicals.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,119 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 11c9bb7c0a6743204a332b91947564c7c77843dc Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: Jeremie Vandenplas <jeremie.vandenplas@gmail.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Sun, 19 Feb 2023 13:29:34 +0100
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH] Check for equality between Fortran and C logicals
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/CMakeLists.txt b/CMakeLists.txt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 26f49a4..471ce6e 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/CMakeLists.txt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/CMakeLists.txt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -59,6 +59,7 @@ endif()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ list(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   APPEND fyppFlags
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  "-DWITH_CBOOL=$<BOOL:${WITH_CBOOL}>"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   "-DWITH_QP=$<BOOL:${WITH_QP}>"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   "-DWITH_XDP=$<BOOL:${WITH_XDP}>"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   "-DPROJECT_VERSION_MAJOR=${PROJECT_VERSION_MAJOR}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/config/CMakeLists.txt b/config/CMakeLists.txt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index f9a5569..9938152 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/config/CMakeLists.txt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/config/CMakeLists.txt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -16,6 +16,13 @@ set(CMAKE_MODULE_PATH "${CMAKE_MODULE_PATH}" PARENT_SCOPE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Check for available features
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Note: users can overwrite the automatic check by setting the value at configure time
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ include(CheckFortranSourceRuns)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if (NOT DEFINED WITH_CBOOL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  check_fortran_source_runs(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    "use, intrinsic :: iso_c_binding, only: c_bool; integer, parameter :: lk = kind(.true.); if (c_bool == lk) stop 1; end"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    WITH_CBOOL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  set(WITH_CBOOL ${WITH_CBOOL} PARENT_SCOPE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++endif()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (NOT DEFINED WITH_QP)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   check_fortran_source_runs(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     "if (selected_real_kind(33) == -1) stop 1; end"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/config/template.cmake b/config/template.cmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index d01dafc..9a0b15e 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/config/template.cmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/config/template.cmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,5 +1,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @PACKAGE_INIT@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++set("@PROJECT_NAME@_WITH_CBOOL" @WITH_CBOOL@)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set("@PROJECT_NAME@_WITH_QP" @WITH_QP@)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set("@PROJECT_NAME@_WITH_XDP" @WITH_XDP@)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/src/common.fypp b/src/common.fypp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index f94b6ec..364a8ae 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/src/common.fypp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/src/common.fypp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3,6 +3,11 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #! Project version number
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #:set PROJECT_VERSION = "{}.{}.{}".format(PROJECT_VERSION_MAJOR, PROJECT_VERSION_MINOR, PROJECT_VERSION_PATCH)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#! Support for C_BOOL logical
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#:if not defined("WITH_CBOOL")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#:set WITH_CBOOL = False
</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;'>+ #! Support for quadruple precision floating point numbers
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #:if not defined("WITH_QP")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #:set WITH_QP = False
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -53,7 +58,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #:set INT_KINDS_TYPES = list(zip(INT_KINDS, INT_TYPES))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #! Logical kinds to be considered during templating
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#:set LOG_KINDS = ["lk", "c_bool"]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#:set LOG_KINDS = ["lk"]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#:if WITH_CBOOL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#:set LOG_KINDS = LOG_KINDS + ["c_bool"]
</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;'>+ #! Logical types to be considered during templating
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #:set LOG_TYPES = ["logical({})".format(k) for k in LOG_KINDS]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/test/ascii/test_ascii.f90 b/test/ascii/test_ascii.f90
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 2725613..5a88786 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/test/ascii/test_ascii.f90
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/test/ascii/test_ascii.f90
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -6,7 +6,7 @@ module test_ascii
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         is_digit, is_octal_digit, is_hex_digit, is_white, is_blank, &
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         is_control, is_punctuation, is_graphical, is_printable, is_ascii, &
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         to_lower, to_upper, to_title, to_sentence, reverse, LF, TAB, NUL, DEL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    use stdlib_kinds, only : int8, int16, int32, int64, lk, c_bool
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    use stdlib_kinds, only : int8, int16, int32, int64, lk
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     implicit none
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     private
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/test/string/CMakeLists.txt b/test/string/CMakeLists.txt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 59ee5cf..f8e3c23 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/test/string/CMakeLists.txt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/test/string/CMakeLists.txt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,3 +1,12 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#### Pre-process: .fpp -> .f90 via Fypp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Create a list of the files to be preprocessed
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++set(fppFiles
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    test_string_assignment.fypp
</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;'>++fypp_f90("${fyppFlags}" "${fppFiles}" outFiles)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ADDTEST(string_assignment)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ADDTEST(string_operator)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ADDTEST(string_intrinsic)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/test/string/test_string_assignment.f90 b/test/string/test_string_assignment.fypp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/test/string/test_string_assignment.f90
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/test/string/test_string_assignment.fypp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -79,9 +79,11 @@ contains
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         call check(error, string_type(.false.) == trim(flc))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if (allocated(error)) return
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#:if WITH_CBOOL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         write(flc, '(g0)') .false._c_bool
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         call check(error, string_type(.false._c_bool) == trim(flc))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if (allocated(error)) return
</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;'>+         write(flc, '(g0)') .true._lk
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         call check(error, string_type(.true._lk) == trim(flc))
</span></pre><pre style='margin:0'>

</pre>