diff options
author | pho <pho@pkgsrc.org> | 2020-08-24 17:23:11 +0000 |
---|---|---|
committer | pho <pho@pkgsrc.org> | 2020-08-24 17:23:11 +0000 |
commit | 3ea71a0f5125102d9d623560c2d3f755270ae388 (patch) | |
tree | 9438669969b7f2a51f61a06da359de7c4dc93070 /lang/ghc88 | |
parent | f18c58b73e16eb1286015e9669bcfcc8aa5071ca (diff) | |
download | pkgsrc-3ea71a0f5125102d9d623560c2d3f755270ae388.tar.gz |
Update to GHC 8.8.4
The full change log is too long to paste here.
Changes from 8.8.1 to 8.8.2:
https://downloads.haskell.org/~ghc/8.8.2/docs/html/users_guide/8.8.2-notes.html
Changes from 8.8.2 to 8.8.3:
https://downloads.haskell.org/~ghc/8.8.3/docs/html/users_guide/8.8.3-notes.html
Changes from 8.8.3 to 8.8.4:
https://downloads.haskell.org/~ghc/8.8.4/docs/html/users_guide/8.8.4-notes.html
Diffstat (limited to 'lang/ghc88')
-rw-r--r-- | lang/ghc88/Makefile | 18 | ||||
-rw-r--r-- | lang/ghc88/distinfo | 15 | ||||
-rw-r--r-- | lang/ghc88/patches/patch-aclocal.m4 | 23 | ||||
-rw-r--r-- | lang/ghc88/patches/patch-ghc_ghc.mk | 11 | ||||
-rw-r--r-- | lang/ghc88/patches/patch-rules_distdir-way-opts.mk | 17 |
5 files changed, 24 insertions, 60 deletions
diff --git a/lang/ghc88/Makefile b/lang/ghc88/Makefile index f4f0ca7ceaa..d138fc550be 100644 --- a/lang/ghc88/Makefile +++ b/lang/ghc88/Makefile @@ -1,9 +1,8 @@ -# $NetBSD: Makefile,v 1.12 2020/03/24 20:40:15 joerg Exp $ +# $NetBSD: Makefile,v 1.13 2020/08/24 17:23:11 pho Exp $ # ----------------------------------------------------------------------------- # Package metadata # -DISTNAME= ghc-8.8.1-src -PKGREVISION= 2 +DISTNAME= ghc-8.8.4-src PKGNAME= ${DISTNAME:S/-src$//} CATEGORIES= lang MASTER_SITES= https://downloads.haskell.org/~ghc/${PKGVERSION_NOREV}/ @@ -101,12 +100,13 @@ CONFIGURE_ENV+= \ # The runtime system of GHC (rts) tends to conflict with PaX MPROTECT # because it needs to generate various kinds of code at run time. The # RTS linker, whose job is to load *static* objects at run time, -# doesn't play nice with ASLR either. This means most executables -# produced by GHC need them to be disabled. Perhaps we should patch -# rts/sm/Storage.c so that it uses ffi_closure_alloc(3) on every -# platform, not just Linux, and also drop support for static library -# loading and switch to dynamic libraries entirely. -# (Partially done: https://gitlab.haskell.org/ghc/ghc/merge_requests/2498) +# doesn't play nice with ASLR either because it relies on +# mmap(MAP_FIXED). This means most executables produced by GHC need +# them to be disabled. Perhaps we should patch rts/sm/Storage.c so +# that it uses ffi_closure_alloc(3) on every platform, not just Linux, +# and also drop support for static library loading and switch to +# dynamic libraries entirely. (Partially done: +# https://gitlab.haskell.org/ghc/ghc/merge_requests/2498) .for f in ghc ghc-iserv ghc-iserv-dyn ghc-iserv-prof ghc-pkg haddock hpc hsc2hs runghc NOT_PAX_MPROTECT_SAFE+= lib/${PKGNAME_NOREV}/bin/${f} NOT_PAX_ASLR_SAFE+= lib/${PKGNAME_NOREV}/bin/${f} diff --git a/lang/ghc88/distinfo b/lang/ghc88/distinfo index 4c9fb1f7c94..53f966d68d5 100644 --- a/lang/ghc88/distinfo +++ b/lang/ghc88/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.11 2020/02/17 17:26:53 jperkin Exp $ +$NetBSD: distinfo,v 1.12 2020/08/24 17:23:11 pho Exp $ SHA1 (ghc-8.4.4-boot-i386-unknown-freebsd.tar.xz) = 04981802730423aa12999e59679be198d540222a RMD160 (ghc-8.4.4-boot-i386-unknown-freebsd.tar.xz) = f617e67f2c2f07c7211cb391a4bc2e7b304045e2 @@ -20,14 +20,14 @@ SHA1 (ghc-8.4.4-boot-x86_64-unknown-solaris2.tar.xz) = f7021882f5bd695834bdef17b RMD160 (ghc-8.4.4-boot-x86_64-unknown-solaris2.tar.xz) = 986c8ef22d4a2cb5cbf058dafd8b8dc1a6295dd9 SHA512 (ghc-8.4.4-boot-x86_64-unknown-solaris2.tar.xz) = 88cba2a1954f0f2282e7b54b2c42f9b8d852b337996556301d9b739e4a89678c7a606e653ff21cce694489b9f02b8edd6641f62624dc0b6ecc53a377129785d5 Size (ghc-8.4.4-boot-x86_64-unknown-solaris2.tar.xz) = 67421732 bytes -SHA1 (ghc-8.8.1-src.tar.xz) = 9d8c1b2e0bad002fed39ba8f53684615a96bc218 -RMD160 (ghc-8.8.1-src.tar.xz) = c514d565e9f808a58991e47b17dccb85f0c01056 -SHA512 (ghc-8.8.1-src.tar.xz) = 7268b012c3a6c34e7eac05c7d6959de6005651d33e870860bbfe589295502e8794a76580130b8f4da2f88032b68116dbbdbc4c1e900e0c862aaa9891fa788bef -Size (ghc-8.8.1-src.tar.xz) = 28634672 bytes -SHA1 (patch-aclocal.m4) = 2ff22865f9fac8a7169cc513ddf34827b9420d58 +SHA1 (ghc-8.8.4-src.tar.xz) = 94dfb44d8f6b812a7023309ec909e2288f0e7724 +RMD160 (ghc-8.8.4-src.tar.xz) = 2201ffb27231d9fce293b77830e6fae09f48f163 +SHA512 (ghc-8.8.4-src.tar.xz) = efd23bd819f7429486696a3a929a040471db7ea8a2d1f1d832e4cf0825b9e1e0c5e6ecad0ab8376f58b74e9c28c1d2f773bd126596d6d853c9e57d57e5ceb090 +Size (ghc-8.8.4-src.tar.xz) = 19395252 bytes +SHA1 (patch-aclocal.m4) = 27209100d99fa8e2c4bc45d1423ead48de7626cb SHA1 (patch-compiler_main_DynFlags.hs) = 07bb2a5afdd087f4d2da5c035feecc13273aec70 SHA1 (patch-configure.ac) = 6e5cec26e440ccd71343a1981b415459813f88be -SHA1 (patch-ghc_ghc.mk) = b395747d7871b466bc38d3a232992abb8cfe95e1 +SHA1 (patch-ghc_ghc.mk) = 9c639cc95cb79e4ffbd9b5fce311edba54939b5e SHA1 (patch-libraries_Cabal_Cabal_Distribution_Simple_GHC.hs) = a4c82b1282c0580a7945be8c3b9d38bc760db99f SHA1 (patch-libraries_base_GHC_Event_KQueue.hsc) = 8ee5da667a241a05fde3c580d3dc9bdc05aa5f00 SHA1 (patch-libraries_base_System_CPUTime_Posix_Times.hsc) = 2bfb779d534d12073287274ce5e90b99e457a860 @@ -40,4 +40,3 @@ SHA1 (patch-libraries_unix_System_Posix_Files_Common.hsc) = 6efef280832d376915a8 SHA1 (patch-libraries_unix_System_Posix_Signals.hsc) = 49215dce493a6bbc440f91a3959e592f86fc779b SHA1 (patch-libraries_unix_include_execvpe.h) = 67dd9720a71a6a55bbe2b50e61621ca60187ef00 SHA1 (patch-rts_StgCRun.c) = 121c7bd714725d5b14a3cbb03d81b1c769848824 -SHA1 (patch-rules_distdir-way-opts.mk) = 417444cab62ab07ab47adcd1941a3c8026d8a60a diff --git a/lang/ghc88/patches/patch-aclocal.m4 b/lang/ghc88/patches/patch-aclocal.m4 index 35e43b2914b..499c07660a4 100644 --- a/lang/ghc88/patches/patch-aclocal.m4 +++ b/lang/ghc88/patches/patch-aclocal.m4 @@ -1,14 +1,13 @@ -$NetBSD: patch-aclocal.m4,v 1.4 2020/02/17 17:26:53 jperkin Exp $ +$NetBSD: patch-aclocal.m4,v 1.5 2020/08/24 17:23:12 pho Exp $ Hunk #1: - Don't require Alex to build. Fixed in upstream: - https://gitlab.haskell.org/ghc/ghc/issues/16860 + Support SunOS/x86_64. Hunk #2: Canonicalize OS name netbsd* to "netbsd": https://gitlab.haskell.org/ghc/ghc/merge_requests/2496 ---- aclocal.m4.orig 2019-08-25 12:03:36.000000000 +0000 +--- aclocal.m4.orig 2020-07-08 16:43:03.000000000 +0000 +++ aclocal.m4 @@ -661,7 +661,7 @@ AC_DEFUN([FPTOOLS_SET_C_LD_FLAGS], x86_64-unknown-solaris2) @@ -19,21 +18,7 @@ Hunk #2: $5="$$5 -m64" ;; alpha-*) -@@ -985,8 +985,11 @@ else - fi; - changequote([, ])dnl - ]) --FP_COMPARE_VERSIONS([$fptools_cv_alex_version],[-lt],[3.1.7], -- [AC_MSG_ERROR([Alex version 3.1.7 or later is required to compile GHC.])])[] -+if test ! -f compiler/parser/Lexer.hs -+then -+ FP_COMPARE_VERSIONS([$fptools_cv_alex_version],[-lt],[3.1.7], -+ [AC_MSG_ERROR([Alex version 3.1.7 or later is required to compile GHC.])])[] -+fi - AlexVersion=$fptools_cv_alex_version; - AC_SUBST(AlexVersion) - ]) -@@ -2044,6 +2047,9 @@ AC_DEFUN([GHC_CONVERT_OS],[ +@@ -2047,6 +2047,9 @@ AC_DEFUN([GHC_CONVERT_OS],[ openbsd*) $3="openbsd" ;; diff --git a/lang/ghc88/patches/patch-ghc_ghc.mk b/lang/ghc88/patches/patch-ghc_ghc.mk index 934a878e664..d4de742c353 100644 --- a/lang/ghc88/patches/patch-ghc_ghc.mk +++ b/lang/ghc88/patches/patch-ghc_ghc.mk @@ -1,13 +1,13 @@ -$NetBSD: patch-ghc_ghc.mk,v 1.2 2020/01/18 11:40:04 pho Exp $ +$NetBSD: patch-ghc_ghc.mk,v 1.3 2020/08/24 17:23:12 pho Exp $ Fix building bootkits: the ghc-bin package is threaded by default, but the build system fails to opt out from it when threaded RTS is disabled: https://gitlab.haskell.org/ghc/ghc/issues/17692 ---- ghc/ghc.mk.orig 2019-08-25 12:03:36.000000000 +0000 +--- ghc/ghc.mk.orig 2020-08-24 10:13:02.192874900 +0000 +++ ghc/ghc.mk -@@ -61,7 +61,13 @@ ifeq "$(GhcThreaded)" "YES" +@@ -61,6 +61,10 @@ ifeq "$(GhcThreaded)" "YES" # Use threaded RTS with GHCi, so threads don't get blocked at the prompt. ghc_stage2_MORE_HC_OPTS += -threaded ghc_stage3_MORE_HC_OPTS += -threaded @@ -16,8 +16,5 @@ https://gitlab.haskell.org/ghc/ghc/issues/17692 +ghc_stage2_CONFIGURE_OPTS += -f-threaded +ghc_stage3_CONFIGURE_OPTS += -f-threaded endif -+# Stage-0 compiler isn't guaranteed to have a threaded RTS. -+ghc_stage1_CONFIGURE_OPTS += -f-threaded - ifeq "$(GhcProfiled)" "YES" - ghc_stage2_PROGRAM_WAY = p + # If stage 0 supplies a threaded RTS, we can use it for stage 1. diff --git a/lang/ghc88/patches/patch-rules_distdir-way-opts.mk b/lang/ghc88/patches/patch-rules_distdir-way-opts.mk deleted file mode 100644 index f5416ee85f1..00000000000 --- a/lang/ghc88/patches/patch-rules_distdir-way-opts.mk +++ /dev/null @@ -1,17 +0,0 @@ -$NetBSD: patch-rules_distdir-way-opts.mk,v 1.1 2020/02/17 17:26:53 jperkin Exp $ - -https://gitlab.haskell.org/ghc/ghc/issues/17385 - ---- rules/distdir-way-opts.mk.orig 2019-08-25 12:03:36.000000000 +0000 -+++ rules/distdir-way-opts.mk -@@ -187,8 +187,8 @@ $1_$2_$3_ALL_LD_OPTS = \ - $$($1_$2_$3_LD_OPTS) \ - $$($1_$2_EXTRA_LD_OPTS) \ - $$(EXTRA_LD_OPTS) \ -- $$(foreach o,$$(EXTRA_LD_LINKER_OPTS),-optl-Wl$$(comma)$$o) \ -- $$(foreach o,$$(CONF_LD_LINKER_OPTS_STAGE$4),-optl-Wl$$(comma)$$o) -+ $$(foreach o,$$(EXTRA_LD_LINKER_OPTS),-Wl$$(comma)$$o) \ -+ $$(foreach o,$$(CONF_LD_LINKER_OPTS_STAGE$4),-Wl$$(comma)$$o) - - # Options for passing to GHC when we use it for linking - $1_$2_$3_GHC_LD_OPTS = \ |