<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/9750cbcfc3309c0b96572eeb1bf334214b7b06d3">https://github.com/macports/macports-ports/commit/9750cbcfc3309c0b96572eeb1bf334214b7b06d3</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 9750cbcfc33 nhc98: update to 1.22, fix a broken build
</span>9750cbcfc33 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 9750cbcfc3309c0b96572eeb1bf334214b7b06d3
</span>Author: barracuda156 <vital.had@gmail.com>
AuthorDate: Tue May 31 07:59:06 2022 +0800

<span style='display:block; white-space:pre;color:#404040;'>    nhc98: update to 1.22, fix a broken build
</span>---
 lang/nhc98/Portfile                        | 73 +++++++++++++++++-------------
 lang/nhc98/files/patch-Makefile.nhc98.diff | 10 ----
 lang/nhc98/files/patch-modern-gcc.diff     | 62 +++++++++++++++++++++++++
 lang/nhc98/files/patch-ppc.diff            | 27 +++++++++++
 4 files changed, 131 insertions(+), 41 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/nhc98/Portfile b/lang/nhc98/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index f664c043707..be73761138b 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/nhc98/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/nhc98/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,52 +1,63 @@
</span> # -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:et:sw=4:ts=4:sts=4
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-PortSystem 1.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-name               nhc98
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-version            1.20
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-revision    3
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-categories lang
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-maintainers        nomaintainer
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-platforms  darwin
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-license         {LGPL BSD}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-description        The nhc98 Haskell Compiler
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortSystem  1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+name        nhc98
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version     1.22
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision    0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories  lang
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers nomaintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+supported_archs ppc i386
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license     {LGPL BSD}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description The nhc98 Haskell Compiler
</span> long_description \
     nhc98 is a small, easy to install, standards-compliant \
     compiler for Haskell 98, the lazy functional \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    programming language. It is very portable, and aims to      \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    produce small executables that run in small amounts of \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    memory. It produces medium-fast code, and compilation \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    is itself quite fast. It also comes with extensive tool        \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    support for automatic compilation, foreign language    \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    interfacing, heap and time profiling, tracing, and \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    debugging. Some of its advanced kinds of heap \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    programming language. It is very portable, and aims \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    to produce small executables that run in small amounts \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    of memory. It produces medium-fast code, and compilation \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    is itself quite fast. It also comes with extensive tool \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    support for automatic compilation, foreign language \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    interfacing, heap and time profiling, tracing \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    and debugging. Some of its advanced kinds of heap \
</span>     profiles are not found in any other Haskell compiler.
 
 homepage http://www.haskell.org/${name}
 master_sites \
     http://www.cs.york.ac.uk/fp/${name} \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    ftp://ftp.cs.york.ac.uk/pub/haskell/${name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    ftp://ftp.cs.york.ac.uk/pub/haskell/${name} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    https://www.haskell.org/nhc98/
