<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/79158516df3e78d1d96bb4ab31a376f77f19c4fc">https://github.com/macports/macports-ports/commit/79158516df3e78d1d96bb4ab31a376f77f19c4fc</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 79158516df3 cabal: Update to version 3.4.0.0
</span>79158516df3 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 79158516df3e78d1d96bb4ab31a376f77f19c4fc
</span>Author: Steven Thomas Smith <s.t.smith@ieee.org>
AuthorDate: Sun Feb 21 21:41:54 2021 -0500

<span style='display:block; white-space:pre;color:#404040;'>    cabal: Update to version 3.4.0.0
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    * Update to version 3.4.0.0
</span><span style='display:block; white-space:pre;color:#404040;'>    * Implement new cabal bootstrap process
</span>---
 lang/cabal/Portfile | 106 ++++++++++++++++++++++++++++++++--------------------
 1 file changed, 65 insertions(+), 41 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/cabal/Portfile b/lang/cabal/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index f8e9ca46658..f47436a132d 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/cabal/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/cabal/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -3,19 +3,23 @@
</span> PortSystem          1.0
 
 name                cabal
<span style='display:block; white-space:pre;background:#ffe0e0;'>-version             3.0.0.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-categories          lang haskell
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version             3.4.0.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories          lang haskell devel
</span> platforms           darwin
 license             BSD
 maintainers         nomaintainer
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-description         Haskell Cabal: Common Architecture for Building Applications and Libraries
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-long_description    \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Cabal is a system for building and packaging Haskell libraries and \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    programs. It defines a common interface for package authors and \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    distributors to easily build their applications in a portable \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    way. Cabal is part of a larger infrastructure for distributing, \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    organizing, and cataloging Haskell libraries and programs.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description         Haskell Cabal: Common Architecture for \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Building Applications and Libraries
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description    Cabal is a system for building and packaging \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Haskell libraries and programs. It defines a \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    common interface for package authors and \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    distributors to easily build their applications in \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    a portable way. Cabal is part of a larger \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    infrastructure for distributing, organizing, and \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    cataloging Haskell libraries and programs.
</span> 
 homepage            https://www.haskell.org/cabal
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -23,31 +27,22 @@ homepage            https://www.haskell.org/cabal
</span> variant prebuilt \
            description {Do not bootstrap cabal; install the pre-built binary.} {}
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-master_sites        https://downloads.haskell.org/~${name}/${name}-install-${version}/
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-distname            ${name}-install-${version}-x86_64-apple-darwin17.7.0 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-extract.suffix      .tar.xz
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+master_sites        https://downloads.haskell.org/~${name}/${name}-install-${version}/:haskell
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set distfile_haskell \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    ${name}-install-${version}-x86_64-darwin-sierra.tar.xz
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+distfiles           ${distfile_haskell}:haskell
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums           [lindex ${distfiles} end] \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    rmd160  9b5fbf25fe1f9473766a3466aaa9d66d66cfb884 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256  d4857e068560515e4cbb0e8ca124c370e07892f2a28804d87152834e5fe2b845 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    size    5022564
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           ${distfile_haskell} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    rmd160  b21c826fec8389ff429fcac37541430d34ac8c71 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  cb10be9a53e856aa2d852fd88fb6944f138783ffe0ea84d93c9a69244e34ea91 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    5583116
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-extract.only        [lindex ${distfiles} end]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+extract.only        ${distfile_haskell}
</span> 
 supported_archs     x86_64
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_build-append  \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    port:ghc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> use_configure       no
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# the PATH environment must provide /usr/bin/clang, not ${prefix}/bin/gcc,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# along with bootstrap path
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-build.env \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    PATH=/usr/bin:${workpath}:$env(PATH) \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    PREFIX=${prefix} \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    CC=${configure.cc}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> # cabal must bootstrap itself
 pre-build {
     # binary extract to ${workpath}/${name}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -58,29 +53,58 @@ pre-build {
</span> if { [variant_isset "prebuilt"] } {
     build {}
 } else {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    distfiles-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set distfile_github \
</span>                     ${name}-install-${version}.tar.gz
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    master_sites-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    https://github.com/haskell/${name}/archive/:github
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    distfiles-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    ${distfile_github}:github
</span>     checksums-append \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    ${name}-install-${version}.tar.gz \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    rmd160  7217d6334bdf98f18341fb0aff8208b20717f695 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256  a432a7853afe96c0fd80f434bd80274601331d8c46b628cd19a0d8e96212aaf1 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    size    654045
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    ${distfile_github} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    rmd160  7d9f7a4c5551104a5787781e9938003944902a8a \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  e4fbd5eb1d77400746a993679181f159aa415a37b931b26d67f5602f63ce971c \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    2072483
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # See ${prefix}/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/_resources/port1.0/group/python-1.0.tcl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set python_version  39
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set python_branch   [string index ${python_version} 0].[string range ${python_version} 1 end]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set python_prefix   ${frameworks_dir}/Python.framework/Versions/${python_branch}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set python_bin      ${python_prefix}/bin/python${python_branch}
</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:ghc \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:python${python_version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>     extract.only-append \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    ${name}-install-${version}.tar.gz
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    ${distfile_github}
</span>     worksrcdir      ${name}-install-${version}
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    post-patch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        reinplace -E "1s|^(#!)/usr/bin/env\[\[:space:]]+python3\[\[:space:]]*$|\\1${python_bin}|" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    ${worksrcpath}/bootstrap/bootstrap.py
</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;'>+    # bootstrap instructions:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # https://github.com/haskell/cabal/blob/master/bootstrap/README.md
</span>     build {
         # build cabal and overwrite ${workpath}/bin/${name}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        # the PATH environment must provide /usr/bin/clang, not ${prefix}/bin/gcc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set ghc_version [exec sh -c "ghc --version | sed -E 's|^.+version (\[\[:digit:]])|\\1|'"]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        system -W ${worksrcpath} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            "${workpath}/bin/cabal update"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        system -W ${worksrcpath} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            "${workpath}/bin/cabal v2-build --with-compiler=${prefix}/bin/ghc --dry-run cabal-install:exe:cabal"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        xinstall -m 0644 -W ${worksrcpath} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ./dist-newstyle/cache/plan.json \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ./bootstrap/${platforms}-${ghc_version}.plan.json
</span>         system -W ${worksrcpath} \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-            "${worksrcpath}/bootstrap.sh"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            "${workpath}/bin/cabal v2-build --builddir=dist-newstyle-bootstrap --project=cabal.project.bootstrap cabal-bootstrap-gen"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        system -W ${worksrcpath} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            "${workpath}/bin/cabal v2-run -vnormal+stderr --builddir=dist-newstyle-bootstrap --project=cabal.project.bootstrap cabal-bootstrap-gen -- bootstrap/${platforms}-${ghc_version}.plan.json | tee bootstrap/${platforms}-${ghc_version}.json"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        system -W ${worksrcpath} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            "bootstrap/bootstrap.py -d bootstrap/${platforms}-${ghc_version}.json -w ${prefix}/bin/ghc"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        
</span>         delete ${workpath}/bin/${name}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        xinstall -m 0755 -W ${worksrcpath}/dist/build/${name} ${name} ${workpath}/bin/${name}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    post-destroot {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        xinstall -m 0755 -d ${destroot}${prefix}/share/man/man1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        xinstall -m 0644 -W ${worksrcpath}/dist/build/${name} ${name}.1 ${destroot}${prefix}/share/man/man1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        xinstall -m 0755 -W ${worksrcpath}/_build/bin ${name} ${workpath}/bin/${name}
</span>     }
 }
 
</pre><pre style='margin:0'>

</pre>