The package rpms/ghc9.8.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/ghc9.8.git/commit/?id=9cf563a38a8...
https://src.fedoraproject.org/cgit/rpms/ghc9.8.git/commit/?id=5c1e44286d2...
https://src.fedoraproject.org/cgit/rpms/ghc9.8.git/commit/?id=d1dee3aaff6...
https://src.fedoraproject.org/cgit/rpms/ghc9.8.git/commit/?id=4e2b1034410....
Change:
+%ifarch riscv64
+%ifarch %{ghc_unregisterized_arches} riscv64
-%ifarch s390x
+%ifarch s390x
Thanks.
Full change:
============
commit 2f294d96018372a4bf47065a9d0578c91347ad89
Author: Jens Petersen <petersen(a)redhat.com>
Date: Mon Feb 26 17:45:06 2024 +0800
update to 9.8.2
diff --git a/.gitignore b/.gitignore
index 439464c..13a83e4 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,3 @@
/ghc-9.8.0.20230727-src.tar.lz
/ghc-9.8.1-src.tar.lz
+/ghc-9.8.2-src.tar.lz
diff --git a/10518.patch b/10518.patch
deleted file mode 100644
index 2a4c84e..0000000
--- a/10518.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From a1dc4da985db1e14c8251a024edd47d832da4fb2 Mon Sep 17 00:00:00 2001
-From: Greg Steuck <gnezdo(a)groq.com>
-Date: Tue, 23 May 2023 13:25:17 -0700
-Subject: [PATCH] Remove undefined FP_PROG_LD_BUILD_ID from configure.ac's
-
----
- configure.ac | 1 -
- distrib/configure.ac.in | 1 -
- 2 files changed, 2 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 0005d566570..e3b6ab2fe8d 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -487,7 +487,6 @@ CFLAGS="$CFLAGS $GccUseLdOpt"
- AC_SUBST([LdCmd])
-
- FP_PROG_LD_IS_GNU
--FP_PROG_LD_BUILD_ID
- FP_PROG_LD_NO_COMPACT_UNWIND
- FP_PROG_LD_FILELIST
-
-diff --git a/distrib/configure.ac.in b/distrib/configure.ac.in
-index ce75510b8ac..3dc588085d6 100644
---- a/distrib/configure.ac.in
-+++ b/distrib/configure.ac.in
-@@ -130,7 +130,6 @@ CFLAGS="$CFLAGS $GccUseLdOpt"
- AC_SUBST([LdCmd])
-
- FP_PROG_LD_IS_GNU
--FP_PROG_LD_BUILD_ID
- FP_PROG_LD_NO_COMPACT_UNWIND
- FP_PROG_LD_FILELIST
-
---
-GitLab
-
diff --git a/11662.patch b/11662.patch
deleted file mode 100644
index ce6ca44..0000000
--- a/11662.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From bed85f7bc358fdca4677a3070b94ea544bb9e7ff Mon Sep 17 00:00:00 2001
-From: Stefan Schulze Frielinghaus <stefansf(a)linux.ibm.com>
-Date: Mon, 27 Nov 2023 12:34:47 +0100
-Subject: [PATCH] llvmGen: Align objects in the data section
-
-Objects in the data section may be referenced via tagged pointers.
-Thus, align those objects to a 4- or 8-byte boundary for 32- or 64-bit
-platforms, respectively. Note, this may need to be reconsidered if
-objects with a greater natural alignment requirement are emitted as e.g.
-128-bit atomics.
-
-Fixes #24163.
----
- compiler/GHC/CmmToLlvm/Data.hs | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/compiler/GHC/CmmToLlvm/Data.hs b/compiler/GHC/CmmToLlvm/Data.hs
-index caac121413c..5e8912e3bc7 100644
---- a/compiler/GHC/CmmToLlvm/Data.hs
-+++ b/compiler/GHC/CmmToLlvm/Data.hs
-@@ -89,6 +89,7 @@ genLlvmData (sec, CmmStaticsRaw lbl xs) = do
- align = case sec of
- Section CString _ -> if (platformArch platform ==
ArchS390X)
- then Just 2 else Just 1
-+ Section Data _ -> Just $ platformWordSizeInBytes
platform
- _ -> Nothing
- const = if sectionProtection sec == ReadOnlySection
- then Constant else Global
---
-GitLab
-
diff --git a/ghc-modern-c-fix.patch b/ghc-modern-c-fix.patch
deleted file mode 100644
index 9ae912f..0000000
--- a/ghc-modern-c-fix.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/compiler/GHC/HsToCore/Foreign/C.hs
-+++ b/compiler/GHC/HsToCore/Foreign/C.hs
-@@ -560,7 +560,7 @@ mkFExportCBits dflags c_nm maybe_target arg_htys res_hty is_IO_res_ty
cc
- , ppUnless res_hty_is_unit $
- if libffi
- then char '*' <> parens (ffi_cResType <> char
'*') <>
-- text "resp = cret;"
-+ text "resp = " <> parens ffi_cResType <>
text "cret;"
- else text "return cret;"
- , rbrace
- ]
diff --git a/ghc9.8.spec b/ghc9.8.spec
index a760e41..28f074f 100644
--- a/ghc9.8.spec
+++ b/ghc9.8.spec
@@ -20,7 +20,7 @@
# to handle RCs
%global ghc_release %{version}
-%global base_ver 4.19.0.0
+%global base_ver 4.19.1.0
%global ghc_bignum_ver 1.3
%global ghc_compact_ver 0.1.0.0
%global hpc_ver 0.7.0.0
@@ -52,12 +52,12 @@
%global ghc_unregisterized_arches s390 %{mips}
Name: %{ghc_name}
-Version: 9.8.1
+Version: 9.8.2
# 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: 7%{?dist}
+Release: 8%{?dist}
Summary: Glasgow Haskell Compiler
License: BSD-3-Clause AND HaskellReport
@@ -77,8 +77,6 @@ ExcludeArch: armv7hl
Patch1: ghc-gen_contents_index-haddock-path.patch
Patch2: ghc-Cabal-install-PATH-warning.patch
Patch3: ghc-gen_contents_index-nodocs.patch
-#
https://gitlab.haskell.org/ghc/ghc/-/issues/24355
-Patch4:
https://gitlab.haskell.org/ghc/ghc/-/merge_requests/10518.patch
#
https://gitlab.haskell.org/ghc/ghc/-/merge_requests/9604
# needs more backporting to 9.6
Patch9:
https://gitlab.haskell.org/ghc/ghc/-/merge_requests/9604.patch
@@ -91,11 +89,6 @@ Patch13: text2-allow-ghc8-arm.patch
# unregisterised
Patch16: ghc-hadrian-s390x-rts--qg.patch
-# s390x
-#
https://gitlab.haskell.org/ghc/ghc/-/issues/24163
-#
https://gitlab.haskell.org/ghc/ghc/-/merge_requests/11662
-Patch17:
https://gitlab.haskell.org/ghc/ghc/-/merge_requests/11662.patch
-
# Debian patches:
# bad according to upstream
# see eg
https://gitlab.haskell.org/ghc/ghc/-/merge_requests/9604
@@ -111,10 +104,6 @@ Patch40: cabal-add-riscv64.patch
# Upstream in >= 9.9.
Patch41:
https://gitlab.haskell.org/ghc/ghc/-/commit/dd38aca95ac25adc9888083669b32...
-#
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.o...
-#
https://gitlab.haskell.org/ghc/ghc/-/merge_requests/12079
-Patch42: ghc-modern-c-fix.patch
-
#
https://gitlab.haskell.org/ghc/ghc/-/wikis/platforms
# fedora ghc has been bootstrapped on
@@ -332,12 +321,12 @@ This provides the hadrian tool which can be used to build ghc.
%ghc_lib_subpackage -d -l %BSDHaskellReport array-0.5.6.0
%ghc_lib_subpackage -d -l %BSDHaskellReport -c gmp-devel%{?_isa},libffi-devel%{?_isa}
base-%{base_ver}
%ghc_lib_subpackage -d -l BSD-3-Clause binary-0.8.9.1
-%ghc_lib_subpackage -d -l BSD-3-Clause bytestring-0.12.0.2
+%ghc_lib_subpackage -d -l BSD-3-Clause bytestring-0.12.1.0
%ghc_lib_subpackage -d -l %BSDHaskellReport containers-0.6.8
%ghc_lib_subpackage -d -l %BSDHaskellReport deepseq-1.5.0.0
%ghc_lib_subpackage -d -l %BSDHaskellReport directory-1.3.8.1
%ghc_lib_subpackage -d -l %BSDHaskellReport exceptions-0.10.7
-%ghc_lib_subpackage -d -l BSD-3-Clause filepath-1.4.100.4
+%ghc_lib_subpackage -d -l BSD-3-Clause filepath-1.4.200.1
# in ghc not ghc-libraries:
%ghc_lib_subpackage -d -x ghc-%{ghc_version_override}
%ghc_lib_subpackage -d -x -l BSD-3-Clause ghc-bignum-%{ghc_bignum_ver}
@@ -359,10 +348,10 @@ This provides the hadrian tool which can be used to build ghc.
%ghc_lib_subpackage -d -l BSD-3-Clause stm-2.5.2.1
%ghc_lib_subpackage -d -l BSD-3-Clause template-haskell-2.21.0.0
%ghc_lib_subpackage -d -l BSD-3-Clause -c ncurses-devel%{?_isa} terminfo-0.4.1.6
-%ghc_lib_subpackage -d -l BSD-3-Clause text-2.1
+%ghc_lib_subpackage -d -l BSD-3-Clause text-2.1.1
%ghc_lib_subpackage -d -l BSD-3-Clause time-1.12.2
%ghc_lib_subpackage -d -l BSD-3-Clause transformers-0.6.1.0
-%ghc_lib_subpackage -d -l BSD-3-Clause unix-2.8.3.0
+%ghc_lib_subpackage -d -l BSD-3-Clause unix-2.8.4.0
%ghc_lib_subpackage -d -l BSD-3-Clause xhtml-%{xhtml_ver}
%endif
@@ -398,7 +387,6 @@ Installing this package causes %{name}-*-prof packages corresponding
to
%patch -P1 -p1 -b .orig
%patch -P3 -p1 -b .orig
-%patch -P4 -p1 -b .orig
#%%patch -P2 -p1 -b .orig
#%%patch -P9 -p1 -b .orig
@@ -418,8 +406,6 @@ rm libffi-tarballs/libffi-*.tar.gz
%endif
%endif
-%patch -P17 -p1 -b .orig
-
#debian
#%%patch -P24 -p1 -b .orig
%patch -P26 -p1 -b .orig
@@ -432,8 +418,6 @@ rm libffi-tarballs/libffi-*.tar.gz
%patch -P41 -p1 -b .orig
%endif
-#Modern C fix
-%patch -P42 -p1 -b .orig
%build
# patch4
@@ -864,6 +848,10 @@ make test
%changelog
+* Mon Feb 26 2024 Jens Petersen <petersen(a)redhat.com> - 9.8.2-8
+-
https://downloads.haskell.org/~ghc/9.8.2/docs/users_guide/9.8.2-notes.html
+- minor bumps to bytestring, filepath, text, unix
+
* Thu Feb 15 2024 Richard W.M. Jones <rjones(a)redhat.com> - 9.8.1-7
- Fix generated C for Modern C Initiative
diff --git a/sources b/sources
index c78800b..13a858f 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (ghc-9.8.1-src.tar.lz) =
e2cc1d2b43b2b1a24043a6dc0910e607eba15910556d2e91180cca4dc65086ea84326687d50eb7be7b7099a1517852ad5fbc37eaad3273777a1e42e0675b26f1
+SHA512 (ghc-9.8.2-src.tar.lz) =
9bb2e8bc4fc694d760ab7cb60d9b4e504cff3f92953b31476298c6c11c397a1b7bffeb2fd5b12593507f2d4d7d8daea7f6407de0a93f6cced9a2b1e6ea3b8d7f
commit 6d8d84a9ad88193dcbb4f46d356136380ca8a986
Author: Jens Petersen <petersen(a)redhat.com>
Date: Fri Feb 16 15:49:16 2024 +0800
fixup ghc-modern-c-fix patch file extension
diff --git a/ghc-modern-c-fix.txt b/ghc-modern-c-fix.patch
similarity index 100%
rename from ghc-modern-c-fix.txt
rename to ghc-modern-c-fix.patch
diff --git a/ghc9.8.spec b/ghc9.8.spec
index 871b33e..a760e41 100644
--- a/ghc9.8.spec
+++ b/ghc9.8.spec
@@ -113,7 +113,7 @@ Patch41:
https://gitlab.haskell.org/ghc/ghc/-/commit/dd38aca95ac25adc9888083669b
#
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.o...
#
https://gitlab.haskell.org/ghc/ghc/-/merge_requests/12079
-Patch42: ghc-modern-c-fix.txt
+Patch42: ghc-modern-c-fix.patch
#
https://gitlab.haskell.org/ghc/ghc/-/wikis/platforms
commit ffa7c9c884c138084c74933b504379cb202a5c15
Author: Richard W.M. Jones <rjones(a)redhat.com>
Date: Thu Feb 15 13:20:10 2024 +0000
Fix generated C for Modern C Initiative
diff --git a/ghc-modern-c-fix.txt b/ghc-modern-c-fix.txt
new file mode 100644
index 0000000..9ae912f
--- /dev/null
+++ b/ghc-modern-c-fix.txt
@@ -0,0 +1,11 @@
+--- a/compiler/GHC/HsToCore/Foreign/C.hs
++++ b/compiler/GHC/HsToCore/Foreign/C.hs
+@@ -560,7 +560,7 @@ mkFExportCBits dflags c_nm maybe_target arg_htys res_hty is_IO_res_ty
cc
+ , ppUnless res_hty_is_unit $
+ if libffi
+ then char '*' <> parens (ffi_cResType <> char
'*') <>
+- text "resp = cret;"
++ text "resp = " <> parens ffi_cResType <>
text "cret;"
+ else text "return cret;"
+ , rbrace
+ ]
diff --git a/ghc9.8.spec b/ghc9.8.spec
index 492c8a3..871b33e 100644
--- a/ghc9.8.spec
+++ b/ghc9.8.spec
@@ -57,7 +57,7 @@ Version: 9.8.1
# - 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: 6%{?dist}
+Release: 7%{?dist}
Summary: Glasgow Haskell Compiler
License: BSD-3-Clause AND HaskellReport
@@ -111,6 +111,10 @@ Patch40: cabal-add-riscv64.patch
# Upstream in >= 9.9.
Patch41:
https://gitlab.haskell.org/ghc/ghc/-/commit/dd38aca95ac25adc9888083669b32...
+#
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.o...
+#
https://gitlab.haskell.org/ghc/ghc/-/merge_requests/12079
+Patch42: ghc-modern-c-fix.txt
+
#
https://gitlab.haskell.org/ghc/ghc/-/wikis/platforms
# fedora ghc has been bootstrapped on
@@ -428,6 +432,9 @@ rm libffi-tarballs/libffi-*.tar.gz
%patch -P41 -p1 -b .orig
%endif
+#Modern C fix
+%patch -P42 -p1 -b .orig
+
%build
# patch4
autoupdate
@@ -857,6 +864,9 @@ make test
%changelog
+* Thu Feb 15 2024 Richard W.M. Jones <rjones(a)redhat.com> - 9.8.1-7
+- Fix generated C for Modern C Initiative
+
* Wed Jan 24 2024 Fedora Release Engineering <releng(a)fedoraproject.org> - 9.8.1-6
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
commit 9cf563a38a8cf5caa7fc99381a8545db31ceaa1d
Author: Jens Petersen <petersen(a)redhat.com>
Date: Tue Feb 13 00:50:57 2024 +0800
condition the riscv64 patches
Patching Cabal would cause the ABI hash to change causing major
rawhide breakage
diff --git a/ghc9.8.spec b/ghc9.8.spec
index ebac60e..492c8a3 100644
--- a/ghc9.8.spec
+++ b/ghc9.8.spec
@@ -421,11 +421,12 @@ rm libffi-tarballs/libffi-*.tar.gz
%patch -P26 -p1 -b .orig
%patch -P27 -p1 -b .orig
+%ifarch riscv64
#RISCV64 cabal support
%patch -P40 -p1 -b .orig
-
#GHCi support
%patch -P41 -p1 -b .orig
+%endif
%build
# patch4
commit 34c593df21525c72e4a99de1b23618ab4217fab4
Author: Richard W.M. Jones <rjones(a)redhat.com>
Date: Mon Feb 12 15:38:31 2024 +0000
riscv64: Apply Cabal patch
Commit ebb2ee7214 ("Add RISCV64 to Cabal") added the patch but did not
apply it in %prep.
Signed-off-by: Richard W.M. Jones <rjones(a)redhat.com>
diff --git a/ghc9.8.spec b/ghc9.8.spec
index 9e9e316..ebac60e 100644
--- a/ghc9.8.spec
+++ b/ghc9.8.spec
@@ -421,6 +421,9 @@ rm libffi-tarballs/libffi-*.tar.gz
%patch -P26 -p1 -b .orig
%patch -P27 -p1 -b .orig
+#RISCV64 cabal support
+%patch -P40 -p1 -b .orig
+
#GHCi support
%patch -P41 -p1 -b .orig
commit a2442ae1c470505009eb37d2175662b18308a287
Author: Richard W.M. Jones <rjones(a)redhat.com>
Date: Mon Feb 12 13:57:25 2024 +0000
riscv64: Enable support for GHCi (internal interpreter)
Signed-off-by: Richard W.M. Jones <rjones(a)redhat.com>
diff --git a/dd38aca95ac25adc9888083669b32ff551151259.patch
b/dd38aca95ac25adc9888083669b32ff551151259.patch
new file mode 100644
index 0000000..77a7100
--- /dev/null
+++ b/dd38aca95ac25adc9888083669b32ff551151259.patch
@@ -0,0 +1,26 @@
+From dd38aca95ac25adc9888083669b32ff551151259 Mon Sep 17 00:00:00 2001
+From: Andreas Schwab <schwab(a)suse.de>
+Date: Mon, 19 Jun 2023 10:38:26 +0200
+Subject: [PATCH] Hadrian: enable GHCi support on riscv64
+
+---
+ hadrian/src/Oracles/Setting.hs | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/hadrian/src/Oracles/Setting.hs b/hadrian/src/Oracles/Setting.hs
+index b9e5d312074..93561a94fe4 100644
+--- a/hadrian/src/Oracles/Setting.hs
++++ b/hadrian/src/Oracles/Setting.hs
+@@ -302,7 +302,8 @@ ghcWithInterpreter = do
+ , "darwin", "kfreebsdgnu" ]
+ goodArch <- anyTargetArch [ "i386", "x86_64",
"powerpc"
+ , "arm", "aarch64", "s390x"
+- , "powerpc64", "powerpc64le" ]
++ , "powerpc64", "powerpc64le"
++ , "riscv64" ]
+ return $ goodOs && goodArch
+
+ -- | Variants of the ARM architecture.
+--
+GitLab
+
diff --git a/ghc9.8.spec b/ghc9.8.spec
index 8b5e8a3..9e9e316 100644
--- a/ghc9.8.spec
+++ b/ghc9.8.spec
@@ -107,6 +107,10 @@ Patch27: haddock-remove-googleapis-fonts.patch
# See:
https://github.com/haskell/cabal/pull/9062
Patch40: cabal-add-riscv64.patch
+# Enable GHCi support on riscv64
+# Upstream in >= 9.9.
+Patch41:
https://gitlab.haskell.org/ghc/ghc/-/commit/dd38aca95ac25adc9888083669b32...
+
#
https://gitlab.haskell.org/ghc/ghc/-/wikis/platforms
# fedora ghc has been bootstrapped on
@@ -417,6 +421,8 @@ rm libffi-tarballs/libffi-*.tar.gz
%patch -P26 -p1 -b .orig
%patch -P27 -p1 -b .orig
+#GHCi support
+%patch -P41 -p1 -b .orig
%build
# patch4
commit 5c1e44286d2b5a38883dde00ef7ec038973b1f89
Author: David Abdurachmanov <davidlt(a)rivosinc.com>
Date: Tue Nov 14 20:08:38 2023 +0200
Add support for riscv64
Support for an LLVM backend was added a while back in this
upstream commit:
https://gitlab.haskell.org/ghc/ghc/-/commit/31e265c1df948d1bcc82d08affe99...
Signed-off-by: David Abdurachmanov <davidlt(a)rivosinc.com>
diff --git a/ghc9.8.spec b/ghc9.8.spec
index c501e4f..8b5e8a3 100644
--- a/ghc9.8.spec
+++ b/ghc9.8.spec
@@ -48,8 +48,8 @@
%else
%global llvm_major 15
%endif
-%global ghc_llvm_archs armv7hl s390x
-%global ghc_unregisterized_arches s390 %{mips} riscv64
+%global ghc_llvm_archs armv7hl s390x riscv64
+%global ghc_unregisterized_arches s390 %{mips}
Name: %{ghc_name}
Version: 9.8.1
@@ -400,7 +400,7 @@ rm libffi-tarballs/libffi-*.tar.gz
%patch -P13 -p1 -b .orig
%endif
-%ifarch %{ghc_unregisterized_arches}
+%ifarch %{ghc_unregisterized_arches} riscv64
%patch -P16 -p1 -b .orig
%endif
# remove if epel9 ghc using llvm
commit 609af0f442b784d1a9bea5776d9ac5a5e7fe1045
Author: David Abdurachmanov <davidlt(a)rivosinc.com>
Date: Mon Nov 20 19:27:40 2023 +0200
Add RISCV64 to Cabal
This is already merged upstreamed. See:
https://github.com/haskell/cabal/pull/9062
Signed-off-by: David Abdurachmanov <davidlt(a)rivosinc.com>
diff --git a/cabal-add-riscv64.patch b/cabal-add-riscv64.patch
new file mode 100644
index 0000000..e2237d8
--- /dev/null
+++ b/cabal-add-riscv64.patch
@@ -0,0 +1,43 @@
+diff --git a/libraries/Cabal/Cabal-syntax/src/Distribution/System.hs
b/libraries/Cabal/Cabal-syntax/src/Distribution/System.hs
+index 68bda63..6521464 100644
+--- a/libraries/Cabal/Cabal-syntax/src/Distribution/System.hs
++++ b/libraries/Cabal/Cabal-syntax/src/Distribution/System.hs
+@@ -159,7 +159,7 @@ buildOS = classifyOS Permissive System.Info.os
+
+ -- | These are the known Arches: I386, X86_64, PPC, PPC64, Sparc,
+ -- Arm, AArch64, Mips, SH, IA64, S390, S390X, Alpha, Hppa, Rs6000,
+--- M68k, Vax, JavaScript and Wasm32.
++-- M68k, Vax, RISCV64, JavaScript and Wasm32.
+ --
+ -- The following aliases can also be used:
+ -- * PPC alias: powerpc
+@@ -173,7 +173,7 @@ data Arch = I386 | X86_64 | PPC | PPC64 | Sparc
+ | Arm | AArch64 | Mips | SH
+ | IA64 | S390 | S390X
+ | Alpha | Hppa | Rs6000
+- | M68k | Vax
++ | M68k | Vax | RISCV64
+ | JavaScript
+ | Wasm32
+ | OtherArch String
+@@ -188,7 +188,7 @@ knownArches = [I386, X86_64, PPC, PPC64, Sparc
+ ,Arm, AArch64, Mips, SH
+ ,IA64, S390, S390X
+ ,Alpha, Hppa, Rs6000
+- ,M68k, Vax
++ ,M68k, Vax, RISCV64
+ ,JavaScript
+ ,Wasm32]
+
+diff --git a/libraries/Cabal/Cabal/src/Distribution/Simple/PreProcess.hs
b/libraries/Cabal/Cabal/src/Distribution/Simple/PreProcess.hs
+index fbe5710..a53b33d 100644
+--- a/libraries/Cabal/Cabal/src/Distribution/Simple/PreProcess.hs
++++ b/libraries/Cabal/Cabal/src/Distribution/Simple/PreProcess.hs
+@@ -729,6 +729,7 @@ platformDefines lbi =
+ Rs6000 -> ["rs6000"]
+ M68k -> ["m68k"]
+ Vax -> ["vax"]
++ RISCV64 -> ["riscv64"]
+ JavaScript -> ["javascript"]
+ Wasm32 -> ["wasm32"]
+ OtherArch _ -> []
diff --git a/ghc9.8.spec b/ghc9.8.spec
index d746590..c501e4f 100644
--- a/ghc9.8.spec
+++ b/ghc9.8.spec
@@ -103,6 +103,10 @@ Patch17:
https://gitlab.haskell.org/ghc/ghc/-/merge_requests/11662.patch
Patch26: no-missing-haddock-file-warning.patch
Patch27: haddock-remove-googleapis-fonts.patch
+# RISCV64 added to Cabal
+# See:
https://github.com/haskell/cabal/pull/9062
+Patch40: cabal-add-riscv64.patch
+
#
https://gitlab.haskell.org/ghc/ghc/-/wikis/platforms
# fedora ghc has been bootstrapped on
commit b289d395a7cbee5acb06e8783ea601429c7c1989
Author: Fedora Release Engineering <releng(a)fedoraproject.org>
Date: Wed Jan 24 14:44:49 2024 +0000
Rebuilt for
https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
diff --git a/ghc9.8.spec b/ghc9.8.spec
index 3159dde..d746590 100644
--- a/ghc9.8.spec
+++ b/ghc9.8.spec
@@ -57,7 +57,7 @@ Version: 9.8.1
# - 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: 5%{?dist}
+Release: 6%{?dist}
Summary: Glasgow Haskell Compiler
License: BSD-3-Clause AND HaskellReport
@@ -843,6 +843,9 @@ make test
%changelog
+* Wed Jan 24 2024 Fedora Release Engineering <releng(a)fedoraproject.org> - 9.8.1-6
+- Rebuilt for
https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
+
* Mon Jan 22 2024 Jens Petersen <petersen(a)redhat.com> - 9.8.1-5
- use gcc default ld (ie ld.bfd) for rawhide
commit 89e0b015beb6bae0416decab5b6b10e9c1112552
Author: Jens Petersen <petersen(a)redhat.com>
Date: Wed Jan 24 15:08:43 2024 +0800
autoconf: remove undefined FP_PROG_LD_BUILD_ID
diff --git a/10518.patch b/10518.patch
new file mode 100644
index 0000000..2a4c84e
--- /dev/null
+++ b/10518.patch
@@ -0,0 +1,37 @@
+From a1dc4da985db1e14c8251a024edd47d832da4fb2 Mon Sep 17 00:00:00 2001
+From: Greg Steuck <gnezdo(a)groq.com>
+Date: Tue, 23 May 2023 13:25:17 -0700
+Subject: [PATCH] Remove undefined FP_PROG_LD_BUILD_ID from configure.ac's
+
+---
+ configure.ac | 1 -
+ distrib/configure.ac.in | 1 -
+ 2 files changed, 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 0005d566570..e3b6ab2fe8d 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -487,7 +487,6 @@ CFLAGS="$CFLAGS $GccUseLdOpt"
+ AC_SUBST([LdCmd])
+
+ FP_PROG_LD_IS_GNU
+-FP_PROG_LD_BUILD_ID
+ FP_PROG_LD_NO_COMPACT_UNWIND
+ FP_PROG_LD_FILELIST
+
+diff --git a/distrib/configure.ac.in b/distrib/configure.ac.in
+index ce75510b8ac..3dc588085d6 100644
+--- a/distrib/configure.ac.in
++++ b/distrib/configure.ac.in
+@@ -130,7 +130,6 @@ CFLAGS="$CFLAGS $GccUseLdOpt"
+ AC_SUBST([LdCmd])
+
+ FP_PROG_LD_IS_GNU
+-FP_PROG_LD_BUILD_ID
+ FP_PROG_LD_NO_COMPACT_UNWIND
+ FP_PROG_LD_FILELIST
+
+--
+GitLab
+
diff --git a/ghc9.8.spec b/ghc9.8.spec
index f4d2015..3159dde 100644
--- a/ghc9.8.spec
+++ b/ghc9.8.spec
@@ -77,6 +77,8 @@ ExcludeArch: armv7hl
Patch1: ghc-gen_contents_index-haddock-path.patch
Patch2: ghc-Cabal-install-PATH-warning.patch
Patch3: ghc-gen_contents_index-nodocs.patch
+#
https://gitlab.haskell.org/ghc/ghc/-/issues/24355
+Patch4:
https://gitlab.haskell.org/ghc/ghc/-/merge_requests/10518.patch
#
https://gitlab.haskell.org/ghc/ghc/-/merge_requests/9604
# needs more backporting to 9.6
Patch9:
https://gitlab.haskell.org/ghc/ghc/-/merge_requests/9604.patch
@@ -384,7 +386,7 @@ Installing this package causes %{name}-*-prof packages corresponding
to
%patch -P1 -p1 -b .orig
%patch -P3 -p1 -b .orig
-
+%patch -P4 -p1 -b .orig
#%%patch -P2 -p1 -b .orig
#%%patch -P9 -p1 -b .orig
@@ -413,8 +415,8 @@ rm libffi-tarballs/libffi-*.tar.gz
%build
-# currently no autoconf patches
-#autoupdate
+# patch4
+autoupdate
%ghc_set_gcc_flags
export CC=%{_bindir}/gcc
commit 93cae2e893fb859021dd55ead49aa346095075e3
Author: Jens Petersen <petersen(a)redhat.com>
Date: Mon Jan 22 21:26:34 2024 +0800
currently no autoconf patches
diff --git a/ghc9.8.spec b/ghc9.8.spec
index 3fc773b..f4d2015 100644
--- a/ghc9.8.spec
+++ b/ghc9.8.spec
@@ -413,8 +413,8 @@ rm libffi-tarballs/libffi-*.tar.gz
%build
-# patch5
-autoupdate
+# currently no autoconf patches
+#autoupdate
%ghc_set_gcc_flags
export CC=%{_bindir}/gcc
commit 782442a19c2681bc744dce8d72f91cd11b5b6ca4
Author: Jens Petersen <petersen(a)redhat.com>
Date: Mon Jan 22 21:01:04 2024 +0800
use gcc default ld (ie ld.bfd) for rawhide
diff --git a/ghc9.8.spec b/ghc9.8.spec
index 6f99862..3fc773b 100644
--- a/ghc9.8.spec
+++ b/ghc9.8.spec
@@ -57,7 +57,7 @@ Version: 9.8.1
# - 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: 4%{?dist}
+Release: 5%{?dist}
Summary: Glasgow Haskell Compiler
License: BSD-3-Clause AND HaskellReport
@@ -418,11 +418,13 @@ autoupdate
%ghc_set_gcc_flags
export CC=%{_bindir}/gcc
-# lld breaks build-id
+# note lld breaks build-id
# /usr/bin/debugedit: Cannot handle 8-byte build ID
#
https://bugzilla.redhat.com/show_bug.cgi?id=2116508
#
https://gitlab.haskell.org/ghc/ghc/-/issues/22195
+%if 0%{fedora} < 40
export LD=%{_bindir}/ld.gold
+%endif
export GHC=%{_bindir}/ghc%{?ghcboot_major:-%{ghcboot_major}}
@@ -434,6 +436,9 @@ export GHC=%{_bindir}/ghc%{?ghcboot_major:-%{ghcboot_major}}
--sharedstatedir=%{_sharedstatedir} --mandir=%{_mandir} \
--docdir=%{_docdir}/%{name} \
--with-system-libffi \
+%if 0%{fedora} >= 40
+ --disable-ld-override \
+%endif
%ifarch %{ghc_unregisterized_arches}
--enable-unregisterised \
%endif
@@ -488,7 +493,11 @@ cp -p LICENSE ../LICENSE.hadrian
#
https://gitlab.haskell.org/ghc/ghc/-/issues/20120#note_366872
(
cd _build/bindist/ghc-%{version}-*
-./configure --prefix=%{buildroot}%{ghclibdir} --bindir=%{buildroot}%{_bindir}
--libdir=%{buildroot}%{_libdir} --mandir=%{buildroot}%{_mandir}
--docdir=%{buildroot}%{_docdir}/%{name}
+./configure --prefix=%{buildroot}%{ghclibdir} --bindir=%{buildroot}%{_bindir}
--libdir=%{buildroot}%{_libdir} --mandir=%{buildroot}%{_mandir}
--docdir=%{buildroot}%{_docdir}/%{name} \
+%if 0%{fedora} >= 40
+ --disable-ld-override
+%endif
+%{nil}
make install
)
@@ -832,6 +841,9 @@ make test
%changelog
+* Mon Jan 22 2024 Jens Petersen <petersen(a)redhat.com> - 9.8.1-5
+- use gcc default ld (ie ld.bfd) for rawhide
+
* Fri Jan 19 2024 Fedora Release Engineering <releng(a)fedoraproject.org> - 9.8.1-4
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
commit 8ee7aa1630539c71c56f1c3201739aa13091b1d3
Author: Fedora Release Engineering <releng(a)fedoraproject.org>
Date: Fri Jan 19 22:15:59 2024 +0000
Rebuilt for
https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
diff --git a/ghc9.8.spec b/ghc9.8.spec
index 94348fc..6f99862 100644
--- a/ghc9.8.spec
+++ b/ghc9.8.spec
@@ -57,7 +57,7 @@ Version: 9.8.1
# - 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: 3%{?dist}
+Release: 4%{?dist}
Summary: Glasgow Haskell Compiler
License: BSD-3-Clause AND HaskellReport
@@ -832,6 +832,9 @@ make test
%changelog
+* Fri Jan 19 2024 Fedora Release Engineering <releng(a)fedoraproject.org> - 9.8.1-4
+- Rebuilt for
https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
+
* Fri Jan 5 2024 Jens Petersen <petersen(a)redhat.com> - 9.8.1-3
- fix llvm alignment in data sections (@stefansf (IBM))
which should fix certain runtime crashes (#2248097)
commit 2fb2c982c6dd04be9675608f145f6eb60036697b
Author: Jens Petersen <petersen(a)redhat.com>
Date: Fri Jan 5 19:52:08 2024 +0800
set _smp_ncpus_max to 64 to avoid fd exhaustion
avoids failure on 224 core aarch64: resource exhausted (Too many open files)
diff --git a/ghc9.8.spec b/ghc9.8.spec
index a83158f..94348fc 100644
--- a/ghc9.8.spec
+++ b/ghc9.8.spec
@@ -466,6 +466,11 @@ cd hadrian
%global hadrian_llvm +llvm
%endif
%define hadrian_docs %{!?with_haddock:--docs=no-haddocks} --docs=%[%{?with_manual} ?
"no-sphinx-pdfs" : "no-sphinx"]
+# + hadrian/dist/build/hadrian/hadrian -j224 --flavour=perf --docs=no-sphinx-pdfs
binary-dist-dir --hash-unit-ids
+# # cabal-read (for OracleQ (PackageDataKey (Package {pkgType = Library, pkgName =
"rts", pkgPath = "rts"})))
+# rts/include/rts/Messages.h: withFile: resource exhausted (Too many open files)
+#
https://koji.fedoraproject.org/koji/taskinfo?taskID=111327221
+%global _smp_ncpus_max 64
# quickest does not build shared libs
# try release instead of perf
%{hadrian} %{?_smp_mflags} --flavour=%[%{?with_perfbuild} ? "perf" :
"quick"]%{!?with_ghc_prof:+no_profiled_libs}%{?hadrian_llvm} %{hadrian_docs}
binary-dist-dir --hash-unit-ids
commit 451342c7752c7c7e3ace58b052b39b8d96229dbb
Author: Jens Petersen <petersen(a)redhat.com>
Date: Fri Jan 5 18:46:25 2024 +0800
bump fedora llvm to 15
diff --git a/ghc9.8.spec b/ghc9.8.spec
index 786c536..a83158f 100644
--- a/ghc9.8.spec
+++ b/ghc9.8.spec
@@ -46,7 +46,7 @@
%if 0%{?rhel} == 9
%global llvm_major 12
%else
-%global llvm_major 14
+%global llvm_major 15
%endif
%global ghc_llvm_archs armv7hl s390x
%global ghc_unregisterized_arches s390 %{mips} riscv64
commit 2cffbbcb689ead1d72f1b8106d8fe19b7cc98a42
Author: Jens Petersen <petersen(a)redhat.com>
Date: Fri Jan 5 18:46:01 2024 +0800
boot with ghc9.6 for current releases
diff --git a/ghc9.8.spec b/ghc9.8.spec
index 35ee520..786c536 100644
--- a/ghc9.8.spec
+++ b/ghc9.8.spec
@@ -28,8 +28,8 @@
%global xhtml_ver 3000.2.2.1
# bootstrap needs 9.4+
-%if 0%{?fedora} < 39
-%global ghcboot_major 9.4
+%if 0%{?fedora} < 40
+%global ghcboot_major 9.6
%endif
%global ghcboot ghc%{?ghcboot_major}
commit d1dee3aaff69127924aa23f8d04a6ad152b73973
Author: Jens Petersen <petersen(a)redhat.com>
Date: Fri Jan 5 18:45:06 2024 +0800
apply the llvm data alignment patch on all archs
diff --git a/ghc9.8.spec b/ghc9.8.spec
index fe6c989..35ee520 100644
--- a/ghc9.8.spec
+++ b/ghc9.8.spec
@@ -404,9 +404,7 @@ rm libffi-tarballs/libffi-*.tar.gz
%endif
%endif
-%ifarch s390x
%patch -P17 -p1 -b .orig
-%endif
#debian
#%%patch -P24 -p1 -b .orig
@@ -829,8 +827,8 @@ make test
%changelog
-* Sat Nov 25 2023 Jens Petersen <petersen(a)redhat.com> - 9.8.1-3
-- s390x: fix llvm alignment in data sections (@stefansf (IBM))
+* Fri Jan 5 2024 Jens Petersen <petersen(a)redhat.com> - 9.8.1-3
+- fix llvm alignment in data sections (@stefansf (IBM))
which should fix certain runtime crashes (#2248097)
* Sun Nov 12 2023 Jens Petersen <petersen(a)redhat.com> - 9.8.1-2
commit 4e2b10344102d1a2f7a8996cc8a5e4732364f04f
Author: Jens Petersen <petersen(a)redhat.com>
Date: Sat Nov 25 09:24:30 2023 +0800
s390x: patch from @stefansf (IBM) to fix llvm alignment of data sections
diff --git a/11662.patch b/11662.patch
new file mode 100644
index 0000000..ce6ca44
--- /dev/null
+++ b/11662.patch
@@ -0,0 +1,31 @@
+From bed85f7bc358fdca4677a3070b94ea544bb9e7ff Mon Sep 17 00:00:00 2001
+From: Stefan Schulze Frielinghaus <stefansf(a)linux.ibm.com>
+Date: Mon, 27 Nov 2023 12:34:47 +0100
+Subject: [PATCH] llvmGen: Align objects in the data section
+
+Objects in the data section may be referenced via tagged pointers.
+Thus, align those objects to a 4- or 8-byte boundary for 32- or 64-bit
+platforms, respectively. Note, this may need to be reconsidered if
+objects with a greater natural alignment requirement are emitted as e.g.
+128-bit atomics.
+
+Fixes #24163.
+---
+ compiler/GHC/CmmToLlvm/Data.hs | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/compiler/GHC/CmmToLlvm/Data.hs b/compiler/GHC/CmmToLlvm/Data.hs
+index caac121413c..5e8912e3bc7 100644
+--- a/compiler/GHC/CmmToLlvm/Data.hs
++++ b/compiler/GHC/CmmToLlvm/Data.hs
+@@ -89,6 +89,7 @@ genLlvmData (sec, CmmStaticsRaw lbl xs) = do
+ align = case sec of
+ Section CString _ -> if (platformArch platform ==
ArchS390X)
+ then Just 2 else Just 1
++ Section Data _ -> Just $ platformWordSizeInBytes
platform
+ _ -> Nothing
+ const = if sectionProtection sec == ReadOnlySection
+ then Constant else Global
+--
+GitLab
+
diff --git a/ghc9.8.spec b/ghc9.8.spec
index e38a875..fe6c989 100644
--- a/ghc9.8.spec
+++ b/ghc9.8.spec
@@ -57,7 +57,7 @@ Version: 9.8.1
# - 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: 2%{?dist}
+Release: 3%{?dist}
Summary: Glasgow Haskell Compiler
License: BSD-3-Clause AND HaskellReport
@@ -86,8 +86,14 @@ Patch9:
https://gitlab.haskell.org/ghc/ghc/-/merge_requests/9604.patch
# reverts
https://github.com/haskell/text/pull/405
Patch13: text2-allow-ghc8-arm.patch
+# unregisterised
Patch16: ghc-hadrian-s390x-rts--qg.patch
+# s390x
+#
https://gitlab.haskell.org/ghc/ghc/-/issues/24163
+#
https://gitlab.haskell.org/ghc/ghc/-/merge_requests/11662
+Patch17:
https://gitlab.haskell.org/ghc/ghc/-/merge_requests/11662.patch
+
# Debian patches:
# bad according to upstream
# see eg
https://gitlab.haskell.org/ghc/ghc/-/merge_requests/9604
@@ -388,9 +394,19 @@ rm libffi-tarballs/libffi-*.tar.gz
%patch -P13 -p1 -b .orig
%endif
+%ifarch %{ghc_unregisterized_arches}
+%patch -P16 -p1 -b .orig
+%endif
+# remove if epel9 ghc using llvm
%ifarch s390x
+%if %{defined el9}
%patch -P16 -p1 -b .orig
%endif
+%endif
+
+%ifarch s390x
+%patch -P17 -p1 -b .orig
+%endif
#debian
#%%patch -P24 -p1 -b .orig
@@ -813,6 +829,10 @@ make test
%changelog
+* Sat Nov 25 2023 Jens Petersen <petersen(a)redhat.com> - 9.8.1-3
+- s390x: fix llvm alignment in data sections (@stefansf (IBM))
+ which should fix certain runtime crashes (#2248097)
+
* Sun Nov 12 2023 Jens Petersen <petersen(a)redhat.com> - 9.8.1-2
- rebuild with ghc-rpm-macros-2.6.5 to fix prof deps (thanks mimi1vx)