Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package ghc for openSUSE:Factory checked in at 2024-12-20 23:10:00 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ghc (Old) and /work/SRC/openSUSE:Factory/.ghc.new.1881 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc" Fri Dec 20 23:10:00 2024 rev:110 rq:1231410 version:9.10.1 Changes: -------- --- /work/SRC/openSUSE:Factory/ghc/ghc.changes 2024-10-28 15:19:32.593509458 +0100 +++ /work/SRC/openSUSE:Factory/.ghc.new.1881/ghc.changes 2024-12-20 23:10:06.435205174 +0100 @@ -1,0 +2,23 @@ +Mon Nov 25 14:46:09 UTC 2024 - Andreas Schwab <[email protected]> + +- riscv64-ncg.patch: Backport of MR 13105, NCG for RISCV64 +- Don't require on llvm on riscv64 + +------------------------------------------------------------------- +Fri Nov 22 14:54:22 UTC 2024 - OndÅej Súkup <[email protected]> + +- Update to version 9.10.1. The change log for this release is at: + https://downloads.haskell.org/~ghc/9.10.1/docs/users_guide/9.10.1-notes.html +- use ghc-bootstrap 9.8.2 +- enable numa on all architectures +- cleanup dead parts of specfile +- patch changes: + * added: + - hadrian-9.10-deps.patch + - os-string-be.patch + - ppc64le-miscompilation.patch + * dropped: + - cabal-riscv64.patch + - ghc-with-interpreter.patch + +------------------------------------------------------------------- Old: ---- 9_4_4-bootstrap-sources.tar.gz cabal-riscv64.patch ghc-9.8.3-src.tar.xz ghc-with-interpreter.patch New: ---- 9_8_2-bootstrap-sources.tar.gz ghc-9.10.1-src.tar.xz hadrian-9.10-deps.patch os-string-be.patch ppc64le-miscompilation.patch riscv64-ncg.patch BETA DEBUG BEGIN: Old: * dropped: - cabal-riscv64.patch - ghc-with-interpreter.patch Old: - cabal-riscv64.patch - ghc-with-interpreter.patch BETA DEBUG END: BETA DEBUG BEGIN: New: * added: - hadrian-9.10-deps.patch - os-string-be.patch New: - hadrian-9.10-deps.patch - os-string-be.patch - ppc64le-miscompilation.patch New: - os-string-be.patch - ppc64le-miscompilation.patch * dropped: New: - riscv64-ncg.patch: Backport of MR 13105, NCG for RISCV64 - Don't require on llvm on riscv64 BETA DEBUG END: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ghc.spec ++++++ --- /var/tmp/diff_new_pack.kTP3fj/_old 2024-12-20 23:10:08.067272393 +0100 +++ /var/tmp/diff_new_pack.kTP3fj/_new 2024-12-20 23:10:08.071272558 +0100 @@ -1,7 +1,7 @@ # # spec file for package ghc # -# Copyright (c) 2024 SUSE LLC +# Copyright (c) 2023 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -11,31 +11,19 @@ # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. - # Please submit bugfixes or comments via https://bugs.opensuse.org/ # +%define full_version 9.10.1 +%define short_version 9.10.1 -%define full_version 9.8.3 -%define short_version 9.8.3 - -%ifnarch s390x -%define with_libnuma 1 -%else -%define with_libnuma 0 -%endif - -%global llvm_major 14 +%global llvm_major 15 # conditionals - # disable prof, docs, perf build # bcond_with for production builds: disable quick build %bcond_with quickbuild -# make sure ghc libraries' ABI hashes unchanged (ghcX.Y not supported yet) -%bcond_with abicheck - # bcond_without for production builds: use Hadrian buildsystem %bcond_without hadrian @@ -70,14 +58,15 @@ %{?with_haddock:%bcond_without manual} %endif -%global ghc_llvm_archs s390x riscv64 +%global ghc_llvm_archs s390x %global ghc_unregisterized_arches noarch -%global base_ver 4.19.2.0 +%global base_ver 4.20.0.0 %global ghc_compact_ver 0.1.0.0 -%global hpc_ver 0.7.0.0 +%global hpc_ver 0.7.0.1 %global hsc2hs_ver 0.68.8 %global ghc_bignum_ver 1.3 +%global xhtml_ver 3000.2.2.1 Name: ghc Version: %{short_version} @@ -87,24 +76,31 @@ URL: https://www.haskell.org/ghc/ Source: https://downloads.haskell.org/~ghc/%{full_version}/ghc-%{version}-src.tar.xz Source2: ghc-rpmlintrc -Source4: 9_4_4-bootstrap-sources.tar.gz +Source4: 9_8_2-bootstrap-sources.tar.gz Source5: ghc-pkg.man Source6: haddock.man Source7: runghc.man + Patch1: ghc-gen_contents_index-haddock-path.patch # https://ghc.haskell.org/trac/ghc/ticket/15689 Patch2: ghc-Cabal-install-PATH-warning.patch + # PATCH-FIX-UPSTREAM Disable-unboxed-arrays.patch [email protected] -- Do not use unboxed arrays on big-endian platforms. See Haskell Trac #15411. Patch3: Disable-unboxed-arrays.patch -# PATCH-FIX-UPSTREAM Hadrian: enable GHCi support on riscv64 (dd38aca95a) -Patch100: ghc-with-interpreter.patch -# PATCH-FIX-UPSTREAM libraries/Cabal: Add support for the 64-bit RISC-V architecture (d89526f98) -Patch101: cabal-riscv64.patch + +Patch5: ppc64le-miscompilation.patch + +Patch100: os-string-be.patch Patch200: ghc-hadrian-s390x-rts--qg.patch +Patch300: hadrian-9.10-deps.patch + +# Backport of MR 13105 (NCG for RISCV64) +Patch243: riscv64-ncg.patch + BuildRequires: binutils-devel BuildRequires: gcc-PIE BuildRequires: gcc-c++ -BuildRequires: ghc-bootstrap >= 9.4 +BuildRequires: ghc-bootstrap >= 9.8 BuildRequires: ghc-bootstrap-helpers >= 1.3 BuildRequires: ghc-rpm-macros-extra => 2.6.1 BuildRequires: glibc-devel @@ -112,6 +108,7 @@ BuildRequires: libdw-devel BuildRequires: libelf-devel BuildRequires: libffi-devel +BuildRequires: libdwarf-devel BuildRequires: libtool %ifarch %{ghc_llvm_archs} BuildRequires: clang%{llvm_major} @@ -138,9 +135,7 @@ %if %{with manual} BuildRequires: python3-Sphinx %endif -%if %{with_libnuma} BuildRequires: libnuma-devel -%endif %if %{with haddock} Suggests: %{name}-doc = %{version}-%{release} Suggests: %{name}-doc-index = %{version}-%{release} @@ -172,11 +167,11 @@ %package compiler Summary: GHC compiler and utilities License: BSD-3-Clause -Requires: %{name}-filesystem = %{version}-%{release} Requires: gcc Requires: ghc-base-devel = %{base_ver}-%{release} +Requires: %{name}-filesystem = %{version}-%{release} Provides: hsc2hs = %{hsc2hs_ver}-%{release} -%ifarch riscv64 s390x +%ifarch %{ghc_llvm_archs} Requires: clang%{llvm_major} Requires: llvm%{llvm_major} %endif @@ -216,6 +211,7 @@ Haskell libraries documentation. %endif + %if %{with manual} %package manual Summary: GHC manual @@ -227,48 +223,51 @@ This package provides the User Guide and Haddock manual. %endif + %global ghc_version_override %{version} %global ghc_pkg_c_deps ghc-compiler = %{ghc_version_override}-%{release} %global version %{ghc_version_override} -%if %{with_libnuma} -%define libnuma_dep ,libnuma-devel -%else -%define libnuma_dep %{nil} -%endif #!ForceMultiversion -%ghc_lib_subpackage -d Cabal-3.10.3.0 -%ghc_lib_subpackage -d Cabal-syntax-3.10.3.0 -%ghc_lib_subpackage -d array-0.5.8.0 -%ghc_lib_subpackage -d -c gmp-devel,libffi-devel,libdw-devel,libelf-devel%{libnuma_dep} base-%{base_ver} -%ghc_lib_subpackage -d binary-0.8.9.1 -%ghc_lib_subpackage -d -x ghc-bignum-%{ghc_bignum_ver} +%ghc_lib_subpackage -d Cabal-3.12.0.0 +%ghc_lib_subpackage -d Cabal-syntax-3.12.0.0 +%ghc_lib_subpackage -d array-0.5.7.0 +%ghc_lib_subpackage -d -c gmp-devel,libffi-devel,libdw-devel,libelf-devel,libnuma-devel base-%{base_ver} +%ghc_lib_subpackage -d binary-0.8.9.2 %ghc_lib_subpackage -d bytestring-0.12.1.0 -%ghc_lib_subpackage -d containers-0.6.8 -%ghc_lib_subpackage -d deepseq-1.5.1.0 -%ghc_lib_subpackage -d directory-1.3.8.5 +%ghc_lib_subpackage -d containers-0.7 +%ghc_lib_subpackage -d deepseq-1.5.0.0 +%ghc_lib_subpackage -d directory-1.3.8.3 %ghc_lib_subpackage -d exceptions-0.10.7 -%ghc_lib_subpackage -d filepath-1.4.200.1 +%ghc_lib_subpackage -d filepath-1.5.2.0 %ghc_lib_subpackage -d -x ghc-%{ghc_version_override} +%ghc_lib_subpackage -d -x ghc-bignum-%{ghc_bignum_ver} %ghc_lib_subpackage -d -x ghc-boot-%{ghc_version_override} %ghc_lib_subpackage -d ghc-boot-th-%{ghc_version_override} %ghc_lib_subpackage -d -x ghc-compact-%{ghc_compact_ver} +%ghc_lib_subpackage -d ghc-experimental-0.1.0.0 %ghc_lib_subpackage -d -x ghc-heap-%{ghc_version_override} +%ghc_lib_subpackage -d ghc-internal-9.1001.0 %ghc_lib_subpackage -d -x ghci-%{ghc_version_override} %ghc_lib_subpackage -d haskeline-0.8.2.1 %ghc_lib_subpackage -d -x hpc-%{hpc_ver} %ghc_lib_subpackage -d mtl-2.3.1 %ghc_lib_subpackage -d parsec-3.1.17.0 %ghc_lib_subpackage -d pretty-1.1.3.6 -%ghc_lib_subpackage -d process-1.6.25.0 -%ghc_lib_subpackage -d semaphore-compat-1.0.0 +%ghc_lib_subpackage -d process-1.6.19.0 %ghc_lib_subpackage -d stm-2.5.3.1 -%ghc_lib_subpackage -d template-haskell-2.21.0.0 +%ghc_lib_subpackage -d semaphore-compat-1.0.0 +%ghc_lib_subpackage -d template-haskell-2.22.0.0 %ghc_lib_subpackage -d -c ncurses-devel terminfo-0.4.1.6 %ghc_lib_subpackage -d text-2.1.1 %ghc_lib_subpackage -d time-1.12.2 -%ghc_lib_subpackage -d transformers-0.6.1.0 -%ghc_lib_subpackage -d unix-2.8.4.0 -%ghc_lib_subpackage -d xhtml-3000.2.2.1 +%ghc_lib_subpackage -d transformers-0.6.1.1 +%ghc_lib_subpackage -d unix-2.8.5.1 +%ghc_lib_subpackage -d xhtml-%{xhtml_ver} + +# new in 9.10 +%ghc_lib_subpackage -d os-string-2.0.2 +%ghc_lib_subpackage -d ghc-toolchain-0.1.0.0 +%ghc_lib_subpackage -d ghc-platform-0.1.0.0 %global version %{ghc_version_override} @@ -301,17 +300,24 @@ %ifarch s390x %patch -P 3 -p1 %endif + +%patch -P 5 -p1 + %patch -P 100 -p1 -%patch -P 101 -p1 + %ifarch ppc64le s390x riscv64 %patch -P 200 -p1 %endif +%patch -P 300 -p1 + +%patch -P 243 -p1 + rm libffi-tarballs/libffi-*.tar.gz %build cp %{SOURCE4} ./ -hadrian/bootstrap/bootstrap.py --bootstrap-sources 9_4_4-bootstrap-sources.tar.gz +hadrian/bootstrap/bootstrap.py --bootstrap-sources 9_8_2-bootstrap-sources.tar.gz %global hadrian _build/bin/hadrian @@ -371,6 +377,7 @@ chrpath -d $i done + %if %{with haddock} # remove short hashes for d in %{buildroot}%{ghc_html_libraries_dir}/*/; do @@ -383,9 +390,12 @@ # hack for Cabal-syntax/LICENSE mkdir -p libraries/Cabal-syntax cp -p libraries/Cabal/Cabal-syntax/LICENSE libraries/Cabal-syntax - +# hack for ghc-toolchain +mkdir -p libraries/ghc-toolchain +cp -p LICENSE libraries/ghc-toolchain rm -f %{name}-*.files + # FIXME replace with ghc_subpackages_list for i in %{ghc_packages_list}; do name=$(echo $i | sed -e "s/\(.*\)-.*/\1/") @@ -397,8 +407,8 @@ echo "%%dir %{ghclibdir}" >> %{name}-base%{?_ghcdynlibdir:-devel}.files %ghc_gen_filelists ghc %{ghc_version_override} -%ghc_gen_filelists ghc-boot %{ghc_version_override} %ghc_gen_filelists ghc-bignum %{ghc_bignum_ver} +%ghc_gen_filelists ghc-boot %{ghc_version_override} %ghc_gen_filelists ghc-compact %{ghc_compact_ver} %ghc_gen_filelists ghc-heap %{ghc_version_override} %ghc_gen_filelists ghci %{ghc_version_override} @@ -423,13 +433,13 @@ %if %{with ghc_prof} ls %{buildroot}%{ghclibdir}/bin/ghc-iserv-prof* >> %{name}-base-prof.files -ls %{buildroot}%{ghclibdir}/lib/bin/ghc-iserv-prof >> %{name}-base-prof.files echo "%%dir %{ghcliblib}/bin" %endif sed -i -e "s|^%{buildroot}||g" %{name}-base*.files sed -i -e "s|%{buildroot}||g" %{buildroot}%{_bindir}/* + %if %{with haddock} rm %{buildroot}%{_docdir}/ghc-%{version}/archives/libraries.html.tar.xz %endif @@ -438,25 +448,27 @@ rm %{buildroot}%{_docdir}/ghc-%{version}/archives/users_guide.html.tar.xz %endif + mkdir -p %{buildroot}%{_mandir}/man1 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 + rm %{buildroot}%{ghclibdir}/lib/package.conf.d/.stamp rm %{buildroot}%{ghclibdir}/lib/package.conf.d/*.conf.copy # https://gitlab.haskell.org/ghc/ghc/-/issues/24121 rm %{buildroot}%{ghclibdir}/share/doc/%{ghcplatform}/*/LICENSE -( -cd %{buildroot}%{ghclibdir}/lib/bin -for i in *; do - if [ -f %{buildroot}%{ghclibdir}/bin/$i ]; then - ln -sf ../../bin/$i - fi -done -) +#( +#cd %{buildroot}%{ghclibdir}/lib/bin +#for i in *; do +# if [ -f %{buildroot}%{ghclibdir}/bin/$i ]; then +# ln -sf ../../bin/$i +# fi +#done +#) %check # Actually, I took this from Jens Petersen's Fedora package @@ -518,17 +530,18 @@ %dir %{ghcliblib} %dir %{ghcliblib}/%{ghcplatform} %dir %{ghclibdir}/bin -%dir %{ghcliblib}/bin %{ghclibdir}/bin/ghc %{ghclibdir}/bin/ghc-iserv %{ghclibdir}/bin/ghc-iserv-dyn %{ghclibdir}/bin/ghc-pkg +%{ghclibdir}/bin/ghc-toolchain-bin %{ghclibdir}/bin/hpc %{ghclibdir}/bin/hsc2hs %{ghclibdir}/bin/runghc %{ghclibdir}/bin/hp2ps %{ghclibdir}/bin/unlit %{ghclibdir}/bin/ghc-%{version} +%{ghclibdir}/bin/ghc-toolchain-bin-ghc-%{version} %{ghclibdir}/bin/ghc-iserv-ghc-%{version} %{ghclibdir}/bin/ghc-iserv-dyn-ghc-%{version} %{ghclibdir}/bin/ghc-pkg-%{version} @@ -541,14 +554,13 @@ %{ghclibdir}/bin/runhaskell %{ghclibdir}/bin/runhaskell-%{version} %{ghclibdir}/bin/unlit-ghc-%{version} -%{ghclibdir}/lib/bin/ghc-iserv -%{ghclibdir}/lib/bin/ghc-iserv-dyn -%{ghclibdir}/lib/bin/unlit %{ghcliblib}/ghc-interp.js %{ghcliblib}/ghc-usage.txt %{ghcliblib}/ghci-usage.txt %{ghcliblib}/llvm-passes %{ghcliblib}/llvm-targets +%{ghcliblib}/post-link.mjs +%{ghcliblib}/prelude.js %dir %{ghcliblib}/package.conf.d %ghost %{ghcliblib}/package.conf.d/package.cache %{ghcliblib}/package.conf.d/package.cache.lock ++++++ 9_4_4-bootstrap-sources.tar.gz -> 9_8_2-bootstrap-sources.tar.gz ++++++ ++++ 1847 lines of diff (skipped) ++++++ ghc-9.8.3-src.tar.xz -> ghc-9.10.1-src.tar.xz ++++++ /work/SRC/openSUSE:Factory/ghc/ghc-9.8.3-src.tar.xz /work/SRC/openSUSE:Factory/.ghc.new.1881/ghc-9.10.1-src.tar.xz differ: char 25, line 1 ++++++ ghc-Cabal-install-PATH-warning.patch ++++++ --- /var/tmp/diff_new_pack.kTP3fj/_old 2024-12-20 23:10:08.239279477 +0100 +++ /var/tmp/diff_new_pack.kTP3fj/_new 2024-12-20 23:10:08.243279642 +0100 @@ -1,15 +1,19 @@ -Index: ghc-9.2.0.20210331/libraries/Cabal/Cabal/src/Distribution/Simple/Install.hs +Index: ghc-9.10.1/libraries/Cabal/Cabal/src/Distribution/Simple/Install.hs =================================================================== ---- ghc-9.2.0.20210331.orig/libraries/Cabal/Cabal/src/Distribution/Simple/Install.hs -+++ ghc-9.2.0.20210331/libraries/Cabal/Cabal/src/Distribution/Simple/Install.hs -@@ -206,8 +206,7 @@ copyComponent verbosity pkg_descr lbi (C - ++ " in " ++ binPref) - inPath <- isInSearchPath binPref - when (not inPath) $ -- warn verbosity ("The directory " ++ binPref -- ++ " is not in the system search path.") -+ warn verbosity ("Executable installed in " ++ binPref) - case compilerFlavor (compiler lbi) of - GHC -> GHC.installExe verbosity lbi binPref buildPref progFix pkg_descr exe - GHCJS -> GHCJS.installExe verbosity lbi binPref buildPref progFix pkg_descr exe +--- ghc-9.10.1.orig/libraries/Cabal/Cabal/src/Distribution/Simple/Install.hs ++++ ghc-9.10.1/libraries/Cabal/Cabal/src/Distribution/Simple/Install.hs +@@ -261,12 +261,7 @@ copyComponent verbosity pkg_descr lbi (C + ) + inPath <- isInSearchPath binPref + when (not inPath) $ +- warn +- verbosity +- ( "The directory " +- ++ binPref +- ++ " is not in the system search path." +- ) ++ warn verbosity ("Executable installed in " ++ binPref) + case compilerFlavor (compiler lbi) of + GHC -> GHC.installExe verbosity lbi binPref buildPref progFix pkg_descr exe + GHCJS -> GHCJS.installExe verbosity lbi binPref buildPref progFix pkg_descr exe ++++++ hadrian-9.10-deps.patch ++++++ --- ghc-9.10.0.20240313/hadrian/hadrian.cabal.orig 2024-03-13 21:23:13.000000000 +0800 +++ ghc-9.10.0.20240313/hadrian/hadrian.cabal 2024-03-14 21:53:00.180444498 +0800 @@ -36,6 +36,8 @@ main-is: Main.hs hs-source-dirs: . , src + , ../libraries/ghc-platform/src + , ../utils/ghc-toolchain/src other-modules: Base , Builder , CommandLine @@ -152,6 +154,7 @@ , directory >= 1.3.1.0 && < 1.4 , extra >= 1.4.7 , filepath + , process , time , mtl >= 2.2 && < 2.4 , parsec >= 3.1 && < 3.2 @@ -168,8 +171,6 @@ , text >= 1.2 && < 3 , cryptohash-sha256 >= 0.11 && < 0.12 , base16-bytestring >= 0.1.1 && < 1.1.0.0 - , ghc-platform - , ghc-toolchain ghc-options: -Wall -Wincomplete-record-updates -Wredundant-constraints --- ghc-9.10.0.20240313/utils/ghc-toolchain/src/GHC/Toolchain/Program.hs.orig 2024-03-13 21:23:14.000000000 +0800 +++ ghc-9.10.0.20240313/utils/ghc-toolchain/src/GHC/Toolchain/Program.hs 2024-03-14 22:06:00.298622371 +0800 @@ -1,3 +1,5 @@ +{-# LANGUAGE NoImplicitPrelude #-} + module GHC.Toolchain.Program ( Program(..) , shProgram --- ghc-9.10.0.20240313/utils/ghc-toolchain/src/GHC/Toolchain/Tools/Cc.hs~ 2024-03-13 21:23:14.000000000 +0800 +++ ghc-9.10.0.20240313/utils/ghc-toolchain/src/GHC/Toolchain/Tools/Cc.hs 2024-03-14 22:06:23.356740644 +0800 @@ -1,3 +1,4 @@ +{-# LANGUAGE NoImplicitPrelude #-} {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE ViewPatterns #-} diff -up ghc-9.10.0.20240313/utils/ghc-toolchain/src/GHC/Toolchain/Tools/Ar.hs~ ghc-9.10.0.20240313/utils/ghc-toolchain/src/GHC/Toolchain/Tools/Ar.hs --- ghc-9.10.0.20240313/utils/ghc-toolchain/src/GHC/Toolchain/Tools/Ar.hs~ 2024-03-13 21:23:14.000000000 +0800 +++ ghc-9.10.0.20240313/utils/ghc-toolchain/src/GHC/Toolchain/Tools/Ar.hs 2024-03-14 22:09:48.872794751 +0800 @@ -1,3 +1,4 @@ +{-# LANGUAGE NoImplicitPrelude #-} {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE RecordWildCards #-} diff -up ghc-9.10.0.20240313/utils/ghc-toolchain/src/GHC/Toolchain/Tools/Cpp.hs~ ghc-9.10.0.20240313/utils/ghc-toolchain/src/GHC/Toolchain/Tools/Cpp.hs --- ghc-9.10.0.20240313/utils/ghc-toolchain/src/GHC/Toolchain/Tools/Cpp.hs~ 2024-03-13 21:23:14.000000000 +0800 +++ ghc-9.10.0.20240313/utils/ghc-toolchain/src/GHC/Toolchain/Tools/Cpp.hs 2024-03-14 22:10:18.872948622 +0800 @@ -1,3 +1,4 @@ +{-# LANGUAGE NoImplicitPrelude #-} {-# LANGUAGE NamedFieldPuns #-} module GHC.Toolchain.Tools.Cpp (HsCpp(..), findHsCpp, Cpp(..), findCpp) where diff -up ghc-9.10.0.20240313/utils/ghc-toolchain/src/GHC/Toolchain/Tools/Link.hs~ ghc-9.10.0.20240313/utils/ghc-toolchain/src/GHC/Toolchain/Tools/Link.hs --- ghc-9.10.0.20240313/utils/ghc-toolchain/src/GHC/Toolchain/Tools/Link.hs~ 2024-03-13 21:23:14.000000000 +0800 +++ ghc-9.10.0.20240313/utils/ghc-toolchain/src/GHC/Toolchain/Tools/Link.hs 2024-03-14 22:10:12.954918270 +0800 @@ -1,3 +1,4 @@ +{-# LANGUAGE NoImplicitPrelude #-} {-# OPTIONS_GHC -Wno-name-shadowing #-} {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE RecordWildCards #-} --- ghc-9.10.0.20240313/utils/ghc-toolchain/src/GHC/Toolchain/Tools/MergeObjs.hs~ 2024-03-13 21:23:14.000000000 +0800 +++ ghc-9.10.0.20240313/utils/ghc-toolchain/src/GHC/Toolchain/Tools/MergeObjs.hs 2024-03-14 22:13:08.399807784 +0800 @@ -1,3 +1,4 @@ +{-# LANGUAGE NoImplicitPrelude #-} {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE CPP #-} ++++++ os-string-be.patch ++++++ >From bafe87d871399b58ce4a50592b980c990a3eac39 Mon Sep 17 00:00:00 2001 From: Bodigrim <[email protected]> Date: Thu, 9 May 2024 01:02:44 +0100 Subject: [PATCH] Fix compilation on big-endian arches --- libraries/os-string/System/OsString/Data/ByteString/Short/Internal.hs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/libraries/os-string/System/OsString/Data/ByteString/Short/Internal.hs b/libraries/os-string/System/OsString/Data/ByteString/Short/Internal.hs index fedc199..f7ddcd8 100644 --- a/libraries/os-string/System/OsString/Data/ByteString/Short/Internal.hs +++ b/libraries/os-string/System/OsString/Data/ByteString/Short/Internal.hs @@ -311,7 +311,11 @@ word16ToLE#, word16FromLE# :: Word16# -> Word16# word16ToLE#, word16FromLE# :: Word# -> Word# #endif #ifdef WORDS_BIGENDIAN +#if MIN_VERSION_base(4,16,0) +word16ToLE# w = wordToWord16# (byteSwap16# (word16ToWord# w)) +#else word16ToLE# = byteSwap16# +#endif #else word16ToLE# w# = w# #endif ++++++ ppc64le-miscompilation.patch ++++++ >From 3f128c7d6c145985e3e12fda173e7e9a5a9c03f7 Mon Sep 17 00:00:00 2001 From: Peter Trommler <[email protected]> Date: Sat, 15 Jun 2024 08:55:30 +0200 Subject: [PATCH 4/4] PPC NCG: Fix sign hints in C calls --- compiler/GHC/CmmToAsm/PPC/CodeGen.hs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/compiler/GHC/CmmToAsm/PPC/CodeGen.hs b/compiler/GHC/CmmToAsm/PPC/CodeGen.hs index cca47f7bac2..060bd7159eb 100644 --- a/compiler/GHC/CmmToAsm/PPC/CodeGen.hs +++ b/compiler/GHC/CmmToAsm/PPC/CodeGen.hs @@ -1770,7 +1770,7 @@ genCCall' config gcp target dest_regs args _ -> panic "genCall': unknown calling conv." argReps = map (cmmExprType platform) args - (argHints, _) = foreignTargetHints target + (_, argHints) = foreignTargetHints target roundTo a x | x `mod` a == 0 = x | otherwise = x + a - (x `mod` a) -- GitLab ++++++ riscv64-ncg.patch ++++++ ++++ 6218 lines (skipped)
