Manual merge of version 9.0.2-5+rpi1 and 9.4.7-2 to produce 9.4.7-2+rpi1
authorPeter Michael Green <plugwash@raspbian.org>
Tue, 19 Dec 2023 13:27:42 +0000 (13:27 +0000)
committerPeter Michael Green <plugwash@raspbian.org>
Tue, 19 Dec 2023 13:31:23 +0000 (13:31 +0000)
1  2 
debian/changelog
debian/control
debian/patches/ARM-VFPv3D16
m4/get_arm_isa.m4

index be3f6c997b0d18994b2be24e62d81af6bf50fbd5,2af9a161605460052b66d53fc1180f4168540edf..b3a905e417e0ab4e75c4deb6d1a07b7436da5db6
- ghc (9.0.2-5+rpi1) trixie-staging; urgency=medium
++ghc (9.4.7-2+rpi1) trixie-staging; urgency=medium
 +
 +  [changes brought forward from 7.6.3-21+rpi1 by Peter Michael Green <plugwash@raspbian.org> at Sun, 19 Apr 2015 14:00:16 +0000]
 +  * Change compiler defaults for armv6
-   [changed introduced in 7.10.3-2+rpi1 by Peter Michael Green]
-   * Add call to dh_autoreconf_clean
 +
 +  [changes brought forward from 9.0.2-4+rpi2 by Peter Michael Green <plugwash@raspbian.org> at Tue, 04 Oct 2022 05:00:41 +0000]
 +  * Add build-conflicts on libllvm14
 +
 +  [changes brought forward from 9.0.2-4+rpi3 by Peter Michael Green <plugwash@raspbian.org> at Wed, 05 Oct 2022 13:33:13 +0000]
 +  * Add build conflicts on libnuma1
 +
