Hello community,
here is the log from the commit of package ghc for openSUSE:Factory checked in at 2018-10-25 08:20:16
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc (Old)
and /work/SRC/openSUSE:Factory/.ghc.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc"
Thu Oct 25 08:20:16 2018 rev:66 rq:642934 version:8.6.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/ghc/ghc.changes 2018-10-02 19:48:25.985768040 +0200
+++ /work/SRC/openSUSE:Factory/.ghc.new/ghc.changes 2018-10-25 08:20:53.963950241 +0200
@@ -1,0 +2,32 @@
+Tue Oct 9 15:50:06 UTC 2018 - ptrommler@icloud.com
+
+- add Disable-unboxed-arrays.patch
+ * apply on ppc64 only
+ * fixes ppc64 build
+- add D5212.patch
+ * fix GHCi on big endian platforms
+
+-------------------------------------------------------------------
+Tue Oct 2 11:28:19 UTC 2018 - ptrommler@icloud.com
+
+- cleanup
+ * remove unused conditional in configure command
+
+-------------------------------------------------------------------
+Tue Oct 2 10:10:24 UTC 2018 - ptrommler@icloud.com
+
+- update to 8.6.1
+- add 0001-Fix-check-whether-GCC-supports-__atomic_-builtins.patch
+ * fix __atomic_builtin detection
+ * upstream commit ce3897ff
+- drop add_armv6l_and_armv7l_target.patch
+ * fixed upstream
+- drop fix-ppc64le-recognition.patch
+ * fixed upstream
+- drop fix-build-using-unregisterized-v8.2.patch
+ * bootstrap with 8.4.3 works w/o this patch
+- refresh ghc-pie.patch
+- refresh ghc-8.0.2-Cabal-dyndir.patch
+- refresh buildpath-abi-stability.patch
+
+-------------------------------------------------------------------
Old:
----
add_armv6l_and_armv7l_target.patch
fix-build-using-unregisterized-v8.2.patch
fix-ppc64le-recognition.patch
ghc-8.4.3-src.tar.xz
New:
----
0001-Fix-check-whether-GCC-supports-__atomic_-builtins.patch
D5212.patch
Disable-unboxed-arrays.patch
ghc-8.6.1-src.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ghc.spec ++++++
--- /var/tmp/diff_new_pack.2Tb699/_old 2018-10-25 08:20:54.915949816 +0200
+++ /var/tmp/diff_new_pack.2Tb699/_new 2018-10-25 08:20:54.919949814 +0200
@@ -29,7 +29,7 @@
%global unregisterised_archs s390 s390x
Name: ghc
-Version: 8.4.3
+Version: 8.6.1
Release: 0
Url: http://haskell.org/ghc/dist/%{version}/%{name}-%{version}-src.tar.xz
Summary: The Glorious Glasgow Haskell Compiler
@@ -74,18 +74,21 @@
BuildRequires: libnuma-devel
%endif
+# for patch 1
+BuildRequires: python3
+
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 add_armv6l_and_armv7l_target.patch - add armv6l and armv7l target to llvm targets
-Patch0: add_armv6l_and_armv7l_target.patch
-# PATCH-FIX-UPSTREAM fix-ppc64le-recognition.patch ptrommler@icloud.com -- Recognize powerpc64le as PPC64 in cabal files.
-Patch1: fix-ppc64le-recognition.patch
-# PATCH-FIX-OPENSUSE fix-build-using-unregisterized-v8.2.patch ptrommler@icloud.com -- Fix bootstrap with GHC older than 8.4. Can be dropped once we bootstrap with 8.4.3. Debian patch.
-Patch2: fix-build-using-unregisterized-v8.2.patch
+# 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 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.
@@ -147,30 +150,32 @@
%endif
%if %{defined ghclibdir}
-%ghc_lib_subpackage -d Cabal-2.2.0.1
+%ghc_lib_subpackage -d Cabal-2.4.0.1
%ghc_lib_subpackage -d array-0.5.2.0
-%ghc_lib_subpackage -d -c gmp-devel,libffi-devel,libdw-devel,libelf-devel%{libnuma_dep} base-4.11.1.0
-%ghc_lib_subpackage -d binary-0.8.5.1
+%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.5.11.0
-%ghc_lib_subpackage -d deepseq-1.4.3.0
-%ghc_lib_subpackage -d directory-1.3.1.5
-%ghc_lib_subpackage -d filepath-1.4.2
+%ghc_lib_subpackage -d containers-0.6.0.1
+%ghc_lib_subpackage -d deepseq-1.4.4.0
+%ghc_lib_subpackage -d directory-1.3.3.0
+%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}
%ghc_lib_subpackage -d ghc-boot-th-%{ghc_version_override}
%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.2
+%ghc_lib_subpackage -d haskeline-0.7.4.3
%ghc_lib_subpackage -d hpc-0.6.0.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 pretty-1.1.3.6
%ghc_lib_subpackage -d process-1.6.3.0
-%ghc_lib_subpackage -d stm-2.4.5.0
-%ghc_lib_subpackage -d template-haskell-2.13.0.0
-%ghc_lib_subpackage -d -c ncurses-devel terminfo-0.4.1.1
-%ghc_lib_subpackage -d text-1.2.3.0
+%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 transformers-0.5.5.0
%ghc_lib_subpackage -d unix-2.7.2.2
@@ -195,9 +200,11 @@
%prep
%setup -q
-%patch0 -p1
%patch1 -p1
%patch2 -p1
+%ifarch ppc64
+%patch3 -p1
+%endif
%patch35 -p1
%patch100 -p1
%patch110 -p1
@@ -205,6 +212,9 @@
# Probably fixed upstream
%build
+# patch 1 modifies build system, we need to recreate configure
+./boot
+
cat > mk/build.mk < From ce3897ffd6e7c8b8f36b8e920168bac8c7f836ae Mon Sep 17 00:00:00 2001
From: Ilias Tsitsimpis Summary:
C11 atomics are never used because:
* The program used for checking whether GCC supports
__atomic_ builtins fails with the following error:
```
error: size mismatch in argument 2 of `__atomic_load`
int test(int *x) { int y; __atomic_load(&x, &y, __ATOMIC_SEQ_CST); return x; }
```
* There is a typo when checking if CONF_GCC_SUPPORTS__ATOMICS equals YES,
resulting in PRIM_CFLAGS and PRIM_EXTRA_LIBRARIES never being set.
Reviewers: bgamari
Reviewed By: bgamari
Subscribers: rwbarton, erikd, carter
Differential Revision: https://phabricator.haskell.org/D5154
---
libraries/ghc-prim/aclocal.m4 | 2 +-
libraries/ghc-prim/configure.ac | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/libraries/ghc-prim/aclocal.m4 b/libraries/ghc-prim/aclocal.m4
index e5695385f2..81fc44c500 100644
--- a/libraries/ghc-prim/aclocal.m4
+++ b/libraries/ghc-prim/aclocal.m4
@@ -5,7 +5,7 @@ AC_DEFUN([FP_GCC_SUPPORTS__ATOMICS],
[
AC_REQUIRE([AC_PROG_CC])
AC_MSG_CHECKING([whether GCC supports __atomic_ builtins])
- echo 'int test(int *x) { int y; __atomic_load(&x, &y, __ATOMIC_SEQ_CST); return x; }' > conftest.c
+ echo 'int test(int *x) { int y; __atomic_load(x, &y, __ATOMIC_SEQ_CST); return y; }' > conftest.c
if $CC -c conftest.c > /dev/null 2>&1; then
CONF_GCC_SUPPORTS__ATOMICS=YES
AC_MSG_RESULT([yes])
diff --git a/libraries/ghc-prim/configure.ac b/libraries/ghc-prim/configure.ac
index bacc89ccc8..8249be31a9 100644
--- a/libraries/ghc-prim/configure.ac
+++ b/libraries/ghc-prim/configure.ac
@@ -8,7 +8,7 @@ dnl unregisterised, Sparc, and PPC backends.
FP_GCC_SUPPORTS__ATOMICS
AC_DEFINE([HAVE_C11_ATOMICS], [$CONF_GCC_SUPPORTS__ATOMICS], [Does GCC support __atomic primitives?])
-if test "x$CONF_GCC_SUPPORTS__ATOMICS" = YES
+if test "$CONF_GCC_SUPPORTS__ATOMICS" = "YES"
then PRIM_CFLAGS=-DHAVE_C11_ATOMICS
PRIM_EXTRA_LIBRARIES=atomic
fi
--
2.13.7
++++++ D5212.patch ++++++
Index: ghc-8.6.1/libraries/ghc-heap/GHC/Exts/Heap/InfoTable.hsc
===================================================================
--- ghc-8.6.1.orig/libraries/ghc-heap/GHC/Exts/Heap/InfoTable.hsc
+++ ghc-8.6.1/libraries/ghc-heap/GHC/Exts/Heap/InfoTable.hsc
@@ -58,7 +58,7 @@ pokeItbl a0 itbl = do
#endif
(#poke StgInfoTable, layout.payload.ptrs) a0 (ptrs itbl)
(#poke StgInfoTable, layout.payload.nptrs) a0 (nptrs itbl)
- (#poke StgInfoTable, type) a0 (fromEnum (tipe itbl))
+ (#poke StgInfoTable, type) a0 (toHalfWord (fromEnum (tipe itbl)))
#if __GLASGOW_HASKELL__ > 804
(#poke StgInfoTable, srt) a0 (srtlen itbl)
#else
@@ -71,6 +71,9 @@ pokeItbl a0 itbl = do
Just (Left xs) -> pokeArray code_offset xs
Just (Right xs) -> pokeArray code_offset xs
#endif
+ where
+ toHalfWord :: Int -> HalfWord
+ toHalfWord i = fromIntegral i
-- | Size in bytes of a standard InfoTable
itblSize :: Int
++++++ Disable-unboxed-arrays.patch ++++++
Index: ghc-8.6.1/libraries/containers/include/containers.h
===================================================================
--- ghc-8.6.1.orig/libraries/containers/include/containers.h
+++ ghc-8.6.1/libraries/containers/include/containers.h
@@ -35,7 +35,6 @@
#ifdef __GLASGOW_HASKELL__
# define USE_ST_MONAD 1
-# define USE_UNBOXED_ARRAYS 1
#endif
#endif
++++++ buildpath-abi-stability.patch ++++++
--- /var/tmp/diff_new_pack.2Tb699/_old 2018-10-25 08:20:54.967949792 +0200
+++ /var/tmp/diff_new_pack.2Tb699/_new 2018-10-25 08:20:54.967949792 +0200
@@ -1,8 +1,8 @@
-Index: ghc-8.4.0.20171214/compiler/iface/MkIface.hs
+Index: ghc-8.6.1/compiler/iface/MkIface.hs
===================================================================
---- ghc-8.4.0.20171214.orig/compiler/iface/MkIface.hs
-+++ ghc-8.4.0.20171214/compiler/iface/MkIface.hs
-@@ -689,7 +689,7 @@ addFingerprints hsc_env mb_old_fingerpri
+--- ghc-8.6.1.orig/compiler/iface/MkIface.hs
++++ ghc-8.6.1/compiler/iface/MkIface.hs
+@@ -702,7 +702,7 @@ addFingerprints hsc_env mb_old_fingerpri
iface_hash <- computeFingerprint putNameLiterally
(mod_hash,
ann_fn (mkVarOcc "module"), -- See mkIfaceAnnCache
@@ -11,7 +11,7 @@
sorted_deps,
mi_hpc iface0)
-@@ -724,6 +724,9 @@ addFingerprints hsc_env mb_old_fingerpri
+@@ -737,6 +737,9 @@ addFingerprints hsc_env mb_old_fingerpri
(non_orph_fis, orph_fis) = mkOrphMap ifFamInstOrph (mi_fam_insts iface0)
fix_fn = mi_fix_fn iface0
ann_fn = mkIfaceAnnCache (mi_anns iface0)
++++++ ghc-8.0.2-Cabal-dynlibdir.patch ++++++
--- /var/tmp/diff_new_pack.2Tb699/_old 2018-10-25 08:20:54.975949789 +0200
+++ /var/tmp/diff_new_pack.2Tb699/_new 2018-10-25 08:20:54.975949789 +0200
@@ -1,10 +1,10 @@
-Index: ghc-8.4.0.20180204/libraries/Cabal/Cabal/Distribution/Simple/InstallDirs.hs
+Index: ghc-8.6.1/libraries/Cabal/Cabal/Distribution/Simple/InstallDirs.hs
===================================================================
---- ghc-8.4.0.20180204.orig/libraries/Cabal/Cabal/Distribution/Simple/InstallDirs.hs
-+++ ghc-8.4.0.20180204/libraries/Cabal/Cabal/Distribution/Simple/InstallDirs.hs
-@@ -205,7 +205,7 @@ defaultInstallDirs' False comp userInsta
- JHC -> "$compiler"
- LHC -> "$compiler"
+--- ghc-8.6.1.orig/libraries/Cabal/Cabal/Distribution/Simple/InstallDirs.hs
++++ ghc-8.6.1/libraries/Cabal/Cabal/Distribution/Simple/InstallDirs.hs
+@@ -204,7 +204,7 @@ defaultInstallDirs' False comp userInsta
+ _other -> "$abi" > "$libname",
+ dynlibdir = "$libdir" > case comp of
UHC -> "$pkgid"
- _other -> "$abi",
+ _other -> "$compiler" > "$pkgkey",
++++++ ghc-8.4.3-src.tar.xz -> ghc-8.6.1-src.tar.xz ++++++
/work/SRC/openSUSE:Factory/ghc/ghc-8.4.3-src.tar.xz /work/SRC/openSUSE:Factory/.ghc.new/ghc-8.6.1-src.tar.xz differ: char 25, line 1
++++++ ghc-pie.patch ++++++
--- /var/tmp/diff_new_pack.2Tb699/_old 2018-10-25 08:20:54.995949780 +0200
+++ /var/tmp/diff_new_pack.2Tb699/_new 2018-10-25 08:20:54.999949778 +0200
@@ -1,8 +1,8 @@
-Index: ghc-8.4.0.20180204/compiler/main/DynFlags.hs
+Index: ghc-8.6.1/compiler/main/DynFlags.hs
===================================================================
---- ghc-8.4.0.20180204.orig/compiler/main/DynFlags.hs
-+++ ghc-8.4.0.20180204/compiler/main/DynFlags.hs
-@@ -4155,6 +4155,7 @@ default_PIC :: Platform -> [GeneralFlag]
+--- ghc-8.6.1.orig/compiler/main/DynFlags.hs
++++ ghc-8.6.1/compiler/main/DynFlags.hs
+@@ -4317,6 +4317,7 @@ default_PIC :: Platform -> [GeneralFlag]
default_PIC platform =
case (platformOS platform, platformArch platform) of
(OSDarwin, ArchX86_64) -> [Opt_PIC]