<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/3935297d2ea367ecb36aa163c446beb21e4d81fd">https://github.com/macports/macports-ports/commit/3935297d2ea367ecb36aa163c446beb21e4d81fd</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 3935297d2ea cabal: Update to version 3.14.1.1; Fix build issue in PG haskell_cabal
</span>3935297d2ea is described below
<span style='display:block; white-space:pre;color:#808000;'>commit 3935297d2ea367ecb36aa163c446beb21e4d81fd
</span>Author: Steven Thomas Smith <s.t.smith@ieee.org>
AuthorDate: Fri Jan 17 17:18:04 2025 -0500
<span style='display:block; white-space:pre;color:#404040;'> cabal: Update to version 3.14.1.1; Fix build issue in PG haskell_cabal
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> Fixes:
</span><span style='display:block; white-space:pre;color:#404040;'> * https://trac.macports.org/ticket/71821
</span><span style='display:block; white-space:pre;color:#404040;'> * https://github.com/macports/macports-ports/pull/27341
</span><span style='display:block; white-space:pre;color:#404040;'> * See: https://github.com/haskell/cabal/issues/10755
</span>---
_resources/port1.0/group/haskell_cabal-1.0.tcl | 45 +++++++++++++++++-------
lang/cabal/Portfile | 47 ++++++++++++++++----------
2 files changed, 62 insertions(+), 30 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/_resources/port1.0/group/haskell_cabal-1.0.tcl b/_resources/port1.0/group/haskell_cabal-1.0.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index ca0ab57cf6f..08f09f6f509 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/_resources/port1.0/group/haskell_cabal-1.0.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/_resources/port1.0/group/haskell_cabal-1.0.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -28,16 +28,16 @@ proc haskell_cabal.add_dependencies {} {
</span> depends_patch-append \
port:cabal-prebuilt \
port:ghc-prebuilt
<span style='display:block; white-space:pre;background:#ffe0e0;'>- depends_build-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append \
</span> port:cabal-prebuilt \
port:ghc-prebuilt
} else {
depends_patch-append \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- port:cabal
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- depends_build-append \
</span> port:cabal \
port:ghc
depends_lib-append \
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:cabal \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:ghc \
</span> port:gmp \
port:libiconv
}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -86,6 +86,9 @@ proc haskell_cabal.get_env {} {
</span> options haskell_cabal.cabal_root
default haskell_cabal.cabal_root {${workpath}/.home/.cabal}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://github.com/haskell/cabal/issues/10755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# disable --enable-relocatable until this issue is addressed
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> post-patch {
xinstall -m 0755 -d [option haskell_cabal.cabal_root]
set cabal_config_fd [open ${haskell_cabal.cabal_root}/config w+]
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -121,12 +124,12 @@ post-patch {
</span> "jobs: \$ncpus" \
"documentation: True" \
"doc-index-file: \$htmldir/html/${subport}/index.html" \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- "relocatable: True" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "relocatable: False" \
</span> "install-method: copy" \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- "installdir: ${prefix}/bin" \
</span> "logs-dir: [option haskell_cabal.cabal_root]/logs" \
"store-dir: [option haskell_cabal.cabal_root]/store" \
"" \
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ "installdir: ${prefix}/bin" \
</span> "install-dirs global" \
" prefix: ${prefix}" \
" bindir: ${prefix}/bin" \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -155,6 +158,7 @@ supported_archs arm64 x86_64
</span> options haskell_cabal.bin \
haskell_cabal.env \
haskell_cabal.global_flags \
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ haskell_cabal.update_flags \
</span> haskell_cabal.build_dir \
haskell_cabal.use_prebuilt \
haskell_cabal.installsubdir \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -177,8 +181,17 @@ default haskell_cabal.bin {[haskell_cabal.getcabalbin]}
</span> default haskell_cabal.env \
{[haskell_cabal.get_env]}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-default haskell_cabal.global_flags \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {--config-file=[option haskell_cabal.cabal_root]/config}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+default haskell_cabal.global_flags {\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --config-file=[option haskell_cabal.cabal_root]/config\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --store-dir=[option haskell_cabal.cabal_root]/store\
</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;'>+default haskell_cabal.update_flags {\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --ghc\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-compiler=${prefix}/bin/ghc\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --prefix=${prefix}\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${haskell_cabal.installdir_args}\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span>
default haskell_cabal.build_dir {${workpath}/dist}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -206,7 +219,7 @@ post-patch {
</span> if {[tbool haskell_cabal.use_prebuilt]} {
xinstall -d ${haskell_cabal.cabal_root}/bin
# bootstrap from *-prebuilt
<span style='display:block; white-space:pre;background:#ffe0e0;'>- # the link to exedir_prebuilt got ghc and ghc-pkg is a hac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # the link to exedir_prebuilt got ghc and ghc-pkg is a hack
</span> # to accommodate cabal's hack method of locating ghc-pkg
# https://github.com/haskell/cabal/blob/master/release-notes/Cabal-3.6.1.0.md
set ghc_prebuilt_version \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -236,13 +249,17 @@ post-patch {
</span>
pre-configure {
system -W ${worksrcpath} \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- "env ${haskell_cabal.env} ${haskell_cabal.bin} ${haskell_cabal.global_flags} update"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "env ${haskell_cabal.env} ${haskell_cabal.bin} ${haskell_cabal.global_flags} update ${haskell_cabal.update_flags}"
</span> }
<span style='display:block; white-space:pre;background:#e0ffe0;'>+use_configure no
</span> default configure.cmd {${haskell_cabal.bin}\
${haskell_cabal.global_flags}}
default configure.pre_args {}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-default configure.args {configure}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+default configure.args {\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${haskell_cabal.installdir_args}\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span> default configure.universal_args {}
default configure.env {${haskell_cabal.env}}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -255,10 +272,12 @@ default build.args {${build.target}}
</span> default build.post_args {\
[haskell_cabal.build_getjobsarg]\
--builddir=${haskell_cabal.build_dir}\
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ --ghc\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-compiler=${prefix}/bin/ghc\
</span> --prefix=${prefix}\
${haskell_cabal.installdir_args}\
<span style='display:block; white-space:pre;background:#ffe0e0;'>- --enable-relocatable\
</span> }
<span style='display:block; white-space:pre;background:#e0ffe0;'>+# --enable-relocatable
</span> default build.env {${haskell_cabal.env}}
default destroot.cmd {${haskell_cabal.bin}\
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -269,11 +288,13 @@ default destroot.args {${destroot.target}}
</span> default destroot.post_args {\
[haskell_cabal.build_getjobsarg]\
--builddir=${haskell_cabal.build_dir}\
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ --ghc\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-compiler=${prefix}/bin/ghc\
</span> --installdir=${destroot}${prefix}/bin\
--install-method=copy\
<span style='display:block; white-space:pre;background:#ffe0e0;'>- --enable-relocatable\
</span> --overwrite-policy=always\
}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+# --enable-relocatable
</span> default destroot.env {${haskell_cabal.env}}
default test.cmd {${haskell_cabal.bin}\
<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 8ca09c768b3..bc4f9812feb 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,10 +3,9 @@
</span> PortSystem 1.0
name cabal
<span style='display:block; white-space:pre;background:#ffe0e0;'>-version 3.10.3.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version 3.14.1.1
</span> revision 0
categories lang haskell devel
<span style='display:block; white-space:pre;background:#ffe0e0;'>-platforms darwin
</span> license BSD
maintainers {ieee.org:s.t.smith @essandess} openmaintainer
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -59,18 +58,19 @@ set distfile_haskell ${cabal_distname}.tar.xz
</span> distfiles ${distfile_haskell}:haskell
# set build_arch by hand on arm64/x86_64 systems to get x86_64/arm64 checksums
<span style='display:block; white-space:pre;background:#e0ffe0;'>+# sudo port -d checksum cabal-prebuilt os.arch=i386 build_arch=x86_64
</span> # sudo port -d checksum cabal-prebuilt os.arch=arm build_arch=arm64
# run `port clean --all cabal-prebuilt` afterwards
if {${build_arch} eq {arm64}} {
checksums ${distfile_haskell} \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- rmd160 2ba95f233a0ec06d6a2fcef1783fa6bbef7d4066 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- sha256 f4f606b1488a4b24c238f7e09619959eed89c550ed8f8478b350643f652dc08c \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- size 11676488
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ rmd160 65b2c1d87a22c59da3e58d6f9e03f91671f83a8b \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 bd40920fb3d5bcf3d78ce93445039ba43bc5edf769c52234223f25b83e3cc682 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 12728880
</span> } elseif {${build_arch} eq {x86_64}} {
checksums ${distfile_haskell} \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- rmd160 4b44b2fea41b91cd08e94957a414ecc8e5ed7778 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- sha256 3aed78619b2164dd61eb61afb024073ae2c50f6655fa60fcc1080980693e3220 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- size 5623520
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ rmd160 d4b3a14b37d0b56964354550cfb48a1848be6e3c \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 3690d8f7aa368141574f9eaf8e75bc26932ed7b422f5ade107d6972b3b72532f \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 6065364
</span> }
# cabal may use these MacPorts build tools:
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -94,15 +94,15 @@ if {${name} eq ${subport}} {
</span> master_sites https://github.com/haskell/${name}/archive/refs/tags:github
distfiles ${distfile_github}:github
checksums ${distfile_github} \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- rmd160 d72a00040f2b717de39e1b2386e81d86cc44c06f \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- sha256 29d622886624f72f1c5be1fb385b1eb612a72e487c2c91ca8cbefb84abdbf352 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- size 2285154
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ rmd160 667727335b6372a7b927d3bdf016cd2db631a339 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 c5d3e5bdf78c2fce9f6b48d31d4561ef151587fc3c102e57a3c4b341578a836a \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 3638559
</span>
extract.only-append \
${distfile_github}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-if {[exists extract.rename]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- extract.rename yes
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[exists extract.rename]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extract.rename yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span> variant prebuilt \
description {This variant is deprecated.} {
ui_error "Please install the port ${name}-prebuilt."
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -111,7 +111,7 @@ if {[exists extract.rename]} {
</span>
# use these to specify python versions, python3 required
# use ${prefix}/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/_resources/port1.0/group/python-1.0.tcl
<span style='display:block; white-space:pre;background:#ffe0e0;'>- set python3_version 312
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set python3_version 313
</span> set python3_branch [string index ${python3_version} 0].[string range ${python3_version} 1 end]
set python3_prefix ${frameworks_dir}/Python.framework/Versions/${python3_branch}
set python3_bin ${python3_prefix}/bin/python${python3_branch}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -155,12 +155,17 @@ if {[exists extract.rename]} {
</span> "CABAL_CONFIG=${haskell_cabal.cabal_root}/config" \
"GHC=${prefix}/bin/ghc"
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ set project_file cabal.release.project
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ haskell_cabal.update_flags-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --project-file=${project_file}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> build.target ${name}-install \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- --project-file=cabal.project.release
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --project-file=${project_file}
</span> build.post_args-append \
--bindir=${prefix}/bin \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- --datadir=${prefix}/share/${subport}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --datadir=${prefix}/share/${subport} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --allow-newer
</span> post-build {
# https://github.com/haskell/cabal/blob/c1f490a50782cc89030889fae8edd9f95db7c1e4/Makefile#L207
system -W ${worksrcpath} \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -168,6 +173,9 @@ if {[exists extract.rename]} {
</span> doc ${haskell_cabal.build_dir}/doc/users-guide"
}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ destroot.post_args-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --allow-newer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> post-destroot {
xinstall -d ${destroot}${prefix}/share/doc/${distname}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -203,3 +211,6 @@ subport cabal-prebuilt {
</span> It is intended to be used to bootstrap ghc and other Haskell-based tools.
"
}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+livecheck.url https://github.com/haskell/${name}/tags
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+livecheck.regex "archive/refs/tags/${name}\-install\-v(\[^\"\]+)\.tar\.gz"
</span></pre><pre style='margin:0'>
</pre>