pkgsrc-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[pkgsrc/trunk]: pkgsrc/lang/ghc88 ghc88: Support SunOS/x86_64.
details: https://anonhg.NetBSD.org/pkgsrc/rev/63cc1c63891f
branches: trunk
changeset: 423416:63cc1c63891f
user: jperkin <jperkin%pkgsrc.org@localhost>
date: Mon Feb 17 17:26:53 2020 +0000
description:
ghc88: Support SunOS/x86_64.
diffstat:
lang/ghc88/Makefile | 9 +++++--
lang/ghc88/bootstrap.mk | 9 ++++---
lang/ghc88/distinfo | 12 ++++++++--
lang/ghc88/patches/patch-aclocal.m4 | 13 ++++++++++-
lang/ghc88/patches/patch-configure.ac | 15 +++++++++++--
lang/ghc88/patches/patch-rts_StgCRun.c | 24 ++++++++++++++++++++++
lang/ghc88/patches/patch-rules_distdir-way-opts.mk | 17 +++++++++++++++
7 files changed, 84 insertions(+), 15 deletions(-)
diffs (192 lines):
diff -r b98cfbb776c0 -r 63cc1c63891f lang/ghc88/Makefile
--- a/lang/ghc88/Makefile Mon Feb 17 17:24:06 2020 +0000
+++ b/lang/ghc88/Makefile Mon Feb 17 17:26:53 2020 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.9 2020/01/18 13:43:38 pho Exp $
+# $NetBSD: Makefile,v 1.10 2020/02/17 17:26:53 jperkin Exp $
# -----------------------------------------------------------------------------
# Package metadata
#
@@ -26,8 +26,7 @@
BROKEN_EXCEPT_ON_PLATFORM+= FreeBSD-*-i386
BROKEN_EXCEPT_ON_PLATFORM+= FreeBSD-*-x86_64
BROKEN_EXCEPT_ON_PLATFORM+= NetBSD-*-x86_64
-#BROKEN_EXCEPT_ON_PLATFORM+= SunOS-*-i386 # Not available yet
-#BROKEN_EXCEPT_ON_PLATFORM+= SunOS-*-x86_64 # Not available yet
+BROKEN_EXCEPT_ON_PLATFORM+= SunOS-*-x86_64
# -----------------------------------------------------------------------------
@@ -159,6 +158,10 @@
# Don't even think of PDF.
${RUN} ${ECHO} "BUILD_SPHINX_PDF = NO" >> ${WRKSRC}/mk/build.mk
+# https://gitlab.haskell.org/ghc/ghc/issues/13542
+.if ${OPSYS} == "SunOS"
+ ${RUN} ${ECHO} "SplitSections = YES" >> ${WRKSRC}/mk/build.mk
+.endif
# -----------------------------------------------------------------------------
# Installation/removal hooks
diff -r b98cfbb776c0 -r 63cc1c63891f lang/ghc88/bootstrap.mk
--- a/lang/ghc88/bootstrap.mk Mon Feb 17 17:24:06 2020 +0000
+++ b/lang/ghc88/bootstrap.mk Mon Feb 17 17:26:53 2020 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: bootstrap.mk,v 1.4 2020/01/15 01:34:08 pho Exp $
+# $NetBSD: bootstrap.mk,v 1.5 2020/02/17 17:26:53 jperkin Exp $
# -----------------------------------------------------------------------------
# Select a bindist of bootstrapping compiler on a per-platform basis.
#
@@ -63,9 +63,10 @@
.endif
.if !empty(MACHINE_PLATFORM:MSunOS-*-x86_64) || make(distinfo) || make (makesum) || make(mdi)
-#BOOT_VERSION:= 8.4.4
-#BOOT_ARCHIVE:= ghc-${BOOT_VERSION}-boot-x86_64-unknown-solaris2.tar.xz
-#DISTFILES:= ${DISTFILES} ${BOOT_ARCHIVE} # Available in LOCAL_PORTS
+BOOT_VERSION:= 8.4.4
+BOOT_ARCHIVE:= ghc-${BOOT_VERSION}-boot-x86_64-unknown-solaris2.tar.xz
+SITES.${BOOT_ARCHIVE}= https://us-east.manta.joyent.com/pkgsrc/public/pkg-bootstraps/
+DISTFILES:= ${DISTFILES} ${BOOT_ARCHIVE}
.endif
.if empty(BOOT_ARCHIVE)
diff -r b98cfbb776c0 -r 63cc1c63891f lang/ghc88/distinfo
--- a/lang/ghc88/distinfo Mon Feb 17 17:24:06 2020 +0000
+++ b/lang/ghc88/distinfo Mon Feb 17 17:26:53 2020 +0000
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.10 2020/01/18 11:40:04 pho Exp $
+$NetBSD: distinfo,v 1.11 2020/02/17 17:26:53 jperkin 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
@@ -16,13 +16,17 @@
RMD160 (ghc-8.4.4-boot-x86_64-unknown-netbsd.tar.xz) = dd50835c50cd2102c1af4d2ed8f1148c8ac4d4d9
SHA512 (ghc-8.4.4-boot-x86_64-unknown-netbsd.tar.xz) = 0cc836390985c56d79a5c08dd2117c53fc9802b969db408dab14cfd441d95b2b5c18fed5d0b6da8a8555501e668ba471d0b878ea11a0021fba76265ed4ef8f76
Size (ghc-8.4.4-boot-x86_64-unknown-netbsd.tar.xz) = 53040892 bytes
+SHA1 (ghc-8.4.4-boot-x86_64-unknown-solaris2.tar.xz) = f7021882f5bd695834bdef17b824763174274b95
+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) = 869a0c177922bb0152cc871717a385af2cdb0e3d
+SHA1 (patch-aclocal.m4) = 2ff22865f9fac8a7169cc513ddf34827b9420d58
SHA1 (patch-compiler_main_DynFlags.hs) = 07bb2a5afdd087f4d2da5c035feecc13273aec70
-SHA1 (patch-configure.ac) = 28d8ed6e4ebf12cd24a1eab0dd2d4f5c30ee9c98
+SHA1 (patch-configure.ac) = 6e5cec26e440ccd71343a1981b415459813f88be
SHA1 (patch-ghc_ghc.mk) = b395747d7871b466bc38d3a232992abb8cfe95e1
SHA1 (patch-libraries_Cabal_Cabal_Distribution_Simple_GHC.hs) = a4c82b1282c0580a7945be8c3b9d38bc760db99f
SHA1 (patch-libraries_base_GHC_Event_KQueue.hsc) = 8ee5da667a241a05fde3c580d3dc9bdc05aa5f00
@@ -35,3 +39,5 @@
SHA1 (patch-libraries_unix_System_Posix_Files_Common.hsc) = 6efef280832d376915a8987e4e8aac283408f607
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 -r b98cfbb776c0 -r 63cc1c63891f lang/ghc88/patches/patch-aclocal.m4
--- a/lang/ghc88/patches/patch-aclocal.m4 Mon Feb 17 17:24:06 2020 +0000
+++ b/lang/ghc88/patches/patch-aclocal.m4 Mon Feb 17 17:26:53 2020 +0000
@@ -1,4 +1,4 @@
-$NetBSD: patch-aclocal.m4,v 1.3 2020/01/18 10:40:55 pho Exp $
+$NetBSD: patch-aclocal.m4,v 1.4 2020/02/17 17:26:53 jperkin Exp $
Hunk #1:
Don't require Alex to build. Fixed in upstream:
@@ -8,8 +8,17 @@
Canonicalize OS name netbsd* to "netbsd":
https://gitlab.haskell.org/ghc/ghc/merge_requests/2496
---- aclocal.m4.orig 2020-01-12 06:28:01.000000000 +0000
+--- aclocal.m4.orig 2019-08-25 12:03:36.000000000 +0000
+++ aclocal.m4
+@@ -661,7 +661,7 @@ AC_DEFUN([FPTOOLS_SET_C_LD_FLAGS],
+ x86_64-unknown-solaris2)
+ $2="$$2 -m64"
+ $3="$$3 -m64"
+- $4="$$4 -m64"
++ $4="$$4 -64"
+ $5="$$5 -m64"
+ ;;
+ alpha-*)
@@ -985,8 +985,11 @@ else
fi;
changequote([, ])dnl
diff -r b98cfbb776c0 -r 63cc1c63891f lang/ghc88/patches/patch-configure.ac
--- a/lang/ghc88/patches/patch-configure.ac Mon Feb 17 17:24:06 2020 +0000
+++ b/lang/ghc88/patches/patch-configure.ac Mon Feb 17 17:26:53 2020 +0000
@@ -1,11 +1,20 @@
-$NetBSD: patch-configure.ac,v 1.2 2020/01/18 11:27:55 pho Exp $
+$NetBSD: patch-configure.ac,v 1.3 2020/02/17 17:26:53 jperkin Exp $
Don't use non-portable operator ==:
https://gitlab.haskell.org/ghc/ghc/merge_requests/2497
---- configure.ac.orig 2020-01-04 08:10:34.453377650 +0000
+--- configure.ac.orig 2019-08-25 12:03:36.000000000 +0000
+++ configure.ac
-@@ -914,7 +914,7 @@ FP_CHECK_SIZEOF_AND_ALIGNMENT(uint64_t)
+@@ -829,7 +829,7 @@ if test "x$EnableDtrace" = "xyes"; then
+ if test -n "$DtraceCmd"; then
+ if test "x$TargetOS_CPP-$TargetVendor_CPP" = "xdarwin-apple" \
+ -o "x$TargetOS_CPP-$TargetVendor_CPP" = "xfreebsd-portbld" \
+- -o "x$TargetOS_CPP-$TargetVendor_CPP" = "xsolaris2-unknown"; then
++ ; then
+ HaveDtrace=YES
+ fi
+ fi
+@@ -936,7 +936,7 @@ FP_CHECK_SIZEOF_AND_ALIGNMENT(uint64_t)
dnl for use in settings.in
TargetWordSize=$ac_cv_sizeof_void_p
diff -r b98cfbb776c0 -r 63cc1c63891f lang/ghc88/patches/patch-rts_StgCRun.c
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/lang/ghc88/patches/patch-rts_StgCRun.c Mon Feb 17 17:26:53 2020 +0000
@@ -0,0 +1,24 @@
+$NetBSD: patch-rts_StgCRun.c,v 1.1 2020/02/17 17:26:53 jperkin Exp $
+
+https://gitlab.haskell.org/ghc/ghc/merge_requests/2607/diffs
+
+--- rts/StgCRun.c.orig 2019-08-25 04:26:28.000000000 +0000
++++ rts/StgCRun.c
+@@ -405,7 +405,7 @@ StgRunIsImplementedInAssembler(void)
+ "movq %%xmm15,136(%%rax)\n\t"
+ #endif
+
+-#if !defined(darwin_HOST_OS)
++#if !defined(darwin_HOST_OS) && !defined(solaris2_HOST_OS)
+ /*
+ * Let the unwinder know where we saved the registers
+ * See Note [Unwinding foreign exports on x86-64].
+@@ -519,7 +519,7 @@ StgRunIsImplementedInAssembler(void)
+ "i"(RESERVED_C_STACK_BYTES + STG_RUN_STACK_FRAME_SIZE
+ /* rip relative to cfa */)
+
+-#if !defined(darwin_HOST_OS)
++#if !defined(darwin_HOST_OS) && !defined(solaris2_HOST_OS)
+ , "i"((RSP_DELTA & 127) | (128 * ((RSP_DELTA >> 7) > 0)))
+ /* signed LEB128-encoded delta from rsp - byte 1 */
+ #if (RSP_DELTA >> 7) > 0
diff -r b98cfbb776c0 -r 63cc1c63891f lang/ghc88/patches/patch-rules_distdir-way-opts.mk
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/lang/ghc88/patches/patch-rules_distdir-way-opts.mk Mon Feb 17 17:26:53 2020 +0000
@@ -0,0 +1,17 @@
+$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 = \
Home |
Main Index |
Thread Index |
Old Index