-  -- Raspbian forward porter <root@raspbian.org>  Tue, 19 Sep 2023 23:00:36 +0000
++ -- Raspbian forward porter <root@raspbian.org>  Tue, 19 Dec 2023 10:20:21 +0000
++
+ ghc (9.4.7-2) unstable; urgency=medium
+   * Remove files generated by gen_contents_index at installation time (Closes:
+     #1055817)
+   * Canonicalize paths in gen_contents_index (Closes: #1055070)
+   * Backport upstream fix for CLRRI opcode on ppc64{el,} (Closes: #1054894)
+   * Pass number of parallel jobs from DEB_BUILD_OPTIONS to hadrian.
+     Code adapted from the debian/rules file for src:cmake.
+     Thanks to John Paul Adrian Glaubitz for the fix (Closes: #1056742).
+   * Restore --disable-ld-override for affected architectures (Closes: #1056636)
+  -- Ilias Tsitsimpis <iliastsi@debian.org>  Wed, 13 Dec 2023 12:28:47 +0200
+ ghc (9.4.7-1) unstable; urgency=medium
+   * Upload to unstable
+  -- Ilias Tsitsimpis <iliastsi@debian.org>  Wed, 18 Oct 2023 22:50:19 +0300
+ ghc (9.4.7-1~exp4) experimental; urgency=medium
+   * hadrian: Enable GHCi on all platforms
+   * Backport patch to use C11 atomics (Closes: #1052144)
+  -- Ilias Tsitsimpis <iliastsi@debian.org>  Sat, 14 Oct 2023 15:19:29 +0300
+ ghc (9.4.7-1~exp3) experimental; urgency=medium
+   * Do not pass -optc-mxgot on mips64el, it is not needed anymore
+   * hadrian: Pass -DNOSMP to C compiler when needed
+  -- Ilias Tsitsimpis <iliastsi@debian.org>  Thu, 12 Oct 2023 21:02:40 +0300
+ ghc (9.4.7-1~exp2) experimental; urgency=medium
+   * Fix mxgot parameter for mips64el build
+  -- Gianfranco Costamagna <locutusofborg@debian.org>  Wed, 11 Oct 2023 10:20:58 +0200
+ ghc (9.4.7-1~exp1) experimental; urgency=medium
+   * New upstream release
+   * Declare compliance with Debian policy 4.6.2
+   * Use the Hadrian build system (Closes: #1051493)
+   * Pass '-optcggc-min-expand=10' when building for hppa (Closes: #1050879)
+   * Add patch to restore minimal build support for sparc and
+     sparc64 (Closes: #1052142)
+   * Build registerised on s390x and riscv64
+   * Backport patch for 32-bit unregisterised builds (Closes: #1052306)
+  -- Ilias Tsitsimpis <iliastsi@debian.org>  Tue, 10 Oct 2023 22:08:48 +0300
+ ghc (9.4.6-1) unstable; urgency=medium
+   * Upload to unstable (Closes: #1017663, #1039474)
+  -- Ilias Tsitsimpis <iliastsi@debian.org>  Fri, 25 Aug 2023 20:12:47 +0300
+ ghc (9.4.6-1~exp4) experimental; urgency=medium
+   * Fallback to LLVM 15
+   * Do not depend on LLVM for arm64, it now has a native codegen
+  -- Ilias Tsitsimpis <iliastsi@debian.org>  Sun, 20 Aug 2023 23:13:59 +0300
+ ghc (9.4.6-1~exp3) experimental; urgency=medium
+   * Backport upstream patch to use old pass manager in LLVM
+  -- Ilias Tsitsimpis <iliastsi@debian.org>  Sun, 20 Aug 2023 15:33:14 +0300
+ ghc (9.4.6-1~exp2) experimental; urgency=medium
+   * Use LLVM 16
+  -- Ilias Tsitsimpis <iliastsi@debian.org>  Sun, 20 Aug 2023 10:33:37 +0300
+ ghc (9.4.6-1~exp1) experimental; urgency=medium
+   * New upstream release
+   * Do not reduce parallelism on mipsel, as this doesn't fix OOM issues
+   * Drop 'ghc-prim-libatomic' patch, doesn't work
+   * Do not run inplace/bin/ghc-stage2 for cross-builds (Closes: #1042078)
+  -- Ilias Tsitsimpis <iliastsi@debian.org>  Fri, 11 Aug 2023 19:52:02 +0300
+ ghc (9.4.5-1~exp3) experimental; urgency=medium
+   * Try to reduce parallel builds on mipsel
+  -- Gianfranco Costamagna <locutusofborg@debian.org>  Tue, 01 Aug 2023 09:23:09 +0200
+ ghc (9.4.5-1~exp2) experimental; urgency=medium
+   * Re-introduce 'fix-llvm-armel' patch
+   * Drop 'Disable-unboxed-arrays' patch, not needed any more
+   * Build unregisterised on riscv64
+   * Use libatomic in ghc-prim library
+  -- Ilias Tsitsimpis <iliastsi@debian.org>  Fri, 07 Jul 2023 19:12:19 +0300
+ ghc (9.4.5-1~exp1) experimental; urgency=medium
+   [ Gianfranco Costamagna ]
+   * Don't use llvm on riscv64, doesn't fix the build
+   [ Ilias Tsitsimpis ]
+   * New upstream release
+  -- Ilias Tsitsimpis <iliastsi@debian.org>  Sun, 02 Jul 2023 18:10:44 +0300
+ ghc (9.2.7-1~exp3) experimental; urgency=medium
+   * debian/patches/5fe11fe612e1881bd4d1b9d5950d0d801e08e159.patch:
+     - cherry-pick upstream patch to increase llvm upper bound to 15
+  -- Gianfranco Costamagna <locutusofborg@debian.org>  Thu, 20 Apr 2023 12:26:28 +0200
+ ghc (9.2.7-1~exp2) experimental; urgency=medium
+   * Switch to llvm-14 and add riscv64 to llvm-* archs.
+  -- Gianfranco Costamagna <locutusofborg@debian.org>  Thu, 20 Apr 2023 09:51:25 +0200
+ ghc (9.2.7-1~exp1) experimental; urgency=medium
+   * New upstream release.
+  -- Gianfranco Costamagna <locutusofborg@debian.org>  Thu, 16 Mar 2023 19:21:44 +0100
+ ghc (9.2.5-1~exp2) experimental; urgency=medium
+   * build-fix-hs-constants.patch
+     - cherry-pick upstream proposed fix for build failure.
+  -- Gianfranco Costamagna <locutusofborg@debian.org>  Tue, 29 Nov 2022 14:35:58 +0100
+ ghc (9.2.5-1~exp1) experimental; urgency=medium
+   * New upstream release.
+   * Drop patches now part of upstream codebase:
+     - buildpath-abi-stability-2.patch
+     - latomic-subword
+     - latomic-64bit
+   * Refresh patches
+  -- Gianfranco Costamagna <locutusofborg@debian.org>  Tue, 29 Nov 2022 10:29:14 +0100
  
  ghc (9.0.2-5) unstable; urgency=medium
  
diff --cc debian/control
index a392d85336f4da1ac0496f1c60a5903dd4902ae5,fe53b1c2dbbaef2f2f701086478ad508b28a985e..9fdbf825e4cad7bd99fba0c79a79bd1c3c6c136a
@@@ -9,22 -9,22 +9,22 @@@ Standards-Version: 4.6.
  Rules-Requires-Root: no
  Build-Depends:
    debhelper-compat (= 12),
-   haskell-devscripts-minimal <!cross>,
+   haskell-devscripts-minimal (>= 0.16.31) <!cross>,
    devscripts,
-   grep-dctrl,
    pkg-config,
-   ghc:native (>= 8.6),
+   ghc:native (>= 9.0),
+   hadrian:native (>= 9.4.7-3) <!pkg.ghc.nohadrian>,
+   hadrian:native (<< 9.5) <!pkg.ghc.nohadrian>,
+   llvm-15 [armel armhf s390x riscv64],
    libgmp-dev,
-   llvm-13 [arm64 armel armhf],
    libffi-dev,
    libncurses-dev,
+   python3:native,
    python3-sphinx <!cross>,
-   python3-sphinx-rtd-theme <!cross>,
-   dpkg-dev (>= 1.16.1.1)
  Build-Depends-Indep:
    hscolour,
-   fop
+   python3-sphinx-rtd-theme,
 -Build-Conflicts: ccache
 +Build-Conflicts: ccache, libllvm14, libnuma1
  Homepage: https://haskell.org/ghc/
  Vcs-Git: https://salsa.debian.org/haskell-team/DHG_packages.git [p/ghc]
  Vcs-Browser: https://salsa.debian.org/haskell-team/DHG_packages/tree/master/p/ghc
index adfe22e37c95e7d69ab3d17d5862645da43a8f42,d1282c6d90e6cdd6f17ac8fa5de452885648c368..ebca60d00e214f453c1c2f22abd662b04f58c28d
@@@ -4,19 -4,17 +4,18 @@@ Description: Use VFPv3-D16 FPU for ARM 
   for some reason.
  Author: Jani Monoses <jani@ubuntu.com>
  Upstream-Bug: https://ghc.haskell.org/trac/ghc/ticket/5914
- Launchpad-Bug: https://ghc.haskell.org/trac/ghc/ticket/5914
  
- Index: b/m4/fptools.m4
+ Index: b/m4/get_arm_isa.m4
  ===================================================================
- --- a/m4/fptools.m4
- +++ b/m4/fptools.m4
- @@ -475,7 +475,7 @@ AC_DEFUN([GET_ARM_ISA],
-                  )],
+ --- a/m4/get_arm_isa.m4
+ +++ b/m4/get_arm_isa.m4
+ @@ -81,7 +81,7 @@ AC_DEFUN([GET_ARM_ISA],
+                  fi],
                   [changequote(, )dnl
 -                  ARM_ISA=ARMv7
 +-                 ARM_ISA=ARMv7
 ++                 ARM_ISA=ARMv6
  -                 ARM_ISA_EXT="[VFPv3,NEON]"
 -+                 ARM_ISA_EXT="[VFPv3D16,NEON]"
 ++                 ARM_ISA_EXT="[VFPv2]"
                    changequote([, ])dnl
                   ])
           ])
index 0000000000000000000000000000000000000000,22bba18b161c1cad0d316873e501b4c640162dbf..666ee75dc46d78680e13906ff7119392e91fbb83
mode 000000,100644..100644
--- /dev/null
@@@ -1,0 -1,117 +1,117 @@@
 -                 ARM_ISA=ARMv7
 -                 ARM_ISA_EXT="[VFPv3D16,NEON]"
+ # GET_ARM_ISA
+ # ----------------------------------
+ # Get info about the ISA on the ARM arch
+ AC_DEFUN([GET_ARM_ISA],
+ [
+     AC_COMPILE_IFELSE([
+         AC_LANG_PROGRAM(
+             [],
+             [#if defined(__ARM_ARCH_2__)  || \
+                  defined(__ARM_ARCH_3__)  || \
+                  defined(__ARM_ARCH_3M__) || \
+                  defined(__ARM_ARCH_4__)  || \
+                  defined(__ARM_ARCH_4T__) || \
+                  defined(__ARM_ARCH_5__)  || \
+                  defined(__ARM_ARCH_5T__) || \
+                  defined(__ARM_ARCH_5E__) || \
+                  defined(__ARM_ARCH_5TE__)
+                  return 0;
+              #else
+                  not pre arm v6
+              #endif]
+         )],
+         [AC_DEFINE(arm_HOST_ARCH_PRE_ARMv6, 1, [ARM pre v6])
+          AC_DEFINE(arm_HOST_ARCH_PRE_ARMv7, 1, [ARM pre v7])
+          changequote(, )dnl
+          ARM_ISA=ARMv5
+          ARM_ISA_EXT="[]"
+          changequote([, ])dnl
+         ],
+         [
+             AC_COMPILE_IFELSE([
+                 AC_LANG_PROGRAM(
+                     [],
+                     [#if defined(__ARM_ARCH_6__)   || \
+                          defined(__ARM_ARCH_6J__)  || \
+                          defined(__ARM_ARCH_6T2__) || \
+                          defined(__ARM_ARCH_6Z__)  || \
+                          defined(__ARM_ARCH_6ZK__) || \
+                          defined(__ARM_ARCH_6K__)  || \
+                          defined(__ARM_ARCH_6KZ__) || \
+                          defined(__ARM_ARCH_6M__)
+                          return 0;
+                      #else
+                          not pre arm v7
+                      #endif]
+                 )],
+                 [AC_DEFINE(arm_HOST_ARCH_PRE_ARMv7, 1, [ARM pre v7])
+                  if grep -q Raspbian /etc/issue && uname -m | grep -q armv7; then
+                    # Raspbian unfortunately makes some extremely questionable
+                    # packaging decisions, configuring gcc to compile for ARMv6
+                    # despite the fact that the RPi4 is ARMv8. As ARMv8 doesn't
+                    # support all instructions supported by ARMv6 this can
+                    # break. Work around this by checking uname to verify
+                    # that we aren't running on armv7.
+                    # See #17856.
+                    AC_MSG_NOTICE([Found compiler which claims to target ARMv6 running on ARMv7, assuming this is ARMv7 on Raspbian (see T17856)])
+                    ARM_ISA=ARMv7
+                    changequote(, )dnl
+                    ARM_ISA_EXT="[VFPv2]"
+                    changequote([, ])dnl
+                  else
+                    ARM_ISA=ARMv6
+                    AC_COMPILE_IFELSE([
+                           AC_LANG_PROGRAM(
+                                   [],
+                                   [#if defined(__VFP_FP__)
+                                        return 0;
+                                   #else
+                                        no vfp
+                                   #endif]
+                           )],
+                           [changequote(, )dnl
+                            ARM_ISA_EXT="[VFPv2]"
+                            changequote([, ])dnl
+                           ],
+                           [changequote(, )dnl
+                            ARM_ISA_EXT="[]"
+                            changequote([, ])dnl
+                           ]
+                   )
+                 fi],
+                 [changequote(, )dnl
++                 ARM_ISA=ARMv6
++                 ARM_ISA_EXT="[VFPv2]"
+                  changequote([, ])dnl
+                 ])
+         ])
+         AC_COMPILE_IFELSE(
+                [AC_LANG_PROGRAM(
+                        [],
+                        [#if defined(__SOFTFP__)
+                             return 0;
+                        #else
+                             not softfp
+                        #endif]
+                )],
+                [changequote(, )dnl
+                 ARM_ABI="SOFT"
+                 changequote([, ])dnl
+                ],
+                [AC_COMPILE_IFELSE(
+                     [AC_LANG_PROGRAM(
+                        [],
+                        [#if defined(__ARM_PCS_VFP)
+                             return 0;
+                        #else
+                             no hard float ABI
+                        #endif]
+                     )],
+                     [ARM_ABI="HARD"],
+                     [ARM_ABI="SOFTFP"]
+                )]
+         )
+         AC_SUBST(ARM_ISA)
+ ])