<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/fa4e5f8f4641d896909d6731a81d4e55ff3f91fe">https://github.com/macports/macports-ports/commit/fa4e5f8f4641d896909d6731a81d4e55ff3f91fe</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 fa4e5f8f464 stock-prices: new port in fortran
</span>fa4e5f8f464 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit fa4e5f8f4641d896909d6731a81d4e55ff3f91fe
</span>Author: barracuda156 <vital.had@gmail.com>
AuthorDate: Wed Oct 18 12:16:23 2023 +0800

<span style='display:block; white-space:pre;color:#404040;'>    stock-prices: new port in fortran
</span>---
 fortran/stock-prices/Portfile                      | 52 ++++++++++++++++++++++
 .../stock-prices/files/patch-stock-datadir.diff    | 35 +++++++++++++++
 2 files changed, 87 insertions(+)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/fortran/stock-prices/Portfile b/fortran/stock-prices/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..38dd2c4f71d
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/fortran/stock-prices/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,52 @@
</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           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;'>+PortGroup           makefile 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.setup        modern-fortran stock-prices ce3054df2505eaa413c4e93b414c4c4714a9967d
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version             2023.02.21
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories          fortran finance
</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         Analyzing stock prices with Fortran arrays
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description    {*}${description}. Companion code for Chapter 4 of Modern Fortran: Building Efficient Parallel Applications
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           rmd160  88f0acd02c48331743c05e02dbf83f3733d7d170 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  36435d50246aa7dfc913a5391dc1ed0f0d1cdbdae3da27982a8c4cf3d32402d5 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    1214416
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.tarball_from archive
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles          patch-stock-datadir.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;'>+    reinplace -W ${worksrcpath}/src "s|@DATADIR@|${prefix}/share/${name}/data|" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    stock_crossover.f90 stock_gain.f90 stock_volatility.f90
</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;'>+compilers.setup     require_fortran
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.blacklist  *gcc-4.0 *gcc-4.2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+build.target
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# It fails to build in parallel.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+use_parallel_build  no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set datadir ${prefix}/share/${name}
</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;'>+    foreach bin {stock_crossover stock_gain stock_volatility} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        copy ${worksrcpath}/${bin} ${destroot}${prefix}/bin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    xinstall -d ${destroot}${datadir}/doc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    xinstall -m 0644 -W ${worksrcpath} LICENSE README.md ${destroot}${datadir}/doc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    copy ${worksrcpath}/data ${destroot}${datadir}
</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;'>+# See: https://github.com/modern-fortran/stock-prices/issues/8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+notes "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+At the moment ${name} is set to use local data on a few pre-defined stocks.\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Data-sets are places into $datadir/data in .csv format. You may update those manually.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+"
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/fortran/stock-prices/files/patch-stock-datadir.diff b/fortran/stock-prices/files/patch-stock-datadir.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..a64b4ecd804
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/fortran/stock-prices/files/patch-stock-datadir.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,35 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/stock_crossover.f90        2023-02-22 00:15:58.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/stock_crossover.f90        2023-10-18 11:56:36.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -18,7 +18,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     print *, 'Processing moving average crossover for ' // symbols(n)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    call read_stock('data/' // trim(symbols(n)) //  '.csv', time,&
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    call read_stock('@DATADIR@/' // trim(symbols(n)) //  '.csv', time,&
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       open, high, low, close, adjclose, volume)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     time = time(size(time):1:-1)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/stock_gain.f90     2023-02-22 00:15:58.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/stock_gain.f90     2023-10-18 11:56:49.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -16,7 +16,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   do n = 1, size(symbols)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    call read_stock('data/' // trim(symbols(n)) //  '.csv', time,&
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    call read_stock('@DATADIR@/' // trim(symbols(n)) //  '.csv', time,&
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       open, high, low, close, adjclose, volume)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     adjclose = reverse(adjclose)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/stock_volatility.f90       2023-02-22 00:15:58.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/stock_volatility.f90       2023-10-18 11:57:03.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -15,7 +15,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   do n = 1, size(symbols)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    call read_stock('data/' // trim(symbols(n)) //  '.csv', time,&
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    call read_stock('@DATADIR@/' // trim(symbols(n)) //  '.csv', time,&
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       open, high, low, close, adjclose, volume)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     im = size(time)
</span></pre><pre style='margin:0'>

</pre>