rebase to 8.10.5 from ghc:8.10

This commit is contained in:
Jens Petersen 2021-07-11 21:27:39 +08:00
parent bad2a2b5a9
commit a1a8a89e7c
5 changed files with 86 additions and 36 deletions

2
.gitignore vendored
View File

@ -31,3 +31,5 @@ testsuite-6.12.3.tar.bz2
/ghc-8.8.3-src.tar.xz.sig
/ghc-8.8.4-src.tar.xz.sig
/ghc-8.8.4-src.tar.xz
/ghc-8.10.5-src.tar.xz.sig
/ghc-8.10.5-src.tar.xz

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,8 +1,10 @@
Forwarded to https://ghc.haskell.org/trac/ghc/ticket/10424
--- a/compiler/iface/MkIface.hs
+++ b/compiler/iface/MkIface.hs
@@ -681,7 +681,7 @@ addFingerprints hsc_env mb_old_fingerpri
Index: ghc-8.10.1/compiler/iface/MkIface.hs
===================================================================
--- ghc-8.10.1.orig/compiler/iface/MkIface.hs
+++ ghc-8.10.1/compiler/iface/MkIface.hs
@@ -679,7 +679,7 @@
iface_hash <- computeFingerprint putNameLiterally
(mod_hash,
ann_fn (mkVarOcc "module"), -- See mkIfaceAnnCache
@ -11,9 +13,9 @@ Forwarded to https://ghc.haskell.org/trac/ghc/ticket/10424
sorted_deps,
mi_hpc iface0)
@@ -714,6 +714,9 @@ addFingerprints hsc_env mb_old_fingerpri
@@ -714,6 +714,9 @@
(non_orph_rules, orph_rules) = mkOrphMap ifRuleOrph (mi_rules iface0)
(non_orph_fis, orph_fis) = mkOrphMap ifFamInstOrph (mi_fam_insts iface0)
fix_fn = mi_fix_fn iface0
ann_fn = mkIfaceAnnCache (mi_anns iface0)
+ -- Do not allow filenames to affect the interface
+ usages = [ case u of UsageFile _ fp -> UsageFile "" fp; _ -> u | u <- mi_usages iface0 ]

View File

