From b7aed1d1c82355f558a617d7929ea65836438c1563804d494edc5869b7290f69 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20S=C3=BAkup?= Date: Sat, 28 Dec 2019 14:39:51 +0000 Subject: [PATCH] osc copypac from project:devel:languages:haskell:ghc-8.8.x package:ghc revision:7, using keep-link OBS-URL: https://build.opensuse.org/package/show/devel:languages:haskell/ghc?expand=0&rev=308 --- allow-riscv-and-riscv64-CPU.patch | 31 --------- fix-build-using-unregisterized-v8.4.patch | 58 ---------------- ghc-8.6.5-src.tar.xz | 3 - ghc-8.8.1-src.tar.xz | 3 + ghc-8.8.1-src.tar.xz.sig | Bin 0 -> 586 bytes ghc.changes | 18 ++--- ghc.spec | 81 +++++++++++----------- 7 files changed, 53 insertions(+), 141 deletions(-) delete mode 100644 allow-riscv-and-riscv64-CPU.patch delete mode 100644 fix-build-using-unregisterized-v8.4.patch delete mode 100644 ghc-8.6.5-src.tar.xz create mode 100644 ghc-8.8.1-src.tar.xz create mode 100644 ghc-8.8.1-src.tar.xz.sig diff --git a/allow-riscv-and-riscv64-CPU.patch b/allow-riscv-and-riscv64-CPU.patch deleted file mode 100644 index 7e98991..0000000 --- a/allow-riscv-and-riscv64-CPU.patch +++ /dev/null @@ -1,31 +0,0 @@ -Description: cherry-pick of upstream commits - beba89a0f16681c85d39fc8a894bde4162ff492a.patch: - 5e63a25249f3cb07300258e115af9ff55079d2ea.patch: -Last-Update: 2019-05-27 - -Index: ghc-8.6.5/aclocal.m4 -=================================================================== ---- ghc-8.6.5.orig/aclocal.m4 -+++ ghc-8.6.5/aclocal.m4 -@@ -217,7 +217,7 @@ AC_DEFUN([FPTOOLS_SET_HASKELL_PLATFORM_V - mipsel) - test -z "[$]2" || eval "[$]2=ArchMipsel" - ;; -- hppa|hppa1_1|ia64|m68k|nios2|rs6000|s390|s390x|sh4|vax) -+ hppa|hppa1_1|ia64|m68k|nios2|riscv32|riscv64|rs6000|s390|s390x|sh4|vax) - test -z "[$]2" || eval "[$]2=ArchUnknown" - ;; - *) -@@ -1906,6 +1906,12 @@ case "$1" in - powerpc*) - $2="powerpc" - ;; -+ riscv64*) -+ $2="riscv64" -+ ;; -+ riscv|riscv32*) -+ $2="riscv32" -+ ;; - rs6000) - $2="rs6000" - ;; diff --git a/fix-build-using-unregisterized-v8.4.patch b/fix-build-using-unregisterized-v8.4.patch deleted file mode 100644 index 1cc9604..0000000 --- a/fix-build-using-unregisterized-v8.4.patch +++ /dev/null @@ -1,58 +0,0 @@ -Description: Allow unregisterised ghc-8.4 to build newer GHC - Commit 4075656e8bb introduced a regression stopping existing unregisteristed - compilers from being able to compile newer versions of GHC. The problem is - that the bootstrap compiler uses the newer `rts/storage/ClosureTypes.h` file - where some defines have been renamed, resulting in the following error: -. - error: ‘stg_MUT_ARR_PTRS_FROZEN0_info’ undeclared (first use in this function); did you mean ‘stg_MUT_ARR_PTRS_FROZEN_DIRTY_info’? -. - For more information, see https://gitlab.haskell.org/ghc/ghc/issues/15913. -. - This patch can be removed, once ghc-8.4 is no longer the bootstrap compiler. -Author: Ilias Tsitsimpis -Bug: https://gitlab.haskell.org/ghc/ghc/issues/15913 -Bug-Debian: https://bugs.debian.org/932941 - -Index: b/includes/rts/storage/ClosureTypes.h -=================================================================== ---- a/includes/rts/storage/ClosureTypes.h -+++ b/includes/rts/storage/ClosureTypes.h -@@ -82,5 +82,11 @@ - #define SMALL_MUT_ARR_PTRS_DIRTY 60 - #define SMALL_MUT_ARR_PTRS_FROZEN_DIRTY 61 - #define SMALL_MUT_ARR_PTRS_FROZEN_CLEAN 62 -+#if __GLASGOW_HASKELL__ < 806 -+#define SMALL_MUT_ARR_PTRS_FROZEN0 SMALL_MUT_ARR_PTRS_FROZEN_DIRTY -+#define SMALL_MUT_ARR_PTRS_FROZEN SMALL_MUT_ARR_PTRS_FROZEN_CLEAN -+#define MUT_ARR_PTRS_FROZEN0 MUT_ARR_PTRS_FROZEN_DIRTY -+#define MUT_ARR_PTRS_FROZEN MUT_ARR_PTRS_FROZEN_CLEAN -+#endif - #define COMPACT_NFDATA 63 - #define N_CLOSURE_TYPES 64 -Index: b/includes/stg/MiscClosures.h -=================================================================== ---- a/includes/stg/MiscClosures.h -+++ b/includes/stg/MiscClosures.h -@@ -116,12 +116,22 @@ RTS_ENTRY(stg_ARR_WORDS); - RTS_ENTRY(stg_MUT_ARR_WORDS); - RTS_ENTRY(stg_MUT_ARR_PTRS_CLEAN); - RTS_ENTRY(stg_MUT_ARR_PTRS_DIRTY); -+#if __GLASGOW_HASKELL__ < 806 -+RTS_ENTRY(stg_MUT_ARR_PTRS_FROZEN); -+RTS_ENTRY(stg_MUT_ARR_PTRS_FROZEN0); -+#else - RTS_ENTRY(stg_MUT_ARR_PTRS_FROZEN_CLEAN); - RTS_ENTRY(stg_MUT_ARR_PTRS_FROZEN_DIRTY); -+#endif - RTS_ENTRY(stg_SMALL_MUT_ARR_PTRS_CLEAN); - RTS_ENTRY(stg_SMALL_MUT_ARR_PTRS_DIRTY); -+#if __GLASGOW_HASKELL__ < 806 -+RTS_ENTRY(stg_SMALL_MUT_ARR_PTRS_FROZEN); -+RTS_ENTRY(stg_SMALL_MUT_ARR_PTRS_FROZEN0); -+#else - RTS_ENTRY(stg_SMALL_MUT_ARR_PTRS_FROZEN_CLEAN); - RTS_ENTRY(stg_SMALL_MUT_ARR_PTRS_FROZEN_DIRTY); -+#endif - RTS_ENTRY(stg_MUT_VAR_CLEAN); - RTS_ENTRY(stg_MUT_VAR_DIRTY); - RTS_ENTRY(stg_END_TSO_QUEUE); diff --git a/ghc-8.6.5-src.tar.xz b/ghc-8.6.5-src.tar.xz deleted file mode 100644 index 1711e55..0000000 --- a/ghc-8.6.5-src.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4d4aa1e96f4001b934ac6193ab09af5d6172f41f5a5d39d8e43393b9aafee361 -size 19092168 diff --git a/ghc-8.8.1-src.tar.xz b/ghc-8.8.1-src.tar.xz new file mode 100644 index 0000000..7c51495 --- /dev/null +++ b/ghc-8.8.1-src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:908a83d9b814da74585de9d39687189e6260ec3848131f9d9236cab8a123721a +size 28634672 diff --git a/ghc-8.8.1-src.tar.xz.sig b/ghc-8.8.1-src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..72eec04ff2a10d185cb949428320cbbc04961f48d5cd8f4e0d6ff020aac038dd GIT binary patch literal 586 zcmV-Q0=4~#0!IV@0SEvw79j-x>wM@Q7NcuEE$weD;7v}K+hnZ;0$pP3;}aZWWo|%s zWo&FMba`-PWG-WGZ2$@h5G~+MPM6zctxEF`{SyQB)A9_%0d|OsW>%Ehh2OfLDdDp> zUMIGT!u7EA&_^*hLUR**(0uQ6^#`J;`@{t=(7m(x}P+HM*R*-mc-< zsqQUdj1m|jZnpU1!W#n3oP+@v!6hPF2OgWth8CwbOMWsq96~wpA)7Hh;*h!2&m2F& ztoi{fllsN2zrgkXpGfN|3=`Vbb?FsjEDMYo&R-|cmeARTteSo56jft!N)rjoE89S7 z3+Po^zEGP$h*JC@e8Zr$+~z|R&NyT;q2UrI%GdK>qjFTiY`q#_XSJg6{G65VljO!5Cg%=da-ijxyl3}Cw(z!>vwZy04ZP{?a;a5OTtlZ2y*LvZtN;K2 literal 0 HcmV?d00001 diff --git a/ghc.changes b/ghc.changes index 5add486..ba82ee0 100644 --- a/ghc.changes +++ b/ghc.changes @@ -1,17 +1,17 @@ ------------------------------------------------------------------- -Mon Sep 23 10:07:24 UTC 2019 - Peter Trommler +Mon Aug 26 18:29:51 UTC 2019 - Ondřej Súkup -- add fix-build-using-unregisterized-v8.4.patch - * fixes unregisterised builds when bootstrap compiler is GHC 8.4 - * fixes build on s390x +- update to 8.8.1 - stable release of GHC 8.8 ------------------------------------------------------------------- -Mon Sep 23 09:28:37 UTC 2019 - Andreas Schwab +Tue Jul 23 11:12:16 UTC 2019 - Ondřej Súkup -- Enable build on riscv64 -- Add memory constraints for riscv64, restrict to 2 jobs -- allow-riscv-and-riscv64-CPU.patch: recognize riscv64 as architecture -- Apply Disable-unboxed-arrays.patch also on s390x +- update to 8.8.1-rc1 + +------------------------------------------------------------------- +Wed May 22 13:12:17 UTC 2019 - Ondřej Súkup + +- raise llvm dependency to llvm7 ------------------------------------------------------------------- Thu Apr 25 22:11:40 UTC 2019 - Ondřej Súkup diff --git a/ghc.spec b/ghc.spec index 6987c91..f9710a6 100644 --- a/ghc.spec +++ b/ghc.spec @@ -26,21 +26,24 @@ %define with_libnuma 0 %endif -%global unregisterised_archs s390 s390x riscv64 +%global unregisterised_archs s390 s390x Name: ghc -Version: 8.6.5 +Version: 8.8.1 Release: 0 -Url: http://haskell.org/ghc/dist/%{version}/%{name}-%{version}-src.tar.xz +URL: https://www.haskell.org/ghc/ +Source: https://downloads.haskell.org/~ghc/8.8.1/ghc-%{version}-src.tar.xz +Source1: https://downloads.haskell.org/~ghc/8.8.1/ghc-%{version}-src.tar.xz.sig Summary: The Glorious Glasgow Haskell Compiler +Source2: ghc-rpmlintrc License: BSD-3-Clause Group: Development/Languages/Other -ExclusiveArch: aarch64 %{arm} %{ix86} x86_64 ppc64 ppc64le s390x riscv64 +ExclusiveArch: aarch64 %{arm} %{ix86} x86_64 ppc64 ppc64le s390x # hard to port to PIE, some prebuilt static libraries are non-PIC ... #!BuildIgnore: gcc-PIE BuildRequires: binutils-devel BuildRequires: gcc -BuildRequires: ghc-bootstrap >= 8.0 +BuildRequires: ghc-bootstrap >= 8.4 BuildRequires: ghc-rpm-macros-extra BuildRequires: glibc-devel BuildRequires: gmp-devel @@ -65,7 +68,7 @@ BuildRequires: binutils-gold %endif %ifarch aarch64 %{arm} %{ix86} x86_64 %if 0%{?suse_version} >= 1550 -BuildRequires: llvm6-devel +BuildRequires: llvm7-devel %else BuildRequires: llvm-devel %endif @@ -79,24 +82,22 @@ BuildRequires: libnuma-devel %endif # for patch 1 -BuildRequires: python3 +# BuildRequires: python3 + +# bogus requires +BuildRequires: alex +BuildRequires: happy PreReq: update-alternatives Requires: ghc-compiler = %{version}-%{release} Requires: ghc-ghc-devel = %{version}-%{release} Requires: ghc-libraries = %{version}-%{release} -Source: http://haskell.org/ghc/dist/%{version}/%{name}-%{version}-src.tar.xz -Source1: ghc-rpmlintrc # PATCH-FIX-UPSTREAM 0001-Fix-check-whether-GCC-supports-__atomic_-builtins.patch ptrommler@icloud.com -- Fix __atomic_builtin detection. Patch taken from upstream commit ce3897ff. Patch1: 0001-Fix-check-whether-GCC-supports-__atomic_-builtins.patch # PATCH-FIX-UPSTREAM D5212.patch ptrommler@icloud.com -- Fix GHCi on big endiansystems. Submitted for upstream review. Patch2: D5212.patch # PATCH-FIX-UPSTREAM Disable-unboxed-arrays.patch ptrommler@icloud.com -- Do not use unboxed arrays on big-endian platforms. See Haskell Trac #15411. Patch3: Disable-unboxed-arrays.patch -# PATCH-FIX-UPSTREAM allow-riscv-and-riscv64-CPU.patch slyfox@gentoo.org -- aclocal.m4: allow riscv and riscv64 CPU -Patch4: allow-riscv-and-riscv64-CPU.patch -# PATCH-FIX-UPSTREAM fix-build-using-unregisterized-v8.4.patch -Patch5: fix-build-using-unregisterized-v8.4.patch # PATCH-FIX-UPSTREAM ghc-pie.patch - set linux as default PIE platform Patch35: ghc-pie.patch # PATCH-FIX-OPENSUSE ghc-8.0.2-Cabal-dynlibdir.patch -- Fix shared library directory location. @@ -133,7 +134,7 @@ Requires: binutils-gold %endif %ifarch aarch64 %{arm} %{ix86} x86_64 %if 0%{?suse_version} >= 1550 -Requires: llvm6 +Requires: llvm7 %else Requires: llvm %endif @@ -156,14 +157,14 @@ To install all of GHC install package ghc. %endif %if %{defined ghclibdir} -%ghc_lib_subpackage -d Cabal-2.4.0.1 -%ghc_lib_subpackage -d array-0.5.3.0 -%ghc_lib_subpackage -d -c gmp-devel,libffi-devel,libdw-devel,libelf-devel%{libnuma_dep} base-4.12.0.0 -%ghc_lib_subpackage -d binary-0.8.6.0 -%ghc_lib_subpackage -d bytestring-0.10.8.2 -%ghc_lib_subpackage -d containers-0.6.0.1 +%ghc_lib_subpackage -d Cabal-3.0.0.0 +%ghc_lib_subpackage -d array-0.5.4.0 +%ghc_lib_subpackage -d -c gmp-devel,libffi-devel,libdw-devel,libelf-devel%{libnuma_dep} base-4.13.0.0 +%ghc_lib_subpackage -d binary-0.8.7.0 +%ghc_lib_subpackage -d bytestring-0.10.9.0 +%ghc_lib_subpackage -d containers-0.6.2.1 %ghc_lib_subpackage -d deepseq-1.4.4.0 -%ghc_lib_subpackage -d directory-1.3.3.0 +%ghc_lib_subpackage -d directory-1.3.3.2 %ghc_lib_subpackage -d filepath-1.4.2.1 %ghc_lib_subpackage -d -x ghc-%{ghc_version_override} %ghc_lib_subpackage -d ghc-boot-%{ghc_version_override} @@ -171,18 +172,18 @@ To install all of GHC install package ghc. %ghc_lib_subpackage -d ghc-compact-0.1.0.0 %ghc_lib_subpackage -d ghc-heap-%{ghc_version_override} %ghc_lib_subpackage -d -x ghci-%{ghc_version_override} -%ghc_lib_subpackage -d haskeline-0.7.4.3 +%ghc_lib_subpackage -d haskeline-0.7.5.0 %ghc_lib_subpackage -d hpc-0.6.0.3 -%ghc_lib_subpackage -d libiserv-8.6.3 +%ghc_lib_subpackage -d libiserv-%{ghc_version_override} %ghc_lib_subpackage -d mtl-2.2.2 -%ghc_lib_subpackage -d parsec-3.1.13.0 +%ghc_lib_subpackage -d parsec-3.1.14.0 %ghc_lib_subpackage -d pretty-1.1.3.6 -%ghc_lib_subpackage -d process-1.6.5.0 +%ghc_lib_subpackage -d process-1.6.5.1 %ghc_lib_subpackage -d stm-2.5.0.0 -%ghc_lib_subpackage -d template-haskell-2.14.0.0 -%ghc_lib_subpackage -d -c ncurses-devel terminfo-0.4.1.2 -%ghc_lib_subpackage -d text-1.2.3.1 -%ghc_lib_subpackage -d time-1.8.0.2 +%ghc_lib_subpackage -d template-haskell-2.15.0.0 +%ghc_lib_subpackage -d -c ncurses-devel terminfo-0.4.1.4 +%ghc_lib_subpackage -d text-1.2.4.0 +%ghc_lib_subpackage -d time-1.9.3 %ghc_lib_subpackage -d transformers-0.5.6.2 %ghc_lib_subpackage -d unix-2.7.2.2 %ghc_lib_subpackage -d xhtml-3000.2.2.1 @@ -206,20 +207,18 @@ except the ghc library, which is installed by the toplevel ghc metapackage. %prep %setup -q -%patch1 -p1 -%patch2 -p1 -%ifarch ppc64 s390 s390x +#%%patch1 -p1 +#%%patch2 -p1 +%ifarch ppc64 %patch3 -p1 %endif -%patch4 -p1 -%patch5 -p1 %patch35 -p1 %patch100 -p1 %patch110 -p1 %build # patch 1 modifies build system, we need to recreate configure -./boot +# ./boot cat > mk/build.mk <= 1500 %limit_build -m 2000 make %{?_smp_mflags} @@ -278,7 +277,7 @@ make %{?_smp_mflags} make -j 2 %endif %else -make +make -j 2 %endif %install @@ -291,7 +290,8 @@ for i in %{ghc_packages_list}; do name=$(echo $i | sed -e "s/\(.*\)-.*/\1/") ver=$(echo $i | sed -e "s/.*-\(.*\)/\1/") %ghc_gen_filelists $name $ver -echo "%doc libraries/$name/LICENSE" >> ghc-$name.files +# TODO: containers have license in $name/$name +#echo "%%doc libraries/$name/LICENSE" >> ghc-$name.files done # ghc-base should own ghclibdir @@ -446,8 +446,9 @@ fi %{ghcdocbasedir}/users_guide %endif %{ghcdocbasedir}/libraries/gen_contents_index -%{ghcdocbasedir}/libraries/hslogo-16.png -%{ghcdocbasedir}/libraries/ocean.css +#%%{ghcdocbasedir}/libraries/hslogo-16.png +#%%{ghcdocbasedir}/libraries/ocean.css +%{ghcdocbasedir}/libraries/linuwial.css %{ghcdocbasedir}/libraries/quick-jump.css %{ghcdocbasedir}/libraries/prologue.txt %{ghcdocbasedir}/libraries/synopsis.png