revert back to 8.10.5 with rts patch and without s390x llvm

reduce cpus for post %install scripts for armv7hl
This commit is contained in:
Jens Petersen 2021-07-22 23:13:50 +08:00
parent 0c5dec5b3c
commit d010494668
4 changed files with 68 additions and 30 deletions

View File

@ -0,0 +1,39 @@
From 296f25fa5f0fce033b529547e0658076e26f4cda Mon Sep 17 00:00:00 2001
From: Adam Sandberg Ericsson <adam@sandbergericsson.se>
Date: Wed, 28 Apr 2021 20:11:52 +0100
Subject: [PATCH] rts: export allocateWrite, freeWrite and markExec #19763
(cherry picked from commit 2d2985a79eec3d6ae9aee96b264c97c2b158f196)
---
rts/RtsSymbols.c | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/rts/RtsSymbols.c b/rts/RtsSymbols.c
index 9ca696c27c4..d5b8cc5fece 100644
--- a/rts/RtsSymbols.c
+++ b/rts/RtsSymbols.c
@@ -539,11 +539,21 @@
#define RTS_PROF_SYMBOLS /* empty */
#endif
+#if RTS_LINKER_USE_MMAP
+#define RTS_LINKER_USE_MMAP_SYMBOLS \
+ SymI_HasProto(allocateWrite) \
+ SymI_HasProto(freeWrite) \
+ SymI_HasProto(markExec)
+#else
+#define RTS_LINKER_USE_MMAP_SYMBOLS /* empty */
+#endif
+
#define RTS_SYMBOLS \
Maybe_Stable_Names \
RTS_TICKY_SYMBOLS \
RTS_PROF_SYMBOLS \
RTS_LIBDW_SYMBOLS \
+ RTS_LINKER_USE_MMAP_SYMBOLS \
SymI_HasProto(StgReturn) \
SymI_HasProto(stg_gc_noregs) \
SymI_HasProto(stg_ret_v_info) \
--
GitLab

View File

@ -1,11 +0,0 @@
--- ghc-8.10.2/configure.ac~ 2020-08-04 05:51:52.000000000 +0800
+++ ghc-8.10.2/configure.ac 2020-08-11 18:57:45.074836178 +0800
@@ -673,7 +673,7 @@
# tools we are looking for. In the past, GHC supported a number of
# versions of LLVM simultaneously, but that stopped working around
# 3.5/3.6 release of LLVM.
-LlvmVersion=9
+LlvmVersion=10
AC_SUBST([LlvmVersion])
sUPPORTED_LLVM_VERSION=$(echo \($LlvmVersion\) | sed 's/\./,/')
AC_DEFINE_UNQUOTED([sUPPORTED_LLVM_VERSION], ${sUPPORTED_LLVM_VERSION}, [The supported LLVM version number])

View File

