summaryrefslogtreecommitdiff
path: root/lang/ghc810/files
diff options
context:
space:
mode:
Diffstat (limited to 'lang/ghc810/files')
-rw-r--r--lang/ghc810/files/patch-aclocal.m420
-rw-r--r--lang/ghc810/files/patch-linker-iconv.diff89
-rw-r--r--lang/ghc810/files/patch-llvm-targets11
3 files changed, 0 insertions, 120 deletions
diff --git a/lang/ghc810/files/patch-aclocal.m4 b/lang/ghc810/files/patch-aclocal.m4
deleted file mode 100644
index 96ba0a2b81cb..000000000000
--- a/lang/ghc810/files/patch-aclocal.m4
+++ /dev/null
@@ -1,20 +0,0 @@
---- aclocal.m4.orig 2021-06-29 07:24:51 UTC
-+++ aclocal.m4
-@@ -2221,7 +2221,7 @@ AC_DEFUN([XCODE_VERSION],[
- # FIND_LLVM_PROG()
- # --------------------------------
- # Find where the llvm tools are. We have a special function to handle when they
--# are installed with a version suffix (e.g., llc-7, llc-7.0) and without (e.g.
-+# are installed with a version suffix (e.g., llc-7, llc-7.0, llc70) and without (e.g.
- # llc).
- #
- # $1 = the variable to set
-@@ -2231,7 +2231,7 @@ AC_DEFUN([FIND_LLVM_PROG],[
- #
- AC_DEFUN([FIND_LLVM_PROG],[
- # Test for program with and without version name.
-- PROG_VERSION_CANDIDATES=$(for llvmVersion in `seq $4 -1 $3`; do echo "$2-$llvmVersion $2-$llvmVersion.0"; done)
-+ PROG_VERSION_CANDIDATES=$(for llvmVersion in `seq $4 -1 $3`; do echo "$2-$llvmVersion $2-$llvmVersion.0 $2$llvmVersion $2${llvmVersion}0"; done)
- AC_CHECK_TOOLS([$1], [$PROG_VERSION_CANDIDATES $2], [])
- AS_IF([test x"$$1" != x],[
- PROG_VERSION=`$$1 --version | awk '/.*version [[0-9\.]]+/{for(i=1;i<=NF;i++){ if(\$i ~ /^[[0-9\.]]+$/){print \$i}}}'`
diff --git a/lang/ghc810/files/patch-linker-iconv.diff b/lang/ghc810/files/patch-linker-iconv.diff
deleted file mode 100644
index a3f7a70fb528..000000000000
--- a/lang/ghc810/files/patch-linker-iconv.diff
+++ /dev/null
@@ -1,89 +0,0 @@
-https://gitlab.haskell.org/ghc/ghc/-/commit/66d2e927842653fbc1cf2e6f997f443c78c2203b
-
-diff --git a/rts/Linker.c b/rts/Linker.c
-index 1faff3b3716dd6de440071c89d0dafa471657962..12d5418d02a95893b14a619be10b5cd49a054f1a 100644
---- rts/Linker.c
-+++ rts/Linker.c
-@@ -80,6 +80,33 @@
- #if defined(dragonfly_HOST_OS)
- #include <sys/tls.h>
- #endif
-+
-+/*
-+ * Note [iconv and FreeBSD]
-+ * ~~~~~~~~~~~~~~~~~~~~~~~~
-+ *
-+ * On FreeBSD libc.so provides an implementation of the iconv_* family of
-+ * functions. However, due to their implementation, these symbols cannot be
-+ * resolved via dlsym(); rather, they can only be resolved using the
-+ * explicitly-versioned dlvsym().
-+ *
-+ * This is problematic for the RTS linker since we may be asked to load
-+ * an object that depends upon iconv. To handle this we include a set of
-+ * fallback cases for these functions, allowing us to resolve them to the
-+ * symbols provided by the libc against which the RTS is linked.
-+ *
-+ * See #20354.
-+ */
-+
-+#if defined(freebsd_HOST_OS)
-+extern void iconvctl();
-+extern void iconv_open_into();
-+extern void iconv_open();
-+extern void iconv_close();
-+extern void iconv_canonicalize();
-+extern void iconv();
-+#endif
-+
- /*
- Note [runtime-linker-support]
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-@@ -637,6 +664,10 @@ internal_dlsym(const char *symbol) {
- }
- RELEASE_LOCK(&dl_mutex);
-
-+ IF_DEBUG(linker, debugBelch("internal_dlsym: looking for symbol '%s' in special cases\n", symbol));
-+# define SPECIAL_SYMBOL(sym) \
-+ if (strcmp(symbol, #sym) == 0) return (void*)&sym;
-+
- # if defined(HAVE_SYS_STAT_H) && defined(linux_HOST_OS) && defined(__GLIBC__)
- // HACK: GLIBC implements these functions with a great deal of trickery where
- // they are either inlined at compile time to their corresponding
-@@ -646,18 +677,28 @@ internal_dlsym(const char *symbol) {
- // We borrow the approach that the LLVM JIT uses to resolve these
- // symbols. See http://llvm.org/PR274 and #7072 for more info.
-
-- IF_DEBUG(linker, debugBelch("internal_dlsym: looking for symbol '%s' in GLIBC special cases\n", symbol));
-+ SPECIAL_SYMBOL(stat);
-+ SPECIAL_SYMBOL(fstat);
-+ SPECIAL_SYMBOL(lstat);
-+ SPECIAL_SYMBOL(stat64);
-+ SPECIAL_SYMBOL(fstat64);
-+ SPECIAL_SYMBOL(lstat64);
-+ SPECIAL_SYMBOL(atexit);
-+ SPECIAL_SYMBOL(mknod);
-+# endif
-
-- if (strcmp(symbol, "stat") == 0) return (void*)&stat;
-- if (strcmp(symbol, "fstat") == 0) return (void*)&fstat;
-- if (strcmp(symbol, "lstat") == 0) return (void*)&lstat;
-- if (strcmp(symbol, "stat64") == 0) return (void*)&stat64;
-- if (strcmp(symbol, "fstat64") == 0) return (void*)&fstat64;
-- if (strcmp(symbol, "lstat64") == 0) return (void*)&lstat64;
-- if (strcmp(symbol, "atexit") == 0) return (void*)&atexit;
-- if (strcmp(symbol, "mknod") == 0) return (void*)&mknod;
-+ // See Note [iconv and FreeBSD]
-+# if defined(freebsd_HOST_OS)
-+ SPECIAL_SYMBOL(iconvctl);
-+ SPECIAL_SYMBOL(iconv_open_into);
-+ SPECIAL_SYMBOL(iconv_open);
-+ SPECIAL_SYMBOL(iconv_close);
-+ SPECIAL_SYMBOL(iconv_canonicalize);
-+ SPECIAL_SYMBOL(iconv);
- # endif
-
-+#undef SPECIAL_SYMBOL
-+
- // we failed to find the symbol
- return NULL;
- }
diff --git a/lang/ghc810/files/patch-llvm-targets b/lang/ghc810/files/patch-llvm-targets
deleted file mode 100644
index 7e46cd9c46e5..000000000000
--- a/lang/ghc810/files/patch-llvm-targets
+++ /dev/null
@@ -1,11 +0,0 @@
---- llvm-targets.orig 2022-02-08 06:25:29 UTC
-+++ llvm-targets
-@@ -42,7 +42,7 @@
- ,("aarch64-apple-ios", ("e-m:o-i64:64-i128:128-n32:64-S128", "apple-a7", "+fp-armv8 +neon +crypto +zcm +zcz +sha2 +aes"))
- ,("i386-apple-ios", ("e-m:o-p:32:32-p270:32:32-p271:32:32-p272:64:64-f64:32:64-f80:128-n8:16:32-S128", "yonah", ""))
- ,("x86_64-apple-ios", ("e-m:o-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128", "core2", ""))
--,("amd64-portbld-freebsd", ("e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128", "x86-64", ""))
-+,("x86_64-portbld-freebsd", ("e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128", "x86-64", ""))
- ,("x86_64-unknown-freebsd", ("e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128", "x86-64", ""))
- ,("aarch64-unknown-freebsd", ("e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128", "generic", "+neon"))
- ,("armv6-unknown-freebsd-gnueabihf", ("e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64", "arm1176jzf-s", "+strict-align"))