<pre style='margin:0'>
Christopher Nielsen (mascguy) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/71aa6fb9aad5a98810b65bb0c611014777100be5">https://github.com/macports/macports-ports/commit/71aa6fb9aad5a98810b65bb0c611014777100be5</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 71aa6fb9aad5a98810b65bb0c611014777100be5
</span>Author: Steven Thomas Smith <s.t.smith@ieee.org>
AuthorDate: Tue Sep 13 18:09:29 2022 -0400

<span style='display:block; white-space:pre;color:#404040;'>    cabal: Bugfix dependencies
</span><span style='display:block; white-space:pre;color:#404040;'>    * Fixes: https://trac.macports.org/ticket/65834
</span>---
 lang/cabal/Portfile | 41 ++++++++++++++++++++++++++++++-----------
 1 file changed, 30 insertions(+), 11 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 20f1c4b0a24..3ad27116431 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;'>@@ -71,7 +71,15 @@ if {${build_arch} eq {arm64}} {
</span>                     size    5494908
 }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_run-append  port:curl \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# cabal may use these MacPorts build tools:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# alex, ar, strip, cpphs, happy, hscolour, ld, pkg-config
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://github.com/haskell/cabal/blob/master/Cabal/src/Distribution/Simple/Program/Builtin.hs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib-append  port:cctools \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:ld64 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:pkgconfig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# cabal uses curl or wget
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib-append  port:curl \
</span>                     port:wget
 
 if {${name} eq ${subport}} {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -118,30 +126,41 @@ if {${name} eq ${subport}} {
</span>                     port:py${python3_version}-yaml \
                     port:py${python3_version}-zipp
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    # use bootstrapped ghc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_lib-append  \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:gmp \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:libiconv \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:zlib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # alex, happy, and hscolour are bootstrapped using cabal-prebuilt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_lib-append  \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    path:bin/alex:alex \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    path:bin/happy:happy \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    path:bin/HsColour:hscolour
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # use bootstrapped ghc -- reconfigure settings from PG haskell_cabal
</span>     depends_build-delete \
                     port:ghc-prebuilt
     depends_lib-append \
                     path:bin/ghc:ghc
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    pre-configure {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        foreach phase {configure build destroot test} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            ${phase}.env-replace \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    "GHC=${prefix}/bin/ghc-prebuilt" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    post-patch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        haskell_cabal.env-replace \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    "GHC=${haskell_cabal.cabal_root}/bin/ghc" \
</span>                     "GHC=${prefix}/bin/ghc"
<span style='display:block; white-space:pre;background:#e0ffe0;'>+        haskell_cabal.env-delete \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    "PATH=${haskell_cabal.cabal_root}/bin:$env(PATH)"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        foreach phase {configure build destroot test} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ${phase}.env \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    {*}${haskell_cabal.env}
</span>         }
         delete ${haskell_cabal.cabal_root}/bin/ghc
         delete ${haskell_cabal.cabal_root}/bin/ghc-pkg
     }
 
     # https://github.com/haskell/cabal/issues/8360#issuecomment-1220918581
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    build.target    ${name}-install
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    foreach phase {build destroot test} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        ${phase}.post_args-prepend \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    build.target    ${name}-install \
</span>                     --project-file=cabal.project.release \
                     --allow-newer
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    }
</span> 
     post-build {
         # https://github.com/haskell/cabal/blob/c1f490a50782cc89030889fae8edd9f95db7c1e4/Makefile#L207
</pre><pre style='margin:0'>

</pre>