Add support for RISC-V (riscv64)

Signed-off-by: David Abdurachmanov <david.abdurachmanov@gmail.com>
This commit is contained in:
David Abdurachmanov 2019-02-19 15:18:09 +01:00
parent 81d7c8d8c4
commit eceb72c24e
Signed by: davidlt
GPG Key ID: 7108702C938B13C1
2 changed files with 39 additions and 3 deletions

26
ghc-8.2.20-riscv.patch Normal file
View File

@ -0,0 +1,26 @@
diff --git a/aclocal.m4 b/aclocal.m4
index d5078de..cf0a0fe 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -216,7 +216,7 @@ AC_DEFUN([FPTOOLS_SET_HASKELL_PLATFORM_VARS],
mipsel)
test -z "[$]2" || eval "[$]2=ArchMipsel"
;;
- hppa|hppa1_1|ia64|m68k|rs6000|s390|s390x|sh4|vax)
+ hppa|hppa1_1|ia64|m68k|riscv32|riscv64|rs6000|s390|s390x|sh4|vax)
test -z "[$]2" || eval "[$]2=ArchUnknown"
;;
*)
@@ -1895,6 +1895,12 @@ case "$1" in
powerpc*)
$2="powerpc"
;;
+ riscv64*)
+ $2="riscv64"
+ ;;
+ riscv|riscv32*)
+ $2="riscv32"
+ ;;
rs6000)
$2="rs6000"
;;

View File

@ -30,7 +30,7 @@
%global llvm_major 5.0
%global ghc_llvm_archs armv7hl aarch64
%global ghc_unregisterized_arches s390 s390x %{mips}
%global ghc_unregisterized_arches s390 s390x %{mips} riscv64
Name: ghc
# ghc must be rebuilt after a version bump to avoid ABI change problems
@ -39,7 +39,7 @@ Version: 8.4.4
# - release can only be reset if *all* library versions get bumped simultaneously
# (sometimes after a major release)
# - minor release numbers for a branch should be incremented monotonically
Release: 73%{?dist}
Release: 73.0.riscv64%{?dist}
Summary: Glasgow Haskell Compiler
License: BSD and HaskellReport
@ -78,6 +78,9 @@ Patch26: no-missing-haddock-file-warning.patch
Patch28: x32-use-native-x86_64-insn.patch
Patch30: fix-build-using-unregisterized-v8.2.patch
# RISC-V
Patch40: ghc-8.2.20-riscv.patch
# fedora ghc has been bootstrapped on
# %%{ix86} x86_64 ppc ppc64 armv7hl s390 s390x ppc64le aarch64
# and retired arches: alpha sparcv9 armv5tel
@ -304,6 +307,10 @@ rm -r libffi-tarballs
%patch30 -p1 -b .orig
%endif
%ifarch riscv64
%patch40 -p1 -b .orig
%endif
%global gen_contents_index gen_contents_index.orig
%if %{with docs}
if [ ! -f "libraries/%{gen_contents_index}" ]; then
@ -346,7 +353,7 @@ EOF
%build
# for patch12
%ifarch armv7hl
%ifarch armv7hl riscv64
autoreconf
%else
# for patch5
@ -655,6 +662,9 @@ fi
%changelog
* Tue Feb 19 2019 David Abdurachmanov <david.abdurachmanov@gmail.com> - 8.4.4-73.0.riscv64
- Enable RISC-V (riscv64)
* Sat Feb 16 2019 Jens Petersen <petersen@redhat.com> - 8.4.4-73
- update to GHC 8.4
- https://ghc.haskell.org/trac/ghc/blog/ghc-8.4.1-released