</span> 
 distfiles ${name}src-${version}${extract.suffix}
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    md5 55c102408da8085aa56984af4151eb9c \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    sha1 5bcfa0e8cc192afc5a54aab0bd4c1812dafa7b45 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    rmd160 011e723a956f2fb9029357d00ddb705c350309af
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums       rmd160  99a90d00f77f66938c817c813f11c3d0ea5bf244 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                sha256  14c5c16c336d0bb15e6e3d1baad8a2bca93c0538a129fb18df1d47d1f4eb6f3a \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                size    29854160
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib     port:readline \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                port:ncurses
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_build   port:pkgconfig \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                port:gmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+build.cmd       ${prefix}/bin/gmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Supported compilers are gcc, ghc and hbc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.blacklist  *clang*
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_lib port:readline port:ncurses
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Donʼt build in parallel, seriously
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+use_parallel_build no
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    --buildwith=gcc \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    +docs \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    --docdir=${prefix}/share/doc/${name} \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    --mandir=${prefix}/share/man/man1 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    --heap=8M
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles      patch-ppc.diff patch-modern-gcc.diff
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-patchfiles patch-Makefile.nhc98.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args  --buildwith=gcc \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                +docs \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                --docdir=${prefix}/share/doc/${name} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                --mandir=${prefix}/share/man/man1 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                --heap=8M
</span> 
 post-patch {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    reinplace "s|-\$(CC)|-\${BUILDCOMP}|g" ${worksrcpath}/Makefile
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    reinplace "s|-\$(CC)|-\gcc|g" ${worksrcpath}/Makefile
</span> }
 
 post-destroot {
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/nhc98/files/patch-Makefile.nhc98.diff b/lang/nhc98/files/patch-Makefile.nhc98.diff
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index fdd74eef3ea..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/nhc98/files/patch-Makefile.nhc98.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,10 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- src/hsc2hs/Makefile.nhc98.orig 2008-03-17 09:50:40.000000000 -0700
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ src/hsc2hs/Makefile.nhc98      2008-03-17 09:51:43.000000000 -0700
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -9,6 +9,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    ../libraries/process/System/Cmd.$C \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    ../libraries/directory/System/Directory.$C \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    ../libraries/base/Control/Monad.$C \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+   ../libraries/base/Control/Exception.$C \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    ../libraries/base/Foreign/C/String.$C \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    ../libraries/base/Foreign/Marshal/Alloc.$C \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    ../libraries/base/Foreign/Marshal/Array.$C \
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/nhc98/files/patch-modern-gcc.diff b/lang/nhc98/files/patch-modern-gcc.diff
</span>new file mode 100755
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..8d6dde1f50e
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/nhc98/files/patch-modern-gcc.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,62 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# From: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=53964
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- Makefile.inc.orig      2010-07-09 20:40:18.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ Makefile.inc   2022-04-13 07:12:27.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,6 +1,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ### Configurable variables:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# We want C89 semantics plus C++-style comments and things like the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# 'setjmp_buf' and 'u_short' types.  More importantly, build with '-O1'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# only to avoid modern optimizations that break the code.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-OPT = -O3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++OPT = -O1 -std=gnu89
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ARCH = -m32
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ARCH = 
</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;'>+--- script/nhc98heap.c.orig        2007-03-13 06:03:52.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ script/nhc98heap.c     2022-04-13 07:09:55.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,5 +1,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <stdlib.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <stdio.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <ctype.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ main(int argc, char **argv)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   int prefix = 1;
</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;'>+--- src/runtime/Kernel/collector.c.orig    2007-03-13 06:03:52.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/runtime/Kernel/collector.c 2022-04-13 07:11:12.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2,6 +2,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <stdlib.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <stdio.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <string.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <unistd.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "node.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /*#include "newmacros.h"  -- already included in node.h */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /*#include "runtime.h"    -- already included in node.h */
</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;'>+--- script/echo.c.orig     2008-09-04 21:01:02.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ script/echo.c  2022-04-13 09:40:40.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,5 +1,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <stdlib.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <stdio.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <string.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int main (int argc, char** argv) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   int i=0;
</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;'>+# From: https://github.com/NetBSD/pkgsrc/blob/trunk/lang/nhc98/patches/patch-ab
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/prelude/BinArray/cLowUnboxedArray.c.orig   2007-03-13 06:03:49.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/prelude/BinArray/cLowUnboxedArray.c        2022-04-16 17:06:33.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,5 +1,5 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#include "cLowUnboxedArray.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <stdlib.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include "cLowUnboxedArray.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void finaliseUBA (UBA uba) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   free(uba->block);
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/nhc98/files/patch-ppc.diff b/lang/nhc98/files/patch-ppc.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..133df7a988f
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/nhc98/files/patch-ppc.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,27 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Set correct target for PPC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- script/harch.inst.orig 2008-08-11 15:49:48.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ script/harch.inst      2022-05-31 04:05:11.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -53,6 +53,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   sun3*)  PROCESSOR=sun3;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   sun4*)  PROCESSOR=sun4;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   sparc*) PROCESSOR=sparc;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  powerpc*)       PROCESSOR=powerpc;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Keep OS release number only if it might be relevant.
</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;'>+--- configure.orig 2010-07-09 20:41:23.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ configure      2022-05-31 07:30:08.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -65,8 +65,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ MACHINE=`script/harch`
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ case $MACHINE in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  powerpc-Darwin[56]) CCC=${CC-cc} ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  *)                  CCC=${CC-gcc} ;  ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  powerpc-Darwin*) CCC=gcc;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  *)               CCC=gcc;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ STRIP=${STRIP}
</span></pre><pre style='margin:0'>

</pre>