@ -8,7 +8,7 @@
# to handle RCs
%global ghc_release %{version}
%global base_ver 4.14.1.0
%global base_ver 4.14.2.0
# build profiling libraries
# build haddock
@ -19,6 +19,7 @@
%bcond_with perf_build
%undefine _enable_debug_packages
%else
%bcond_without ghc_prof
%bcond_without haddock
%bcond_without perf_build
%endif
@ -37,19 +38,19 @@
# no longer build testsuite (takes time and not really being used)
%bcond_with testsuite
# 8.10 recommends llvm-9 but 10 or even 11 should work
%global llvm_major 10
# 8.10.5 can use llvm 9-12
%global llvm_major 11
%global ghc_llvm_archs armv7hl aarch64
%global ghc_unregisterized_arches s390 %{mips} riscv64 s390x
%global ghc_unregisterized_arches s390 s390x %{mips} riscv64
Name: ghc
Version: 8.10.4
Version: 8.10.5
# Since library subpackages are versioned:
# - 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: 114%{?dist}
Release: 115%{?dist}
Summary: Glasgow Haskell Compiler
License: BSD and HaskellReport
@ -68,13 +69,15 @@ Patch2: ghc-Cabal-install-PATH-warning.patch
Patch3: ghc-gen_contents_index-nodocs.patch
# https://phabricator.haskell.org/rGHC4eebc8016f68719e1ccdf460754a97d1f4d6ef05
Patch6: ghc-8.6.3-sphinx-1.8.patch
# https://gitlab.haskell.org/ghc/ghc/-/issues/19763
# https://gitlab.haskell.org/ghc/ghc/-/merge_requests/5915
Patch7: https://gitlab.haskell.org/ghc/ghc/-/commit/296f25fa5f0fce033b529547e0658076e26f4cda.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=1977317
Patch8: ghc-userguide-sphinx4.patch
# Arch dependent patches
# arm
Patch12: ghc-armv7-VFPv3D16--NEON.patch
Patch13: ghc-8.10-llvm10.patch
# for unregisterized
# https://ghc.haskell.org/trac/ghc/ticket/15689
@ -131,8 +134,8 @@ BuildRequires: llvm%{llvm_major}
%if %{with dwarf}
BuildRequires: elfutils-devel
%endif
%ifarch armv7hl %{ghc_llvm_archs}
# patch12, patch13
%ifarch armv7hl
# patch12
BuildRequires: autoconf, automake
%endif
%if %{without quickbuild}
@ -243,7 +246,7 @@ This package provides the User Guide and Haddock manual.
%ghc_lib_subpackage -d -l %BSDHaskellReport -c gmp-devel%{?_isa},libffi-devel%{?_isa} base-%{base_ver}
%ghc_lib_subpackage -d -l BSD binary-0.8.8.0
%ghc_lib_subpackage -d -l BSD bytestring-0.10.12.0
%ghc_lib_subpackage -d -l %BSDHaskellReport containers-0.6.2.1
%ghc_lib_subpackage -d -l %BSDHaskellReport containers-0.6.4.1
%ghc_lib_subpackage -d -l %BSDHaskellReport deepseq-1.4.4.0
%ghc_lib_subpackage -d -l %BSDHaskellReport directory-1.3.6.0
%ghc_lib_subpackage -d -l %BSDHaskellReport exceptions-0.10.4
@ -264,7 +267,7 @@ This package provides the User Guide and Haddock manual.
%ghc_lib_subpackage -d -l BSD parsec-3.1.14.0
%ghc_lib_subpackage -d -l BSD pretty-1.1.3.6
%ghc_lib_subpackage -d -l %BSDHaskellReport process-1.6.9.0
%ghc_lib_subpackage -d -l BSD stm-2.5.0.0
%ghc_lib_subpackage -d -l BSD stm-2.5.0.1
%ghc_lib_subpackage -d -l BSD template-haskell-2.16.0.0
%ghc_lib_subpackage -d -l BSD -c ncurses-devel%{?_isa} terminfo-0.4.1.4
%ghc_lib_subpackage -d -l BSD text-1.2.4.1
@ -314,6 +317,7 @@ packages to be automatically installed too.
%patch2 -p1 -b .orig
%patch6 -p1 -b .orig
%patch7 -p1 -b .orig
%patch8 -p1 -b .orig
rm -r libffi-tarballs
@ -322,10 +326,6 @@ rm -r libffi-tarballs
%patch12 -p1 -b .orig
%endif
%ifarch %{ghc_llvm_archs}
%patch13 -p1 -b .orig13
%endif
# remove s390x after switching to llvm
%ifarch %{ghc_unregisterized_arches} s390x
%patch15 -p1 -b .orig
@ -385,8 +385,8 @@ BUILD_SPHINX_PDF = NO
EOF
%build
# for patch12 and patch13
%ifarch armv7hl %{ghc_llvm_archs}
# for patch12
%ifarch armv7hl
autoreconf
%endif
@ -488,6 +488,11 @@ install -p -m 0644 %{SOURCE5} %{buildroot}%{_mandir}/man1/ghc-pkg.1
install -p -m 0644 %{SOURCE6} %{buildroot}%{_mandir}/man1/haddock.1
install -p -m 0644 %{SOURCE7} %{buildroot}%{_mandir}/man1/runghc.1
%ifarch armv7hl
export RPM_BUILD_NCPUS=1
%endif
%check
export LANG=en_US.utf8
# stolen from ghc6/debian/rules:
@ -659,6 +664,11 @@ env -C %{ghc_html_libraries_dir} ./gen_contents_index
%changelog
* Thu Jul 22 2021 Jens Petersen <petersen@redhat.com> - 8.10.5-115
- update to 8.10.5 with patch for missing rts symbols
- use llvm 11 for ARM
- https://downloads.haskell.org/~ghc/8.10.5/docs/html/users_guide/8.10.5-notes.html
* Thu Jul 15 2021 Jens Petersen <petersen@redhat.com> - 8.10.4-114
- perf build

View File

@ -1,2 +1,2 @@
SHA512 (ghc-8.10.4-src.tar.xz) = 9bb078cb72535a352243b83b671c871392564efd09e478549f27ae58fc6f46e337a0782f5500d26d5704ad96eace22e77bb36031a1fe9b7e175f265b0b9c028b
SHA512 (ghc-8.10.4-src.tar.xz.sig) = af7dea2adfe120fb35aba203381062c0d6bb0fd76e675ed016019014954a82a58e1a8509b523ffc826ab4ca717a4e00d30280ac9bc1b2e120af6aecbb314897b
SHA512 (ghc-8.10.5-src.tar.xz.sig) = c9d1abf8f4065c1935be877b4978638130307afbfef988ac16d7c972e502b71056a5e5acc1b54b903d8f939a0f2e3ec4ad953cdc7a9ce21024f398ce84cfb2da
SHA512 (ghc-8.10.5-src.tar.xz) = b5f39be0accd5c1cecf1cc326ba3142f561d2ac93e9abf366fe46307d7c0712aac244836e659e1a4d9d0fb98299ea96edc8e8a06f3a81b528b14914b94057ffe