@ -8,7 +8,7 @@
# to handle RCs
%global ghc_release %{version}
%global base_ver 4.13.0.0
%global base_ver 4.14.2.0
# build profiling libraries
# build haddock
@ -37,19 +37,19 @@
# no longer build testsuite (takes time and not really being used)
%bcond_with testsuite
# 8.8 needs llvm-7.0
%global llvm_major 7.0
# 8.10.5 can use llvm 9-12
%global llvm_major 11
%global ghc_llvm_archs armv7hl aarch64
%global ghc_unregisterized_arches s390 s390x %{mips} riscv64
Name: ghc
Version: 8.8.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: 111%{?dist}
Release: 112%{?dist}
Summary: Glasgow Haskell Compiler
License: BSD and HaskellReport
@ -68,8 +68,11 @@ 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
Patch7: ghc-userguide-sphinx4.patch
Patch8: ghc-userguide-sphinx4.patch
# Arch dependent patches
@ -93,19 +96,19 @@ Patch18: Disable-unboxed-arrays.patch
# Debian patches:
Patch24: buildpath-abi-stability.patch
Patch26: no-missing-haddock-file-warning.patch
Patch28: x32-use-native-x86_64-insn.patch
#Patch28: x32-use-native-x86_64-insn.patch
# fedora ghc has been bootstrapped on
# %%{ix86} x86_64 ppc ppc64 armv7hl s390 s390x ppc64le aarch64
# and retired arches: alpha sparcv9 armv5tel
# see also deprecated ghc_arches defined in /etc/rpm/macros.ghc-srpm by redhat-rpm-macros
BuildRequires: ghc-compiler > 8.4
BuildRequires: ghc-compiler > 8.6
# for ABI hash checking
%if %{with abicheck}
BuildRequires: ghc
%endif
BuildRequires: ghc-rpm-macros-extra >= 2.0.6
BuildRequires: ghc-rpm-macros-extra
BuildRequires: ghc-binary-devel
BuildRequires: ghc-bytestring-devel
BuildRequires: ghc-containers-devel
@ -239,41 +242,42 @@ This package provides the User Guide and Haddock manual.
# use "./libraries-versions.sh" to check versions
%if %{defined ghclibdir}
%ghc_lib_subpackage -d -l BSD Cabal-3.0.1.0
%ghc_lib_subpackage -d -l BSD Cabal-3.2.1.0
%ghc_lib_subpackage -d -l %BSDHaskellReport array-0.5.4.0
%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.7.0
%ghc_lib_subpackage -d -l BSD bytestring-0.10.10.1
%ghc_lib_subpackage -d -l %BSDHaskellReport containers-0.6.2.1
%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.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
%ghc_lib_subpackage -d -l BSD filepath-1.4.2.1
# in ghc not ghc-libraries:
%ghc_lib_subpackage -d -x ghc-%{ghc_version_override}
%ghc_lib_subpackage -d -x -l BSD ghc-boot-%{ghc_version_override}
%ghc_lib_subpackage -d -l BSD ghc-boot-th-%{ghc_version_override}
%ghc_lib_subpackage -d -l BSD ghc-compact-0.1.0.0
%ghc_lib_subpackage -d -l BSD ghc-heap-%{ghc_version_override}
# see below for ghc-prim
%ghc_lib_subpackage -d -l BSD haskeline-0.7.5.0
%ghc_lib_subpackage -d -l BSD hpc-0.6.0.3
%ghc_lib_subpackage -d -l BSD -x ghci-%{ghc_version_override}
%ghc_lib_subpackage -d -l BSD haskeline-0.8.0.1
%ghc_lib_subpackage -d -l BSD hpc-0.6.1.0
# see below for integer-gmp
%ghc_lib_subpackage -d -l %BSDHaskellReport libiserv-%{ghc_version_override}
%ghc_lib_subpackage -d -l BSD mtl-2.2.2
%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 template-haskell-2.15.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.0
%ghc_lib_subpackage -d -l BSD text-1.2.4.1
%ghc_lib_subpackage -d -l BSD time-1.9.3
%ghc_lib_subpackage -d -l BSD transformers-0.5.6.2
%ghc_lib_subpackage -d -l BSD unix-2.7.2.2
%if %{with haddock}
%ghc_lib_subpackage -d -l BSD xhtml-3000.2.2.1
%endif
# in ghc not ghc-devel:
%ghc_lib_subpackage -d -x ghc-%{ghc_version_override}
%ghc_lib_subpackage -d -x -l BSD ghc-boot-%{ghc_version_override}
%ghc_lib_subpackage -d -x -l BSD ghci-%{ghc_version_override}
%endif
%global version %{ghc_version_override}
@ -315,6 +319,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
@ -335,7 +340,7 @@ rm -r libffi-tarballs
# debian
%patch24 -p1 -b .orig
%patch26 -p1 -b .orig
%patch28 -p1 -b .orig
#%%patch28 -p1 -b .orig
%global gen_contents_index gen_contents_index.orig
%if %{with haddock}
@ -448,8 +453,8 @@ echo "%{ghclibdir}/include" >> ghc-base-devel.files
%ghc_gen_filelists ghc-boot %{ghc_version_override}
%ghc_gen_filelists ghc %{ghc_version_override}
%ghc_gen_filelists ghci %{ghc_version_override}
%ghc_gen_filelists ghc-prim 0.5.3
%ghc_gen_filelists integer-gmp 1.0.2.0
%ghc_gen_filelists ghc-prim 0.6.1
%ghc_gen_filelists integer-gmp 1.0.3.0
%define merge_filelist()\
cp -p libraries/%1/LICENSE libraries/LICENSE.%1\
@ -566,7 +571,7 @@ env -C %{ghc_html_libraries_dir} ./gen_contents_index
%files compiler
%license LICENSE
%doc ANNOUNCE
%doc README.md
%{_bindir}/ghc
%{_bindir}/ghc-%{version}
%{_bindir}/ghc-pkg
@ -590,9 +595,6 @@ env -C %{ghc_html_libraries_dir} ./gen_contents_index
%{ghclibdir}/bin/ghc-iserv-prof
%endif
%{ghclibdir}/bin/runghc
%ifnarch %{ghc_unregisterized_arches}
%{ghclibdir}/bin/ghc-split
%endif
%{ghclibdir}/bin/hp2ps
%{ghclibdir}/bin/unlit
%{ghclibdir}/ghc-usage.txt
@ -624,6 +626,7 @@ env -C %{ghc_html_libraries_dir} ./gen_contents_index
%ghost %{ghc_html_dir}/libraries/index*.html
%ghost %{ghc_html_dir}/libraries/linuwial.css
%ghost %{ghc_html_dir}/libraries/minus.gif
%ghost %{ghc_html_dir}/libraries/new-ocean.css
%ghost %{ghc_html_dir}/libraries/ocean.css
%ghost %{ghc_html_dir}/libraries/plus.gif
%ghost %{ghc_html_dir}/libraries/quick-jump.css
@ -658,6 +661,10 @@ env -C %{ghc_html_libraries_dir} ./gen_contents_index
%changelog
* Sun Jul 11 2021 Jens Petersen <petersen@redhat.com> - 8.10.5-112
- rebase to 8.10.5 from ghc:8.10 module stream
- https://downloads.haskell.org/~ghc/8.10.5/docs/html/users_guide/8.10.1-notes.html
* Wed Jun 30 2021 Jens Petersen <petersen@redhat.com> - 8.8.4-111
- fix build with sphinx4 (#1977317)

View File

@ -1,2 +1,2 @@
SHA512 (ghc-8.8.4-src.tar.xz.sig) = 1ed2e64e8b75a147d7c66b0018119f54ac740131b6f74612aa975c9120d8f7a8a2286829cef22ef2cd16262af0604659daa41c09ef3bdec6c22b8d086fbc1166
SHA512 (ghc-8.8.4-src.tar.xz) = efd23bd819f7429486696a3a929a040471db7ea8a2d1f1d832e4cf0825b9e1e0c5e6ecad0ab8376f58b74e9c28c1d2f773bd126596d6d853c9e57d57e5ceb090
SHA512 (ghc-8.10.5-src.tar.xz.sig) = c9d1abf8f4065c1935be877b4978638130307afbfef988ac16d7c972e502b71056a5e5acc1b54b903d8f939a0f2e3ec4ad953cdc7a9ce21024f398ce84cfb2da
SHA512 (ghc-8.10.5-src.tar.xz) = b5f39be0accd5c1cecf1cc326ba3142f561d2ac93e9abf366fe46307d7c0712aac244836e659e1a4d9d0fb98299ea96edc8e8a06f3a81b528b14914b94057ffe