summaryrefslogtreecommitdiff
path: root/dev-lang/ghc/files/ghc-9.0.2-disable-unboxed-arrays.patch
diff options
context:
space:
mode:
authormatoro <matoro@users.noreply.github.com>2022-08-18 20:00:22 -0400
committerSam James <sam@gentoo.org>2022-08-21 03:25:05 +0100
commitcf7899db70b1379f1633f88e848a0ca3bcd92f62 (patch)
tree38c06613ad85f7c37cd08664cff3118ad8b8f712 /dev-lang/ghc/files/ghc-9.0.2-disable-unboxed-arrays.patch
parent4c6d7e482a2b8a5d658825c6a299f17377ed8554 (diff)
downloadgentoo-cf7899db70b1379f1633f88e848a0ca3bcd92f62.tar.gz
gentoo-cf7899db70b1379f1633f88e848a0ca3bcd92f62.tar.bz2
gentoo-cf7899db70b1379f1633f88e848a0ca3bcd92f62.zip
dev-lang/ghc: add big-endian ppc64 binary
This requires a patch to work correctly on BE systems. Apply the patch unconditionally since it is already includes the appropriate checks in the code. Delete a few lines of commented-out obsolete patches. Closes: https://bugs.gentoo.org/865311 Thanks-to: Marcus Comstedt <marcus@mc.pp.se> Closes: https://github.com/gentoo/gentoo/pull/26921 Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'dev-lang/ghc/files/ghc-9.0.2-disable-unboxed-arrays.patch')
-rw-r--r--dev-lang/ghc/files/ghc-9.0.2-disable-unboxed-arrays.patch39
1 files changed, 39 insertions, 0 deletions
diff --git a/dev-lang/ghc/files/ghc-9.0.2-disable-unboxed-arrays.patch b/dev-lang/ghc/files/ghc-9.0.2-disable-unboxed-arrays.patch
new file mode 100644
index 000000000000..599762b95454
--- /dev/null
+++ b/dev-lang/ghc/files/ghc-9.0.2-disable-unboxed-arrays.patch
@@ -0,0 +1,39 @@
+https://gitlab.haskell.org/ghc/packages/containers/-/commit/f5a511f1ff2cf16e710342948792cb8d7576e27c
+https://bugs.gentoo.org/865311
+
+From f5a511f1ff2cf16e710342948792cb8d7576e27c Mon Sep 17 00:00:00 2001
+From: Peter Trommler <ptrommler@acm.org>
+Date: Fri, 31 Dec 2021 18:20:45 +0100
+Subject: [PATCH] Disable unboxed arrays on big-endian
+
+Unboxed arrays are broken on big-endian architectures, see
+https://gitlab.haskell.org/ghc/ghc/-/issues/16998 for details.
+This patch makes the use of unboxed arrays conditional on
+little-endian architecture.
+
+Fixes #673
+---
+ libraries/containers/containers/include/containers.h | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/libraries/containers/containers/include/containers.h b/libraries/containers/containers/include/containers.h
+index cd201ca3..fc2a0e84 100644
+--- a/libraries/containers/containers/include/containers.h 2022-08-16 07:50:42.844217960 +0200
++++ b/libraries/containers/containers/include/containers.h 2022-08-16 07:50:49.327446486 +0200
+@@ -35,7 +35,13 @@
+
+ #ifdef __GLASGOW_HASKELL__
+ # define USE_ST_MONAD 1
++#ifndef WORDS_BIGENDIAN
++/*
++ * Unboxed arrays are broken on big-endian architectures.
++ * See https://gitlab.haskell.org/ghc/ghc/-/issues/16998
++ */
+ # define USE_UNBOXED_ARRAYS 1
+ #endif
++#endif
+
+ #endif
+--
+GitLab
+