From e21e11eafc4bc22c4ad8af66a9aaf421a75c9a05 Mon Sep 17 00:00:00 2001 From: Gianfranco Costamagna Date: Mon, 19 Feb 2024 17:12:25 +0100 Subject: [PATCH 1/1] Import ghc_9.4.7-3.debian.tar.xz [dgit import tarball ghc 9.4.7-3 ghc_9.4.7-3.debian.tar.xz] --- changelog | 3551 +++++++++++++++++ clean | 4 + control | 96 + copyright | 63 + gen_contents_index | 59 + ghc-doc.doc-base.users-guide | 15 + ghc-doc.postinst | 44 + ghc-doc.preinst | 21 + ghc-doc.prerm | 46 + ghc-doc.triggers | 2 + ghc-pkg.man | 228 ++ ghc.links | 7 + ghc.postinst | 57 + ghc.prerm | 42 + ghc.triggers | 1 + haddock.man | 231 ++ index.html | 10 + patches/ARM-VFPv3D16 | 20 + patches/allow-setting-llvm-program | 55 + patches/buildpath-abi-stability.patch | 24 + ...c3540e4b519b62b862b5966dfec5cae9ece1.patch | 31 + patches/fix-32-bit-unreg | 38 + patches/fix-cross-compilation | 46 + patches/fix-hs_cmpxchg64 | 39 + patches/fix-llvm-armel | 28 + patches/haddock-remove-googleapis-fonts | 26 + patches/hadrian-disable-threaded | 28 + patches/hadrian-enable-interpreter | 24 + patches/hadrian-fix-dnosmp | 62 + patches/hadrian-haddock-opts | 26 + patches/hadrian-iserv | 18 + patches/hadrian-plans | 34 + patches/hadrian-relpath | 22 + patches/kfreebsd-aclocal.m4 | 27 + patches/local-mathjax | 13 + patches/newer-llvm | 46 + patches/no-missing-haddock-file-warning | 22 + patches/ppc64el-fix-clrri | 38 + patches/series | 25 + patches/sparc-support | 30 + patches/use-modern-atomics | 56 + patches/use-unbundled-sphinx-rtd-theme | 13 + patches/x32-use-native-x86_64-insn.patch | 27 + provided_substvars | 58 + rules | 405 ++ runghc.man | 45 + source/format | 1 + tests/compile | 18 + tests/control | 2 + upstream/signing-key.asc | 95 + watch | 4 + 51 files changed, 5923 insertions(+) create mode 100644 changelog create mode 100644 clean create mode 100644 control create mode 100644 copyright create mode 100644 gen_contents_index create mode 100644 ghc-doc.doc-base.users-guide create mode 100644 ghc-doc.postinst create mode 100644 ghc-doc.preinst create mode 100644 ghc-doc.prerm create mode 100644 ghc-doc.triggers create mode 100644 ghc-pkg.man create mode 100644 ghc.links create mode 100644 ghc.postinst create mode 100644 ghc.prerm create mode 100644 ghc.triggers create mode 100644 haddock.man create mode 100644 index.html create mode 100644 patches/ARM-VFPv3D16 create mode 100644 patches/allow-setting-llvm-program create mode 100644 patches/buildpath-abi-stability.patch create mode 100644 patches/dfe1c3540e4b519b62b862b5966dfec5cae9ece1.patch create mode 100644 patches/fix-32-bit-unreg create mode 100644 patches/fix-cross-compilation create mode 100644 patches/fix-hs_cmpxchg64 create mode 100644 patches/fix-llvm-armel create mode 100644 patches/haddock-remove-googleapis-fonts create mode 100644 patches/hadrian-disable-threaded create mode 100644 patches/hadrian-enable-interpreter create mode 100644 patches/hadrian-fix-dnosmp create mode 100644 patches/hadrian-haddock-opts create mode 100644 patches/hadrian-iserv create mode 100644 patches/hadrian-plans create mode 100644 patches/hadrian-relpath create mode 100644 patches/kfreebsd-aclocal.m4 create mode 100644 patches/local-mathjax create mode 100644 patches/newer-llvm create mode 100644 patches/no-missing-haddock-file-warning create mode 100644 patches/ppc64el-fix-clrri create mode 100644 patches/series create mode 100644 patches/sparc-support create mode 100644 patches/use-modern-atomics create mode 100644 patches/use-unbundled-sphinx-rtd-theme create mode 100644 patches/x32-use-native-x86_64-insn.patch create mode 100644 provided_substvars create mode 100755 rules create mode 100644 runghc.man create mode 100644 source/format create mode 100644 tests/compile create mode 100644 tests/control create mode 100644 upstream/signing-key.asc create mode 100644 watch diff --git a/changelog b/changelog new file mode 100644 index 00000000..fdec7b72 --- /dev/null +++ b/changelog @@ -0,0 +1,3551 @@ +ghc (9.4.7-3) unstable; urgency=medium + + * debian/patches/dfe1c3540e4b519b62b862b5966dfec5cae9ece1.patch: + - cherry-pick upstream fix for misaligned objects in the data section with + llvm-based builds. (LP: #2052696) + + -- Gianfranco Costamagna Mon, 19 Feb 2024 17:12:25 +0100 + +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 Wed, 13 Dec 2023 12:28:47 +0200 + +ghc (9.4.7-1) unstable; urgency=medium + + * Upload to unstable + + -- Ilias Tsitsimpis 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 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 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 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 Tue, 10 Oct 2023 22:08:48 +0300 + +ghc (9.4.6-1) unstable; urgency=medium + + * Upload to unstable (Closes: #1017663, #1039474) + + -- Ilias Tsitsimpis 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 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 Sun, 20 Aug 2023 15:33:14 +0300 + +ghc (9.4.6-1~exp2) experimental; urgency=medium + + * Use LLVM 16 + + -- Ilias Tsitsimpis 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 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 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 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 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 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 Thu, 20 Apr 2023 09:51:25 +0200 + +ghc (9.2.7-1~exp1) experimental; urgency=medium + + * New upstream release. + + -- Gianfranco Costamagna 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 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 Tue, 29 Nov 2022 10:29:14 +0100 + +ghc (9.0.2-5) unstable; urgency=medium + + * Team upload. + * Fix FTBFS with sphinx 7.1 (Closes: #1042658) + + -- Scott Talbert Mon, 31 Jul 2023 18:47:27 -0400 + +ghc (9.0.2-4) unstable; urgency=medium + + * Backport patch to fix ABI reproducibility (Closes: #1015733) + + -- Ilias Tsitsimpis Sat, 24 Sep 2022 10:06:11 +0300 + +ghc (9.0.2-3) unstable; urgency=medium + + * Declare compliance with Debian policy 4.6.1 + * Separate the binary-all/binary-any builds (Closes: #1014066) + + -- Ilias Tsitsimpis Fri, 15 Jul 2022 17:03:35 +0300 + +ghc (9.0.2-2) unstable; urgency=medium + + * Upload to unstable. + + -- Ilias Tsitsimpis Tue, 21 Jun 2022 19:57:57 +0300 + +ghc (9.0.2-1exp1) experimental; urgency=medium + + * Cherry-pick two upstream changes to build with llvm-13 on arm* + - debian/patches/78db231ffdf8385662812781c1d09c630cfad313.patch: + - debian/patches/ddd2591c5ca395e39ea36855e5b7e0a3464b7ad8.patch: + * Update to llvm-13 (Closes: #1000929) + + -- Gianfranco Costamagna Fri, 10 Jun 2022 15:39:19 +0200 + +ghc (9.0.2-1) unstable; urgency=medium + + * Upload to unstable. + * Remove Joachim Breitner from uploaders. + * Drop libncurses5-dev dep in favor of libncurses-dev (Closes: #998348). + * Update to llvm-12 (Closes: #1000929). + + -- Ilias Tsitsimpis Fri, 10 Jun 2022 12:49:38 +0300 + +ghc (9.0.2-1~exp1) experimental; urgency=medium + + [ Gianfranco Costamagna ] + * Revert last change on mipsel, didn't fix the failure + + [ Ilias Tsitsimpis ] + * New upstream release. + * Refresh patches. + + -- Ilias Tsitsimpis Fri, 03 Jun 2022 11:25:00 +0300 + +ghc (8.10.7-1~exp2) experimental; urgency=medium + + * Lower parallelism builds to 2 on mipsel + + -- Gianfranco Costamagna Fri, 21 Jan 2022 11:20:56 +0100 + +ghc (8.10.7-1~exp1) experimental; urgency=medium + + * New upstream release. + * Add upstream GPG key used to sign the tarballs. + * Drop patches applied upstream. + * Refresh and re-enable 'fix-big-endian-ffi' patch. + * Fix compilation on armel. + * Fix linker relocation errors on mips64el. + * Switch to unregistered build on i386 to avoid a baseline violation. + Thanks to Adrian Bunk for the patch. + + -- Ilias Tsitsimpis Sun, 24 Oct 2021 15:03:50 +0300 + +ghc (8.10.6-1~exp4) experimental; urgency=medium + + * Drop some patches now upstream. + * Add a patch from Fedora to avoid too much logs on s390x. + * Enable unregisterised builds on s390x + + -- Gianfranco Costamagna Thu, 26 Aug 2021 12:00:34 +0200 + +ghc (8.10.4-1~exp1) experimental; urgency=medium + + * New upstream release. + + -- Gianfranco Costamagna Sun, 14 Feb 2021 11:02:03 +0100 + +ghc (8.10.3-1~exp1) experimental; urgency=medium + + * New upstream release. + + -- Gianfranco Costamagna Thu, 24 Dec 2020 23:10:52 +0100 + +ghc (8.10.2-1~exp3) experimental; urgency=medium + + * Upload to experimental with changes from 8.8.4-2 + + -- Gianfranco Costamagna Wed, 23 Dec 2020 23:20:54 +0100 + +ghc (8.10.2-1~exp2) experimental; urgency=medium + + * Drop FFI patch, makes the package FTBFS everywhere + + -- Gianfranco Costamagna Wed, 19 Aug 2020 21:32:42 +0200 + +ghc (8.10.2-1~exp1) experimental; urgency=medium + + * New upstream release. + + -- Gianfranco Costamagna Tue, 18 Aug 2020 15:11:31 +0200 + +ghc (8.10.1-1~exp1) experimental; urgency=medium + + * New upstream release + * Drop llvm-9 patch: upstream + * Also reduce parallel builds on arm64 + + -- Gianfranco Costamagna Wed, 27 May 2020 17:46:58 +0200 + +ghc (8.8.4-3) unstable; urgency=medium + + * Disable parallel install to fix races with missing directories + (Closes: #944493) + * Fix FTBFS with autoconf 2.71. Thanks to Matthias Klose for the patch + (Closes: #995036) + * Fix FTBFS with Sphinx 4.2.0 (Closes: #995429) + + -- Ilias Tsitsimpis Sun, 03 Oct 2021 14:27:00 +0300 + +ghc (8.8.4-2) unstable; urgency=medium + + [ Ilias Tsitsimpis ] + * Correctly set 'haddock-interfaces' for base libraries (Closes: #968446) + * Remove files generated by postinst script (Closes: #909922) + * Add myself as an uploader + + [ Gianfranco Costamagna ] + * Lower parallel builds to 2 on Ubuntu armhf, to speed up build process. + + [ Adrian Bunk ] + * Update to llvm-11. (Closes: #974794) + + -- Gianfranco Costamagna Wed, 23 Dec 2020 23:15:42 +0100 + +ghc (8.8.4-1) unstable; urgency=medium + + * New upstream release + * Fix gen_contents_index to use ghc-pkg to parse the package database + (Closes: #966069) + * Use locally-installed MathJax.js when generating library docs + (Closes: #890627) + * Patch Haddock to remove hard-coded googleapis font URL (Closes: #963690) + * Backport upstream patch to fix FFI on unregisterised big endian machines + + -- Ilias Tsitsimpis Tue, 11 Aug 2020 17:12:43 +0300 + +ghc (8.8.3-3) unstable; urgency=medium + + * Reupload due to bad debian/rules merge + + -- Gianfranco Costamagna Fri, 31 Jul 2020 17:48:26 +0200 + +ghc (8.8.3-2) unstable; urgency=medium + + * Cherry-pick Ubuntu patches + * Also limit parallel building to 2 on arm64, because Ubuntu fails + with ENOMEM with parallel=4 + * Fix ByteOrder on s390x. + + -- Gianfranco Costamagna Thu, 30 Jul 2020 16:34:22 +0200 + +ghc (8.8.3-1) unstable; urgency=medium + + * Upload to unstable. + + -- Sean Whitton Tue, 26 May 2020 09:45:34 -0700 + +ghc (8.8.3-1~exp2) experimental; urgency=medium + + * Patch to remove hs_atomic{read,write}64 from non-64bit systems. + This fixes compilation on mipsel and powerpc. + + -- Ilias Tsitsimpis Sun, 01 Mar 2020 19:01:10 +0200 + +ghc (8.8.3-1~exp1) experimental; urgency=medium + + * New upstream release + * Do not pass ggc-min-expand=10 on mips64el + * Remove unnecessary build-dependency on alex + * Replace python-sphinx build-dependency with python3-sphinx + (Closes: #943097) + * Allow unregisterised ghc-8.6 to build newer GHC + * Fix wrong installation of ghc- manpages + * Bump compat level to 12 + * Use the debhelper-compat build-dependency and remove d/compat + * Update to llvm-9 (Closes: #912788) + + -- Ilias Tsitsimpis Fri, 28 Feb 2020 10:56:27 +0200 + +ghc (8.8.2-1~exp1) experimental; urgency=medium + + * New upstream release + * Upload to experimental. + * Bump std-version to 4.5.0, no changes required + * Drop the dfsg code, the current version doesn't bundle anymore that + library + * Apply changes from 8.8.1+dfsg1+is+8.6.5+dfsg1-2 + + -- Gianfranco Costamagna Tue, 28 Jan 2020 08:58:32 +0100 + +ghc (8.8.1+dfsg2-1~exp1) experimental; urgency=medium + + * That one was for experimental, reupload as dfsg2 to bump version + + -- Gianfranco Costamagna Thu, 12 Sep 2019 08:18:56 +0200 + +ghc (8.8.1+dfsg1+is+8.6.5+dfsg1-3) unstable; urgency=medium + + * Switch to python3-sphinx; Closes: #943097 + + -- Sandro Tosi Mon, 23 Mar 2020 21:50:31 -0400 + +ghc (8.8.1+dfsg1+is+8.6.5+dfsg1-2) unstable; urgency=medium + + [ John Paul Adrian Glaubitz ] + * Enable workaround to avoid memory exhaustation on alpha + [ Gianfranco Costamagna ] + * Source-only reupload now that the bootstrap has ended + + -- Gianfranco Costamagna Sat, 21 Sep 2019 12:06:31 +0200 + +ghc (8.8.1+dfsg1+is+8.6.5+dfsg1-1) unstable; urgency=medium + + [ John Paul Adrian Glaubitz ] + * Enable workaround to avoid memory exhaustation on m68k and sh4 + [ Gianfranco Costamagna ] + * 8.8.1+dfsg1-1~exp4 was mistakenly targeted to unstable. + - use 8.6.5 repacked tarball to fix the issue + + -- Gianfranco Costamagna Thu, 12 Sep 2019 08:25:57 +0200 + +ghc (8.8.1+dfsg1-1~exp4) unstable; urgency=medium + + * Probably llvm-7 is the last working version that can be used in arm + + -- Gianfranco Costamagna Wed, 11 Sep 2019 12:04:25 +0200 + +ghc (8.8.1+dfsg1-1~exp3) experimental; urgency=medium + + * Stick with llvm-8, because llvm-9 seems to be not able to make the build + finish correctly (error during the compile of a test program in ghc + testsuite) + * Comment patch fix-build-using-unregisterized-v8.4: we are using 8.6.5 + to bootstrap 8.8.1 + + -- Gianfranco Costamagna Wed, 11 Sep 2019 08:55:51 +0200 + +ghc (8.8.1+dfsg1-1~exp2) experimental; urgency=medium + + * Followup upstream change in ghc configure script to fix a configure error + * Depend on alex + * Refresh s390x patch + + -- Gianfranco Costamagna Tue, 10 Sep 2019 17:37:37 +0200 + +ghc (8.8.1+dfsg1-1~exp1) experimental; urgency=medium + + * New upstream release, patch refresh + * Drop upstream patches: + - bsymbolic-only-for-registerised.patch + - e175aaf6918bb2b497b83618dc4c270a0d231a1c.patch + - add_-latomic_to_ghc-prim + - risc-support.patch + - PprC-Add-support-for-adjacent-floats + - powerpc-fix-64-bit-comparision.patch + * Switch to default llvm version + + -- Gianfranco Costamagna Tue, 10 Sep 2019 12:53:10 +0200 + +ghc (8.6.5+dfsg1-4) unstable; urgency=medium + + [ John Paul Adrian Glaubitz ] + * debian/patches/powerpc-fix-64-bit-comparision.patch + - backport upstream patch to fix 64-bit comparision on powerpc + + [ Aurelien Jarno ] + * build with -mxgot on mips64el + + [ Ilias Tsitsimpis ] + * Use `ggc-min-expand=10` on mips64el and s390x + * Avoid virtual memory exhaustion on 32-bit unregisterised architectures + (Closes: #933968) + + -- Ilias Tsitsimpis Sat, 31 Aug 2019 18:01:40 +0300 + +ghc (8.6.5+dfsg1-3) unstable; urgency=medium + + [ Gianfranco Costamagna ] + * debian/patches/Disable-unboxed-arrays.patch + - upstream proposed workaround for BE build failures. + * use parallel=2 for s390x, mips, mipsel, mips64el builds + + [ Clint Adams ] + * Patch from John Paul Adrian Glaubitz to set --host and --build for + cross-builds. closes: #933306. + + -- Gianfranco Costamagna Thu, 01 Aug 2019 12:56:23 +0200 + +ghc (8.6.5+dfsg1-2) unstable; urgency=medium + + [ Ilias Tsitsimpis ] + * Use ghc-8.4 as the bootstrap compiler and drop the + fix-build-using-unregisterized-v8.2 patch (Closes: #921579) + * Allow unregisterised ghc-8.4 to build newer GHC (Closes: #932941) + * Re-add upstream patches (which were lost during packaging of the latest + release) to support risc* platforms. Thanks to Aurelien Jarno for + reporting this (Closes: #933009) + * Backport upstream patch to fix a bug where an unregisterised GHC failed to + compile some libraries (e.g., gloss, juicypixels) on 64-bit architectures. + * Add powerpc to ld.bfd linker architectures (Closes: #913878) + + [ Clint Adams ] + * Bump to Standards-Version 4.4.0. + + -- Clint Adams Sun, 28 Jul 2019 16:51:48 -0400 + +ghc (8.6.5+dfsg1-1) unstable; urgency=medium + + [ Gianfranco Costamagna ] + * New upstream release + + -- Clint Adams Tue, 23 Jul 2019 22:08:57 -0400 + +ghc (8.4.4+dfsg1-3) unstable; urgency=medium + + * Use the ARM7TDMI core on armel (Closes: #915333) + + -- Ilias Tsitsimpis Thu, 20 Jun 2019 00:08:21 +0300 + +ghc (8.4.4+dfsg1-2) unstable; urgency=medium + + [ Clint Adams ] + * Patch Sphinx config to use locally-installed MathJax instead of a + copy on the Internet. closes: #919518. + + [ Gianfranco Costamagna ] + * Fix sphinx 1.8 build with upstream patch (Closes: #923445) + + -- Gianfranco Costamagna Thu, 28 Feb 2019 15:18:49 +0100 + +ghc (8.4.4+dfsg1-1) unstable; urgency=medium + + * New upstream release + * Refresh patches to apply cleanly on new upstream + * Apply patch to build on GNU/kFreeBSD (Closes: #913140) + * Backport upstream patch to allow GHC to build on arm* + + -- Ilias Tsitsimpis Fri, 30 Nov 2018 12:11:18 +0200 + +ghc (8.4.3+dfsg1-4) unstable; urgency=medium + + * Add missing Breaks+Replaces+Provides (Closes: #910480). + Break+Replace+Provide all bundled libraries, including libghc-parsec3-dev. + + -- Ilias Tsitsimpis Fri, 19 Oct 2018 13:09:22 +0300 + +ghc (8.4.3+dfsg1-3) unstable; urgency=medium + + * Conflict with mtl and stm. closes: #910008. + + -- Clint Adams Thu, 18 Oct 2018 18:20:40 -0400 + +ghc (8.4.3+dfsg1-2) unstable; urgency=medium + + * Upload to unstable + + -- Ilias Tsitsimpis Wed, 26 Sep 2018 12:10:37 +0300 + +ghc (8.4.3+dfsg1-1) experimental; urgency=medium + + * Backport upstream commit 18cb44dfae3f. + This fixes upstream bug #15213 (32 bit Haddock runs out of memory + compiling 32 bit GHC). + * Remove DFSG incompatible file (Closes: #870683). + + -- Ilias Tsitsimpis Fri, 21 Sep 2018 23:05:59 +0300 + +ghc (8.4.3-7) experimental; urgency=medium + + * Backport upstream commit ec9aacf3eb2 (add -latomic to ghc-prim) + * Use system's default ld (ld.bfd) on sparc64, instead of ld.gold + (Closes: #908998) + + -- Ilias Tsitsimpis Tue, 18 Sep 2018 14:30:06 +0300 + +ghc (8.4.3-6) experimental; urgency=medium + + [ Gianfranco Costamagna ] + * Try to fix armel build + + [ John Paul Adrian Glaubitz ] + * ghc: disable ld override on powerpcspe too + + [ Ilias Tsitsimpis ] + * Allow unregisterised ghc-8.2 to build newer GHC + * Bump to Standards-Version 4.2.1 + + -- Ilias Tsitsimpis Fri, 14 Sep 2018 14:32:12 +0300 + +ghc (8.4.3-5) experimental; urgency=medium + + * Switch to dh_auto_configure, making the correct triplet + being passed to the build system, with also --target flag + (this should hopefully make the configure more robust, and + stop failing now that armhf runs on arm64 systems) + - thanks waldi, jcristay for the help + + -- Gianfranco Costamagna Fri, 20 Jul 2018 13:52:19 +0200 + +ghc (8.4.3-4) experimental; urgency=medium + + * merge with unstable 8.2.2-6 + + -- Gianfranco Costamagna Fri, 20 Jul 2018 00:24:43 +0200 + +ghc (8.4.3-3) experimental; urgency=medium + + * Switch configure.ac to search for llvm 6.0 + + -- Gianfranco Costamagna Thu, 19 Jul 2018 12:16:02 +0200 + +ghc (8.4.3-2) experimental; urgency=medium + + [ Gianfranco Costamagna ] + * Remove old and non-applied anymore powerpcspe-disable-FPU-code.patch. + (Closes: #900817) + * Switch to llvm 6.0 (Closes: #850915) + + [ Clint Adams ] + * Merge in 8.2.2-5. + + -- Clint Adams Wed, 18 Jul 2018 19:12:59 -0400 + +ghc (8.4.3-1) experimental; urgency=medium + + * New upstream version. + * Apply upstream patch to build on armhf. + + -- Clint Adams Wed, 30 May 2018 18:34:37 -0400 + +ghc (8.4.2-1) experimental; urgency=medium + + * New upstream release + + -- Gianfranco Costamagna Mon, 23 Apr 2018 10:28:43 +0200 + +ghc (8.4.1-2) experimental; urgency=medium + + * Refresh armel patch, but do not apply it, to see + if upstream changes are enough to make it build again + + -- Gianfranco Costamagna Tue, 10 Apr 2018 08:58:07 +0200 + +ghc (8.4.1-1) experimental; urgency=medium + + * New upstream release, patch refresh + * Bump std-version to 4.1.4, no changes required + * d/{rules,control}: switch to llvm 5.0 on arm* + * Drop patches included in new upstream release: + - reproducible-tmp-names + - do-not-use-SHELL + - build-unlit-and-hp2ps-twice.patch + - fix-hssplicety.patch + - lower-optimization-for-unreg.patch + + -- Gianfranco Costamagna Mon, 09 Apr 2018 15:54:00 +0200 + +ghc (8.2.2-6) unstable; urgency=medium + + * debian/patches/{risc-support,e175aaf6918bb2b497b83618dc4c270a0d231a1c}.patch + - add upstream patches to support risc* platforms (Closes: #904096) + + -- Gianfranco Costamagna Thu, 19 Jul 2018 19:24:01 +0200 + +ghc (8.2.2-5) unstable; urgency=medium + + * Apply patch to disable -Bsymbolic on unregisterised + architectures. closes: #904055. + * Add autopkgtest. + + -- Clint Adams Wed, 18 Jul 2018 18:56:46 -0400 + +ghc (8.2.2-4) unstable; urgency=medium + + [ Clint Adams ] + * Bump to Standards-Version 4.1.4. + * Set Rules-Requires-Root to no. + + [ Ilias Tsitsimpis ] + * Use system's default ld (ld.bfd) on mips/mipsel, instead of ld.gold + + -- Ilias Tsitsimpis Mon, 25 Jun 2018 12:24:52 +0300 + +ghc (8.2.2-3) unstable; urgency=medium + + * Upload to unstable. + + -- Clint Adams Sun, 08 Apr 2018 16:24:00 -0400 + +ghc (8.2.2-2) experimental; urgency=medium + + * Merge 8.0.2-12 unreleased changes. + + -- Clint Adams Sat, 07 Apr 2018 08:08:41 -0400 + +ghc (8.2.2-1) experimental; urgency=medium + + * Merge 8.0.2-11 unreleased changes + * New upstream release, patch refresh + * Fixup regex fix in watch file + + -- Gianfranco Costamagna Mon, 27 Nov 2017 12:08:38 +0100 + +ghc (8.2.1-2) experimental; urgency=medium + + [ Sean Whitton ] + * Upload to experimental again, after merging in changes from unstable. + - Refresh patches. + - Drop osdecommitmemory-compat.patch from series file + Merged upstream. + + [ Clint Adams ] + * Drop avoid-CrossCompilerPrefix-stage2.patch. + + -- Clint Adams Sun, 17 Sep 2017 07:52:14 -0400 + +ghc (8.2.1-1) experimental; urgency=medium + + * New upstream release + + -- Sean Whitton Fri, 15 Sep 2017 17:15:49 -0700 + +ghc (8.2.0~20170507-3) experimental; urgency=medium + + * 8.2.1-rc2. + - Switches to LLVM 3.9. + + -- Clint Adams Wed, 12 Jul 2017 17:51:16 -0400 + +ghc (8.0.2-12) UNRELEASED; urgency=medium + + [ Ilias Tsitsimpis ] + * Use salsa.debian.org URLs in Vcs-{Browser,Git} fields + + [ Sean Whitton ] + * Add lower-optimization-for-unreg.patch (Closes: #890763). + + -- Ilias Tsitsimpis Fri, 09 Feb 2018 20:44:09 +0200 + +ghc (8.0.2-11) unstable; urgency=medium + + [ Ilias Tsitsimpis ] + * Change Priority to optional. Since Debian Policy version 4.0.1, + priority extra has been deprecated. + * Use the HTTPS form of the copyright-format URL + * Modify d/watch and Source field in d/copyright to use HTTPS + * Declare compliance with Debian policy 4.1.1 + + [ Sean Whitton ] + * Add fix-hssplicety.patch (Closes: #867195). + + -- Sean Whitton Tue, 06 Feb 2018 14:01:18 -0700 + +ghc (8.0.2-10) unstable; urgency=medium + + [ John Paul Adrian Glaubitz ] + * Make ghc cross-buildable + + [ Gianfranco Costamagna ] + * Drop arm64 switch to gold, now gcc/binutils should be fixed. + * Team upload. + + -- Gianfranco Costamagna Tue, 29 Aug 2017 23:10:26 +0200 + +ghc (8.0.2-9) unstable; urgency=medium + + * Team upload. + * Patch arm64 before autoreconf. + + -- Gianfranco Costamagna Sat, 26 Aug 2017 19:04:27 +0200 + +ghc (8.0.2-8) unstable; urgency=high + + * Team upload + * Try arm64 with my Ubuntu patch. + + -- Gianfranco Costamagna Sat, 26 Aug 2017 10:54:27 +0200 + +ghc (8.0.2-7) unstable; urgency=medium + + * Only apply arm64 linker patch on arm64, to avoid conflict with + armel-only patch. + + -- Clint Adams Fri, 25 Aug 2017 11:19:17 -0400 + +ghc (8.0.2-6) unstable; urgency=medium + + * Switch arm64 linker to bfd, since gold is garbage. + + -- Clint Adams Fri, 25 Aug 2017 08:36:53 -0400 + +ghc (8.2.0~20170507-2) experimental; urgency=medium + + * 8.2.1-rc2. + - Switches to LLVM 3.9. + + -- Clint Adams Wed, 12 Jul 2017 17:51:16 -0400 + +ghc (8.2.0~20170507-1) experimental; urgency=medium + + * 8.2.1-rc2. + + -- Clint Adams Wed, 12 Jul 2017 17:51:16 -0400 + +ghc (8.0.2-5) unstable; urgency=medium + + * Patch from James Clarke to fix powerpc breakage caused by + powerpcspe patch. + + -- Clint Adams Tue, 27 Jun 2017 07:50:03 -0400 + +ghc (8.0.2-4) unstable; urgency=medium + + * Revert cross-compilation patch. + + -- Clint Adams Sun, 25 Jun 2017 12:38:02 -0400 + +ghc (8.0.2-3) unstable; urgency=medium + + [ John Paul Adrian Glaubitz ] + * Build with --enable-unregisterised on powerpcspe. closes: #861806. + * Support building ghc without building haddock, for cross-compilation. + closes: #853285, #853773. + + [ Helmut Grohne ] + * Do not run tests under DEB_BUILD_OPTIONS=nocheck (Closes: #853743). + + [ Clint Adams ] + * Conflict with libghc-cabal-dev (<< 1.24.2.1) to avoid wanna-build + confusion. + + -- Clint Adams Sun, 25 Jun 2017 10:21:43 -0400 + +ghc (8.0.2-1) unstable; urgency=medium + + * Team upload + * New upstream release, remove patches addressed upstream + -add-missing-MO_WriteBarrier + -no-pie + -find-tycon-panic + -get-linker-flags-correctly + -fix-ppc-lwa-generation + -smp-arm-fix.patch + -R_X86_64_REX_GOTPCRELX + * Remove old prof_scc.png link on ghc-doc (Closes: #855627) + * Bump std-version to 4.0.0 + * Bump compat level to 10, dropping autoreconf + + -- Gianfranco Costamagna Tue, 21 Feb 2017 17:07:37 +0100 + +ghc (8.0.1-17) unstable; urgency=medium + + * Add upstream patch "Add relocation type R_X86_64_REX_GOTPCRELX". + + -- Clint Adams Fri, 16 Dec 2016 21:44:45 -0500 + +ghc (8.0.1-16) unstable; urgency=medium + + * Patch to fix SMP support enablement on armhf. + + -- Clint Adams Wed, 14 Dec 2016 23:10:26 -0500 + +ghc (8.0.1-15) unstable; urgency=high + + * Add osdecommitmemory-compat.patch (Closes: #847677). + + -- Sean Whitton Sat, 10 Dec 2016 15:03:42 -0700 + +ghc (8.0.1-14) unstable; urgency=medium + + * Upload to unstable. + + -- Clint Adams Mon, 14 Nov 2016 11:35:40 -0500 + +ghc (8.0.1-13) experimental; urgency=medium + + * Include ghc --info output in build log. + * PPC/CodeGen: fix lwa instruction generation. closes: #844323 + + -- Clint Adams Mon, 14 Nov 2016 11:10:09 -0500 + +ghc (8.0.1-12) experimental; urgency=medium + + * Use upstream patch for '-no-pie'. + Drop our custom 'opt-pic' and 'no-pie' patches and use one provided by + the upstream developers. + + -- Ilias Tsitsimpis Fri, 11 Nov 2016 17:45:03 +0200 + +ghc (8.0.1-11) unstable; urgency=medium + + * Team upload. + + [ John Paul Adrian Glaubitz ] + * Add patch x32-use-native-x86_64-insn.patch to support + x32 architecture (Closes: #814657) + + -- Gianfranco Costamagna Sun, 06 Nov 2016 23:31:09 +0100 + +ghc (8.0.1-10) unstable; urgency=medium + + [ Emilio Pozuelo Monfort ] + * Re-enable parallel builds, broken since 7.10.1.20150630-1. + + [ Clint Adams ] + * Upstream patch c30b179a73d9fd3f6edcdda5e881523cd6edd46a to Cabal, + fixing incorrect retrieval of ld flags. + + -- Clint Adams Sun, 06 Nov 2016 15:32:00 -0500 + +ghc (8.0.1-9) unstable; urgency=medium + + [ Ilias Tsitsimpis ] + * Add upstream patch to avoid find_tycon panic (Closes: #842679). + + [ Clint Adams ] + * Patch from James Clarke to prevent unaligned accesses on sparc64. + closes: #842780. + * Reduce memory usage when building on mips/mipsel. + + -- Clint Adams Tue, 01 Nov 2016 11:18:03 -0400 + +ghc (8.0.1-8) unstable; urgency=medium + + * Upload to unstable to start GHC 8 transition. + + -- Clint Adams Thu, 27 Oct 2016 18:32:16 -0400 + +ghc (8.0.1-7) experimental; urgency=medium + + * Disable PIC on powerpc. + + -- Clint Adams Tue, 25 Oct 2016 23:56:41 -0400 + +ghc (8.0.1-6) experimental; urgency=medium + + * Patch GHC to pass `-no-pie' along with `-Wl,-r'. + * Do not disable PIE during package configuration in d/rules. + The above patch seems sufficient. + + -- Ilias Tsitsimpis Mon, 24 Oct 2016 19:48:26 +0300 + +ghc (8.0.1-5) experimental; urgency=medium + + * Switch PIC default to on for all architectures. + + -- Clint Adams Sat, 22 Oct 2016 18:20:02 -0400 + +ghc (8.0.1-4) experimental; urgency=medium + + [ Balint Reczey ] + * Disable PIE to fix build when PIE is the default in gcc + (change taken/revised from Ubuntu, Closes: #712228) + + -- Sven Bartscher Thu, 13 Oct 2016 18:49:00 +0200 + +ghc (8.0.1-3) experimental; urgency=low + + * Removed the empty ghc-dbgsym package. + + -- Sven Bartscher Tue, 11 Oct 2016 16:43:21 +0200 + +ghc (8.0.1-2) experimental; urgency=medium + + [ Joachim Breitner ] + * Merge from unstable (up to 7.0.3-9) + + [ Matthias Klose ] + * Disable PIE on amd64 and ppc64el. + + [ Gianfranco Costamagna ] + * Fix VCS fields + + [ Sven Bartscher ] + * Depend on haskell-devscripts-minimal instead of duplicating its + functionality. + + -- Sven Bartscher Fri, 05 Aug 2016 16:51:50 +0200 + +ghc (8.0.1-1) experimental; urgency=medium + + * New upstream release + + -- Joachim Breitner Sat, 21 May 2016 17:03:18 +0200 + +ghc (8.0.0.20160421-1) experimental; urgency=medium + + * New upstream release candidate (8.0.1-rc4) + + -- Joachim Breitner Sat, 23 Apr 2016 17:56:45 +0200 + +ghc (8.0.0.20160411-1) experimental; urgency=medium + + * New upstream release candidate (8.0.1-rc3) + + -- Joachim Breitner Tue, 19 Apr 2016 09:11:57 +0200 + +ghc (8.0.0.20160204-2) experimental; urgency=medium + + * Build-Conflict: Do not bootstrap with ghc-8.0.1-rc1, as this is broken. + + -- Joachim Breitner Tue, 09 Feb 2016 10:05:24 +0100 + +ghc (8.0.0.20160204-1) experimental; urgency=medium + + [ Gianfranco Costamagna ] + * Re-enable and refresh patches/armel-revert-ghci-fixes.patch on armel. + - drop a little part on Linker.c, upstreamed. + + [ Joachim Breitner ] + * New upstream release candidate (8.0.1-rc2) + + -- Joachim Breitner Mon, 08 Feb 2016 12:34:51 +0100 + +ghc (8.0.0.20160111-3) experimental; urgency=medium + + * Ah, there is llvm-3.7 in Debian. Must have been confused by the LLVM + packaging... let’s use that. + + -- Joachim Breitner Mon, 18 Jan 2016 09:29:29 +0100 + +ghc (8.0.0.20160111-2) experimental; urgency=medium + + * Try to see if it builds without + patches/armel-revert-ghci-fixes.patch on armel. + * Try to build with LLVM 3.8 (upstream wants 3.7, but that is not in Debian + any more) + + -- Joachim Breitner Mon, 18 Jan 2016 09:17:25 +0100 + +ghc (8.0.0.20160111-1) experimental; urgency=medium + + * New upstream release candiate (8.0.1-rc1) + Dropped patches + + cabal-show-detail-direct + + sh4-platform-detection-support + + parc64-initial-platform-support + * Configure haddock to use locally provided mathjax files, and let ghc-doc + depend on libjs-mathjax. + * Backport upstream patch D1782 to unbreak manpage building + * Add gpg key ot debian/upstream and use it in debian/watch + + -- Joachim Breitner Thu, 14 Jan 2016 16:16:37 +0100 + +ghc (7.10.3-10) unstable; urgency=medium + + [ Clint Adams ] + * Backport upstream 563a4857abcee4a6e43c68323274309c58f42aa0 to use gcc's + SMP primitives instead of GHC's broken ones. + * Backport upstream 7053019e7b04842dd7364039381d8c4c069489a2 to add a + missing MO_WriteBarrier to emitPrimOp. + + -- Clint Adams Wed, 05 Oct 2016 15:27:23 -0400 + +ghc (7.10.3-9) unstable; urgency=medium + + * Improve debian/watch file. + + -- Joachim Breitner Mon, 23 May 2016 16:12:09 +0200 + +ghc (7.10.3-8) unstable; urgency=medium + + [ Dmitry Bogatov ] + * Use secure (https) uri in Vcs-Git field in 'debian/control' + * Bump standards version to 3.9.8 (no changes needed) + * Convert `debian/copyright' to dep5 format + + [ Joachim Breitner ] + * Ensure that the shebang in the generated wrapper scripts use /bin/sh, and + not the value of SHELL of the current user. + + -- Joachim Breitner Mon, 23 May 2016 12:44:05 +0200 + +ghc (7.10.3-7) unstable; urgency=medium + + [ Joachim Breitner ] + * Tighten build-depends on llvm-3.5, to pull in backported version + * Tighten build-depends on ghc; this does not build against 7.6 any more, so + let's use the 7.8 already in backports. + + [ Colin Watson ] + * Run /usr/lib/ghc-doc/gen_contents_index from ghc-doc.postinst with HOME + set to a temporary directory, so that it doesn't pick up stray user + configuration and so that it works reliably in autopkgtests. + + -- Colin Watson Fri, 29 Jan 2016 15:58:13 +0000 + +ghc (7.10.3-6) unstable; urgency=medium + + * Let GHC break cabal-install (<< 1.22), due to + "ghc no longer supports single-file style package databases" + + -- Joachim Breitner Tue, 12 Jan 2016 10:37:19 +0100 + +ghc (7.10.3-5) unstable; urgency=medium + + * ghc-doc Breaks/Replaces libghc-terminfo-doc (<< 0.3.2.5-4), + libghc-transformers-doc (<< 0.3.0.0-6), libghc-xhtml-doc (<< + 3000.2.1-5), now that these are all shipped with ghc (closes: #800423). + + -- Colin Watson Tue, 05 Jan 2016 10:22:34 +0000 + +ghc (7.10.3-4.1) unstable; urgency=medium + + * Non-maintainer upload. + * Add debian/patches/armel-revert-ghci-fixes.patch which reverts + the ARM ghci fixes, but apply the patch on armel only with + the help of the debian/rules file (Closes: #807020). + + -- John Paul Adrian Glaubitz Sun, 20 Dec 2015 17:01:39 +0100 + +ghc (7.10.3-4) unstable; urgency=medium + + [ Colin Watson ] + * Disable PIE on s390x, since Ubuntu's toolchain defaults to enabling it + there (closes: #807366). + + [ Joachim Breitner ] + * Add patch for Sparc64. Again thanks to John Paul Adrian Glaubitz for the + patch (Closes: #807777). + + -- Joachim Breitner Mon, 14 Dec 2015 09:09:52 +0100 + +ghc (7.10.3-3) unstable; urgency=medium + + * Platform detection support for sh4 (Closes: #807108). Thanks to John Paul + Adrian Glaubitz for the patch. + + -- Joachim Breitner Sun, 06 Dec 2015 14:00:32 +0100 + +ghc (7.10.3-2) unstable; urgency=medium + + * Switch Vcs-Git/Vcs-Browser headers to new location. + + -- Clint Adams Thu, 03 Dec 2015 14:54:02 -0500 + +ghc (7.10.3-1) experimental; urgency=medium + + * New upstream version. + + -- Clint Adams Thu, 03 Dec 2015 10:38:40 -0500 + +ghc (7.10.2.20151030-3) experimental; urgency=medium + + * Apply a patch by Peter Trommler to fix + "PPC.Ppr: Shift by 32 bits is not allowed." on powerpc + + -- Joachim Breitner Mon, 09 Nov 2015 18:58:11 +0100 + +ghc (7.10.2.20151030-2) experimental; urgency=medium + + * Patch Cabal to provide --show-detail=direct, mostly to work around + problems with `setup test` on architectures with insufficient threading + support in GHC: https://github.com/haskell/cabal/issues/2398 + + -- Joachim Breitner Thu, 05 Nov 2015 12:38:32 +0100 + +ghc (7.10.2.20151030-1) experimental; urgency=medium + + * New upstream release (7.10.3-rc1) + + -- Joachim Breitner Mon, 02 Nov 2015 17:44:43 +0100 + +ghc (7.10.2-2) experimental; urgency=medium + + * Backport patch to fix GHC bug #10549, to unbreak shake’s test suite + + -- Joachim Breitner Sun, 16 Aug 2015 15:05:54 +0200 + +ghc (7.10.2-1) experimental; urgency=medium + + * New upstream release + + -- Joachim Breitner Wed, 22 Jul 2015 11:17:24 +0200 + +ghc (7.10.1.20150630-2) experimental; urgency=medium + + * Remove PPC-relocations.patch + + -- Joachim Breitner Sat, 04 Jul 2015 10:06:16 +0200 + +ghc (7.10.1.20150630-1) experimental; urgency=medium + + [ Joachim Breitner ] + * New upstream release candidate, 7.10.2-rc2 + * Clean up debian/control a bit, based on a patch by Gianfranco + + [ Gianfranco Costamagna ] + * Bump std version + * Refactor rules file to use dh + + -- Joachim Breitner Fri, 03 Jul 2015 12:28:07 +0200 + +ghc (7.10.1.20150612-1) experimental; urgency=medium + + * Calculate haddock interface version using the built haddock, not the + installed (Thanks to David Fox for noticing). + * New upstream release randidate (7.10.2-rc1) + * Merge from unstable + + -- Joachim Breitner Mon, 15 Jun 2015 09:41:16 +0200 + +ghc (7.10.1-5) experimental; urgency=medium + + * Merge from unstable (Closes: #785282, #785194 ) + * A lucky guess at making GHC build reproducible, by not putting the process + id in temporary filenames. + + -- Joachim Breitner Sun, 24 May 2015 10:47:09 +0200 + +ghc (7.10.1-4) experimental; urgency=medium + + * Fix patch/ghc-7.8.4-3-aarch64.patch; dropped a hunk when upgrading to + 7.10 that I should not have dropped. Thanks Gianfranco Costamagna for + noticing. + + -- Joachim Breitner Thu, 14 May 2015 23:16:55 +0200 + +ghc (7.10.1-3) experimental; urgency=medium + + * Apply patch by Sergei Trofimovich to implement load_/store_load_barrier on + armv6 and older (upstream ticket #10244) + + -- Joachim Breitner Thu, 14 May 2015 09:37:06 +0200 + +ghc (7.10.1-2) experimental; urgency=medium + + * Build against llvm-3.5 (Closes: 784245) + + -- Joachim Breitner Wed, 13 May 2015 11:18:54 +0200 + +ghc (7.10.1-1) experimental; urgency=medium + + * New upstream release. Optimistically dropping lots of patches, lets see + what now works out of the box. + * Ship haddock with ghc, and leave (most) paths as they are. It is easier to + not fight against the way upstream builds and installs stuff. + * Remove the hack introduced in 7.2.0 for a clean upgrade from 7.0.3. + + -- Joachim Breitner Tue, 12 May 2015 12:41:40 +0200 + +ghc (7.8.4-9) unstable; urgency=medium + + * Another stab at making GHC more reproducible: Use a hash of the command + line instead of the pid when calculating a "random" directory name. + + -- Joachim Breitner Sun, 07 Jun 2015 16:21:38 +0200 + +ghc (7.8.4-8) unstable; urgency=medium + + * debian/patches/stable-specialization-rule-names: Root out another cause of + binary ABI instability. + + -- Joachim Breitner Mon, 25 May 2015 19:28:56 +0200 + +ghc (7.8.4-7) unstable; urgency=medium + + * Remove useless *.haddock.t files (upstream bug 10410) + * A lucky guess at making GHC build reproducible, by not putting the process + id in temporary filenames. + + -- Joachim Breitner Mon, 25 May 2015 11:06:54 +0200 + +ghc (7.8.4-6) unstable; urgency=medium + + * Hack to get stable ABIs even when the build path changes. Closes: + #785282 + + -- Joachim Breitner Thu, 21 May 2015 10:35:25 +0200 + +ghc (7.8.4-5) unstable; urgency=medium + + * New patch patches/PPC-relocations.patch by Colin Watson, Closes: #785194 + + -- Joachim Breitner Wed, 13 May 2015 21:06:05 +0200 + +ghc (7.8.4-4) unstable; urgency=medium + + * Apply hurd compatibility patch by Pino + * Put .haddock files of libraries shipped with GHC into + /usr/lib/ghc-doc/haddock/ghc/ instead of + /usr/lib/ghc-doc/haddock/. This avoids overriding such a file if a + -doc package of the same package and version is installed. + Closes: #783863. + * Use ld.gold on arm64 and enable GHCi. Thanks to Edmund Grimley Evans for + digging up the relevant upstream patches, and for Erik de Castro Lopo for + writing them in the first place. Closes: #783987 + + -- Joachim Breitner Mon, 04 May 2015 09:47:07 +0200 + +ghc (7.8.4-3) unstable; urgency=medium + + * Remove LLVM path hacks, ghc-7.8 properly remembers the value passed via + --with-opt=opt-3.4 and use it at runtime (at least I think it does). + + -- Joachim Breitner Thu, 30 Apr 2015 19:42:52 +0200 + +ghc (7.8.4-2) unstable; urgency=medium + + * Fix debian/rules syntax (tab instead of spaces) to unbreak build on armel, + armhf + * Apply all hacks for armel and armhf also on arm64 + + -- Joachim Breitner Thu, 30 Apr 2015 09:08:39 +0200 + +ghc (7.8.4-1) unstable; urgency=medium + + * Upload to unstable. + * Fix version glitch now, so that it never affects anything besides + experimental. + * ghc-doc: Conflict with libghc-xhtml-doc + * Merge from unstable: + - Let ghc-haddock break on ghc-doc (<< 7.6.3-20~). Closes #781649. + - Improve watch file + - Mark all triggers -noawait. Closes: #769554 + - Joey Hess: armel,armhf: Force use of llvm-3.4, rather than unversioned + lvm, which can have abi changes that break ghc. Closes: #763078 + + -- Joachim Breitner Mon, 27 Apr 2015 11:17:38 +0200 + +ghc (7.8.20141223-1) experimental; urgency=medium + + * New upstream release (7.8.4) + * Drop patches always_build_arm_spinlocks.patch, linker-detection-fix, + dll-split-fix.patch, TcSplice-no-GHCi-fix; applied upstream. + + -- Joachim Breitner Tue, 23 Dec 2014 15:29:00 +0100 + +ghc (7.8.20141119-8) experimental; urgency=medium + + * Now that the package builds on armel and armhf, try to build with GHCi + enabled. + + -- Joachim Breitner Tue, 09 Dec 2014 14:29:13 +0100 + +ghc (7.8.20141119-7) experimental; urgency=medium + + * Apply patches taken from GHC HEAD that help building on ARM + - always_build_arm_spinlocks.patch + - dll-split-fix.patch + - linker-detection-fix + * Replace patches/Fix-documentation-build-failure-without-GHCi.patch by the + equivalent patch from GHC HEAD (./patches/TcSplice-no-GHCi-fix) + * Pass -fuse-ld=gold to gcc when used as alinker on arm + (patches/use-gold-on-arm) and make sure this setting does not affect other + parts (patches/saner-linker-opt-handling). + * Try to handle autoreconf saner, by simply calling perl bool + + -- Joachim Breitner Mon, 08 Dec 2014 19:08:01 +0100 + +ghc (7.8.20141119-6) experimental; urgency=medium + + * According to Ben Gamari, the flag is -optl-B..., not -optc-B... + * Do not pass -mlong-calls to gcc on arm, on the grounds that upstream is + not doing it. + + -- Joachim Breitner Mon, 01 Dec 2014 09:41:21 +0100 + +ghc (7.8.20141119-5) experimental; urgency=medium + + * Try using ld.gold on arm, using -optc-B/usr/bin/ld.gold + + -- Joachim Breitner Sun, 30 Nov 2014 18:51:45 +0100 + +ghc (7.8.20141119-4) experimental; urgency=medium + + * Try using ld.gold on arm. + + -- Joachim Breitner Fri, 28 Nov 2014 22:15:29 +0100 + +ghc (7.8.20141119-3) experimental; urgency=medium + + * Explicitly call opt-3.4, and avoid the generic opt command. + + -- Joachim Breitner Wed, 26 Nov 2014 22:11:34 +0100 + +ghc (7.8.20141119-2) experimental; urgency=medium + + * Explicitly depend on llvm-3.4 on arm, maybe that works better. + + -- Joachim Breitner Wed, 26 Nov 2014 16:14:54 +0100 + +ghc (7.8.20141119-1) experimental; urgency=medium + + * New upstream release candidate (7.8.4-rc1) + + -- Joachim Breitner Wed, 26 Nov 2014 10:12:08 +0100 + +ghc (7.8.20140710-4) experimental; urgency=medium + + * Add support for mips and mipsel. + Add mips-support.patch. + Patch by Dejan Latinovic . + Closes: #751479. + + -- Joachim Breitner Fri, 18 Jul 2014 22:47:43 +0200 + +ghc (7.8.20140710-3) experimental; urgency=medium + + * Depend on libncurses5-dev, since we ship terminfo in ghc now. Thanks to + David Fox for noticing. + + -- Joachim Breitner Wed, 16 Jul 2014 19:50:39 +0200 + +ghc (7.8.20140710-2) experimental; urgency=medium + + * Also ship terminfo, haskeline, and xhtml. Thanks to David Fox for the + patch and testing. + + -- Joachim Breitner Sun, 13 Jul 2014 17:49:18 +0200 + +ghc (7.8.20140710-1) experimental; urgency=medium + + * New upstream release (7.8.3) + The version number is a work-around for a glitch earlier, see below. + + -- Joachim Breitner Thu, 10 Jul 2014 10:17:36 +0200 + +ghc (7.8.20140411-5) experimental; urgency=medium + + * Merge 7.6.3-13 from unstable + + -- Joachim Breitner Wed, 11 Jun 2014 10:03:28 +0200 + +ghc (7.8.20140411-4) experimental; urgency=medium + + * Merge 7.6.3-9 to 7.6.3-12 from unstable + + -- Joachim Breitner Tue, 10 Jun 2014 12:25:10 +0200 + +ghc (7.8.20140411-3) experimental; urgency=medium + + * Do not pass -optc-mminimal-toc on ppc64 (Closes: #747089), thanks to + Hiroyuki Yamamoto for the patch. + + -- Joachim Breitner Mon, 05 May 2014 20:52:26 +0200 + +ghc (7.8.20140411-2) experimental; urgency=medium + + * Try building without hardening and see what architectures work then. + + -- Joachim Breitner Mon, 28 Apr 2014 16:21:08 +0200 + +ghc (7.8.20140411-1) experimental; urgency=medium + + * New upstream release (7.8.2) + The version number is a work-around for a glitch earlier, see below. + * Fix haddock build on armhf (Upstream bug #8988, patch by Colin Watson) + * debian/watch: Refer to xz-compressed tarball + + -- Joachim Breitner Sat, 12 Apr 2014 00:13:34 +0200 + +ghc (7.8.20140408-1) experimental; urgency=medium + + * New upstream release (7.8.1) + The version number is a work-around for a glitch earlier. When uploading + to Debian unstable, the proper 7.8.1 can be used. This way, the glich will + be confined to experimental, and only until 7.9 or 7.10 is uploaded to + experimental. + + -- Joachim Breitner Tue, 08 Apr 2014 15:49:58 +0200 + +ghc (7.8.20140228-1) experimental; urgency=medium + + * New release candiate (7.8 RC 2) + * Do not provide stm or parallel, these are not officially part of the GHC + distribution. + + -- Joachim Breitner Mon, 03 Mar 2014 14:34:17 +0100 + +ghc (7.8.20140130-3) experimental; urgency=medium + + * transformers now comes with ghc, put it in the Provides line + + -- Joachim Breitner Sun, 09 Feb 2014 20:54:01 +0000 + +ghc (7.8.20140130-2) experimental; urgency=medium + + * Call ghc and ghc-pkg via the wrappers in /usr/bin in the postinst script + (Closes: 738183) + + -- Joachim Breitner Sat, 08 Feb 2014 12:28:59 +0000 + +ghc (7.8.20140130-1) experimental; urgency=low + + * New upstream release candidate + * Drop ghc-dynamic, now contained in ghc + + -- Joachim Breitner Wed, 05 Feb 2014 10:51:51 +0000 + +ghc (7.6.3-21) unstable; urgency=medium + + * Fix watch file. + * Let ghc-haddock break on ghc-doc (<< 7.6.3-20~). If I used piuparts + correctly, this finally closes: #781649. + + -- Joachim Breitner Wed, 01 Apr 2015 13:35:10 +0200 + +ghc (7.6.3-20) unstable; urgency=medium + + * Mark all triggers -noawait. Possibly Closes: #769554 + + -- Joachim Breitner Sun, 23 Nov 2014 11:20:59 +0100 + +ghc (7.6.3-19) unstable; urgency=medium + + * Fix armel/armhf script munging; ghci and runghc are not available on + those arches. + + -- Joey Hess Mon, 29 Sep 2014 16:28:23 +0100 + +ghc (7.6.3-18) unstable; urgency=medium + + * Fix accidental line wrap in debian/rules + + -- Joachim Breitner Mon, 29 Sep 2014 09:52:40 +0200 + +ghc (7.6.3-17) unstable; urgency=medium + + * armel,armhf: Force use of llvm-3.4, rather than unversioned lvm, + which can have abi changes that break ghc. Closes: #763078 + + -- Joey Hess Sun, 28 Sep 2014 19:16:16 +0100 + +ghc (7.6.3-16) unstable; urgency=medium + + * Also do not conflict with libghc-binary-doc + + -- Joachim Breitner Tue, 29 Jul 2014 14:21:49 +0200 + +ghc (7.6.3-15) unstable; urgency=medium + + * Do not conflict with libghc-binary-dev. + + -- Joachim Breitner Sat, 26 Jul 2014 15:32:10 +0200 + +ghc (7.6.3-14) unstable; urgency=medium + + * Backport from 7.8: Do not panic when annotations are encountered on non-TH + architectures. Less work this way than patching all the library code. + (Closes: 752460). Thanks to Dejan Latinovic to provide the patch. + + -- Joachim Breitner Tue, 01 Jul 2014 09:18:02 +0200 + +ghc (7.6.3-13) unstable; urgency=medium + + * Actually use the conflicting-devs variable in debian/control. No idea what + went wrong yesterday. + + -- Joachim Breitner Wed, 11 Jun 2014 09:55:30 +0200 + +ghc (7.6.3-12) unstable; urgency=medium + + * Last update broke the calculation of the Provides fields, fixing. + (Closes: #751051) + + -- Joachim Breitner Mon, 09 Jun 2014 22:19:03 +0200 + +ghc (7.6.3-11) unstable; urgency=medium + + * Do no conflict with libghc-cabal-dev. + + -- Joachim Breitner Sun, 08 Jun 2014 13:56:51 +0200 + +ghc (7.6.3-10) unstable; urgency=medium + + * Team upload. + * Add ppc64el support. + + -- Colin Watson Sat, 12 Apr 2014 02:26:04 +0100 + +ghc (7.6.3-9) unstable; urgency=medium + + * Team upload. + * Ensure that all copies of config.guess and config.sub in the tree are up + to date at build time. + * Add arm64 support. + + -- Colin Watson Sat, 05 Apr 2014 02:00:21 +0100 + +ghc (7.6.3-8) unstable; urgency=medium + + * Apply a4b1a435 from upstream, to fix building on 64 big endian platforms + such as s390x. Thanks to Aurelien Jarno for pointing out the fix. + Closes: #740144 + + -- Joachim Breitner Mon, 03 Mar 2014 09:12:47 +0100 + +ghc (7.6.3-7) unstable; urgency=low + + [ Gianfranco Costamagna ] + * Bumped standard version to 3.9.5, no changes required. + + [ Joachim Breitner ] + * Depend on gcc (Closes: #736472) + + -- Joachim Breitner Sun, 09 Feb 2014 12:21:48 +0000 + +ghc (7.6.3-6) unstable; urgency=medium + + * Closes: #731597: llvm-3.3 compatibility (patch from upstream) + + -- Joachim Breitner Sun, 08 Dec 2013 18:28:30 +0000 + +ghc (7.6.3-5) unstable; urgency=low + + [ Gianfranco Costamagna ] + * Removing gcc from control file build-deps + + [ Louis Bettens ] + * fix cabal bug #1087 in current version + + -- Gianfranco Costamagna Wed, 28 Aug 2013 16:14:21 +0200 + +ghc (7.6.3-4) unstable; urgency=low + + [ Colin Watson ] + * Enable verbose build output (see + http://lists.debian.org/debian-devel/2013/06/msg00539.html). + + [ Gianfranco Costamagna ] + + * Switch to llvm (Closes: #711948) + * removed deprecated DM-Upload-Allowed + * removed some version checks, higher versions are already in oldstable. + * Added dpkg-buildflags as build-dep, fixing lintian warning. + + -- Joachim Breitner Fri, 16 Aug 2013 14:40:37 +0200 + +ghc (7.6.3-3) unstable; urgency=low + + * Add patches/Handle-sign-bit-when-generating-veneer-for-ARM-Thumb.patch, + patch by Colin Watson + * Disable GHCi on arm, as it is severly borken (for more information see + http://hackage.haskell.org/trac/ghc/ticket/7794) + * Do not create system-wide documentation index if /usr/share/doc is + missing. (Closes: #709911) + * Create a symlink from prof_scc.png to prof_scc (Closes: #664043) + + -- Joachim Breitner Wed, 05 Jun 2013 20:57:49 +0200 + +ghc (7.6.3-2) unstable; urgency=low + + * Enable compat level 9 + * Remove transitional ghc6-* packages + + -- Joachim Breitner Fri, 24 May 2013 11:12:19 +0200 + +ghc (7.6.3-1) experimental; urgency=low + + * New upstream release + + -- Joachim Breitner Sun, 21 Apr 2013 19:12:24 +0200 + +ghc (7.6.2-1) experimental; urgency=low + + * New upstream release + + -- Joachim Breitner Tue, 29 Jan 2013 21:16:52 +0100 + +ghc (7.6.1.20121207-2) experimental; urgency=low + + * Typo in ghc-haddock’s Provides, thanks to David Fox for noticing. + + -- Joachim Breitner Thu, 13 Dec 2012 18:33:48 +0100 + +ghc (7.6.1.20121207-1) experimental; urgency=low + + * New upstream release (aka 7.6.1-rc). + + Closes: #677096 (huge number of wakeups) + * Remove debian/patches/armhf_llvm_abi, applied upstream, thanks to Shawn + Landden for noticing (Closes: #695739) + * Hardcode in debian/rules that haddock supportin interface version 22 also + supports interface version 21. + + -- Joachim Breitner Wed, 12 Dec 2012 12:32:48 +0100 + +ghc (7.6.1-3) experimental; urgency=low + + * Bump standards version, no change + * Change VCS fields back to regular repo + * Build the runtime also in the thr_debug_p way, suggestion by Michał J. + Gajda + + -- Joachim Breitner Tue, 04 Dec 2012 22:00:27 +0100 + +ghc (7.6.1-2) experimental; urgency=low + + * Do not Provide transformers, it is only used internally. + * Ensure this is not used with unstable’s haskell-devscripts + + -- Joachim Breitner Mon, 08 Oct 2012 22:41:46 +0200 + +ghc (7.6.1-1) experimental; urgency=low + + * New upstream release + Dropped patches, applied upstream: + + Fix-GHCi-segfault-on-linux-powerpc + + hurd-is-ELF + + use-llvm-3.0 + + memcpy-ffi + + fix-PPC-right-shift-bug + + no-useless-time + + fix-ppc-ghci-segfault + * Configure the use of llc-3.0 and opt-3.0 via ./configure + * Bump standards version + + -- Joachim Breitner Mon, 08 Oct 2012 15:48:21 +0200 + +ghc (7.4.2-2) experimental; urgency=low + + [ Erik de Castro Lopo ] + * Add patch to fix GHCi segfault on startup on PowerPC (Closes: #631073). + * Remove patch no_ghci_on_powerpc. + + [ Iain Lane ] + * Update Vcs-* to point to experimental branch + + -- Erik de Castro Lopo Mon, 6 Aug 2012 20:19:46 +1000 + +ghc (7.4.2-1) experimental; urgency=low + + * New upstream. + * debian/patches/series + - Remove patch fix-ARM-s-StgCRun-clobbered-register-list-for-both-A, + fix-ARM-StgCRun-to-not-save-and-restore-r11-fp-regis and memcpy-ffi.patch + (in upstream). + - Refresh other patches. + + -- Erik de Castro Lopo Mon, 11 Jun 2012 15:21:26 +1000 + +ghc (7.4.1-4) unstable; urgency=low + + [ Erik de Castro Lopo ] + * Add debian/patches/fix-PPC-right-shift-bug which fixes upstream GHC bug: + http://hackage.haskell.org/trac/ghc/ticket/6156 (Closes: #677591) + * Refresh other patches. + * debian/contol: Add myself to uploaders and set DM-Upload-Allowed to yes. + + [ Joachim Breitner ] + * debian/patches/no-useless-timer: Backported from GHC 7.4.2, (Closes: + #677096) + * Make sure GHC is using ld.bfd, as it passes arguments not understood by + the gold linker (Closes: #673081) + * Use a saner priority for the runhaskell alternative. (Closes: #676970). + TODO for later: Consider removing the alternatives code altogether. + + -- Joachim Breitner Sat, 16 Jun 2012 12:48:18 +0200 + +ghc (7.4.1-3) unstable; urgency=low + + * Remove the ghc-doc symlink logic from 7.0.4-3, as with 7.4.1, every + documentation package had to be rebuit. + * ghc-doc: Conflict on libghc-haddock-doc, as it contains files that moved + into ghc-doc. (Closes: #659081) + * Added debian/patches/memcpy-ffi.patch, backported from upstream master + branch. See http://hackage.haskell.org/trac/ghc/ticket/5967. + + -- Joachim Breitner Sun, 06 May 2012 21:51:17 +0200 + +ghc (7.4.1-2) unstable; urgency=low + + [ Iain Lane ] + + * Two new patches (backported by Iulian Udrea) to fix armel build + failures. See upstream bug #5824. + - fix-ARM-s-StgCRun-clobbered-register-list-for-both-A + - fix-ARM-StgCRun-to-not-save-and-restore-r11-fp-regis + * Use dh_autoreconf{,_clean} to autoreconf, mainly so we can have proper + clean support. + * armhf support (thanks to Jani Monoses): + - debian/patches/ARM-VFPv3D16: Use vfp3-d16 FPU for ARM builds. + - debian/patches/armhf_llvm_abi: Pass -float-abi=hard to llc on armhf if + __ARM_PCS_VFP is defined (needs to be preprocessed for this) + - debian/rules: Define __ARM_PCS_VFP on armhf for the above patch. + + [ Joachim Breitner] + + * patches/hurd-is-ELF added, Closes: #659530, thanks to Samuel + Thibault + * Also conflict with any provided libghc-*-dev packages. Thus, if a packages + is moved _into_ ghc that was outside before, no external package can be + installed (as was the case with binary). + * patches/no-missing-haddock-file-warning: Quench warning, as it is quite + common on Debian installations. + * build-depends-indep on hscolour and fop, to ensure most documentation is + built. + + -- Joachim Breitner Sat, 10 Mar 2012 19:32:34 +0100 + +ghc (7.4.1-1) unstable; urgency=low + + * New upstream release. + + -- Joachim Breitner Fri, 03 Feb 2012 16:27:31 +0100 + +ghc (7.4.0.20120126-1) experimental; urgency=low + + * New upstream release candidate (7.4.1-rc2) + + -- Joachim Breitner Sat, 28 Jan 2012 13:31:10 -0500 + +ghc (7.4.0.20120108-1) experimental; urgency=low + + * s/armef/armhf/ in debian/control + * New upstream release, drop all patches introduced in 7.4.0.20111219-3, + applied upstream. + + -- Joachim Breitner Mon, 09 Jan 2012 13:22:18 +0100 + +ghc (7.4.0.20111219-4) experimental; urgency=low + + * Prefix haddock interface number with "haddock-interface" in + Depends/Provides pair + * Switch to llvm and registered builds on arm* + * Do not set UseLibFFIForAdjustors in debian/rules, as the code in + ./mk/config.mk.in seems to do the same anyways. + * Do not set GhcWithInterpreter=YES for kfreebsd-*, done in + ./mk/config.mk.in by now. + * Do not set GhcUnregisterised=YES in debian/rules, ./mk/config.mk.in + already makes the right choice. + * Do not build the accidentally included dph libraries. + * Explicitly depend on llv-3.0 and use corresponding binary names. + + -- Joachim Breitner Mon, 02 Jan 2012 20:39:42 +0100 + +ghc (7.4.0.20111219-3) experimental; urgency=low + + * patches/kfreebsd-OS: KFreeBSD is an ELF-based OK + * patches/S390-Arch: Mention bitness of S390(x) + * patches/ArchMips: Add more missing Arch values + + -- Joachim Breitner Fri, 30 Dec 2011 18:05:33 +0100 + +ghc (7.4.0.20111219-2) experimental; urgency=low + + * Fix building bundeled haddock out-of-tree (We need to re-think this + approach). + * Drop patches/lpthread-bootstrap-workaround, probably not needed any + more. Also drop autoconf dependency. + + -- Joachim Breitner Fri, 23 Dec 2011 09:23:42 +0100 + +ghc (7.4.0.20111219-1) experimental; urgency=low + + * New upstream release (AKA 7.4.1-rc1) + + Closes: #635587 (GHCi linker could not find libstdc++) + + Closes: #514720 (cabal installation wrecks permissions) (was actually + closed earlier, I think) + + Closes: #533022 (Data.Word should define instances of Random for each + type) + + -- Joachim Breitner Thu, 22 Dec 2011 14:34:50 +0100 + +ghc (7.2.2-1) experimental; urgency=low + + * New upstream release + * Call autoconf and remove configure in clean, to avoid having an + autoreconf-patch in debian/patches. + * Drop patches/hash-version-number, applied upstream + * Drop improve_linker_script_handling, applied upstream + + -- Joachim Breitner Sat, 19 Nov 2011 18:34:17 +0100 + +ghc (7.2.1-1) experimental; urgency=low + + * New upstream release. + + -- Joachim Breitner Tue, 23 Aug 2011 20:58:31 +0200 + +ghc (7.2.0.20110728-1) experimental; urgency=low + + * Remove ghc-doc dependency on ghc, it did not have the desired effect. + Instead call ghc-pkg recache in ghc-doc’s trigger as well. + * Install 7.2.1-rc1 to experimental. + * Undo the symlink-workarounds introduced in 7.0.4-3. The -doc work-around + is still needed, as the haddock interface version did not change. + + -- Joachim Breitner Sat, 06 Aug 2011 19:50:04 +0200 + +ghc (7.0.4-9) UNRELEASED; urgency=low + + * Suggest llvm package + + -- Joachim Breitner Thu, 10 Nov 2011 19:19:41 +0100 + +ghc (7.0.4-8) unstable; urgency=low + + * Remove ghci support on powerpc (Closes: #631073) + + -- Joachim Breitner Sun, 30 Oct 2011 17:56:23 +0100 + +ghc (7.0.4-7) unstable; urgency=low + + [ Joachim Breitner ] + * patches/configure-s390x: Add s390x to the list of known architectures. + * add armhf in debian/rules (Patch by Riku Voipio, Closes: #640811) + + [ Iain Lane ] + * Handle linker scripts for which dlopen returns "file too short" and/or + which contain INPUT statements (for example libncurses.so) (Closes: + #644591) + * Standards-Version → 3.9.2, no changes required + + -- Iain Lane Tue, 18 Oct 2011 17:09:39 +0100 + +ghc (7.0.4-6) unstable; urgency=low + + * Fix #609445 by actually removing the patch for #566331, not needed any + more since this upstream commit: + + Sat Jul 31 12:55:06 BST 2010 Ian Lynagh + * Expose the functions haddock needs even when haddock is disabled; #3558 + + + -- Joachim Breitner Wed, 31 Aug 2011 08:44:33 +0200 + +ghc (7.0.4-5) unstable; urgency=low + + * Remove ghc-doc dependency on ghc, it did not have the desired effect. + Instead call ghc-pkg recache in ghc-doc’s trigger as well. + * Fix missing instance documentation (Closes: #609445) + This was a Debian-specific regression, introduced in the fix for #566331 + or later caused by it, and fixed by building haddock with -DGHCI. + + -- Joachim Breitner Sat, 30 Jul 2011 16:09:07 +0200 + +ghc (7.0.4-4) unstable; urgency=low + + * Let ghc-doc depend on ghc. It already does via ghc-haddock, making this + explicit ensures that the triggers run in the right order. + * debian/patches/hash-version-number: Include the upstream version number in + the ABI hash. We do need to recompile everything, even after a minor ghc + upgrade. This allows to use the same mechanism to ensure correctness and + detect that we need to recompile something as for other kind of + recompilations. (Closes: #633828) + + -- Joachim Breitner Sat, 16 Jul 2011 11:23:09 +0200 + +ghc (7.0.4-3) unstable; urgency=low + + * Employ similar symlink work-around to merge /var/lib/ghc-*/package.conf.d + into /var/lib/ghc/package.conf.d. Also remove version number from + /usr/lib/ghc path. + + -- Joachim Breitner Mon, 11 Jul 2011 13:13:45 +0200 + +ghc (7.0.4-2) unstable; urgency=low + + * Fix ghc-ghci existance check logic + + -- Joachim Breitner Sun, 10 Jul 2011 15:23:55 +0200 + +ghc (7.0.4-1) unstable; urgency=low + + * New upstream release (Closes: #622731) + + -- Joachim Breitner Sat, 09 Jul 2011 19:50:41 +0200 + +ghc (7.0.3-2) unstable; urgency=low + + * Mention correct haddock version in package description. + * Install .haddock files under /usr/lib/ghc-doc/haddock, a path valid across + ghc-versions. Also move them to the ghc-doc package. + * In ghc-doc.prerm, do a better job of cleaning + /usr/share/doc/ghc-doc/html/libraries of files generated when creating the + haddock index. + * Make Provides: ghc-ghci dependent on existence of ghci binary + (Closes: #629038) + * Make ghc-haddock depend on the exact version of ghc, just to be on the + safe side. (Closes: #539312) + + -- Joachim Breitner Sat, 18 Jun 2011 21:07:06 +0200 + +ghc (7.0.3-1) unstable; urgency=low + + * Remove Build-Conflict on dash, as a fixed package has been uploaded. + * Do not provide utf8-string or xhtml, as they are only built internally. + * Remove Build-Depend alternative ghc6, and also remove Provides: ghc6, as + this is a lie and I see no techical reason for it. + * New upstream release + * Avoid "hPutChar: resource vanished" message and simplify postinst script + (Closes: #619403) + * Remove package cache in prerm, even on upgrade. This is the right thing to + do if upgrading to a new upstream release, and does not hurt in the other + cases. + + -- Joachim Breitner Sat, 09 Apr 2011 21:43:15 +0530 + +ghc (7.0.2-7) unstable; urgency=low + + * Upload to unstable + + -- Joachim Breitner Sat, 26 Mar 2011 21:45:53 +0530 + +ghc (7.0.2-6) experimental; urgency=low + + * Set a dummy HOME variable upon build. Some build daemons do not set HOME, + but ghc-cabal expects it to be available. + + -- Joachim Breitner Fri, 25 Mar 2011 12:47:29 +0530 + +ghc (7.0.2-5) experimental; urgency=low + + * Build-Conflict with broken version of dash (See #618023) + * Link ghc-doc to haddock via virtual package "haddock-interface-" + * Remove redundand Build-dependency on autoconf + + -- Joachim Breitner Wed, 23 Mar 2011 12:03:56 +0530 + +ghc (7.0.2-4) experimental; urgency=low + + * ghc6-preinst: Remove package.cache file of any ghc6 installation to avoid + dpkg warning at upgrade time. + * Build-conflict with ccache. pbuilder installs ccache by default, which + causes ghc to pick up a wrong path for "gcc". + * Pass -lpthread everywhere. This can possibly be dropped later. + + -- Joachim Breitner Fri, 11 Mar 2011 14:00:11 +0530 + +ghc (7.0.2-3) experimental; urgency=low + + [ Iain Lane ] + * debian/rules: Build with -mminimal-toc on ppc64 — thanks to Colin + Watson for investigation and patch. + + [ Joachim Breitner ] + * Disable the use of epoll_create1 and use epoll_create, as the former is + not available on Linux kernels earlier than 2.6.27. + http://hackage.haskell.org/trac/ghc/ticket/5005 + + -- Joachim Breitner Wed, 09 Mar 2011 21:44:50 +0530 + +ghc (7.0.2-2) experimental; urgency=low + + [ Joachim Breitner ] + * Remove procps dependency (watcher.hs has been removed since a while) + * Build-depend and depend on libgmp-dev instead of libgmp3-dev. + + [ Erik de Castro Lopo ] + * Add patch to fix powerpc compile error (powerpc-compile-616635) + (Closes: #616635) + + [ Joachim Breitner ] + * fix FTBFUS by removing left-over binaries + + -- Joachim Breitner Tue, 08 Mar 2011 13:01:18 +0530 + +ghc (7.0.2-1) experimental; urgency=low + + * (Closes: 554174) Segfaults at startup not observable any more + * Tweak debian/copyright + * New upstream release (Should help to close 616494) + + -- Joachim Breitner Sat, 05 Mar 2011 22:04:21 +0530 + +ghc (7.0.1-1) experimental; urgency=low + + [ Joachim Breitner ] + * New upstream release, some patches included. + * Package adopted by the Debian Haskell Group. Thanks to kaol for his + work! + * Rename source and binary packages to ghc, include transitional dummy + package + * Standards-Version 3.9.1 (no changes necessary) + + [ Erik de Castro Lopo ] + * Re-enable building of ghci on powerpc. (Closes: 557185) + + -- Joachim Breitner Mon, 17 Jan 2011 12:49:24 +0530 + +ghc6 (6.12.3-1) experimental; urgency=low + + * New upstream release + * ghci :m now works with module names containing ' (Closes: #580568) + * Put haddock and the shared libraries into their own packages. + (Closes: #571537) + * Only insert packages in gen_contents_index which are both registered + and for which the html directory exists. + * Use ghc-pkg --global in ghc6's trigger to avoid accessing HOME. + (Closes: #578679) + * Fix directories in haddock manpage. (Closes: #578321) + * Apply some patches from Gentoo (thanks, Sergei Trofimovich) hopefully + fixing ia64 build. + * Downgrade ghc6's dependency on perl to Suggests and have ghc6-doc + depend on perl. (Closes: #553332) + * Standards-Version 3.9.0 (no changes necessary) + * ghc6 package now provides ghc6-ghci on architectures where it's + supported (i386 and amd64 only currently). + + -- Kari Pahula Tue, 20 Jul 2010 19:19:20 +0300 + +ghc6 (6.12.1-13) unstable; urgency=low + + * Remove debian/watcher.sh. (Closes: #571824) + * Don't ship /var/lib/ghc-6.12.1/package.conf.d/package.cache with ghc6. + (Closes: #574417) + * Patch compiler/rename/RnSource.lhs to make hlist happy. + * Remove some more generated .hc files in debian/rules clean. + * Don't ship broken symlink /usr/lib/ghc-6.12.1/package.conf + + -- Kari Pahula Sat, 17 Apr 2010 10:35:25 +0300 + +ghc6 (6.12.1-12) unstable; urgency=low + + * Fix the kfreebsd-* patch. + * Don't die in ghc6's trigger if ghc-pkg check fails. (Closes: #570921) + * Recognise DEB_BUILD_OPTIONS=parallel. + + -- Kari Pahula Mon, 22 Feb 2010 15:08:48 +0200 + +ghc6 (6.12.1-11) unstable; urgency=low + + * Add "unset LC_ALL\nexport LC_CTYPE=en_US" to bin/ghc wrapper on ia64. + * Actually append GhcWithInterpreter=YES to mk/build.mk on kfreebsd-*, + don't just echo it to stdout. + + -- Kari Pahula Mon, 22 Feb 2010 03:24:02 +0200 + +ghc6 (6.12.1-10) unstable; urgency=low + + * Use dh_haskell_depends from haskell-devscripts to create provides + including the packages ABI. + * Make provided substvar for utf8-string too. + * Run "ghc-pkg check" in ghc6's trigger also. + * Added a stub /usr/share/doc/ghc6-doc/index.html that redirects to + html/index.html. + + -- Kari Pahula Fri, 19 Feb 2010 18:08:57 +0200 + +ghc6 (6.12.1-9) unstable; urgency=low + + * Remove /usr/lib/ghc-$(ProjectVersion)/lib/haddock (ie. the internal + haddock binary that ghc6 used at build time) from the ghc6 package. + * Install haddock's files from /usr/share/haddock-$VERSION in ghc6 + package, not ghc6-doc. + + -- Kari Pahula Sat, 13 Feb 2010 02:49:11 +0200 + +ghc6 (6.12.1-8) unstable; urgency=low + + * Use tabs instead of 8 spaces in debian/rules for ia64 specific flags. + + -- Kari Pahula Wed, 10 Feb 2010 13:19:32 +0200 + +ghc6 (6.12.1-7) unstable; urgency=low + + * Include patches to haddock to ghc6's own patches and don't apply them + in debian/rules. + * Update the patch for alpha. + * ghc6-doc depends on ghc6 (>= ${binary:Version}), not haddock. + * Upload to unstable. + + -- Kari Pahula Tue, 09 Feb 2010 23:45:14 +0200 + +ghc6 (6.12.1-6) experimental; urgency=low + + * Use some more compiler flags to make ghc6 build on ia64 for real. + * Patch TcForeign.lhs and EventLog.c to make ghc6 build on alpha. + + -- Kari Pahula Mon, 08 Feb 2010 13:58:59 +0200 + +ghc6 (6.12.1-5) experimental; urgency=low + + * Included haddock with the ghc6 package. Provides, conflicts and + replaces haddock. Copied over haddock.1 from the haddock package. + * Build with UseLibFFIForAdjustors=YES on alpha. + * Set ghc6 depend on libc6-dev. (Closes: #567809) + * Standards-Version 3.8.4, no changes necessary. + * Patch up the sources some more for kfreebsd. (Closes: #567298) + + -- Kari Pahula Fri, 05 Feb 2010 12:05:15 +0200 + +ghc6 (6.12.1-4) experimental; urgency=low + + * Patched utils/haddock/src/Haddock/Interface/Create.hs to use + lookupGlobalName instead of lookupName when GHCI is + unavailable. (Closes: #566331) + + -- Kari Pahula Thu, 28 Jan 2010 11:46:55 +0200 + +ghc6 (6.12.1-3) experimental; urgency=low + + * Updated ghc-pkg's man page. + * Added a trigger to run ghc-pkg recache when files are added to + /var/lib/ghc-6.12.1/package.conf.d/. + * Patch rts/posix/OSThreads.c to define _GNU_SOURCE on kfreebsd + too. (Closes: #565818) + * Patch utils/haddock/src/Haddock/Interface/AttachInstances.hs to use + Nothing as mb_info in attachInstances when GHCI is + unavailable. (Closes: #566331) + * Breaks cabal-install (<< 0.8.0). + + -- Kari Pahula Wed, 27 Jan 2010 23:37:32 +0200 + +ghc6 (6.12.1-2) experimental; urgency=low + + * Added missing build dependency: libncurses5-dev. + * Use the included haddock to build documentation and drop the + build-depends-indep on haddock. + + -- Kari Pahula Wed, 13 Jan 2010 10:02:15 +0200 + +ghc6 (6.12.1-1) experimental; urgency=low + + * New upstream release (Closes: #539789) + * System.Posix.Semaphore fixed. (Closes: #544127) + * Switch to dpkg-source 3.0 (quilt) format + * Standards-Version 3.8.3 (no changes necessary). + * Added a dependency on libbsd-dev (Closes: #549403) + * Patched compiler/utils/Panic.lhs to add a message to internal GHC + error messages, suggesting removing .hi files and pointing to + README.Debian. (Closes: #532443) + * Don't alter Binary.hs and just let Ints to be stored in architecture + native format. + * Don't set XMLDocWays in build.mk since it's not used anymore. + * Remove lpia arch from debian/rules. + * Split debian/rules binary to binary-arch and binary-indep. (Closes: #543972) + * Set SRC_HC_OPTS += -lffi in build.mk and update the patch + system-libffi to use Debian's packaged libffi. + * Update the patch to make the build system use /usr/bin/haddock and not + build its own. + + -- Kari Pahula Tue, 12 Jan 2010 16:29:03 +0200 + +ghc6 (6.10.4-2) unstable; urgency=low + + * Patch libraries/unix/System/Posix/Semaphore.hsc + + -- Kari Pahula Sat, 29 Aug 2009 10:08:42 +0300 + +ghc6 (6.10.4-1) unstable; urgency=low + + * New upstream release + * Pass UseLibFFIForAdjustors=YES to build options on armel. + * Standards-Version 3.8.2 (no changes necessary). + * Pass GhcUnregisterised=NO to build options on lpia (for Ubuntu's + benefit). + + -- Kari Pahula Wed, 22 Jul 2009 15:22:36 +0300 + +ghc6 (6.10.3-3) unstable; urgency=low + + * Patch mkWeakForeignEnv# in rts/PrimOps.cmm to avoid random + segfaults. (re: + https://bugs.launchpad.net/ubuntu/+source/ghc6/+bug/382803) + * Exclude internal boot libraries from generated Provides: libghc6-* + substvars. (Closes: #531318) + + -- Kari Pahula Sat, 27 Jun 2009 17:58:49 +0300 + +ghc6 (6.10.3-2) unstable; urgency=low + + * Only call ghc-pkg6 in ghc6-doc's trigger if ghc6 is installed. + (Closes: #530732) + * Fix the test for seeing if ghci would work. + * Build a registerised build on powerpc, but disable ghci. + + -- Kari Pahula Thu, 28 May 2009 12:40:17 +0300 + +ghc6 (6.10.3-1) unstable; urgency=low + + * New upstream release + * GHCi uses stdio in blocking mode now. (Closes: #512762) + * GHC can cope with missing setitimer(ITIMER_VIRTUAL) support. + (Closes: #509252) + * Uses haskeline instead of editline. + * Only provide ghci and runghc on archs that support it. + (Closes: #320335) + * Patched compiler/utils/Binary.hs to store Ints as Int64s on 32 bit + architectures and warn if it needed to truncate when unserialising. + * Moved package.conf to /var/lib/ghc-$VERSION/. + * Added a /var/lib/ghc-$VERSION/package.conf.d/ dir. + * Set symlinks from /usr/lib/ghc-$VERSION/package.conf* to /var. + * Don't ship generated index files in /usr/share/doc/ghc6-doc/libraries/ + and remove them in postrm. (Closes: #501188) + * Remove any leftover index.html files in + /usr/share/doc/ghc6-doc/html/libraries/. (Closes: #461323) + * Bumped to debhelper compat 7 and Standards-Version 3.8.1 (no changes + needed). + * Section: haskell for ghc6 and ghc6-prof. + * Fix up generated Provides for ghc6 and ghc6-doc. + (Closes: #514085, #518400) + * Added man pages for runghc and ghc-pkg. (Closes: #460425, #315763) + * Removed alternative for /usr/bin/ghcprof. (Closes: #527382) + * Build an unregisterised build on powerpc. (Closes: #514946) + * Build-depend on a newer binutils on [arm armel]. Add -mlong-calls to + gcc's flags. + * gen_contents_index reintroduced, this time as a perl script. + * Added /usr/share/ghc6-doc/ghc-$VERSION/desc/ for copies of package + conf info in -doc packages. + * Added a preinst for ghc6, to remove a package.conf file from a removed + but not purged old version. + + -- Kari Pahula Mon, 18 May 2009 22:18:18 +0300 + +ghc6 (6.10.1+dfsg1-13) unstable; urgency=low + + * Haddock again just a B-D-I, now with (>= 2.4.1-4). + * Patched compiler/utils/Binary.hs to store Ints as Int32s on 64 bit + arches, too. + * Put .haddock files back to ghc6-doc. + + -- Kari Pahula Wed, 25 Feb 2009 05:53:48 +0200 + +ghc6 (6.10.1+dfsg1-12) unstable; urgency=low + + * Put haddock in Build-Depends on [i386 amd64 sparc powerpc mips mipsel + s390 kfreebsd-i386]. + + -- Kari Pahula Sat, 21 Feb 2009 14:08:08 +0200 + +ghc6 (6.10.1+dfsg1-11) unstable; urgency=low + + * Put .haddock files in ghc6, not ghc6-doc. + * Don't call ghc-pkg in a loop in ghc6-doc's trigger, use perl instead. + * Don't remove packages.conf on upgrade from one 6.10.1+dfsg1 version to + another. + * Generate haddock index in ghc6-doc's postinst configure, too. + + -- Kari Pahula Sat, 21 Feb 2009 10:00:19 +0200 + +ghc6 (6.10.1+dfsg1-10) unstable; urgency=low + + * chmod +x debian/mk_provided_substvars before calling it. + + -- Kari Pahula Tue, 17 Feb 2009 19:03:49 +0200 + +ghc6 (6.10.1+dfsg1-9) unstable; urgency=low + + * Made ghc6-doc's postinst only call haddock on haddock files that are + actually installed. + + -- Kari Pahula Tue, 17 Feb 2009 12:52:37 +0200 + +ghc6 (6.10.1+dfsg1-8) unstable; urgency=low + + * Moved xsltproc, docbook-xsl, docbook-xml back as Build-Depends. + + -- Kari Pahula Tue, 17 Feb 2009 09:52:55 +0200 + +ghc6 (6.10.1+dfsg1-7) unstable; urgency=low + + * Set build deps related to doc building as Build-Depends-Indep. + * Set BUILD_HADDOCK_DOCS at build time, depending on haddock's + presence. See debian/rules for rationale. + * Replaced /usr/lib/ghc6-doc/gen_contents_index with a symlink to + /bin/true. + * Amended ghc6-doc's "postinst triggered" to perform what g_c_i did. + * Added GhcDebugged=YES and some other flags to build.mk on ia64 and hppa. + * Moved provided-{dev,prof,doc} generation to its own script and catch + errors in it. (Closes: #514085, #514086) + * Further cleanups to debian/rules. + + -- Kari Pahula Mon, 16 Feb 2009 12:28:56 +0200 + +ghc6 (6.10.1+dfsg1-6) experimental; urgency=low + + * This time actually change the build on ia64 to be unregisterised. + * Dropped ghc6's dependency on haskell-utils. + * Removed calls to haskell-utils from prerm and postinst. + * Build haddock docs on i386 and amd64. (Closes: #514088) + + -- Kari Pahula Thu, 05 Feb 2009 14:14:01 +0200 + +ghc6 (6.10.1+dfsg1-5) experimental; urgency=low + + * Add libffi-dev as a dependency for ghc6. (Closes: #513289) + * Replaced libreadline5-dev with libedit-dev from ghc6's deps. + * Don't add any extra flags to GhcRTSWays build variable. + * Build a registerised build on kfreebsd-i386. (Closes: #513198) + * Build an unregisterised build on ia64. + + -- Kari Pahula Wed, 28 Jan 2009 09:23:11 +0200 + +ghc6 (6.10.1+dfsg1-4) experimental; urgency=low + + * Add pkg-config as a build dep. + * Explicitly build an unregisterised version of the compiler on other + arches but i386, amd64, powerpc, ia64. (Closes: #512827) + * Remove --relax altogether from ia64's ld flags. + + -- Kari Pahula Mon, 26 Jan 2009 15:10:54 +0200 + +ghc6 (6.10.1+dfsg1-3) experimental; urgency=low + + * Again, use the same build options for all arches and just use what + arch-specific exceptions upstream provided. + + -- Kari Pahula Fri, 23 Jan 2009 08:24:45 +0200 + +ghc6 (6.10.1+dfsg1-2) experimental; urgency=low + + * Patched the build system to use haddock from /usr/bin/, not build its + own. + * Disabled building haddock docs for this version. + * Re-enabled some of 6.8.2's build options for non-i386, non-amd64. + * Patch compiler/Makefile's ia64 build options; + s/--ld-option=-Wl,--relax/--ld-option=--relax/. + + -- Kari Pahula Wed, 21 Jan 2009 23:33:11 +0200 + +ghc6 (6.10.1+dfsg1-1) experimental; urgency=low + + * New upstream release (Closes: #495126) + * Change the calling conventions for unboxed tuples slightly. + (Closes: #365497) + * Better documentation for swapMVar. (Closes: #405717) + * Don't change code in error messages. (Closes: #499137) + * Improve error reporting for 'deriving' (Closes: #499216) + * Better error message when -XRankNTypes is missing. (Closes: #499217) + * ghc-pkg respects --global with 'field' option. (Closes: #510499) + * Repackaged to remove a copy of GNU MP library. + * Enable building the stage2 compiler on all architectures. + * Added information about libffi (which is included with GHC) to + debian/copyright. + * Manage changes to the source with quilt. + * Link against the system's libffi and add libffi-dev as a build + dependency. + * Build-dep on haddock >= 2.4.1-1. + * Build-dep on libedit-dev, removed build-dep on libreadline-dev. + * Patched gen_contents_index: fixed the case when not run inplace; trac + #2764 + * Patched libraries/base/Data/Data.hs: use Prelude.(,,) for + tuple3DataType; trac #2750 + * Added a trigger to ghc6-doc for /usr/share/doc/ghc6-doc/libraries to + run gen_contents_index. (Closes: #506568) + + -- Kari Pahula Mon, 19 Jan 2009 12:03:16 +0200 + +ghc6 (6.8.2dfsg1-1) unstable; urgency=medium + + * Repackaged the upstream tarball to remove a copy of GNU MP library + with GFDLed docs w/ invariant sections. (Closes: #511756) + + -- Kari Pahula Thu, 15 Jan 2009 07:42:47 +0200 + +ghc6 (6.8.2-7) unstable; urgency=medium + + * Build-Depend on hurd as an alternative to procps. (Closes: #481343) + * Added AC_SYS_LARGEFILE to libraries/unix/configure.ac and ran + autoreconf. (Closes: #500407) + + -- Kari Pahula Sun, 28 Sep 2008 10:32:20 +0300 + +ghc6 (6.8.2-6) unstable; urgency=medium + + * New maintainer. + * Made the perl script driver/split/ghc-split not use the obsolete $* + var (Closes: #489157) + * Copied libraries/unix/System/Posix/Resource.hsc and + libraries/base/include/HsBase.h from 6.8.3 to fix issues with + setResourceLimit. (Closes: #491909) + + -- Kari Pahula Wed, 03 Sep 2008 23:41:18 +0300 + +ghc6 (6.8.2-5) unstable; urgency=low + + * Don't build template-haskell if we're not building GHCi. + The package is largely useless without GHCi, and some of the buildds + were having trouble building template-haskell. We'll need to fix + this some other way if GHCi is to be available on every arch, though... + + -- Ian Lynagh (wibble) Thu, 01 May 2008 12:32:13 +0000 + +ghc6 (6.8.2-4) unstable; urgency=low + + * Small wibbles to debian/watcher.sh. + * Add a build-dep on procps (debian/watcher.sh runs ps). + + -- Ian Lynagh (wibble) Wed, 26 Mar 2008 17:12:18 +0000 + +ghc6 (6.8.2-3) unstable; urgency=low + + * Every 10 minutes, print any "ps ux" lines that mention gcc or ghc. + According to folks on IRC, this is standard practice. It means that + we don't have to worry about security buildds having different + timeouts to the normal builders. + * Apply upstream patch: + FIX #2073: Don't add empty lines to GHCI's history + Ian Lynagh **20080224143256 + Closes: #461170. + + -- Ian Lynagh (wibble) Mon, 24 Mar 2008 22:09:02 +0000 + +ghc6 (6.8.2-2) unstable; urgency=low + + * Apply upstream patch: + Tweak the splitter + Ian Lynagh **20080116195612 + We were generating a label ".LnLC7", which the splitter was confusing + with a literal constant (LC). The end result was the assembler tripping + up on ".Ln.text". + Closes: #466262. + * Make an hpc symlink in /usr/bin. Closes: #461146. + * Add a dep and build-dep on gcc >= 4:4.2 as we need the + -fno-toplevel-reorder flag. Closes: #461332. + * Put the right upstream source URL in debian/copyright. + Closes: #465058. + + -- Ian Lynagh (wibble) Wed, 20 Feb 2008 17:32:52 +0000 + +ghc6 (6.8.2-1) unstable; urgency=low + + * Strengthen haddock dep and build-dep to 0.8-2 as we need the + version that makes compatible files on 32 and 64 bit arches. + Closes: #433251. + * Add a build-dep on hscolour. We now use it when making the + documentation, so the haddock docs link to syntax highlighted + source. + * Remove the libsrc package. ghc6-doc now includes the sources anyway. + Closes: #432706. + * gen_contents_index is now provided by the upstream install, so we + no longer ship our own copy. However, we do have to move it into + /usr/lib rather than /usr/share/doc. + * Remove the stat2resid slave of the GHC symlink, as stat2resid + no longer exists. Closes: #432715. + * We set bindir, docdir, htmldir, dvidir, pdfdir and psdir in + mk/build.mk rather than with configure flags, as the way configure + currently works means they can't be set relative to other variables + if set with configure flags. + * We no longer pass --datadir to configure; we used to use this to + get the docs in the right place. + * When doing the install step, we now use DESTDIR rather than prefix + to override where the files go. + * We now need to set HADDOCK_DOCS=YES in mk/build.mk in order to get the + haddock docks built. + * Removed "html/" from the documentation path in ghc6-doc.postinst, + ghc6-doc.prerm and ghc6-doc.doc-base.users-guide. + * Use "[ ! -f mk/config.mk ] ||" to guard "make distclean" rather than + ignoring all errors from it. + * Use ${binary:Version} rather than ${Source-Version} to specify the + dependency of ghc6-prof on ghc6. + * All the libraries now install LICENSE files, so we remove them after + the install step. + * Follow change in man path from /usr/man to /usr/share/man. + * lintian thinks that Cabal's Distribution/License.hi is an extra + licence file, so add a lintian override. + + -- Ian Lynagh (wibble) Tue, 18 Dec 2007 22:05:22 +0000 + +ghc6 (6.6.1-2) unstable; urgency=low + + * ghc6-doc now depends on haddock as it needs to run + gen_contents_index in postinst. Closes: #423561. + * ghc6-doc and ghc6-libsrc depend on ${shlibs:Depends}, ${misc:Depends}. + + -- Ian Lynagh (wibble) Tue, 15 May 2007 14:12:53 +0000 + +ghc6 (6.6.1-1) unstable; urgency=low + + * New upstream version. + * Policy 3.7.2 compliant. + * ghc6-doc provides libghc6-PACKAGE-doc for the various packages it + has docs for. + * Tweaked debian/rules to handle changes. + * Remove build-dep on xutils; we no longer use lndir (which has now + moved to xutils-dev anyway!) + * Remove build-dep on cpio; we now let dh_install do all the moving + rather than doing it ourselves with cpio. + * Remove build-dep on time; no longer used. + * Remove build-deps on libx11-dev, libsm-dev, libice-dev, libxmu-dev, + libxi-dev; the X11 stuff is now in separate Cabal packages. + * Manpages generation script removed s it is now in upstream. + * Pass --datadir to ./configure rather than "make install-docs" + so the haddock fields in package.conf get set correctly. + Closes: #417325. + * In mk/config.mk.in, don't put ghc-6.6.1/ on the end of datadir. + * Use $(INSTALL) rather than hardcoding /usr/bin/install everywhere. + * Don't generate or install library HTML doc contents and index. + * Do install libraries-footer.txt, libraries-header.txt and the various + prologue.txt's. + * Install a gen_contents_index script for generating the haddock + contents and index. + * Add -X.haddock to the dh_compress call to make sure the .haddock + files aren't getting compressed. + * Give ghc6-doc a postinst to generate the haddock contents and index + when it is installed. + * Give ghc6-doc a prerm to clean up the above. + * Revert these earlier changes as we now have haddock 0.8: + * Remove the --source-module argument to haddock in mk/package.mk + as haddock 0.7 doesn't support it. + * Re-add the -optP-P when generating .raw-hs files as haddock 0.7 + doesn't cope with line numbers in the files. + + -- Ian Lynagh (wibble) Sun, 29 Apr 2007 00:47:00 +0100 + +ghc6 (6.6-3) unstable; urgency=low + + * Add arm to the list of arches that have ghc6. + * Add arm to the arches in compiler/cmm/PprC.hs for which + loads and stores to be printed in a way that works if they are not + aligned as the arch wishes. + * For arm's odd floating point numbers: + * Add FPTOOLS_FLOAT_WORD_ORDER_BIGENDIAN test to aclocal.m4 + * Call FPTOOLS_FLOAT_WORD_ORDER_BIGENDIAN after AC_C_BIGENDIAN + in configure.ac. + * Extra section for the FPTOOLS_FLOAT_WORD_ORDER_BIGENDIAN test in + configure. + * Add "#undef FLOAT_WORDS_BIGENDIAN" to mk/config.h.in. + * Add FLOAT_WORDS_BIGENDIAN cases to rts/StgPrimFloat.c. + * Apply the following upstream patch, to fix potential problems + compiling ghc6 on amd64 (and possibly others): + + Fri Oct 20 16:39:25 BST 2006 Simon Marlow + * In hashExpr, use Word32 rather than relying on wrapping behaviour of Int + Fixes #952, as it turns out. + + When compiling via C, we are at the mercy of C's undefined behaviour + with respect to overflow of signed integer operations, and this was + biting us here. + + Perhaps we should always add the -fwrapv flag to gcc, but since + Haskell doesn't define overflow on Int either, it seemed the right + thing to do to fix this code anyway. + + -- Ian Lynagh (wibble) Sun, 22 Oct 2006 22:36:32 +0000 + +ghc6 (6.6-2) unstable; urgency=low + + * Add mips and mipsel to the list of arches that have ghc6. + * Add mips and mipsel to the arches in compiler/cmm/PprC.hs for which + loads and stores to be printed in a way that works if they are not + aligned as the arch wishes. + * Removed the -static flag for mips from compiler/main/DynFlags.hs. + + -- Ian Lynagh (wibble) Mon, 16 Oct 2006 14:20:08 +0100 + +ghc6 (6.6-1) unstable; urgency=low + + * New upstream version. + * Drop ghc6-hopengl package as HOpenGL is now split off from the + GHC core. + * Removed: + * ghc6-hopengl.README.debian + * ghc6-hopengl.examples + * ghc6-hopengl.postinst.in + * ghc6-hopengl.prerm.in + * Removed opengl examples. + * debian/scripts.mk no longer makes: + * debian/ghc6-hopengl.postinst + * debian/ghc6-hopengl.prerm + * Removed all opengl-related commands from debian/rules. + * Drop build-deps on + xlibmesa-gl-dev, libglu1-xorg-dev | libglu-dev, libglut3-dev + now we don't build the OpenGL libs. + * Added note to manpage that ghci is not yet available on all arches. + * Add ppc64 to the list of arches that have ghc6. Closes: #375623. + * Update locations of README and ANNOUNCE in ghc6.docs. + * Don't include ghc/mk/version.mk in debian/scripts.mk as it no longer + exists. Instead, get ProjectVersion with some shell magic. + * Don't include ghc/mk/version.mk in debian/scripts.mk as it no longer + exists. Instead, pass $(ProjectVersion) in from debian/rules. + * Remove mk/build.mk before we start filling it so the commands can be + more symmetric. + * Don't build the threaded RTS except on x86/amd64. + * Don't try to link ghc6 with the threaded RTS except on x86/amd64. + * Remove debian/test-build before creating it, so we can restart + builds part-way through without them falling over. + * Various paths in debian/rules lose their ghc/ prefix. + * Clean up debian/test-build/ after doing the test. + * hslibs no longer exists, so remove everything relating to it in + debian/rules. + * Remove register declarations from rts/StgCRun.c that break the + unregisterised build on alpha. + * Add to compiler/cmm/PprC.hs an option for loads and stores to be + printed in a way that works if they are not aligned as the arch + wishes. Enable this option for alpha. + * Remove the --source-module argument to haddock in mk/package.mk + as haddock 0.7 doesn't support it. + * Re-add the -optP-P when generating .raw-hs files as haddock 0.7 + doesn't cope with line numbers in the files. + + -- Ian Lynagh (wibble) Thu, 12 Oct 2006 01:22:24 +0000 + +ghc6 (6.4.2-2) unstable; urgency=low + + * Have ghc-pkg not create ~/.ghc when it doesn't need to, and return + the empty package file when trying to read a package file that + doesn't exist. Closes: #375166, #375188. + + -- Ian Lynagh (wibble) Sat, 24 Jun 2006 09:41:01 +0000 + +ghc6 (6.4.2-1) unstable; urgency=low + + * New upstream release. Closes: #369947. + * Add --nonet to XSLTPROC_OPTS. + * Add GhcWithInterpreter=NO on arches we don't build registerised + due to http://hackage.haskell.org/trac/ghc/ticket/631 + + -- Ian Lynagh (wibble) Mon, 19 Jun 2006 22:43:02 +0100 + +ghc6 (6.4.1-2.1) unstable; urgency=high + + * Non-maintainer upload. + * Add docbook-xml to build-dep (Closes: #356015). + + -- Luk Claes Sat, 25 Mar 2006 18:43:52 +0100 + +ghc6 (6.4.1-2) unstable; urgency=low + + * Due to problems with xmltex's uninstallability and its long-standing + bugs with lists rendering some docs unbuildable: + * Set XMLDocWays to "html" in debian/rules, rather than "html dvi ps". + * Remove build-deps on jade, docbook-utils, xmltex, docbook-xml. + * Change ghc6-hopengl's dep on "libc6-dev" to + "libc6-dev | libc6.1-dev | libc-dev" + * Fix building cabal packages that build executables with HS-Source-Dir. + Closes: #337909. + * Use "tail -n +2" rather than the deprecated "tail +2" in debian/rules. + Closes: #339606. + * On the list of arches we build registerised: + * Add amd64. Closes: #354872. + * Remove sparc (it has bitrotted). + List now reads "i386 amd64". + * Remove ghc6.README.Debian (appeal for registerised ports). The problems + when they bitrot outweigh the advantages IMO, at least until we have a + testsuite we can run when building. + * Apply fix for ghci failing to start ("Unable to mmap( MAP_FIXED ) for + Jump Islands") from Ryan Lortie. Closes: #343428. + * Delete ".SECONDARY:" from mk/suffix.mk as make >3.80 was taking + forever due to bug #346248. Closes: #348633. + * Changed xlibs-dev build-dep to: + libx11-dev, libsm-dev, libice-dev, libxmu-dev, libxi-dev. + Closes: #346752. + * Add "GhcWithNativeCodeGen=NO" to mk/build.mk when we are building + unregisterised. + + -- Ian Lynagh (wibble) Fri, 03 Mar 2006 00:32:06 +0000 + +ghc6 (6.4.1-1) unstable; urgency=low + + * New upstream release. Closes: #329322. + * Relax the libgmp3-dev build-dep to make backporting easier. + * Don't force using gcc-3.3 to build; drop gcc-3.3 build-dep. + * Apply patch to add support for kfreebsdgnu to configure(.ac) and the + mangler. Closes: #332977. + * Add kfreebsd-i386 to ghc6_arches. + * Add missing deps on libx11-dev, libsm-dev, libice-dev, libxmu-dev, + libxi-dev, libc6-dev to ghc6-hopengl. Closes: #317069. + * Update (build-)dep xlibmesa-glu-dev to libglu1-xorg-dev | libglu-dev. + * Standards version 3.6.1 -> 3.6.2. + * Upstream fixed a panic to give a sensible error message. + Closes: #319294. + + -- Ian Lynagh (wibble) Fri, 14 Oct 2005 10:44:34 +0000 + +ghc6 (6.4-4.1) unstable; urgency=low + + * Non-maintainer upload. + * C++ ABI transition: Relink against new libgmp3c2 package. + This will require a manual bootstrapping on each arch since ghc6 + build depends on itself and the new and old version of gmp3 + conflict with each other. (Closes: #319222) + - Versioned build dependency on libgmp3-dev (>= 4.1.4-6) + * Build using gcc-3.3 since this version doesn't build/work using 4.0 + and a new upstream version that fixes it isn't available yet. + + See instructions in debian/bootstrap-extracted on how to build this. + + -- Kurt Roeckx Wed, 31 Aug 2005 19:08:22 +0200 + +ghc6 (6.4-4) unstable; urgency=low + + * Use &(arr->payload) instead of BYTE_ARR_CTS(arr) in Adjustor.c on + ia64 as we no longer have the definition of BYTE_ARR_CTS to hand. + * Use ASSIGN_DBL and PK_DBL in generated C code from CMM code to avoid + unaligned access SIGBUSes on some arches. Closes: #309025. + * Use the stage2 ghc-inplace when checking "hello world" works. + * Build-dep on xmltex, docbook-xsl and docbook-xml. + * Set XMLDocWays rather than SGMLDocWays. Closes: #309016. + * Disable dvi and ps docs as they don't build. + * Remove ps and dvi sections from debian/ghc6-doc.doc-base.users-guide. + + -- Ian Lynagh (wibble) Fri, 20 May 2005 12:42:52 +0000 + +ghc6 (6.4-3) unstable; urgency=low + + * Removed powerpc from the list of arches to do a registerised build with + object splitting as there are bootstrapping issues from earlier GHCs. + * Change a stray "6.4" to $(ProjectVersion) in debian/rules + * Fix "SOURCE:" lines in {pre,post}{inst,rm}.in files. + + -- Ian Lynagh (wibble) Wed, 04 May 2005 17:07:08 +0100 + +ghc6 (6.4-2) experimental; urgency=low + + * Don't create user package.conf if not modifying. + * Change "#ifdef darwin_REGS" to "#if darwin_REGS" in + ghc/includes/MachRegs.h to fix build on powerpc (from upstream CVS). + * Add powerpc to the list of arches to do a registerised build with + object splitting. + * Fix checkFEDArgs in ghc/compiler/typecheck/TcForeign.lhs so it compiles + again. + * Remove OpenGL and GLUT packages from package.conf.shipped. + Have the postinst/prerm add/remove them. + * ghc6-hopengl provides libghc6-{opengl,glut}-{dev,prof} + * Other exposed libraries are provided as libghc6-foo-dev by ghc6 and + libghc6-foo-prof by ghc6-prof. + + -- Ian Lynagh (wibble) Mon, 21 Mar 2005 03:26:35 +0000 + +ghc6 (6.4-1) experimental; urgency=low + + * New upstream release; just for experimental for now. + * Remove xmlise-flags.sgml as upstream now ships flags.xml. + * Rejig how files are put in the right packages to follow upstream changes. + * Separate build target into build and install. + * No longer allow ghc4 or ghc5 to be used for building as they are no longer + supported. + * Handle /usr/bin/ghc6 et al. and the alternatives without the 6 suffix + better. + * Add a /usr/bin/runhaskell alternative, priority 8600000600. + + -- Ian Lynagh (wibble) Sun, 13 Mar 2005 04:25:20 +0000 + +ghc6 (6.2.2-3) unstable; urgency=low + + * Backport runghc from CVS. + * Build-dep prefers libreadline5-dev rather than libreadline4-dev. + * Compiled with libreadline5-dev. Closes: #291126. + * Remove package.conf{,.old} when changing to a different upstream + version as well as when purging. Closes: #277606. + + -- Ian Lynagh (wibble) Fri, 28 Jan 2005 01:55:31 +0000 + +ghc6 (6.2.2-2) unstable; urgency=low + + * Add build-depends on autotools-dev. + + -- Ian Lynagh (wibble) Wed, 20 Oct 2004 14:40:47 +0100 + +ghc6 (6.2.2-1) unstable; urgency=low + + * Add "Modes of operation" flags to flag reference in the users guide, + and hence to the automatically generated manpage. + * Create /usr/bin/ghc-pkg6. + * Revert changes to support mips/mipsel. They need changes in + glibc/gcc to work, supported by different changes in ghc. + * Support the spirit of noopt and nostrip values of DEB_BUILD_OPTIONS + * Make symlinks for /usr/bin/{ghc,ghc-pkg,ghci}-$version into + /usr/lib/ghc-$version/bin/. + * Add manpage symlinks for {ghc,ghci}-$version. + * Bump Standards-Version to 3.6.1. + * Remove mention of threaded packages from the manpage as they no + longer exist. + * Add grep-dctrl to build-dep list and use grep-status to build a + depends line for the set of installed packages providing + libreadline-dev (should have cardinality 1). + Replaced libreadline4-dev dependency with ${readline}. + Switch order of libreadline4-dev and libreadline-dev in build-deps + so the concrete package is first. + * Change how configure/config.sub/config.guess are handled in line + with /usr/share/doc/autotools-dev/README.Debian.gz. + * Added varfile /usr/lib/haskell-utils/ghc6_vars. + * Remove docs/building/building.out and + ghc6-6.2.2/docs/docbook-cheat-sheet/docbook-cheat-sheet.out when + cleaning. + + -- Ian Lynagh (wibble) Tue, 19 Oct 2004 18:12:55 +0000 + +ghc6 (6.2.1-5) unstable; urgency=low + + * Join build-deps onto a single line. + * Eliminate {,} bashisms in debian/rules. + * Build-dep on xlibs-dev for building the X11 package. + * Additionally build the RTS the following ways: + debug_p thr_debug thr_debug_p + (which, together with those done by default, gives us all ways). + * Install initial /usr/lib/ghc-$version/package.conf as + /usr/lib/ghc-$version/package.conf.shipped and copy it to + /usr/lib/ghc-$version/package.conf in postinst if it doesn't exist. + This means other library information isn't lost across upgrades. + * Remove /usr/lib/ghc-$version/package.conf{,.old} in postrm purge. + + -- Ian Lynagh (wibble) Sat, 07 Aug 2004 12:03:31 +0000 + +ghc6 (6.2.1-4) unstable; urgency=low + + * Remove IA64 from the unregisterised arches list to try to fix the + unaligned accesses. + * Add -mlong-calls flag for mips* in both DriverFlags and SRC_CC_OPTS + in mk/config.mk.in. Fixes problem where a step in gdb on a call to + mp_set_memory_functions lands us in the middle of Show.hc. + + -- Ian Lynagh (wibble) Thu, 08 Jul 2004 17:19:06 +0000 + +ghc6 (6.2.1-3) unstable; urgency=low + + * Up gcc build-dep to "gcc-3.3 (>= 1:3.3.4)" to fix + "charToUtf8 1884139800" panic when compiling + 'module Foo where foo 5 = 6'. + + -- Ian Lynagh (wibble) Fri, 18 Jun 2004 18:09:15 -0400 + +ghc6 (6.2.1-2) unstable; urgency=low + + * Change the mangler to allow a tab before .section on sparc. + Fixes a problem which shows up as symbols not being made global + so not being defined when compiling with gcc >= 3.something. + + -- Ian Lynagh (wibble) Tue, 13 Apr 2004 12:26:41 +0000 + +ghc6 (6.2.1-1) unstable; urgency=low + + * New upstream (stable branch) release. + * Don't use -static on any arches (remove per-arch "-static"s in + ghc/compiler/main/DriverFlags.hs). + * Remove threaded packages (functionality now handled by main packages). + * We now depend and build-depend on "gcc-3.3 (>= 1:3.3.3-2)" which should + give correct code on all arches. + + -- Ian Lynagh (wibble) Tue, 23 Mar 2004 20:47:13 +0000 + +ghc6 (6.2-3) unstable; urgency=low + + * More HOpenGL example tweaking. + + -- Ian Lynagh (wibble) Sat, 24 Jan 2004 20:16:57 +0000 + +ghc6 (6.2-2) unstable; urgency=low + + * Apply fix so OpenGL docs build when the compiling compiler doesn't + support OpenGL. + * Tweaked HOpenGL example, including suggestions from Sven Panne (HOpenGL + author). + + -- Ian Lynagh (wibble) Wed, 21 Jan 2004 23:57:22 +0000 + +ghc6 (6.2-1) unstable; urgency=low + + * New upstream version. + * ghc/docs/users_guide/flags.sgml is now xmlised by a script rather + than by hand. + * Added an HOpenGL example. + * Removed build dependency on happy (it has been pre-run on the tarball). + * Build dependency on haddock is now >= 0.6 (we need some of its new + options). + * For the normal ghc6 deb pass GhcLibsWithOpenGL=NO GhcLibsWithGLUT=NO + rather than GhcLibsWithHOpenGL=NO + * Add config.status and libraries.txt to CLEAN_FILES and a rule to + remove the HTML directory for the extraclean target in + libraries/Makefile + + -- Ian Lynagh (wibble) Tue, 16 Dec 2003 18:09:11 +0000 + +ghc6 (6.0.1-10) unstable; urgency=low + + * Change #ifdef IN_STG_CODE to #if IN_STG_CODE in the alpha section of + ghc/includes/TailCalls.h + * Add __muldi3 to RTS_LIBGCC_SYMBOLS in ghc/rts/Linker.c (ghci was + complaining about it being unknown on sparc). + * Provide a /usr/bin/haskell-compiler alternative. + * Depend on haskell-utils + * Register /usr/bin/ghc6 and ghc6 with haskell-utils + * Register /usr/bin/ghc6-threaded and ghc6-threaded with haskell-utils + * Tidy up postinst/prerm. + * Add ghc6-threaded as an alternative for /usr/bin/ghc (priority 590, + i.e. between ghc5 and ghc6). + + -- Ian Lynagh (wibble) Sat, 11 Oct 2003 11:07:00 +0000 + +ghc6 (6.0.1-9) unstable; urgency=low + + * Move the TailCalls.h include in ghc/includes/Stg.h below the config.h + include. Fixes the undefined reference warnings in -8. Closes: #211430. + + -- Ian Lynagh (wibble) Wed, 17 Sep 2003 22:04:57 +0000 + +ghc6 (6.0.1-8) unstable; urgency=low + + * If we are not on an i386, sparc or ia64 machine then do an + unregisterised build. + * Unregisterised builds should be possible for any architecture, so + set the architecture to any. + * Add s390, m68k, mips, hppa, arm and powerpc Linux to configure{,.in} + * Write a README.Debian about the registerised/unregisterised deal. + * Change a couple of machine/foo.h includes on alpha to asm/foo.h + * Add the x86-64 hack from upstream to MBlock.h, generalising it to all + 8-bit arches. + * Add -optc-mbig-switch to SRC_HC_OPTS in libraries/OpenGL/Makefile + on hppa (fixes an assembler failure for at least + Graphics/Rendering/OpenGL/GL/QueryUtils.p_o). + * Tweak ghc/includes/TailCalls.h so it only steals a register for STG + code. + * Move the include of TailCalls.h in ghc/includes/Stg.h up so it is + before all the procedure definitions. + * Change an IF_OS_darwin to an IF_ARCH_powerpc in + ghc/compiler/nativeGen/MachCode.lhs + + -- Ian Lynagh (wibble) Tue, 16 Sep 2003 20:40:43 +0000 + +ghc6 (6.0.1-7) unstable; urgency=low + + * Add ia64 to Architecture field of the packages. + * Apply various IA64 fixes from upstream CVS. + + -- Ian Lynagh (wibble) Wed, 10 Sep 2003 13:47:56 +0000 + +ghc6 (6.0.1-6) unstable; urgency=low + + * We need docbook-utils even for a binary-only build as the build fails + if it can't build the documentation. + + -- Ian Lynagh (wibble) Mon, 08 Sep 2003 00:34:51 +0000 + +ghc6 (6.0.1-5) unstable; urgency=low + + * Add jade to the build-deps. + + -- Ian Lynagh (wibble) Sun, 07 Sep 2003 10:11:54 +0000 + +ghc6 (6.0.1-4) unstable; urgency=low + + * Remove unnecessary flex build-dep and comment it out of + configure{,.in}. + * Resurrect the "SGMLDocWays := html dvi ps" line in build.mk that + got lost. + * Do a test compilation+run after building to make sure things aren't + *completely* screwed up. + * make distclean rather than maintainer-clean + + -- Ian Lynagh (wibble) Sat, 06 Sep 2003 11:07:08 +0000 + +ghc6 (6.0.1-3) unstable; urgency=low + + * Put sparc-unknown-linux entry in configure and configure.in + * Add sparc Linux support to ghc/driver/mangler/ghc-asm.lprl + * Build depend on gcc-2.95 [sparc] + * Change ghc6's dependency on gcc to ${gcc}. + This is set to either gcc-2.95 (if we are on a sparc) or gcc + (otherwise) in debian/ghc6.substvars + * Removed quotes around ${WithGhc-ghc} in configure and aclocal.m4 so + arguments can be given (e.g. to point at a certain gcc) with the + flag + * Pass flags giving the location of ghc and, in the case of sparc, + gcc to ./configure + * Added sparc to Architecture field of the packages + * touch configure early in the build and clean targets to stop the + build system trying to regenerate it with autoconf. + + -- Ian Lynagh (wibble) Thu, 14 Aug 2003 07:24:18 -0400 + +ghc6 (6.0.1-2) unstable; urgency=low + + * Ask for the correct name to be removed by update-alternatives + * Have manpage variables substituted + * Fix problem with files not getting installed into ghc6-libsrc package + * Put ghc/{README,ANNOUNCE} in /usr/share/doc/ghc6 + + -- Ian Lynagh (wibble) Sat, 02 Aug 2003 20:27:44 +0000 + +ghc6 (6.0.1-1) unstable; urgency=low + + * New upstream version + * Now policy 3.6.0 compliant + * Fixed manpage alternatives to create a manpage for ghc, not ghc6. + * Added manpages for ghci, ghci6 and the -threaded variants of + these and ghc. Manpage now also mentions ghci. + * Reinstate the -libsrc package. + * Remove redundant build dependencies on autoconf and autotools-dev + * Comment out fix for compiling GL stuff with older GHCs as it really + uses the in-place compiler + * Have all packages (except ghc6-doc due to issues with an empty depends + line) depend on ${shlibs:Depends}, ${misc:Depends} + * Create a /usr/bin/ghc6 and /usr/bin/ghci6 + * Also build a threaded-rts binary and make various related -threaded files + and symlinks. Put in a separate package (ghc6-threaded-rts) due to size. + + -- Ian Lynagh (wibble) Wed, 30 Jul 2003 12:37:21 +0000 + +ghc6 (6.0-2) unstable; urgency=low + + * Fix GET_PROC_ADDRESS properly so opengl libraries can be used (from + upstream CVS) + * GLUT libraries are also installed in the hopengl deb + * Update build-depends and depends to libglut3-dev, xlibmesa-gl-dev + and xlibmesa-glu-dev from glutg3-dev and xlibmesa-dev. + * Require at least version 0.4.0 of haddock. + * Fix doc-base control file links. + * Policy 3.5.10 compliant. + * Create the hp2ps-ghc6.1 manpage correctly. Closes: #199786. + * Change glActiveTexture to glActiveTextureARB. ghci now loads with + the OpenGL and GLUT packages. + * Update build-depend on debhelper to >= 4. + * Correct "GHC5" to "GHC6" in the doc-base title. + + -- Ian Lynagh (wibble) Sun, 06 Jul 2003 14:42:40 +0000 + +ghc6 (6.0-1) unstable; urgency=low + + * New upstream version + * New maintainer, with the old maintainer's blessing + * changed package name to ghc6 + * Building process simplified as GHC's build system now handles multiple + stages itself + * Patches from upstream: + + Removed comments from cpp functions in a couple of source files to + counteract changes in 3.3 meaning they didn't compile + + Evil mangler tweaked to allow extra whitespace gcc 3.3 puts in + and for changes to generated assembly for _module_registered + + Rename "--list-packages-local" to "--list-local-packages" + * Added missing quotes to + libraries/OpenGL/Graphics/Rendering/OpenGL/GL/Extensions.hs + so it compiles + * Removed fptags as it doesn't have a clear licence; should probably + be in its own package anyway as I imagine it is equally useful with + any Haskell compiler + * Changed libraries/OpenGL/specs/enumerant to use this compiler rather + than the installed one; in particular this means that the profiling + libraries don't need to be installed + + -- Ian Lynagh (wibble) Sat, 07 Jun 2003 17:16:25 +0000 + +ghc5 (5.04.2-1) unstable; urgency=low + + * CVS Version from 2002-12-05 (tag: ghc-5-04-2) + + fix for inet_ntoa linking error (upstream) + (closes: Bug#164573) + + export TimeLocale constructor (upstream) + (closes: Bug#167647) + * implemented proper auto* handling (config.*, autoconf) + * added autotools-dev to build-deps, bumped needed autoconf version to + >= 2.52 + * removed cpio from Build-Deps (no longer needed) + * added man page for ghc + (closes: Bug#110037) + * added links for user_guide/user-guide.html and hslibs/book-hslibs.html + (closes: Bug#153795) + * necessary adjustments for debian_libraries_hopengl.dpatch + * libdir adjustments (always in sync with Debian package version now) + * added notes in ghc5-hopengl.README.Debian + * removed cygnus-stylesheets from Build-Deps-Indep + (closes: Bug#170112) + * moved ghcprof icons to /usr/share/ tree + (debian_ghcprof_datadir.dpatch) + * edited debian/copyright to make lintian shut up ("Upstream Author(s)") + * backport of "*_stub.o link failure" fix from ghc-5-04-branch + (debian_compManager_findstubs.dpatch) + (closes: Bug#171518) + + -- Michael Weber Sat, 7 Dec 2002 19:38:10 +0100 + +ghc5 (5.04-1) unstable; urgency=low + + * CVS Version from 2002-07-15 (tag: ghc-5-04) + (closes: Bug#153020) + + spurious ghci dynamic linkage error solved by upstream update + (closes: Bug#151126) + * added Depends: libreadline4-dev (though I don't like it + and it just covers a technical issue), because too many people + get bitten by this :( + (closes: Bug#134950) + * build process revamped + + much easier to understand/maintain (KISS) + (it's a build script, no need to be too fancy) + + support for full bootstrap builds (needed for buildds) + + moved source to upstream-ghc/ + + adjusted patches; must contain `upstream-ghc/' in + the path from now on (new source layout) + + uses shadow trees (lndir) + + added "-e noidref" to docbook2* tool calls, so that they + don't barf on missing ids (there are 2 currently) + + use upstream doc install mechanism now that it's usable + for Debian (slight changes in the dir layout, though) + + removed support for `debian/rules cvs-update' + + removed ghc5-libsrc package, now that decent library + docs start to pop up + + removed debian_build.dpatch (now debian/build.mk-stage*) + * renamed ghc4_ghc_includes_gmp.dpatch debian_ghc_includes_gmp.dpatch + because it's Debian specific + * added Build-Depends: haddock + * adjusted *.doc-base.* again to reflect new doc layout + (only ghc5-doc.doc-base.users-guide left) + * _really_ changed CVS/Root to :pserver:anoncvs@cvs.haskell.org:/cvs + this time (no idea what happened to the last changes) + * updated CVS checkout instructions in copyright + * updated upstream authors in copyright + * updated README.Debian to reflect changes + * fixed missing "sec-concurrent-haskell" SGML id + * added hasktags program to update-alternatives + * new package ghc5-hopengl (finally!) + (closes: Bug#116984) + * added Build-Depends: xlibmesa-dev, glutg3-dev (for HOpenGL) + + -- Michael Weber Fri, 19 Jul 2002 15:34:43 +0200 + +ghc5 (5.02.2-1) unstable; urgency=low + + * CVS Version from 2002-02-14 (tag: ghc-5-02-2) + (closes: Bug#133595) + * buggy Makefile which prevented building with make-3.77 fixed + by update + (closes: Bug#117883) + * The "You Asked For It" release =) + * _NOT_ the "I Solved All Problems" release + * changed CVS/Root to :pserver:anoncvs@cvs.haskell.org:/cvs + * updated copyright + * removed lib6-dev from Depends: (no longer necessary) + * docbook build-deps now: docbook-utils | cygnus-stylesheets + (closes: Bug#123180) + * added time to Depends: (lost during backporting potato stuff) + * added build-deps: xutils (for lndir), time (used by build process) + * added build-deps: devscripts (for debchange, thanks to + Peter Gammie) + * readline build-deps now: libreadline-dev | libreadline4-dev + * priority: extra -> optional (as requested from the ftpmasters) + * for the -prof package, section: libs -> devel (as requested from + the ftpmasters) + * spelling correction in control file (cpu -> CPU) + (closes: Bug#124668) + * removed getSocketOption patch + (ghc5_getSocketOption.dpatch) + * added index.html symlinks for html docs + * adjusted *.doc-base.* + * removed ghc5-doc.doc-base.hslibs (accessible via + the user's guide) + * bumped Standards-Version to 3.5.6.0 + + -- Michael Weber Thu, 14 Feb 2002 21:01:14 +0100 + +ghc5 (5.02-1) unstable; urgency=low + + * CVS Version from 2001-10-15 (tag: ghc-5-02-branch) + * adjusted debian_glafp-utils_docbook.dpatch + * typo in docs fixed + (closes: Bug#110038) + * added hotfix for getSocketOption b0rkage (already fixed in CVS) + (ghc5_getSocketOption.dpatch) + + -- Michael Weber Mon, 15 Oct 2001 19:59:43 +0200 + +ghc5 (5.00.2-1) unstable; urgency=low + + * CVS Version from 2001-07-16 (tag: ghc-5-00-2) + (closes: Bug#106756) + * upstream fix for .ghci problem + (closes: Bug#94739) + * removed patches which went into upstream + (ghc5_glitches.dpatch) + + -- Michael Weber Tue, 31 Jul 2001 10:54:45 +0200 + +ghc5 (5.00-2) unstable; urgency=low + + * added dependency on libc6-dev as a workaround + (ghci needs the libm.so link) + * adjusted ghc5_glitches.dpatch slightly + + -- Michael Weber Thu, 26 Apr 2001 15:07:04 +0200 + +ghc5 (5.00-1) unstable; urgency=low + + * CVS Version from 2001-04-11 (tag: ghc-5-00) + * changed package name to ghc5 + * some more reorganizations to prepare dual ghc4/ghc5 installation + * added some missing build-deps + * now using libgmp3(-dev) + * removed some obsolete patches + (ghc4_hclose_bug.dpatch,ghc4_signal_bug.dpatch) + * added some other patches + (ghc5_glitches.dpatch) + * updated build.mk-patch once more + * DH_COMPAT=2 + * added more docs (ffi-art) + * added support for CVS happy's + + -- Michael Weber Wed, 18 Apr 2001 00:19:35 +0200 + +ghc4 (4.08.1-4) unstable; urgency=low + + * first upload as proper maintainer + * changed email address to @debian.org + + -- Michael Weber Sun, 14 Jan 2001 01:56:05 +0100 + +ghc4 (4.08.1-3) unstable; urgency=low + + * unofficial version + * backported signal-bug patch from CVS trunk + (ghc4_signal_bug.dpatch) + + -- Michael Weber Tue, 10 Oct 2000 13:34:28 +0200 + +ghc4 (4.08.1-2) unstable; urgency=low + + * unofficial version + * backported hClose-bug patch from CVS trunk + (ghc4_hclose_bug.dpatch) + + -- Michael Weber Tue, 10 Oct 2000 13:33:56 +0200 + +ghc4 (4.08.1-1) unstable; urgency=low + + * !!NOTE!! + This version replaced aaronv's upload of 4.04.19990916-3 (thanks + to wli@debian.org for the sponsor upload). All versions in + between were never officially available on the debian servers. + * CVS Version from 2000-09-02 (4.08.1) + * official 4.08.1 version + * uncommented `cvs upd' commands (accidently commented) + * changed `cvs-update' target again (first step of upcoming + "experimental" support) + * updated build.mk-patch + * set.{ps,dvi} accidently were not copied into the package, + (fixed now) + + -- Michael Weber Mon, 25 Sep 2000 14:02:52 +0200 + +ghc4 (4.08.0-1) unstable; urgency=low + + * CVS Version from 2000-06-29 (4.08.0) + * this is a snap of the official 4.08 release candidate + * need (happy >= 1.7) from now on + * unset DOCBOOK_PREFIX in order to use installed db tools + * an installed ghc4-prof pkg. must have the same version as the + corresponding ghc4 pkg. + * added option `-k' to make when cleaning, so it won't stumble over + errors + * ghc now understands option '--numeric-version', which will be + supported in the upcoming unstable version anyway... + (ghc4_numeric_version.dpatch) + * sync'ed base documents in doc-base entries with reality + * rearranged `docs',`build' targets + * rearranged documentation to sync with upstream + + -- Michael Weber Mon, 3 Jul 2000 14:52:12 +0200 + +ghc4 (4.07.20000526-1) unstable; urgency=low + + * CVS Version from 2000-05-26 (4.07) + * update to ghc-4-07-branch + * disabled debian_glafp-utils_docbook.dpatch, because it's not + necessary on this branch + * !! UNRELEASED due to building problem !! + + -- Michael Weber Fri, 26 May 2000 20:33:32 +0200 + +ghc4 (4.07.20000523-1) unstable; urgency=low + + * CVS Version from 2000-05-23 (4.07) + * removed ghc4_docbook.dpatch (incorporated by upstream, finally :-)) + * removed ghc4_hslibs_tools_clean.dpatch (incorporated by upstream) + * removed ghc4_hslibs_util_clean.dpatch (incorporated by upstream) + * removed building of docbook (Debian does have a working docbook + environment) + (debian_glafp-utils_docbook.dpatch) + * added fptags to distribution (in a really q'n'd way) + * added debian/rules options (UN)PATCHOPTS, default is now + `PATCHOPTS = --ignore-whitespace --forward' + * added notes about debian/rules options to README.Debian + * adjusted build depends + * added more hints in README.debian + * !! UNRELEASED due to building problem !! + + -- Michael Weber Fri, 26 May 2000 20:02:20 +0200 + +ghc4 (4.07.20000504-1) unstable; urgency=low + + * CVS Version from 2000-05-04 (4.07) + * hslibs/utils/Readline_stub.p_o not cleaned + (ghc4_hslibs_util_clean.dpatch) + * added DrIFT, DtdToHaskell, Xtract as update-alternatives + + -- Michael Weber Mon, 8 May 2000 01:05:37 +0200 + +ghc4 (4.07.20000429-1) unstable; urgency=low + + * CVS Version from 2000-04-29 (4.07) + * removed ghc4_hslibs_util_clean.dpatch (solved by upstream) + * Main.hi not cleaned in hslibs/tools/* dirs + (ghc4_hslibs_tools_clean.dpatch) + * changed clean targets from `realclean' to `maintainer-clean' + (due to upstream change) + * !! UNRELEASED due to stage1 problems !! + + -- Michael Weber Sun, 30 Apr 2000 01:06:47 +0200 + +ghc4 (4.07.20000411-1) unstable; urgency=low + + * CVS Version from 2000-04-11 (4.07) + * removed ghc4_configure_readline.dpatch (incorporated by upstream) + * adjusted Build-depends (this version can only be build with GHC 4.06) + * `debian/rules patch' now doesn't try to apply patches, if they're + already applied + * added option `StripLibraries = YES' + * !! UNRELEASED due to stage2 problems !! + + -- Michael Weber Thu, 13 Apr 2000 00:37:29 +0200 + +ghc4 (4.07.20000202-1) unstable; urgency=low + + * CVS Version from 2000-02-02 (4.07) + * added target `cvs-update' (see README.Debian) + * replaced sgml-tools by cygnus-stylesheets in Build-Depends + * removed ghc4_hslibs_cstring.dpatch (incorporated by upstream) + * removed ghc4_ghc_mk.dpatch (incorporated by upstream) + * removed debian_sgml.dpatch (no longer necessary) + * use autoreconf instead of autoconf (in debian/rules.local) + * html docs back in action + * renamed doc-base ID ghc4-installation to ghc4-building + * YARP [Just Another Readline Patch]: doesn't find termcap + (ghc4_configure_readline.dpatch) + * Readline_stub--stamp was not removed on clean + (ghc4_hslibs_util_clean.dpatch) + * removed hardcoded DTD paths in docs/fptools-both.dsl + (ghc4_docbook.dpatch) + * added `docs' target + * `debian/rules clean' again checks for root priv. (cf. packaging#3.2.1) + * added build option `-split-objs' (produces smaller executables) + * added build option `GhcLibHcOpts = -O' (won't compile otherwise, because + of a compiler bug in 4.06) + + -- Michael Weber Thu, 3 Feb 2000 17:47:00 +0100 + +ghc4 (4.06.20000109-1) unstable; urgency=low + + * CVS version from 2000-01-09 (4.06) + * debian/rules clean doesn't check for root priv. any more + * removed emacs local variable (add-log-mailing-address) in changelog. + (closes: Bug#54515) + * references to `haskell-doc' in control and debian/*doc-base*. + (closes: Bug#52729) + * Arch back to `i386' only, although sparc should be possible, too (with + minor changes, really). (closes: Bug#52794) + * bumped Standards-Version to 3.1.0 + * introduced build dependencies + * removed ghc4_clean.dpatch (incorporated by upstream) + * removed ghc4_makefiles.dpatch (incorporated by upstream) + * removed ghc4_mk.dpatch (incorporated by upstream) + * removed ghc4_readline.dpatch (incorporated by upstream) + * removed ghc4_stat2resid.dpatch (incorporated by upstream) + * autoconf changes to rules, rules.local + * corrected bug in ghc/mk/paths.mk (wrt. variable referencing) + (ghc4_ghc_mk.dpatch) + * corrected bug in hslibs/CString.lhs (ghc4_hslibs_cstring.dpatch) + * added patch for sgmltools, removed {html,txt} because of problems + + -- Michael Weber Sun, 9 Jan 2000 15:45:36 +0100 + +ghc4 (4.05.19991206-1) unstable; urgency=low + + * CVS version from 1999-12-06 (4.05) + * removed distrib/Makefile-bin.in patch (solved by upstream) + * removed ghc/compiler/Makefile patch (solved by upstream) + * adjusted mk/target.mk patch + * moved $(libdir)/ghc/$(version) -> $(libdir)/ghc-$(version) (upstream-like) + * dropped users-guide.info (wasn't complete, anyway) + * added postscript and plain text docs + * heap size back to 120M :-( + * changed the build process heavily + * fixed `missing symbol in libHSutil*.a' (formerly libHSmisc*.a) bug + * some cleanup patches + * updated URLs to the Haskell report in control and debian/*doc-base* + + -- Michael Weber Wed, 8 Dec 1999 23:37:37 +0100 + +ghc4 (4.04.19990916-3local1) unstable; urgency=low + + * added warning message about fragile `clean' target + * cut down memory req's for building GHC (100M heap should be ok) + * Arch: field back to ``i386'' + + -- Michael Weber Tue, 30 Nov 1999 23:32:36 +0100 + +ghc4 (4.04.19990916-3) unstable; urgency=low + + * First revision to be uploaded to Debian + * Changed maintainer fields where necessary + * Changed binary packages to Architecture: any + + -- Aaron Van Couwenberghe Tue, 30 Nov 1999 14:27:18 -0800 + +ghc4 (4.04.19990916-2) unstable; urgency=low + + * fixed typo in copyright + * bumped Standards-Version to 3.0.1 + * doc-base support + * moved (un)patch rules to debian/rules.local + + -- Michael Weber Wed, 17 Nov 1999 18:06:25 +0100 + +ghc4 (4.04.19990916-1) unstable; urgency=low + + * added haskell-doc, ghc4-prof to Suggests + * new version numbering scheme + * improved build process (targets stage1,clean) + + -- Michael Weber Sun, 19 Sep 1999 21:49:25 +0200 + +ghc4 (4.04-9) unstable; urgency=low + + * added libgmp2-dev to Depends + * CVS version from 1999/09/16 + + -- Michael Weber Thu, 16 Sep 1999 22:09:11 +0200 + +ghc4 (4.04-8) unstable; urgency=low + + * fixed manpage packaging bug in ghc4-prof + + -- Michael Weber Sat, 7 Aug 1999 21:59:05 +0200 + +ghc4 (4.04-7) unstable; urgency=low + + * Standards-Version 3.0.0.0 + * removed undocumented manpages (lintian complains) + * moved usr/info -> usr/share/info according to FHS + * added 'perl | perl5' to Depends + + -- Michael Weber Sat, 7 Aug 1999 21:54:39 +0200 + +ghc4 (4.04-6) unstable; urgency=low + + * removed patch for happy version check (now in upstream) + * GHC is working again + * CVS version from 1999/08/03 + + -- Michael Weber Wed, 4 Aug 1999 18:12:07 +0200 + +ghc4 (4.04-5) unstable; urgency=low + + * local version, GHC doesn't work + * removed hstags from alternatives because it's non-functional + * removed mkdependHS from alternatives because directly running it + is deprecated now (now 'ghc -M') + * re-added info file + * removed obsolete HAVE_READLINE variable in mk/build.mk + * removed patch for {hscpp,mkdependHS} "absolute path" fix (now in upstream) + * moved to patch system (taken from glibc package) + * CVS version from 1999/07/31 + + -- Michael Weber Sun, 1 Aug 1999 02:09:44 +0200 + +ghc4 (4.04-4) unstable; urgency=low + + * got rid of absolute cpp paths in {hscpp,mkdependHS} + * removed info files due to problem with sgmltools + * first glibc-2.1.1 version + + -- Michael Weber Tue, 13 Jul 1999 15:35:28 +0000 + +ghc4 (4.04-3) unstable; urgency=low + + * moved profiling libs into separate package + * added hscpp as alternative (useful for hugs) + * CVS version from 1999/07/10 + + -- Michael Weber Sat, 10 Jul 1999 19:20:49 +0200 + +ghc4 (4.04-2) unstable; urgency=low + + * compiled with use of happy-1.6 parser generator + * fixed some "unclean" directories + * added info entry + * added dwww index-file + + -- Michael Weber Sat, 3 Jul 1999 03:04:13 +0200 + +ghc4 (4.04-1) unstable; urgency=low + + * added missing *.prl files + * added mkdependHS as alternative + * new CVS version as of 1999/06/30 + + -- Michael Weber Wed, 30 Jun 1999 19:53:09 +0200 + +ghc4 (4.03-1) unstable; urgency=low + + * Initial Release. + + -- Michael Weber Sat, 26 Jun 1999 17:52:29 +0200 + + diff --git a/clean b/clean new file mode 100644 index 00000000..a3ba864c --- /dev/null +++ b/clean @@ -0,0 +1,4 @@ +libraries/dph/ +libraries/primitive/ +libraries/vector/ +libraries/random/ diff --git a/control b/control new file mode 100644 index 00000000..fe53b1c2 --- /dev/null +++ b/control @@ -0,0 +1,96 @@ +Source: ghc +Section: haskell +Priority: optional +Maintainer: Debian Haskell Group +Uploaders: + Clint Adams , + Ilias Tsitsimpis +Standards-Version: 4.6.2 +Rules-Requires-Root: no +Build-Depends: + debhelper-compat (= 12), + haskell-devscripts-minimal (>= 0.16.31) , + devscripts, + pkg-config, + ghc:native (>= 9.0), + hadrian:native (>= 9.4.7-3) , + hadrian:native (<< 9.5) , + llvm-15 [armel armhf s390x riscv64], + libgmp-dev, + libffi-dev, + libncurses-dev, + python3:native, + python3-sphinx , +Build-Depends-Indep: + hscolour, + python3-sphinx-rtd-theme, +Build-Conflicts: ccache +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 + +Package: ghc +Architecture: any +Depends: + llvm-15 [armel armhf s390x riscv64], + gcc, + libgmp-dev, + libffi-dev, + libbsd-dev, + libc6-dev, + libncurses-dev, + ${shlibs:Depends}, + ${misc:Depends} +Pre-Depends: dpkg (>= 1.16.1) +Provides: + haskell-compiler, + ghc-dynamic, + ${ghci}, + ${provided-devs}, + ${haskell:Provides}, + haddock, + ghc-haddock, + ${haddock:Provides} +Replaces: ${conflicting-devs} +Breaks: ${conflicting-devs} +Suggests: perl, ghc-prof, ghc-doc, llvm-15 +Description: The Glasgow Haskell Compilation system + The Glorious Glasgow Haskell Compilation system (GHC) is a compiler for + Haskell. + . + Haskell is "the" standard lazy functional programming language. The language + definition and additional documentation can be found at + https://www.haskell.org/documentation/. + +Package: ghc-prof +Architecture: any +Provides: ${provided-profs}, ${haskell:Provides} +Depends: ghc (= ${binary:Version}), ${misc:Depends} +Description: Profiling libraries for the Glasgow Haskell Compilation system + The Glorious Glasgow Haskell Compilation system (GHC) is a compiler for + Haskell. + . + Haskell is "the" standard lazy functional programming language. The language + definition and additional documentation can be found at + https://www.haskell.org/documentation/. + . + This package contains additional profiling libraries. They are only needed, + if you want to take a closer look on where exactly your program burns CPU + cycles. + +Package: ghc-doc +Section: doc +Architecture: all +Provides: ${provided-docs} +Depends: ${haddock:Depends}, ${misc:Depends}, perl, libjs-mathjax +Pre-Depends: dpkg (>= 1.16.1) +Description: Documentation for the Glasgow Haskell Compilation system + The Glorious Glasgow Haskell Compilation system (GHC) is a compiler for + Haskell. + . + Haskell is "the" standard lazy functional programming language. The language + definition and additional documentation can be found at + https://www.haskell.org/documentation/. + . + This package includes HTML, DVI and PS versions of the SGML-based + documentation around GHC. diff --git a/copyright b/copyright new file mode 100644 index 00000000..e5f09c56 --- /dev/null +++ b/copyright @@ -0,0 +1,63 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: ghc +Upstream-Contact: Simon Marlow +Source: https://downloads.haskell.org/~ghc/ + +Files: * +License: BSD-3-clause +Copyright: 2007 Andy Gill + 2006 Esa Ilari Vuokko + 2007 Ian Lynagh + 2009 Isaac Dupree + 2010 Jargen Nicklisch-Franken + 2008 Jose Iborra + 2008 Lennart Kolmodin + 1997-2003 Alastair Reid + 2009 Andres Loeh + 2007 Bjorn Bringert + 2007-2014 Bryan O'Sullivan + 1999-2001 Daan Leijner + 2005 David Himmelstrup + 2006-2010 David Waern + 2007-2009,2012-2013 Duncan Coutts + 2003-2007 Isaac Jones + 2011 Johan Tibell + 2003-2005 Malcolm Wallace + 2004 Martin Sjgren + 2004,2013-2014 Mateusz Kowalczyk + 1993-1995 Microsoft Coprporation + 2006-2008 Neil Mitchell + 2002-2012 Simon Marlow + 1995-2014 The GHC Team + 1993-2013 The University of Glasgow + 2010,2011 Thomas Tuegel + +Files: debian/* +Copyright: held by the contributors mentioned in debian/changelog +License: BSD-3-clause + +License: BSD-3-clause + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + . + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + . + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + . + 3. Neither the name of copyright holder(s) nor the names of its contributors may be used + to endorse or promote products derived from this software without + specific prior written permission. + . + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR + ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/gen_contents_index b/gen_contents_index new file mode 100644 index 00000000..afe14856 --- /dev/null +++ b/gen_contents_index @@ -0,0 +1,59 @@ +#! /usr/bin/perl +# gen_contents_index, written for Debian by Kari Pahula +# Copyright 2009 Kari Pahula +# Licensed under BSD3, see /usr/share/common-licenses/BSD + +use Cwd qw(abs_path); + +my @ifaces; +my %pkgs; + +# Only do something if we actually have /usr/share/doc +exit 0 unless (-d "/usr/share/doc/ghc-doc/html/libraries/" and -r "/usr/share/doc/ghc-doc/html/libraries/prologue.txt"); + +# Add everything from the global Cabal registry to index. +if (-e '/usr/bin/ghc-pkg') { + open CABAL, "/usr/bin/ghc-pkg --global --simple-output field '*' name,version,haddock-interfaces,haddock-html |" or warn "ghc-pkg dump failed: $!"; + addInfo (\*CABAL, \%pkgs, \@ifaces); + close CABAL; +} + +exec ('haddock', '--gen-index', '--gen-contents', + '--mathjax', 'file:///usr/share/javascript/mathjax/MathJax.js', + '-o', '/usr/share/doc/ghc-doc/html/libraries/', + '-t'. 'Haskell Hierarchical Libraries', + '-p', '/usr/share/doc/ghc-doc/html/libraries/prologue.txt', + @ifaces); + +sub addInfo { + my $fh = shift; + while (<$fh>) { + my %dat; + chomp ($dat{pkg} = $_); + chomp ($dat{ver} = <$fh>); + chomp ($dat{ifaces} = <$fh>); + chomp ($dat{html} = <$fh>); + $dat{html} = abs_path($dat{html}); + process(\%dat, @_); + } +} + +sub process { + my $dat = shift; + my $pkgs = shift; + my $ifaces = shift; + my $path; + return undef if $$dat{pkg} eq 'ghc'; + my $p = $$dat{pkg}.'-'.$$dat{ver}; + return undef if (exists $$pkgs{$p}); + if ($$dat{html} =~ m,^/usr/share/doc/ghc-doc/html/libraries/(.*),) { + $path = $1; + } elsif ($$dat{html} =~ m,^/usr/share/doc/([^/]*-doc/html.*),) { + $path = "../../../$1"; + } + + if (defined $path && -r $$dat{ifaces}) { + $$pkgs{$p} = 1; + push @ifaces, "--read-interface=$path,$$dat{ifaces}"; + } +} diff --git a/ghc-doc.doc-base.users-guide b/ghc-doc.doc-base.users-guide new file mode 100644 index 00000000..7a496dfb --- /dev/null +++ b/ghc-doc.doc-base.users-guide @@ -0,0 +1,15 @@ +Document: ghc-users-guide +Title: GHC User's manual +Author: The GHC Team +Abstract: Glorious Glasgow Haskell Compilation system + (GHC). GHC is a compiler for Haskell. +
+ Haskell is "the" standard lazy functional programming language. + The language definition and additional documentation can be found in the + `haskell-doc' package. Alternatively, there is an online version at + https://www.haskell.org/documentation/. +Section: Programming/Haskell + +Format: HTML +Index: /usr/share/doc/ghc-doc/html/users_guide/index.html +Files: /usr/share/doc/ghc-doc/html/users_guide/*.html diff --git a/ghc-doc.postinst b/ghc-doc.postinst new file mode 100644 index 00000000..4b0760d6 --- /dev/null +++ b/ghc-doc.postinst @@ -0,0 +1,44 @@ +#! /bin/sh +# postinst script for ghc-doc +# +set -e + +# summary of how this script can be called: +# * `configure' +# * `abort-upgrade' +# * `abort-remove' `in-favour' +# +# * `abort-deconfigure' `in-favour' +# `removing' +# +# for details, see /usr/doc/packaging-manual/ +# +# quoting from the policy: +# Any necessary prompting should almost always be confined to the +# post-installation script, and should be protected with a conditional +# so that unnecessary prompting doesn't happen if a package's +# installation fails and the `postinst' is called with `abort-upgrade', +# `abort-remove' or `abort-deconfigure'. + +case "$1" in + triggered|configure) + if test -x /usr/bin/ghc-pkg; then /usr/bin/ghc-pkg recache --global; fi + tmpdir="$(mktemp -d)" + cleanup () { rmdir "$tmpdir"; } + trap cleanup EXIT + HOME="$tmpdir" /usr/lib/ghc-doc/gen_contents_index + ;; + abort-upgrade|abort-remove|abort-deconfigure) + ;; + *) + echo "postinst called with unknown argument \`$1'" >&2 + exit 0 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 diff --git a/ghc-doc.preinst b/ghc-doc.preinst new file mode 100644 index 00000000..257f5ca2 --- /dev/null +++ b/ghc-doc.preinst @@ -0,0 +1,21 @@ +#! /bin/sh + +set -e + +case "$1" in + upgrade|install) + if [ -e /usr/share/doc/ghc-doc/html/libraries/ ] ; then + rm -f /usr/share/doc/ghc-doc/html/libraries/index.html \ + /usr/share/doc/ghc-doc/html/libraries/index-frames.html \ + /usr/share/doc/ghc-doc/html/libraries/doc-index.html + rmdir --ignore-fail-on-non-empty /usr/share/doc/ghc-doc/html/libraries/ + rmdir --ignore-fail-on-non-empty /usr/share/doc/ghc-doc/html/ + fi + ;; + *) + ;; +esac + +#DEBHELPER# + +exit 0 diff --git a/ghc-doc.prerm b/ghc-doc.prerm new file mode 100644 index 00000000..3cc33df3 --- /dev/null +++ b/ghc-doc.prerm @@ -0,0 +1,46 @@ +#! /bin/sh +# prerm script for ghc-doc +# + +set -e + +# summary of how this script can be called: +# * `remove' +# * `upgrade' +# * `failed-upgrade' +# * `remove' `in-favour' +# * `deconfigure' `in-favour' +# `removing' +# +# for details, see /usr/doc/packaging-manual/ + +case "$1" in + remove|upgrade|deconfigure|failed-upgrade) + # Remove files generated by the postinst trigger + rm -f /usr/share/doc/ghc-doc/html/libraries/index.html \ + /usr/share/doc/ghc-doc/html/libraries/doc-index*.html \ + /usr/share/doc/ghc-doc/html/libraries/frames.html \ + /usr/share/doc/ghc-doc/html/libraries/index-frames.html \ + /usr/share/doc/ghc-doc/html/libraries/haddock-util.js \ + /usr/share/doc/ghc-doc/html/libraries/hslogo-16.png \ + /usr/share/doc/ghc-doc/html/libraries/minus.gif \ + /usr/share/doc/ghc-doc/html/libraries/plus.gif \ + /usr/share/doc/ghc-doc/html/libraries/ocean.css \ + /usr/share/doc/ghc-doc/html/libraries/haddock-bundle.min.js \ + /usr/share/doc/ghc-doc/html/libraries/quick-jump.css \ + /usr/share/doc/ghc-doc/html/libraries/linuwial.css \ + /usr/share/doc/ghc-doc/html/libraries/synopsis.png + ;; + *) + echo "prerm called with unknown argument \`$1'" >&2 + exit 0 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 + diff --git a/ghc-doc.triggers b/ghc-doc.triggers new file mode 100644 index 00000000..e98aefb7 --- /dev/null +++ b/ghc-doc.triggers @@ -0,0 +1,2 @@ +interest-noawait /usr/lib/ghc-doc/haddock +interest-noawait /var/lib/ghc/package.conf.d diff --git a/ghc-pkg.man b/ghc-pkg.man new file mode 100644 index 00000000..b5eaf96e --- /dev/null +++ b/ghc-pkg.man @@ -0,0 +1,228 @@ +.TH ghc-pkg 1 "2010-01-27" +.SH NAME +ghc-pkg \- GHC Haskell Cabal package manager +.SH SYNOPSIS +.B ghc-pkg +.I action +.RI [ OPTION ]... +.SH DESCRIPTION +A package is a library of Haskell modules known to the compiler. The +.B ghc-pkg +tool allows adding or removing them from a package database. By +default, the system-wide package database is modified, but +alternatively the user's local package database or another specified +file can be used. +.PP +To make a package available for +.BR ghc , +.B ghc-pkg +can be used to register it. Unregistering it removes it from the +database. Also, packages can be hidden, to make +.B ghc +ignore the package by default, without uninstalling it. Exposing a +package makes a hidden package available. Additionally, +.B ghc-pkg +has various commands to query the package database. +.PP +Where a package name is required, the package can be named in full +including the version number (e.g. +.BR network-1.0 ), +or without the version number. Naming a package without the version +number matches all versions of the package; the specified action will +be applied to all the matching packages. A package specifier that +matches all version of the package can also be written +.BR pkg-* , +to make it clearer that multiple packages are being matched. +.SH ACTIONS +.TP +\fBregister\fP \fIfilename\fP|\fB-\fP +Register the package using the specified installed package +description. +.TP +\fBupdate\fP \fIfilename\fP|\fB-\fP +Register the package, overwriting any other package with the same +name. +.TP +\fBunregister\fP \fIpkg-id\fP +Unregister the specified package. +.TP +\fBexpose\fP \fIpkg-id\fP +Expose the specified package. +.TP +\fBhide\fP \fIpkg-id\fP +Hide the specified package +.TP +\fBlist\fP \fR[\fIpkg\fR]...\fP +List registered packages in the global database, and also the user +database if +.B --user +is given. If a package name is given all the registered versions will +be listed in ascending order. Accepts the +.B --simple-output +flag. +.TP +.B dot +Generate a graph of the package dependencies in a form suitable for +input for the graphviz tools. For example, to generate a PDF of the +dependency graph: +.br +\fB dot \| tred \| dot -Tpdf >pkgs.pdf\fP +.TP +\fBfind-module\fP \fImodule\fP +List registered packages exposing module +.I module +in the global database, and also the user database if +.B --user +is given. All the registered versions will be listed in ascending +order. Accepts the +.B --simple-output +flag. +.TP +\fBlatest\fP \fIpkg-id\fP +Prints the highest registered version of a package. +.TP +.B check +Check the consistency of package dependencies and list broken +packages. Accepts the +.B --simple-output +flag. +.TP +\fBdescribe\fP \fIpkg\fP +Give the registered description for the +specified package. The description is returned in precisely the syntax +required by ghc-pkg register. +.TP +\fBfield\fP \fIpkg field\fP +Extract the specified field of the package description for the +specified package. Accepts comma-separated multiple fields. +.TP +.B dump +Dump the registered description for every package. This is like +.BR ghc-pkg\ describe\ '*' , +expect that it is intended to be used by tools that parse the results, +rather than humans. +.TP +.B recache +Regenerate the package database cache. This command should only be +necessary if you added a package to the database by dropping a file +into the database directory manually. By default, the global DB is +recached; to recache a different DB use +.B --user +or +.B --package-conf +as appropriate. +.SH OPTIONS +When asked to modify a database +.RB ( register ,\ unregister ,\ update ,\ hide ,\ expose ,\ and\ also\ check ), +.B ghc-pkg +modifies the global database by +default. Specifying +.B --user +causes it to act on the user database, +or +.B --package-conf +can be used to act on another database +entirely. When multiple of these options are given, the rightmost +one is used as the database to act upon. +.PP +Commands that query the package database +.RB ( list ,\ latest ,\ describe ,\ field ) +operate on the list of databases specified by the flags +.BR --user ,\ --global , +and +.BR --package-conf . +If none of these flags are +given, the default is +.BR --global\ --user . +.TP +.B --user +Use the current user's package database. +.TP +.B --global +Use the global package database. +.TP +\fB-f\fP \fIFILE\fP, \fB--package-conf=\fIFILE\fP +Use the specified package config file. +.TP +.BI --global-conf= FILE +Location of the global package config. +.TP +.B --force +Ignore missing dependencies, directories, and libraries. +.TP +.B --force-files +Ignore missing directories and libraries only. +.TP +.BR -g ,\ --auto-ghc-libs +Automatically build libs for GHCi (with register). +.TP +.BR -? ,\ --help +Display a help message and exit. +.TP +.BR -V ,\ --version +Output version information and exit. +.TP +.B --simple-output +Print output in easy-to-parse format for some commands. +.TP +.B --names-only +Only print package names, not versions; can only be used with +.BR list\ --simple-output . +.TP +.B --ignore-case +Ignore case for substring matching. +.SH ENVIRONMENT VARIABLES +.TP +.B GHC_PACKAGE_PATH +The +.B GHC_PACKAGE_PATH +environment variable may be set to a +.BR : -separated +list of files containing package databases. This list of package +databases is used by +.B ghc +and +.BR ghc-pkg , +with earlier databases in the list overriding later ones. This order +was chosen to match the behaviour of the +.B PATH +environment variable; think of it as a list of package databases that +are searched left-to-right for packages. + +If +.B GHC_PACKAGE_PATH +ends in a separator, then the default user and system package +databases are appended, in that order. e.g. to augment the usual set +of packages with a database of your own, you could say: + +.br +\fB export GHC_PACKAGE_PATH=$HOME/.my-ghc-packages.conf:\fP +.br + +To check whether your +.B GHC_PACKAGE_PATH +setting is doing the right thing, +.B ghc-pkg list +will list all the databases in use, in the reverse order they are +searched. +.SH FILES +Both of these locations are changed for Debian. Upstream still keeps +these under +.IR /usr . +Some programs may refer to that, but look in +.I /var +instead. +.TP +.I /var/lib/ghc/package.conf +Global package.conf file. +.TP +.I /var/lib/ghc/package.conf.d/ +Directory for library specific package.conf files. These are added to +the global registry. +.SH "SEE ALSO" +.BR ghc (1), +.BR runghc (1), +.BR hugs (1). +.SH AUTHOR +This manual page was written by Kari Pahula , for the +Debian project (and may be used by others). diff --git a/ghc.links b/ghc.links new file mode 100644 index 00000000..4e43de35 --- /dev/null +++ b/ghc.links @@ -0,0 +1,7 @@ +# The package-db (for ghc-pkg) is '/usr/lib/ghc/lib/package.conf.d', +# but all our Haskell library packages install their package configuration +# files in '/var/lib/ghc/package.conf.d'. +# Create a symlink, so that 'ghc-pkg' continues to work. +# In the future, we should decide whether it makes sense to modify the +# default package-db for ghc-pkg, or move everything under /usr/lib. +/var/lib/ghc/package.conf.d /usr/lib/ghc/lib/package.conf.d diff --git a/ghc.postinst b/ghc.postinst new file mode 100644 index 00000000..5286b114 --- /dev/null +++ b/ghc.postinst @@ -0,0 +1,57 @@ +#! /bin/sh +# postinst script for ghc +# +set -e + +execdir=/usr/bin +libdir=/usr/lib/ghc +bindir=$libdir/bin +mandir=/usr/share/man +vardir=/var/lib/ghc + +# summary of how this script can be called: +# * `configure' +# * `abort-upgrade' +# * `abort-remove' `in-favour' +# +# * `abort-deconfigure' `in-favour' +# `removing' +# +# for details, see /usr/doc/packaging-manual/ +# +# quoting from the policy: +# Any necessary prompting should almost always be confined to the +# post-installation script, and should be protected with a conditional +# so that unnecessary prompting doesn't happen if a package's +# installation fails and the `postinst' is called with `abort-upgrade', +# `abort-remove' or `abort-deconfigure'. + +case "$1" in + configure|abort-upgrade|abort-remove|abort-deconfigure) + if $execdir/ghc --info | grep '"Have interpreter","YES"' >/dev/null ; then + update-alternatives \ + --install $execdir/runhaskell runhaskell $execdir/runghc 600 \ + --slave $mandir/man1/runhaskell.1.gz runhaskell.1.gz $mandir/man1/runghc.1.gz + fi + update-alternatives \ + --install $execdir/haskell-compiler haskell-compiler $execdir/ghc 600 \ + --slave $mandir/man1/haskell-compiler.1.gz haskell-compiler.1.gz $mandir/man1/ghc.1.gz + $execdir/ghc-pkg recache --global + $execdir/ghc-pkg check --global || true + ;; + triggered) + $execdir/ghc-pkg recache --global + $execdir/ghc-pkg check --global || true + ;; + *) + echo "postinst called with unknown argument \`$1'" >&2 + exit 0 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 diff --git a/ghc.prerm b/ghc.prerm new file mode 100644 index 00000000..d4747550 --- /dev/null +++ b/ghc.prerm @@ -0,0 +1,42 @@ +#! /bin/sh +# prerm script for ghc +# +# SOURCE: ghc.prerm.in + +set -e + +execdir=/usr/bin +libdir=/usr/lib/ghc +bindir=$libdir/bin +vardir=/var/lib/ghc + +# summary of how this script can be called: +# * `remove' +# * `upgrade' +# * `failed-upgrade' +# * `remove' `in-favour' +# * `deconfigure' `in-favour' +# `removing' +# +# for details, see /usr/doc/packaging-manual/ + +case "$1" in + remove|upgrade|deconfigure|failed-upgrade) + update-alternatives --remove runhaskell $execdir/runghc + update-alternatives --remove haskell-compiler $execdir/ghc + rm -f $vardir/package.conf.d/package.cache \ + $vardir/package.conf.d/package.cache.lock + ;; + *) + echo "prerm called with unknown argument \`$1'" >&2 + exit 0 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 + diff --git a/ghc.triggers b/ghc.triggers new file mode 100644 index 00000000..741e8505 --- /dev/null +++ b/ghc.triggers @@ -0,0 +1 @@ +interest-noawait /var/lib/ghc/package.conf.d diff --git a/haddock.man b/haddock.man new file mode 100644 index 00000000..a30106ba --- /dev/null +++ b/haddock.man @@ -0,0 +1,231 @@ +.TH HADDOCK 1 "July 2010" "Haddock, version 2.6.1" "Haddock documentation generator" + + +.SH NAME +haddock \- documentation tool for annotated Haskell source code + + +.SH SYNOPSIS +.B haddock +.RI [ options ] " file" ... + + +.SH DESCRIPTION +This manual page documents briefly the +.B haddock +command. +Extensive documentation is available in various other formats including DVI, +PostScript and HTML; see below. + +.PP +.I file +is a filename containing a Haskell source module. +All the modules specified on the command line will be processed together. +When one module refers to an entity in another module being processed, the +documentation will link directly to that entity. + +Entities that cannot be found, for example because they are in a module that +is not being processed as part of the current batch, simply will not be +hyperlinked in the generated documentation. +.B haddock +will emit warnings listing all the identifiers it could not resolve. + +The modules should not be mutually recursive, as +.B haddock +does not like swimming in circles. + + +.SH OPTIONS +The programs follow the usual GNU command line syntax, with long +options starting with two dashes (`--'). +A summary of options is included below. +For a complete description, see the other documentation. + +.TP +\fB\-o \fIDIR\fP, \-\-odir=\fIDIR\fP +directory in which to put the output files + +.TP +\fB\-i \fIFILE\fP, \-\-read-interface=\fIFILE\fP +read an interface from +.IR FILE . + +.TP +\fB\-D \fIFILE\fP, \-\-dump\-interface=\fIFILE\fP +dump an interface for these modules in +.IR FILE . + +.TP +\fB\-l \fIDIR\fP, \-\-lib=\fIDIR\fP +location of Haddock's auxiliary files + +.TP +.BR \-h ", " \-\-html +Generate documentation in HTML format. +Several files will be generated into the current directory (or the specified +directory if the +.B \-o +option is given), including the following: +.RS +.TP +.I index.html +The top level page of the documentation: +lists the modules available, using indentation to represent the hierarchy if +the modules are hierarchical. +.TP +.I haddock.css +The stylesheet used by the generated HTML. +Feel free to modify this to change the colors or layout, or even specify +your own stylesheet using the +.B \-\-css +option. +.TP +.I module.html +An HTML page for each module. +.TP +.IR doc-index.html ", " doc-index-XX.html +The index, split into two (functions/constructors and types/classes, as per +Haskell namespaces) and further split alphabetically. +.RE + +.TP +.B \-\-hoogle +output for Hoogle + +.TP +\fB\-\-html\-help=\fIformat +produce index and table of contents in mshelp, mshelp2 or devhelp format +(with \fI\-h\fP) + +.TP +\fB\-\-source\-base=\fPURL +Include links to the source files in the generated documentation, where URL +is the base URL where the source files can be found. + +.TP +\fB\-s \fPURL, \fB\-\-source\-module=\fPURL +Include links to the source files in the generated documentation, where URL +is a source code link for each module (using the %{FILE} or %{MODULE} vars). + +.TP +\fB\-\-source\-entity=\fPURL +Include links to the source files in the generated documentation, where URL +is a source code link for each entity (using the %{FILE}, %{MODULE} or %{NAME} vars). + +.TP +\fB\-\-comments\-base=\fPURL +URL for a comments link on the contents and index pages. +.TP +\fB\-\-comments\-module=\fPURL +URL for a comments link for each module (using the %{MODULE} var). +.TP +\fB\-\-comments\-entity=\fPURL +URL for a comments link for each entity (using the %{FILE}, %{MODULE} or %{NAME} vars). +.TP +.BI \-\-css= FILE +Use the CSS +.I FILE +instead of the default stylesheet that comes with +.B haddock +for HTML output. It should specify certain classes: see the default stylesheet for details. + +.TP +\fB\-p \fIFILE\fP, \-\-prologue=\fIFILE\fP +Specify a file containing prologue text. + +.TP +\fB\-t \fITITLE\fP, \-\-title=\fITITLE\fP +Use \fITITLE\fP as the page heading for each page in the documentation. +This will normally be the name of the library being documented. + +The title should be a plain string (no markup please!). + +.TP +\fB\-k \fINAME\fP, \-\-package=\fINAME\fP +Specify the package name (optional). + +.TP +.BR \-n ", " \-\-no\-implicit\-prelude +do not assume Prelude is imported + +.TP +.BR \-d ", " \-\-debug +Enable extra debugging output. + +.TP +.BR \-? ", " \-\-help +Display help. + +.TP +.BR \-V ", " \-\-version +Display version. + +.TP +.BR \-v ", " \-\-verbose +Verbose status reporting. + +.TP +\fB\-\-use\-contents=\fPURL +Use a separately-generated HTML contents page. + +.TP +.B \-\-gen\-contents +Generate an HTML contents from specified interfaces. + +.TP +\fB\-\-use\-index=\fPURL +Use a separately-generated HTML index. + +.TP +.B \-\-gen\-index +Generate an HTML index from specified interfaces. + +.TP +.B \-\-ignore\-all\-exports +Behave as if all modules have the ignore-exports atribute + +.TP +\fB\-\-hide=\fIMODULE +Behave as if \fIMODULE\fP has the hide attribute. + +.TP +\fB\-\-use\-package=\fIPACKAGE +The modules being processed depend on \fIPACKAGE\fP. + +.SH FILES +.I /usr/bin/haddock +.br +.I /usr/share/haddock-2.6.1/html/plus.gif +.br +.I /usr/share/haddock-2.6.1/html/minus.gif +.br +.I /usr/share/haddock-2.6.1/html/haskell_icon.gif +.br +.I /usr/share/haddock-2.6.1/html/haddock.js +.br +.I /usr/share/haddock-2.6.1/html/haddock.css +.br +.I /usr/share/haddock-2.6.1/html/haddock-DEBUG.css + +.SH SEE ALSO +.IR /usr/share/doc/haddock/ , +.br +the Haddock homepage +.UR http://haskell.org/haddock/ +(http://haskell.org/haddock/) +.UE + +.SH COPYRIGHT +Haddock version 2.6.1 + +Copyright 2006-2010 Simon Marlow , Dawid Waern . +All rights reserved. + + +.SH AUTHOR +This manual page was written by Michael Weber +for the Debian GNU/Linux system (but may be used by others). + +.\" Local variables: +.\" mode: nroff +.\" End: diff --git a/index.html b/index.html new file mode 100644 index 00000000..282d51e2 --- /dev/null +++ b/index.html @@ -0,0 +1,10 @@ + + + + GHC's documentation has moved + + + GHC's documentation's main page is no longer in this place. + Instead, see html/index.html. + + diff --git a/patches/ARM-VFPv3D16 b/patches/ARM-VFPv3D16 new file mode 100644 index 00000000..d1282c6d --- /dev/null +++ b/patches/ARM-VFPv3D16 @@ -0,0 +1,20 @@ +Description: Use VFPv3-D16 FPU for ARM builds + Jani writes: The D16 part was Debian/Ubuntu specific, IIRC we define hardfloat + in that particular variant (16 double registers) or we had a different naming + for some reason. +Author: Jani Monoses +Upstream-Bug: https://ghc.haskell.org/trac/ghc/ticket/5914 + +Index: b/m4/get_arm_isa.m4 +=================================================================== +--- 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_EXT="[VFPv3,NEON]" ++ ARM_ISA_EXT="[VFPv3D16,NEON]" + changequote([, ])dnl + ]) + ]) diff --git a/patches/allow-setting-llvm-program b/patches/allow-setting-llvm-program new file mode 100644 index 00000000..b75a22f7 --- /dev/null +++ b/patches/allow-setting-llvm-program @@ -0,0 +1,55 @@ +Description: Allow setting path for LLC/OPT during configuration + Patch configure.ac to allow us to modify the path for LLC/OPT during + configuration. +Author: Ilias Tsitsimpis + +Index: b/configure.ac +=================================================================== +--- a/configure.ac ++++ b/configure.ac +@@ -600,14 +600,18 @@ AC_SUBST([ClangCmd]) + dnl ** Which LLVM llc to use? + dnl -------------------------------------------------------------- + AC_ARG_VAR(LLC,[Use as the path to LLVM's llc [default=autodetect]]) +-FIND_LLVM_PROG([LLC], [llc], [$LlvmMinVersion], [$LlvmMaxVersion]) ++if test -z "$LLC"; then ++ FIND_LLVM_PROG([LLC], [llc], [$LlvmMinVersion], [$LlvmMaxVersion]) ++fi + LlcCmd="$LLC" + AC_SUBST([LlcCmd]) + + dnl ** Which LLVM opt to use? + dnl -------------------------------------------------------------- + AC_ARG_VAR(OPT,[Use as the path to LLVM's opt [default=autodetect]]) +-FIND_LLVM_PROG([OPT], [opt], [$LlvmMinVersion], [$LlvmMaxVersion]) ++if test -z "$OPT"; then ++ FIND_LLVM_PROG([OPT], [opt], [$LlvmMinVersion], [$LlvmMaxVersion]) ++fi + OptCmd="$OPT" + AC_SUBST([OptCmd]) + +Index: b/distrib/configure.ac.in +=================================================================== +--- a/distrib/configure.ac.in ++++ b/distrib/configure.ac.in +@@ -145,14 +145,18 @@ LlvmMaxVersion=@LlvmMaxVersion@ + dnl ** Which LLVM llc to use? + dnl -------------------------------------------------------------- + AC_ARG_VAR(LLC,[Use as the path to LLVM's llc [default=autodetect]]) +-FIND_LLVM_PROG([LLC], [llc], [$LlvmMinVersion], [$LlvmMaxVersion]) ++if test -z "$LLC"; then ++ FIND_LLVM_PROG([LLC], [llc], [$LlvmMinVersion], [$LlvmMaxVersion]) ++fi + LlcCmd="$LLC" + AC_SUBST([LlcCmd]) + + dnl ** Which LLVM opt to use? + dnl -------------------------------------------------------------- + AC_ARG_VAR(OPT,[Use as the path to LLVM's opt [default=autodetect]]) +-FIND_LLVM_PROG([OPT], [opt], [$LlvmMinVersion], [$LlvmMaxVersion]) ++if test -z "$OPT"; then ++ FIND_LLVM_PROG([OPT], [opt], [$LlvmMinVersion], [$LlvmMaxVersion]) ++fi + OptCmd="$OPT" + AC_SUBST([OptCmd]) + diff --git a/patches/buildpath-abi-stability.patch b/patches/buildpath-abi-stability.patch new file mode 100644 index 00000000..48cf1c86 --- /dev/null +++ b/patches/buildpath-abi-stability.patch @@ -0,0 +1,24 @@ +Forwarded to https://ghc.haskell.org/trac/ghc/ticket/10424 + +Index: b/compiler/GHC/Iface/Recomp.hs +=================================================================== +--- a/compiler/GHC/Iface/Recomp.hs ++++ b/compiler/GHC/Iface/Recomp.hs +@@ -1234,7 +1234,7 @@ addFingerprints hsc_env iface0 + (mod_hash, + mi_src_hash iface0, + ann_fn (mkVarOcc "module"), -- See mkIfaceAnnCache +- mi_usages iface0, ++ usages, + sorted_deps, + mi_hpc iface0) + +@@ -1269,6 +1269,8 @@ addFingerprints hsc_env iface0 + (non_orph_rules, orph_rules) = mkOrphMap ifRuleOrph (mi_rules iface0) + (non_orph_fis, orph_fis) = mkOrphMap ifFamInstOrph (mi_fam_insts iface0) + ann_fn = mkIfaceAnnCache (mi_anns iface0) ++ -- Do not allow filenames to affect the interface ++ usages = [ case u of UsageFile _ fp fl -> UsageFile "" fp fl; _ -> u | u <- mi_usages iface0 ] + + -- | Retrieve the orphan hashes 'mi_orphan_hash' for a list of modules + -- (in particular, the orphan modules which are transitively imported by the diff --git a/patches/dfe1c3540e4b519b62b862b5966dfec5cae9ece1.patch b/patches/dfe1c3540e4b519b62b862b5966dfec5cae9ece1.patch new file mode 100644 index 00000000..9751a2e7 --- /dev/null +++ b/patches/dfe1c3540e4b519b62b862b5966dfec5cae9ece1.patch @@ -0,0 +1,31 @@ +From dfe1c3540e4b519b62b862b5966dfec5cae9ece1 Mon Sep 17 00:00:00 2001 +From: Stefan Schulze Frielinghaus +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/patches/fix-32-bit-unreg b/patches/fix-32-bit-unreg new file mode 100644 index 00000000..eef38a43 --- /dev/null +++ b/patches/fix-32-bit-unreg @@ -0,0 +1,38 @@ +commit 9194c9c066a31cbb7a49830e4b5e2454fd4af6ba +Author: Cheng Shao +Date: Mon Jan 23 13:17:07 2023 +0000 + + CmmToC: fix CmmRegOff for 64-bit register on a 32-bit target + + We used to print the offset value to a platform word sized integer. + This is incorrect when the offset is negative (e.g. output of cmm + constant folding) and the register is 64-bit but on a 32-bit target, + and may lead to incorrect runtime result (e.g. #22607). + + The fix is simple: just treat it as a proper MO_Add, with the correct + width info inferred from the register itself. + + Metric Increase: + T12707 + T13379 + T4801 + T5321FD + T5321Fun + + (cherry picked from commit d151546e59a50158f25c3df6728b00d3c27bb4b9) + +Index: b/compiler/GHC/CmmToC.hs +=================================================================== +--- a/compiler/GHC/CmmToC.hs ++++ b/compiler/GHC/CmmToC.hs +@@ -382,8 +382,8 @@ pprExpr platform e = case e of + CmmRegOff reg 0 -> pprCastReg reg + + -- CmmRegOff is an alias of MO_Add +- CmmRegOff reg i -> pprCastReg reg <> char '+' <> +- pprHexVal platform (fromIntegral i) (wordWidth platform) ++ CmmRegOff reg i -> pprExpr platform $ CmmMachOp (MO_Add w) [CmmReg reg, CmmLit $ CmmInt (toInteger i) w] ++ where w = cmmRegWidth platform reg + + CmmMachOp mop args -> pprMachOpApp platform mop args + diff --git a/patches/fix-cross-compilation b/patches/fix-cross-compilation new file mode 100644 index 00000000..b096b2ce --- /dev/null +++ b/patches/fix-cross-compilation @@ -0,0 +1,46 @@ +commit bd92182cd56140ffb2f68ec01492e5aa6333a8fc +Author: Ben Gamari +Date: Tue Jun 21 14:05:59 2022 +0000 + + configure: Use AC_PATH_TOOL to detect tools + + Previously we used AC_PATH_PROG which, as noted by #21601, does not + look for tools with a target prefix, + breaking cross-compilation. + + Fixes #21601. + +Index: b/configure.ac +=================================================================== +--- a/configure.ac ++++ b/configure.ac +@@ -357,20 +357,17 @@ FP_FIND_ROOT + if test "$HostOS" = "mingw32" -a "$EnableDistroToolchain" = "NO"; then + FP_SETUP_WINDOWS_TOOLCHAIN + else +- # Ideally should use AC_CHECK_TARGET_TOOL but our triples +- # are screwed up. Configure doesn't think they're ever equal and +- # so never tried without the prefix. +- AC_PATH_PROG([CC],[gcc], [clang]) +- AC_PATH_PROG([CXX],[g++], [clang++]) +- AC_PATH_PROG([NM],[nm]) ++ AC_PATH_TOOL([CC],[gcc], [clang]) ++ AC_PATH_TOOL([CXX],[g++], [clang++]) ++ AC_PATH_TOOL([NM],[nm]) + # N.B. we don't probe for LD here but instead + # do so in FIND_LD to avoid #21778. +- AC_PATH_PROG([AR],[ar]) +- AC_PATH_PROG([RANLIB],[ranlib]) +- AC_PATH_PROG([OBJDUMP],[objdump]) +- AC_PATH_PROG([DllWrap],[dllwrap]) +- AC_PATH_PROG([Windres],[windres]) +- AC_PATH_PROG([Genlib],[genlib]) ++ AC_PATH_TOOL([AR],[ar]) ++ AC_PATH_TOOL([RANLIB],[ranlib]) ++ AC_PATH_TOOL([OBJDUMP],[objdump]) ++ AC_PATH_TOOL([DllWrap],[dllwrap]) ++ AC_PATH_TOOL([Windres],[windres]) ++ AC_PATH_TOOL([Genlib],[genlib]) + + HAVE_GENLIB=False + if test "$HostOS" = "mingw32"; then diff --git a/patches/fix-hs_cmpxchg64 b/patches/fix-hs_cmpxchg64 new file mode 100644 index 00000000..87309eac --- /dev/null +++ b/patches/fix-hs_cmpxchg64 @@ -0,0 +1,39 @@ +commit 9fa545722f9151781344446dd5501db38cb90dd1 +Author: Cheng Shao +Date: Mon Feb 27 19:11:27 2023 +0000 + + ghc-prim: fix hs_cmpxchg64 function prototype + + hs_cmpxchg64 must return a StgWord64, otherwise incorrect runtime + results of 64-bit MO_Cmpxchg will appear in 32-bit unregisterised + builds, which go unnoticed at compile-time due to C implicit casting + in .hc files. + +Index: b/libraries/ghc-prim/cbits/atomic.c +=================================================================== +--- a/libraries/ghc-prim/cbits/atomic.c ++++ b/libraries/ghc-prim/cbits/atomic.c +@@ -308,8 +308,8 @@ hs_cmpxchg32(StgWord x, StgWord old, Stg + return __sync_val_compare_and_swap((volatile StgWord32 *) x, (StgWord32) old, (StgWord32) new); + } + +-extern StgWord hs_cmpxchg64(StgWord x, StgWord64 old, StgWord64 new); +-StgWord ++extern StgWord64 hs_cmpxchg64(StgWord x, StgWord64 old, StgWord64 new); ++StgWord64 + hs_cmpxchg64(StgWord x, StgWord64 old, StgWord64 new) + { + return __sync_val_compare_and_swap((volatile StgWord64 *) x, old, new); +Index: b/rts/include/stg/Prim.h +=================================================================== +--- a/rts/include/stg/Prim.h ++++ b/rts/include/stg/Prim.h +@@ -41,7 +41,7 @@ StgWord64 hs_atomic_xor64(StgWord x, Stg + StgWord hs_cmpxchg8(StgWord x, StgWord old, StgWord new_); + StgWord hs_cmpxchg16(StgWord x, StgWord old, StgWord new_); + StgWord hs_cmpxchg32(StgWord x, StgWord old, StgWord new_); +-StgWord hs_cmpxchg64(StgWord x, StgWord64 old, StgWord64 new_); ++StgWord64 hs_cmpxchg64(StgWord x, StgWord64 old, StgWord64 new_); + StgWord hs_atomicread8(StgWord x); + StgWord hs_atomicread16(StgWord x); + StgWord hs_atomicread32(StgWord x); diff --git a/patches/fix-llvm-armel b/patches/fix-llvm-armel new file mode 100644 index 00000000..f32360ff --- /dev/null +++ b/patches/fix-llvm-armel @@ -0,0 +1,28 @@ +Description: Fix LLVM error on armel + GHC 8.10 fails to build on armel with the following error: + + LLVM ERROR: unable to allocate function argument #8 + PLEASE submit a bug report to https://bugs.llvm.org/ and include the crash backtrace. + Stack dump: + 0. Program arguments: llc-12 -O2 -enable-tbaa -relocation-model=pic -mcpu=arm7tdmi -mattr=+soft-float,-vfp2,-vfp2sp,-vfp3,-vfp3d16,-vfp3d16sp,-vfp3sp,-fp16,-vfp4,-vfp4d16,-vfp4d16sp,-vfp4sp,-fp-armv8,-fp-armv8d16,-fp-armv8d16sp,-fp-armv8sp,-fullfp16,-fp64,-d32,-neon,-crypto,-dotprod,-fp16fml,-bf16,-mve,-mve.fp,-fpregs,+strict-align /tmp/ghc5537_0/ghc_6.bc -o /tmp/ghc5537_0/ghc_7.lm_s + 1. Running pass 'Function Pass Manager' on module '/tmp/ghc20177_0/ghc_6.bc'. + 2. Running pass 'ARM Instruction Selection' on function '@"stg_gc_f1$def"' + `llc-12' failed in phase `LLVM Compiler'. (Exit code: -6) + make[3]: *** [rts/ghc.mk:325: rts/dist/build/HeapStackCheck.o] Error 1 + + Surprisingly, reverting commit 4540bbe2811e860f35de6e67ab2f0040592fd3a5 fixes + thie error. +Author: Ilias Tsitsimpis +Bug: https://gitlab.haskell.org/ghc/ghc/-/issues/20285 +Index: b/compiler/CodeGen.Platform.h +=================================================================== +--- a/compiler/CodeGen.Platform.h ++++ b/compiler/CodeGen.Platform.h +@@ -6,6 +6,7 @@ import GHC.Utils.Panic.Plain + #endif + import GHC.Platform.Reg + ++#include "ghcautoconf.h" + #include "MachRegs.h" + + #if defined(MACHREGS_i386) || defined(MACHREGS_x86_64) diff --git a/patches/haddock-remove-googleapis-fonts b/patches/haddock-remove-googleapis-fonts new file mode 100644 index 00000000..bc951a90 --- /dev/null +++ b/patches/haddock-remove-googleapis-fonts @@ -0,0 +1,26 @@ +Description: Remove hard-coded googleapis font URL +Bug: https://github.com/haskell/haddock/issues/1211 +Bug-Debian: https://bugs.debian.org/963690 + +Index: b/utils/haddock/haddock-api/src/Haddock/Backends/Xhtml.hs +=================================================================== +--- a/utils/haddock/haddock-api/src/Haddock/Backends/Xhtml.hs ++++ b/utils/haddock/haddock-api/src/Haddock/Backends/Xhtml.hs +@@ -145,7 +145,7 @@ headHtml docTitle themes mathjax_url bas + , thetype "text/css" + , href (withBaseURL base_url quickJumpCssFile) ] + << noHtml +- , thelink ! [ rel "stylesheet", thetype "text/css", href fontUrl] << noHtml ++ -- , thelink ! [ rel "stylesheet", thetype "text/css", href fontUrl] << noHtml + , script ! [ src (withBaseURL base_url haddockJsFile) + , emptyAttr "async" + , thetype "text/javascript" ] +@@ -154,7 +154,7 @@ headHtml docTitle themes mathjax_url bas + , script ! [src mjUrl, thetype "text/javascript"] << noHtml + ] + where +- fontUrl = "https://fonts.googleapis.com/css?family=PT+Sans:400,400i,700" ++ -- fontUrl = "https://fonts.googleapis.com/css?family=PT+Sans:400,400i,700" + mjUrl = fromMaybe "https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-AMS-MML_HTMLorMML" mathjax_url + mjConf = unwords [ "MathJax.Hub.Config({" + , "tex2jax: {" diff --git a/patches/hadrian-disable-threaded b/patches/hadrian-disable-threaded new file mode 100644 index 00000000..bc92a5aa --- /dev/null +++ b/patches/hadrian-disable-threaded @@ -0,0 +1,28 @@ +Index: b/hadrian/hadrian.cabal +=================================================================== +--- a/hadrian/hadrian.cabal ++++ b/hadrian/hadrian.cabal +@@ -18,7 +18,7 @@ source-repository head + -- To accommodate #16873 + flag threaded + manual: True +- default: True ++ default: False + description: Build with the threaded runtime for improved + performance. Users with bootstrap compilers + which don't support the threaded runtime should +@@ -167,14 +167,6 @@ executable hadrian + -rtsopts + -fno-ignore-asserts + +- if flag(threaded) +- ghc-options: +- -- * -I0: Disable idle GC to avoid redundant GCs while +- -- waiting for external processes +- -- * -qg: Don't use parallel GC as the synchronization +- -- time tends to eat any benefit. +- "-with-rtsopts=-I0 -qg" +- -threaded + + if flag(selftest) + other-modules: Rules.Selftest diff --git a/patches/hadrian-enable-interpreter b/patches/hadrian-enable-interpreter new file mode 100644 index 00000000..b70e7c57 --- /dev/null +++ b/patches/hadrian-enable-interpreter @@ -0,0 +1,24 @@ +Description: Enable GHCi on all platforms in Debian +Author: Ilias Tsitsimpis +Bug: https://gitlab.haskell.org/ghc/ghc/-/issues/24098 + +Index: b/hadrian/src/Oracles/Setting.hs +=================================================================== +--- a/hadrian/src/Oracles/Setting.hs ++++ b/hadrian/src/Oracles/Setting.hs +@@ -287,13 +287,8 @@ hostSupportsRPaths = anyHostOs ["linux", + -- | Check whether the target supports GHCi. + ghcWithInterpreter :: Action Bool + ghcWithInterpreter = do +- goodOs <- anyTargetOs [ "mingw32", "cygwin32", "linux", "solaris2" +- , "freebsd", "dragonfly", "netbsd", "openbsd" +- , "darwin", "kfreebsdgnu" ] +- goodArch <- anyTargetArch [ "i386", "x86_64", "powerpc" +- , "arm", "aarch64", "s390x" +- , "powerpc64", "powerpc64le" ] +- return $ goodOs && goodArch ++ -- Enable GHCi on all platforms for Debian ++ return True + + -- | Variants of the ARM architecture. + data ArmVersion = ARMv5 | ARMv6 | ARMv7 diff --git a/patches/hadrian-fix-dnosmp b/patches/hadrian-fix-dnosmp new file mode 100644 index 00000000..6ee08175 --- /dev/null +++ b/patches/hadrian-fix-dnosmp @@ -0,0 +1,62 @@ +commit bea762f2c9d3ff1f67e3fdb22a8ac288b32225b0 +Author: Ilias Tsitsimpis +Date: Thu Oct 12 12:44:02 2023 +0300 + + hadrian: Pass -DNOSMP to C compiler when needed + + Hadrian passes the -DNOSMP flag to GHC when the target doesn't support + SMP, but doesn't pass it to CC as well, leading to the following + compilation error on mips64el: + + | Run Cc (FindCDependencies CDep) Stage1: rts/sm/NonMovingScav.c => _build/stage1/rts/build/c/sm/NonMovingScav.o.d + Command line: /usr/bin/mips64el-linux-gnuabi64-gcc -E -MM -MG -MF _build/stage1/rts/build/c/hooks/FlagDefaults.thr_debug_p_o.d -MT _build/stage1/rts/build/c/hooks/FlagDefaults.o -Irts/include -I_build/stage1/rts/build -I_build/stage1/rts/build/include -Irts/include -x c rts/hooks/FlagDefaults.c -Wall -Wextra -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Winline -Wpointer-arith -Wmissing-noreturn -Wnested-externs -Wredundant-decls -Wundef -fno-strict-aliasing -DTHREADED_RTS -DDEBUG -fomit-frame-pointer -O2 -g -Irts -I_build/stage1/rts/build -DDEBUG -fno-omit-frame-pointer -g3 -O0 + ===> Command failed with error code: 1 + In file included from rts/include/Stg.h:348, + from rts/include/Rts.h:38, + from rts/hooks/FlagDefaults.c:8: + rts/include/stg/SMP.h:416:2: error: #error memory barriers unimplemented on this architecture + 416 | #error memory barriers unimplemented on this architecture + | ^~~~~ + rts/include/stg/SMP.h:440:2: error: #error memory barriers unimplemented on this architecture + 440 | #error memory barriers unimplemented on this architecture + | ^~~~~ + rts/include/stg/SMP.h:464:2: error: #error memory barriers unimplemented on this architecture + 464 | #error memory barriers unimplemented on this architecture + | ^~~~~ + + The old make system correctly passed this flag to both GHC and CC [1]. + + Fix this error by passing -DNOSMP to CC as well. + + [1] https://gitlab.haskell.org/ghc/ghc/-/blob/00920f176b0235d5bb52a8e054d89a664f8938fe/rts/ghc.mk#L407 + + Closes #24082 + +Index: b/hadrian/src/Settings/Packages.hs +=================================================================== +--- a/hadrian/src/Settings/Packages.hs ++++ b/hadrian/src/Settings/Packages.hs +@@ -300,13 +300,11 @@ rtsPackageArgs = package rts ? do + -- Set the namespace for the rts fs functions + , arg $ "-DFS_NAMESPACE=rts" + , arg $ "-DCOMPILING_RTS" +- , notM targetSupportsSMP ? arg "-DNOSMP" + , way `elem` [debug, debugDynamic] ? pure [ "-DTICKY_TICKY" + , "-optc-DTICKY_TICKY"] + , Profiling `wayUnit` way ? arg "-DPROFILING" + , Threaded `wayUnit` way ? arg "-DTHREADED_RTS" +- , notM targetSupportsSMP ? pure [ "-DNOSMP" +- , "-optc-DNOSMP" ] ++ , notM targetSupportsSMP ? arg "-optc-DNOSMP" + ] + + let cArgs = mconcat +@@ -325,6 +323,8 @@ rtsPackageArgs = package rts ? do + , arg "-Irts" + , arg $ "-I" ++ path + ++ , notM targetSupportsSMP ? arg "-DNOSMP" ++ + , Debug `wayUnit` way ? pure [ "-DDEBUG" + , "-fno-omit-frame-pointer" + , "-g3" diff --git a/patches/hadrian-haddock-opts b/patches/hadrian-haddock-opts new file mode 100644 index 00000000..f3451af7 --- /dev/null +++ b/patches/hadrian-haddock-opts @@ -0,0 +1,26 @@ +Description: Pass 'mathjax' to Haddock + Hadrian currently doesn't allow us to modify Haddock options, so + patch Hadrian to manually pass the 'mathjax' option. +Author: Ilias Tsitsimpis +Bug: https://gitlab.haskell.org/ghc/ghc/-/issues/23625 + +Index: b/hadrian/src/Settings/Builders/Haddock.hs +=================================================================== +--- a/hadrian/src/Settings/Builders/Haddock.hs ++++ b/hadrian/src/Settings/Builders/Haddock.hs +@@ -32,6 +32,7 @@ haddockBuilderArgs = mconcat + , arg "-o", arg $ takeDirectory output + , arg "-t", arg "Haskell Hierarchical Libraries" + , arg "-p", arg "libraries/prologue.txt" ++ , arg "--mathjax=file:///usr/share/javascript/mathjax/MathJax.js" + , pure [ "--read-interface=" + ++ (takeFileName . takeDirectory) haddock + ++ "," ++ haddock | haddock <- inputs ] ] +@@ -60,6 +61,7 @@ haddockBuilderArgs = mconcat + , arg "--hyperlinked-source" + , arg "--hoogle" + , arg "--quickjump" ++ , arg "--mathjax=file:///usr/share/javascript/mathjax/MathJax.js" + , arg $ "--title=" ++ pkgName pkg ++ "-" ++ version + ++ ": " ++ synopsis + , arg $ "--prologue=" ++ takeDirectory output -/- "haddock-prologue.txt" diff --git a/patches/hadrian-iserv b/patches/hadrian-iserv new file mode 100644 index 00000000..e90b0c71 --- /dev/null +++ b/patches/hadrian-iserv @@ -0,0 +1,18 @@ +Description: Fix installation patch for iserv/unlit +Author: Ilias Tsitsimpis +Bug: https://gitlab.haskell.org/ghc/ghc/-/issues/22557 +Bug: https://gitlab.haskell.org/ghc/ghc/-/issues/22697 + +Index: b/hadrian/src/Packages.hs +=================================================================== +--- a/hadrian/src/Packages.hs ++++ b/hadrian/src/Packages.hs +@@ -192,7 +192,7 @@ programPath context@Context {..} = do + -- See: https://github.com/snowleopard/hadrian/issues/570 + -- Likewise for @iserv@ and @unlit@. + name <- programName context +- path <- if package `elem` [iserv, touchy, unlit] ++ path <- if package `elem` [touchy, unlit] + then stageLibPath stage <&> (-/- "bin") + else stageBinPath stage + return $ path -/- name <.> exe diff --git a/patches/hadrian-plans b/patches/hadrian-plans new file mode 100644 index 00000000..81c2ae9b --- /dev/null +++ b/patches/hadrian-plans @@ -0,0 +1,34 @@ +Description: Add more hadrian bootstrap plans + Hadrian only contains bootstrap plans for previous GHC versions. Add plans for + the current version as well, since we may want to bootstrap hadrian with a + cross-compiled GHC that is of the same version as the GHC we are building here. +Author: Ilias Tsitsimpis + +Index: b/hadrian/bootstrap/plan-9_4_6.json +=================================================================== +--- /dev/null ++++ b/hadrian/bootstrap/plan-9_4_6.json +@@ -0,0 +1 @@ ++{"cabal-version":"3.4.1.0","cabal-lib-version":"3.4.1.0","compiler-id":"ghc-9.4.6","os":"linux","arch":"x86_64","install-plan":[{"type":"configured","id":"Cabal-3.6.3.0-9b44de2892bc8ee66e4c5f0661a358916f6e8b399ac6ad695ee5c9e58baa9613","pkg-name":"Cabal","pkg-version":"3.6.3.0","flags":{"bundled-binary-generic":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"ff97c442b0c679c1c9876acd15f73ac4f602b973c45bde42b43ec28265ee48f4","pkg-src-sha256":"2fa1fe88d4a8e8ffbeb45baed5526b1267a2130026c846251ac95c656364ab77","depends":["array-0.5.4.0","base-4.17.2.0","binary-0.8.9.1","bytestring-0.11.5.1","containers-0.6.7","deepseq-1.4.8.0","directory-1.3.7.1","filepath-1.4.2.2","mtl-2.2.2","parsec-3.1.16.1","pretty-1.1.3.6","process-1.6.17.0","text-2.0.2","time-1.12.2","transformers-0.5.6.2","unix-2.7.3"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"QuickCheck-2.14.2-d6d060f5b311a98616ede1550a89995a67b481c4bf7a9a19a6b7d840a3e86468","pkg-name":"QuickCheck","pkg-version":"2.14.2","flags":{"old-random":false,"templatehaskell":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4ce29211223d5e6620ebceba34a3ca9ccf1c10c0cf387d48aea45599222ee5aa","pkg-src-sha256":"d87b6c85696b601175274361fa62217894401e401e150c3c5d4013ac53cd36f3","depends":["base-4.17.2.0","containers-0.6.7","deepseq-1.4.8.0","random-1.2.1.1-a52954d69fa9f2fd13ab19e06b3b99ff78488848fa8d4988c9b8d38740fb8d29","splitmix-0.1.0.4-fe9eba9a212fda01fa4960e960a860fd1c5c0836d8823d2eb47b151f673e827e","template-haskell-2.19.0.0","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"array-0.5.4.0","pkg-name":"array","pkg-version":"0.5.4.0","depends":["base-4.17.2.0"]},{"type":"pre-existing","id":"base-4.17.2.0","pkg-name":"base","pkg-version":"4.17.2.0","depends":["ghc-bignum-1.3","ghc-prim-0.9.1","rts"]},{"type":"pre-existing","id":"binary-0.8.9.1","pkg-name":"binary","pkg-version":"0.8.9.1","depends":["array-0.5.4.0","base-4.17.2.0","bytestring-0.11.5.1","containers-0.6.7"]},{"type":"pre-existing","id":"bytestring-0.11.5.1","pkg-name":"bytestring","pkg-version":"0.11.5.1","depends":["base-4.17.2.0","deepseq-1.4.8.0","ghc-prim-0.9.1","template-haskell-2.19.0.0"]},{"type":"configured","id":"clock-0.8.3-41f89c65179f44e0a0649ad23e0f7497f4adf34623cfa5fddd360fe74fd564ad","pkg-name":"clock","pkg-version":"0.8.3","flags":{"llvm":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"a692159828c2cd278eaec317b3a7e9fb6d7b787c8a19f086004d15d9fa1fd72c","pkg-src-sha256":"845ce5db4c98cefd517323e005f87effceff886987305e421c4ef616dc0505d1","depends":["base-4.17.2.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"containers-0.6.7","pkg-name":"containers","pkg-version":"0.6.7","depends":["array-0.5.4.0","base-4.17.2.0","deepseq-1.4.8.0","template-haskell-2.19.0.0"]},{"type":"pre-existing","id":"deepseq-1.4.8.0","pkg-name":"deepseq","pkg-version":"1.4.8.0","depends":["array-0.5.4.0","base-4.17.2.0","ghc-prim-0.9.1"]},{"type":"pre-existing","id":"directory-1.3.7.1","pkg-name":"directory","pkg-version":"1.3.7.1","depends":["base-4.17.2.0","filepath-1.4.2.2","time-1.12.2","unix-2.7.3"]},{"type":"configured","id":"extra-1.7.12-434bced0705a8981779e15a29962e546ac808b163b411b4b97589d29d8209466","pkg-name":"extra","pkg-version":"1.7.12","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"3ac58d7341976173d1052e7b2837d119212d9afcf911735667c7f1ab67aec25f","pkg-src-sha256":"e571a9ec1d8865f0fbb0e0ba1eb575f783b0365c80db19b54a93600bae43b03c","depends":["base-4.17.2.0","clock-0.8.3-41f89c65179f44e0a0649ad23e0f7497f4adf34623cfa5fddd360fe74fd564ad","directory-1.3.7.1","filepath-1.4.2.2","process-1.6.17.0","time-1.12.2","unix-2.7.3"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"filepath-1.4.2.2","pkg-name":"filepath","pkg-version":"1.4.2.2","depends":["base-4.17.2.0"]},{"type":"configured","id":"filepattern-0.1.3-b0b2315f3b9e7024c1aef0c603bc22a352750bc46cb50781e647cb3f865621c6","pkg-name":"filepattern","pkg-version":"0.1.3","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"372c1733d83b90045eb29da9f010fed79bfef8771ce65eb126a1d83ecc54a9a2","pkg-src-sha256":"cc445d439ea2f65cac7604d3578aa2c3a62e5a91dc989f4ce5b3390db9e59636","depends":["base-4.17.2.0","directory-1.3.7.1","extra-1.7.12-434bced0705a8981779e15a29962e546ac808b163b411b4b97589d29d8209466","filepath-1.4.2.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"ghc-bignum-1.3","pkg-name":"ghc-bignum","pkg-version":"1.3","depends":["ghc-prim-0.9.1"]},{"type":"pre-existing","id":"ghc-boot-th-9.4.6","pkg-name":"ghc-boot-th","pkg-version":"9.4.6","depends":["base-4.17.2.0"]},{"type":"pre-existing","id":"ghc-prim-0.9.1","pkg-name":"ghc-prim","pkg-version":"0.9.1","depends":["rts"]},{"type":"configured","id":"hadrian-0.1.0.0-inplace-hadrian","pkg-name":"hadrian","pkg-version":"0.1.0.0","flags":{"selftest":true,"threaded":true},"style":"local","pkg-src":{"type":"local","path":"/home/iliastsi/ghc-9.4.6/hadrian/."},"dist-dir":"/home/iliastsi/ghc-9.4.6/hadrian/dist-newstyle/build/x86_64-linux/ghc-9.4.6/hadrian-0.1.0.0/x/hadrian","depends":["Cabal-3.6.3.0-9b44de2892bc8ee66e4c5f0661a358916f6e8b399ac6ad695ee5c9e58baa9613","QuickCheck-2.14.2-d6d060f5b311a98616ede1550a89995a67b481c4bf7a9a19a6b7d840a3e86468","base-4.17.2.0","bytestring-0.11.5.1","containers-0.6.7","directory-1.3.7.1","extra-1.7.12-434bced0705a8981779e15a29962e546ac808b163b411b4b97589d29d8209466","filepath-1.4.2.2","mtl-2.2.2","parsec-3.1.16.1","shake-0.19.7-0a34884117d1c1ae051fb71ab291372738b4fe99639c85970f08dbdf7c0632db","text-2.0.2","transformers-0.5.6.2","unordered-containers-0.2.19.1-f82114f26b96029e9d31fbbac2eff9f87a29ae7b932dd6a6c104ee5985698fa2"],"exe-depends":[],"component-name":"exe:hadrian","bin-file":"/home/iliastsi/ghc-9.4.6/hadrian/dist-newstyle/build/x86_64-linux/ghc-9.4.6/hadrian-0.1.0.0/x/hadrian/build/hadrian/hadrian"},{"type":"configured","id":"hashable-1.4.1.0-a0435926dbbb79c9ca4322861d7386e81a6230fba4e7384807758367ad172ba9","pkg-name":"hashable","pkg-version":"1.4.1.0","flags":{"containers":true,"integer-gmp":true,"random-initial-seed":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"50b2f002c68fe67730ee7a3cd8607486197dd99b084255005ad51ecd6970a41b","pkg-src-sha256":"e1b305c280e66ad827edeaedd6933b9fc4174f626882877eab2a08344e665e87","depends":["base-4.17.2.0","bytestring-0.11.5.1","containers-0.6.7","deepseq-1.4.8.0","ghc-bignum-1.3","ghc-prim-0.9.1","text-2.0.2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"heaps-0.4-25b9e449dabfa5641f220ccd75254da5b3c5c5e97cead3596c6b069742284d0d","pkg-name":"heaps","pkg-version":"0.4","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"66b19fcd813b0e4db3e0bac541bd46606c3b13d3d081d9f9666f4be0f5ff14b8","pkg-src-sha256":"89329df8b95ae99ef272e41e7a2d0fe2f1bb7eacfcc34bc01664414b33067cfd","depends":["base-4.17.2.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"js-dgtable-0.5.2-2e674cc0727cb8f70a42e221d7ac7db71e7f5b10716b0fad22ffbac3128bb2fb","pkg-name":"js-dgtable","pkg-version":"0.5.2","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"f75cb4fa53c88c65794becdd48eb0d3b2b8abd89a3d5c19e87af91f5225c15e4","pkg-src-sha256":"e28dd65bee8083b17210134e22e01c6349dc33c3b7bd17705973cd014e9f20ac","depends":["base-4.17.2.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"js-flot-0.8.3-c96bff4f7307d099e369eb05541151317871057b30c3d7805785bdcb6b08b13e","pkg-name":"js-flot","pkg-version":"0.8.3","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4c1c447a9a2fba0adba6d30678302a30c32b9dfde9e7aa9e9156483e1545096d","pkg-src-sha256":"1ba2f2a6b8d85da76c41f526c98903cbb107f8642e506c072c1e7e3c20fe5e7a","depends":["base-4.17.2.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"js-jquery-3.3.1-404ee1f1c3234eabb7d34c9352c145a1ebfab26873526372794e56f688d8a956","pkg-name":"js-jquery","pkg-version":"3.3.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"59ab6c79159549ef94b584abce8e6d3b336014c2cce1337b59a8f637e2856df5","pkg-src-sha256":"e0e0681f0da1130ede4e03a051630ea439c458cb97216cdb01771ebdbe44069b","depends":["base-4.17.2.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"mtl-2.2.2","pkg-name":"mtl","pkg-version":"2.2.2","depends":["base-4.17.2.0","transformers-0.5.6.2"]},{"type":"pre-existing","id":"parsec-3.1.16.1","pkg-name":"parsec","pkg-version":"3.1.16.1","depends":["base-4.17.2.0","bytestring-0.11.5.1","mtl-2.2.2","text-2.0.2"]},{"type":"pre-existing","id":"pretty-1.1.3.6","pkg-name":"pretty","pkg-version":"1.1.3.6","depends":["base-4.17.2.0","deepseq-1.4.8.0","ghc-prim-0.9.1"]},{"type":"configured","id":"primitive-0.7.4.0-d672cef39004acba6d939788edfd616926e6632d4f05fe03b611aa6f07c73e1a","pkg-name":"primitive","pkg-version":"0.7.4.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"89b88a3e08493b7727fa4089b0692bfbdf7e1e666ef54635f458644eb8358764","pkg-src-sha256":"5b2d6dc2812eb2f6a115f05fcbe3e723d3aeff7894b012c617e075130581add5","depends":["base-4.17.2.0","deepseq-1.4.8.0","template-haskell-2.19.0.0","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"process-1.6.17.0","pkg-name":"process","pkg-version":"1.6.17.0","depends":["base-4.17.2.0","deepseq-1.4.8.0","directory-1.3.7.1","filepath-1.4.2.2","unix-2.7.3"]},{"type":"configured","id":"random-1.2.1.1-a52954d69fa9f2fd13ab19e06b3b99ff78488848fa8d4988c9b8d38740fb8d29","pkg-name":"random","pkg-version":"1.2.1.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"dea1f11e5569332dc6c8efaad1cb301016a5587b6754943a49f9de08ae0e56d9","pkg-src-sha256":"3e1272f7ed6a4d7bd1712b90143ec326fee9b225789222379fea20a9c90c9b76","depends":["base-4.17.2.0","bytestring-0.11.5.1","deepseq-1.4.8.0","mtl-2.2.2","splitmix-0.1.0.4-fe9eba9a212fda01fa4960e960a860fd1c5c0836d8823d2eb47b151f673e827e"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"rts","pkg-name":"rts","pkg-version":"1.0.2","depends":[]},{"type":"configured","id":"shake-0.19.7-0a34884117d1c1ae051fb71ab291372738b4fe99639c85970f08dbdf7c0632db","pkg-name":"shake","pkg-version":"0.19.7","flags":{"cloud":false,"embed-files":false,"portable":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4a0bf8b7d3b44448a0c0c506374b7388f65e88b17c10400def1ba06e37b2dc00","pkg-src-sha256":"352a56af12f70b50d564dcb61131555577281957ee196f1702a3723c0a3699d1","depends":["base-4.17.2.0","binary-0.8.9.1","bytestring-0.11.5.1","deepseq-1.4.8.0","directory-1.3.7.1","extra-1.7.12-434bced0705a8981779e15a29962e546ac808b163b411b4b97589d29d8209466","filepath-1.4.2.2","filepattern-0.1.3-b0b2315f3b9e7024c1aef0c603bc22a352750bc46cb50781e647cb3f865621c6","hashable-1.4.1.0-a0435926dbbb79c9ca4322861d7386e81a6230fba4e7384807758367ad172ba9","heaps-0.4-25b9e449dabfa5641f220ccd75254da5b3c5c5e97cead3596c6b069742284d0d","js-dgtable-0.5.2-2e674cc0727cb8f70a42e221d7ac7db71e7f5b10716b0fad22ffbac3128bb2fb","js-flot-0.8.3-c96bff4f7307d099e369eb05541151317871057b30c3d7805785bdcb6b08b13e","js-jquery-3.3.1-404ee1f1c3234eabb7d34c9352c145a1ebfab26873526372794e56f688d8a956","primitive-0.7.4.0-d672cef39004acba6d939788edfd616926e6632d4f05fe03b611aa6f07c73e1a","process-1.6.17.0","random-1.2.1.1-a52954d69fa9f2fd13ab19e06b3b99ff78488848fa8d4988c9b8d38740fb8d29","time-1.12.2","transformers-0.5.6.2","unix-2.7.3","unordered-containers-0.2.19.1-f82114f26b96029e9d31fbbac2eff9f87a29ae7b932dd6a6c104ee5985698fa2","utf8-string-1.0.2-70fa2c4f1361b1537db5ccdb8d6c11537d9c4b58c4f843409f50e45d0094a8ab"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"shake-0.19.7-e-shake-6a4c9d6afdee34a1d0751c17d079474c57c951c27c42bab6aeba79bf9f224277","pkg-name":"shake","pkg-version":"0.19.7","flags":{"cloud":false,"embed-files":false,"portable":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4a0bf8b7d3b44448a0c0c506374b7388f65e88b17c10400def1ba06e37b2dc00","pkg-src-sha256":"352a56af12f70b50d564dcb61131555577281957ee196f1702a3723c0a3699d1","depends":["base-4.17.2.0","binary-0.8.9.1","bytestring-0.11.5.1","deepseq-1.4.8.0","directory-1.3.7.1","extra-1.7.12-434bced0705a8981779e15a29962e546ac808b163b411b4b97589d29d8209466","filepath-1.4.2.2","filepattern-0.1.3-b0b2315f3b9e7024c1aef0c603bc22a352750bc46cb50781e647cb3f865621c6","hashable-1.4.1.0-a0435926dbbb79c9ca4322861d7386e81a6230fba4e7384807758367ad172ba9","heaps-0.4-25b9e449dabfa5641f220ccd75254da5b3c5c5e97cead3596c6b069742284d0d","js-dgtable-0.5.2-2e674cc0727cb8f70a42e221d7ac7db71e7f5b10716b0fad22ffbac3128bb2fb","js-flot-0.8.3-c96bff4f7307d099e369eb05541151317871057b30c3d7805785bdcb6b08b13e","js-jquery-3.3.1-404ee1f1c3234eabb7d34c9352c145a1ebfab26873526372794e56f688d8a956","primitive-0.7.4.0-d672cef39004acba6d939788edfd616926e6632d4f05fe03b611aa6f07c73e1a","process-1.6.17.0","random-1.2.1.1-a52954d69fa9f2fd13ab19e06b3b99ff78488848fa8d4988c9b8d38740fb8d29","time-1.12.2","transformers-0.5.6.2","unix-2.7.3","unordered-containers-0.2.19.1-f82114f26b96029e9d31fbbac2eff9f87a29ae7b932dd6a6c104ee5985698fa2","utf8-string-1.0.2-70fa2c4f1361b1537db5ccdb8d6c11537d9c4b58c4f843409f50e45d0094a8ab"],"exe-depends":[],"component-name":"exe:shake","bin-file":"/home/iliastsi/.cabal/store/ghc-9.4.6/shake-0.19.7-e-shake-6a4c9d6afdee34a1d0751c17d079474c57c951c27c42bab6aeba79bf9f224277/bin/shake"},{"type":"configured","id":"splitmix-0.1.0.4-fe9eba9a212fda01fa4960e960a860fd1c5c0836d8823d2eb47b151f673e827e","pkg-name":"splitmix","pkg-version":"0.1.0.4","flags":{"optimised-mixer":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"804e2574bc7e32d08cbab91e47ee6287b4df7d50851d73f9e778f94a9a7814c7","pkg-src-sha256":"6d065402394e7a9117093dbb4530a21342c9b1e2ec509516c8a8d0ffed98ecaa","depends":["base-4.17.2.0","deepseq-1.4.8.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"template-haskell-2.19.0.0","pkg-name":"template-haskell","pkg-version":"2.19.0.0","depends":["base-4.17.2.0","ghc-boot-th-9.4.6","ghc-prim-0.9.1","pretty-1.1.3.6"]},{"type":"pre-existing","id":"text-2.0.2","pkg-name":"text","pkg-version":"2.0.2","depends":["array-0.5.4.0","base-4.17.2.0","binary-0.8.9.1","bytestring-0.11.5.1","deepseq-1.4.8.0","ghc-prim-0.9.1","template-haskell-2.19.0.0"]},{"type":"pre-existing","id":"time-1.12.2","pkg-name":"time","pkg-version":"1.12.2","depends":["base-4.17.2.0","deepseq-1.4.8.0"]},{"type":"pre-existing","id":"transformers-0.5.6.2","pkg-name":"transformers","pkg-version":"0.5.6.2","depends":["base-4.17.2.0"]},{"type":"pre-existing","id":"unix-2.7.3","pkg-name":"unix","pkg-version":"2.7.3","depends":["base-4.17.2.0","bytestring-0.11.5.1","time-1.12.2"]},{"type":"configured","id":"unordered-containers-0.2.19.1-f82114f26b96029e9d31fbbac2eff9f87a29ae7b932dd6a6c104ee5985698fa2","pkg-name":"unordered-containers","pkg-version":"0.2.19.1","flags":{"debug":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"db11042bb0356c0adea277d0794743829125b4c99455af6af2bd5f7bd5e88a39","pkg-src-sha256":"1b27bec5e0d522b27a6029ebf4c4a6d40acbc083c787008e32fb55c4b1d128d2","depends":["base-4.17.2.0","deepseq-1.4.8.0","hashable-1.4.1.0-a0435926dbbb79c9ca4322861d7386e81a6230fba4e7384807758367ad172ba9","template-haskell-2.19.0.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"utf8-string-1.0.2-70fa2c4f1361b1537db5ccdb8d6c11537d9c4b58c4f843409f50e45d0094a8ab","pkg-name":"utf8-string","pkg-version":"1.0.2","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"79416292186feeaf1f60e49ac5a1ffae9bf1b120e040a74bf0e81ca7f1d31d3f","pkg-src-sha256":"ee48deada7600370728c4156cb002441de770d0121ae33a68139a9ed9c19b09a","depends":["base-4.17.2.0","bytestring-0.11.5.1"],"exe-depends":[],"component-name":"lib"}]} +\ No newline at end of file +Index: b/hadrian/bootstrap/plan-bootstrap-9_4_6.json +=================================================================== +--- /dev/null ++++ b/hadrian/bootstrap/plan-bootstrap-9_4_6.json +@@ -0,0 +1 @@ ++{"builtin":[{"package":"rts","version":"1.0.2"},{"package":"ghc-prim","version":"0.9.1"},{"package":"ghc-bignum","version":"1.3"},{"package":"base","version":"4.17.2.0"},{"package":"array","version":"0.5.4.0"},{"package":"deepseq","version":"1.4.8.0"},{"package":"ghc-boot-th","version":"9.4.6"},{"package":"pretty","version":"1.1.3.6"},{"package":"template-haskell","version":"2.19.0.0"},{"package":"bytestring","version":"0.11.5.1"},{"package":"containers","version":"0.6.7"},{"package":"binary","version":"0.8.9.1"},{"package":"filepath","version":"1.4.2.2"},{"package":"time","version":"1.12.2"},{"package":"unix","version":"2.7.3"},{"package":"directory","version":"1.3.7.1"},{"package":"transformers","version":"0.5.6.2"},{"package":"mtl","version":"2.2.2"},{"package":"text","version":"2.0.2"},{"package":"parsec","version":"3.1.16.1"},{"package":"process","version":"1.6.17.0"}],"dependencies":[{"cabal_sha256":"ff97c442b0c679c1c9876acd15f73ac4f602b973c45bde42b43ec28265ee48f4","flags":["-bundled-binary-generic"],"package":"Cabal","revision":0,"source":"hackage","src_sha256":"2fa1fe88d4a8e8ffbeb45baed5526b1267a2130026c846251ac95c656364ab77","version":"3.6.3.0"},{"cabal_sha256":"db25c2e17967aa6b6046ab8b1b96ba3f344ca59a62b60fb6113d51ea305a3d8e","flags":["-optimised-mixer"],"package":"splitmix","revision":2,"source":"hackage","src_sha256":"6d065402394e7a9117093dbb4530a21342c9b1e2ec509516c8a8d0ffed98ecaa","version":"0.1.0.4"},{"cabal_sha256":"dea1f11e5569332dc6c8efaad1cb301016a5587b6754943a49f9de08ae0e56d9","flags":[],"package":"random","revision":0,"source":"hackage","src_sha256":"3e1272f7ed6a4d7bd1712b90143ec326fee9b225789222379fea20a9c90c9b76","version":"1.2.1.1"},{"cabal_sha256":"4ce29211223d5e6620ebceba34a3ca9ccf1c10c0cf387d48aea45599222ee5aa","flags":["-old-random","+templatehaskell"],"package":"QuickCheck","revision":0,"source":"hackage","src_sha256":"d87b6c85696b601175274361fa62217894401e401e150c3c5d4013ac53cd36f3","version":"2.14.2"},{"cabal_sha256":"a692159828c2cd278eaec317b3a7e9fb6d7b787c8a19f086004d15d9fa1fd72c","flags":["-llvm"],"package":"clock","revision":0,"source":"hackage","src_sha256":"845ce5db4c98cefd517323e005f87effceff886987305e421c4ef616dc0505d1","version":"0.8.3"},{"cabal_sha256":"3ac58d7341976173d1052e7b2837d119212d9afcf911735667c7f1ab67aec25f","flags":[],"package":"extra","revision":0,"source":"hackage","src_sha256":"e571a9ec1d8865f0fbb0e0ba1eb575f783b0365c80db19b54a93600bae43b03c","version":"1.7.12"},{"cabal_sha256":"372c1733d83b90045eb29da9f010fed79bfef8771ce65eb126a1d83ecc54a9a2","flags":[],"package":"filepattern","revision":0,"source":"hackage","src_sha256":"cc445d439ea2f65cac7604d3578aa2c3a62e5a91dc989f4ce5b3390db9e59636","version":"0.1.3"},{"cabal_sha256":"50b2f002c68fe67730ee7a3cd8607486197dd99b084255005ad51ecd6970a41b","flags":["+containers","+integer-gmp","-random-initial-seed"],"package":"hashable","revision":0,"source":"hackage","src_sha256":"e1b305c280e66ad827edeaedd6933b9fc4174f626882877eab2a08344e665e87","version":"1.4.1.0"},{"cabal_sha256":"66b19fcd813b0e4db3e0bac541bd46606c3b13d3d081d9f9666f4be0f5ff14b8","flags":[],"package":"heaps","revision":0,"source":"hackage","src_sha256":"89329df8b95ae99ef272e41e7a2d0fe2f1bb7eacfcc34bc01664414b33067cfd","version":"0.4"},{"cabal_sha256":"f75cb4fa53c88c65794becdd48eb0d3b2b8abd89a3d5c19e87af91f5225c15e4","flags":[],"package":"js-dgtable","revision":0,"source":"hackage","src_sha256":"e28dd65bee8083b17210134e22e01c6349dc33c3b7bd17705973cd014e9f20ac","version":"0.5.2"},{"cabal_sha256":"4c1c447a9a2fba0adba6d30678302a30c32b9dfde9e7aa9e9156483e1545096d","flags":[],"package":"js-flot","revision":0,"source":"hackage","src_sha256":"1ba2f2a6b8d85da76c41f526c98903cbb107f8642e506c072c1e7e3c20fe5e7a","version":"0.8.3"},{"cabal_sha256":"59ab6c79159549ef94b584abce8e6d3b336014c2cce1337b59a8f637e2856df5","flags":[],"package":"js-jquery","revision":0,"source":"hackage","src_sha256":"e0e0681f0da1130ede4e03a051630ea439c458cb97216cdb01771ebdbe44069b","version":"3.3.1"},{"cabal_sha256":"c2f0ed97b3dce97f2f43b239c3be8b136e4368f1eb7b61322ee9ac98f604622b","flags":[],"package":"primitive","revision":1,"source":"hackage","src_sha256":"5b2d6dc2812eb2f6a115f05fcbe3e723d3aeff7894b012c617e075130581add5","version":"0.7.4.0"},{"cabal_sha256":"9ad8972c2e913c37b1d4f0e1261517fd7a1b8c8a58077e057be69837e3dbaa00","flags":["-debug"],"package":"unordered-containers","revision":2,"source":"hackage","src_sha256":"1b27bec5e0d522b27a6029ebf4c4a6d40acbc083c787008e32fb55c4b1d128d2","version":"0.2.19.1"},{"cabal_sha256":"79416292186feeaf1f60e49ac5a1ffae9bf1b120e040a74bf0e81ca7f1d31d3f","flags":[],"package":"utf8-string","revision":0,"source":"hackage","src_sha256":"ee48deada7600370728c4156cb002441de770d0121ae33a68139a9ed9c19b09a","version":"1.0.2"},{"cabal_sha256":"3cb5814cce210b9756fa9246ff1b2a1e1b86be46fdc4c5e2baacdc5bf83ce5c3","flags":["-cloud","-embed-files","-portable"],"package":"shake","revision":1,"source":"hackage","src_sha256":"352a56af12f70b50d564dcb61131555577281957ee196f1702a3723c0a3699d1","version":"0.19.7"},{"cabal_sha256":null,"flags":["+selftest","+threaded"],"package":"hadrian","revision":null,"source":"local","src_sha256":null,"version":"0.1.0.0"}]} +\ No newline at end of file +Index: b/hadrian/bootstrap/plan-9_4_7.json +=================================================================== +--- /dev/null ++++ b/hadrian/bootstrap/plan-9_4_7.json +@@ -0,0 +1 @@ ++{"cabal-version":"3.4.1.0","cabal-lib-version":"3.4.1.0","compiler-id":"ghc-9.4.7","os":"linux","arch":"x86_64","install-plan":[{"type":"pre-existing","id":"Cabal-3.8.1.0","pkg-name":"Cabal","pkg-version":"3.8.1.0","depends":["Cabal-syntax-3.8.1.0","array-0.5.4.0","base-4.17.2.0","bytestring-0.11.5.2","containers-0.6.7","deepseq-1.4.8.0","directory-1.3.7.1","filepath-1.4.2.2","mtl-2.2.2","parsec-3.1.16.1","pretty-1.1.3.6","process-1.6.17.0","text-2.0.2","time-1.12.2","transformers-0.5.6.2","unix-2.7.3"]},{"type":"pre-existing","id":"Cabal-syntax-3.8.1.0","pkg-name":"Cabal-syntax","pkg-version":"3.8.1.0","depends":["array-0.5.4.0","base-4.17.2.0","binary-0.8.9.1","bytestring-0.11.5.2","containers-0.6.7","deepseq-1.4.8.0","directory-1.3.7.1","filepath-1.4.2.2","mtl-2.2.2","parsec-3.1.16.1","pretty-1.1.3.6","text-2.0.2","time-1.12.2","transformers-0.5.6.2","unix-2.7.3"]},{"type":"configured","id":"QuickCheck-2.14.2-2c61a471e54e8db3e854373ee6ce25d6617b5d3aea54773093a75ea5673a6a3d","pkg-name":"QuickCheck","pkg-version":"2.14.2","flags":{"old-random":false,"templatehaskell":true},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4ce29211223d5e6620ebceba34a3ca9ccf1c10c0cf387d48aea45599222ee5aa","pkg-src-sha256":"d87b6c85696b601175274361fa62217894401e401e150c3c5d4013ac53cd36f3","depends":["base-4.17.2.0","containers-0.6.7","deepseq-1.4.8.0","random-1.2.1.1-133900be89374336b8ef3d0d416d09cc1f8d0db494e6d253066d8b628ffa2c90","splitmix-0.1.0.4-c9bdc990d84f70c85edf41640dfcb7a846636c0902cf0042545d76a4b66ef88d","template-haskell-2.19.0.0","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"array-0.5.4.0","pkg-name":"array","pkg-version":"0.5.4.0","depends":["base-4.17.2.0"]},{"type":"pre-existing","id":"base-4.17.2.0","pkg-name":"base","pkg-version":"4.17.2.0","depends":["ghc-bignum-1.3","ghc-prim-0.9.1","rts-1.0.2"]},{"type":"pre-existing","id":"binary-0.8.9.1","pkg-name":"binary","pkg-version":"0.8.9.1","depends":["array-0.5.4.0","base-4.17.2.0","bytestring-0.11.5.2","containers-0.6.7"]},{"type":"pre-existing","id":"bytestring-0.11.5.2","pkg-name":"bytestring","pkg-version":"0.11.5.2","depends":["base-4.17.2.0","deepseq-1.4.8.0","ghc-prim-0.9.1","template-haskell-2.19.0.0"]},{"type":"configured","id":"clock-0.8.3-60680da922574f4dcc2cb81381cef985fd703365e4dd6815dcdfb1c9ea0a5173","pkg-name":"clock","pkg-version":"0.8.3","flags":{"llvm":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"a692159828c2cd278eaec317b3a7e9fb6d7b787c8a19f086004d15d9fa1fd72c","pkg-src-sha256":"845ce5db4c98cefd517323e005f87effceff886987305e421c4ef616dc0505d1","depends":["base-4.17.2.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"containers-0.6.7","pkg-name":"containers","pkg-version":"0.6.7","depends":["array-0.5.4.0","base-4.17.2.0","deepseq-1.4.8.0","template-haskell-2.19.0.0"]},{"type":"pre-existing","id":"deepseq-1.4.8.0","pkg-name":"deepseq","pkg-version":"1.4.8.0","depends":["array-0.5.4.0","base-4.17.2.0","ghc-prim-0.9.1"]},{"type":"pre-existing","id":"directory-1.3.7.1","pkg-name":"directory","pkg-version":"1.3.7.1","depends":["base-4.17.2.0","filepath-1.4.2.2","time-1.12.2","unix-2.7.3"]},{"type":"configured","id":"extra-1.7.12-29a3609566f3846fb68ff3c4e447f6e5305dbdffb532dcd11a61ce8302bdb76d","pkg-name":"extra","pkg-version":"1.7.12","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"3ac58d7341976173d1052e7b2837d119212d9afcf911735667c7f1ab67aec25f","pkg-src-sha256":"e571a9ec1d8865f0fbb0e0ba1eb575f783b0365c80db19b54a93600bae43b03c","depends":["base-4.17.2.0","clock-0.8.3-60680da922574f4dcc2cb81381cef985fd703365e4dd6815dcdfb1c9ea0a5173","directory-1.3.7.1","filepath-1.4.2.2","process-1.6.17.0","time-1.12.2","unix-2.7.3"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"filepath-1.4.2.2","pkg-name":"filepath","pkg-version":"1.4.2.2","depends":["base-4.17.2.0"]},{"type":"configured","id":"filepattern-0.1.3-ec2af416cdbcc708bf283cc354256aa16116517da64efbc13da67e5cf8934991","pkg-name":"filepattern","pkg-version":"0.1.3","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"372c1733d83b90045eb29da9f010fed79bfef8771ce65eb126a1d83ecc54a9a2","pkg-src-sha256":"cc445d439ea2f65cac7604d3578aa2c3a62e5a91dc989f4ce5b3390db9e59636","depends":["base-4.17.2.0","directory-1.3.7.1","extra-1.7.12-29a3609566f3846fb68ff3c4e447f6e5305dbdffb532dcd11a61ce8302bdb76d","filepath-1.4.2.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"ghc-bignum-1.3","pkg-name":"ghc-bignum","pkg-version":"1.3","depends":["ghc-prim-0.9.1"]},{"type":"pre-existing","id":"ghc-boot-th-9.4.7","pkg-name":"ghc-boot-th","pkg-version":"9.4.7","depends":["base-4.17.2.0"]},{"type":"pre-existing","id":"ghc-prim-0.9.1","pkg-name":"ghc-prim","pkg-version":"0.9.1","depends":["rts-1.0.2"]},{"type":"configured","id":"hadrian-0.1.0.0-inplace-hadrian","pkg-name":"hadrian","pkg-version":"0.1.0.0","flags":{"selftest":true,"threaded":true},"style":"local","pkg-src":{"type":"local","path":"/build/ghc-9.4.7/hadrian/."},"dist-dir":"/build/ghc-9.4.7/hadrian/dist-newstyle/build/x86_64-linux/ghc-9.4.7/hadrian-0.1.0.0/x/hadrian","depends":["Cabal-3.8.1.0","QuickCheck-2.14.2-2c61a471e54e8db3e854373ee6ce25d6617b5d3aea54773093a75ea5673a6a3d","base-4.17.2.0","bytestring-0.11.5.2","containers-0.6.7","directory-1.3.7.1","extra-1.7.12-29a3609566f3846fb68ff3c4e447f6e5305dbdffb532dcd11a61ce8302bdb76d","filepath-1.4.2.2","mtl-2.2.2","parsec-3.1.16.1","shake-0.19.7-606795c3537efa6a043c6eab8fc06ef2a0f357406a3d612ae27318bf2ad51f3b","text-2.0.2","transformers-0.5.6.2","unordered-containers-0.2.19.1-6cd6b29e7b2b508810255877ba7ad5157aa89b8c4afaa42c0d48f65dcc6c622c"],"exe-depends":[],"component-name":"exe:hadrian","bin-file":"/build/ghc-9.4.7/hadrian/dist-newstyle/build/x86_64-linux/ghc-9.4.7/hadrian-0.1.0.0/x/hadrian/build/hadrian/hadrian"},{"type":"configured","id":"hashable-1.4.1.0-e1a0a62b24990d9b67068e289933c09acf3bab75fa165ef2a2e7fd1c68b53368","pkg-name":"hashable","pkg-version":"1.4.1.0","flags":{"containers":true,"integer-gmp":true,"random-initial-seed":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"50b2f002c68fe67730ee7a3cd8607486197dd99b084255005ad51ecd6970a41b","pkg-src-sha256":"e1b305c280e66ad827edeaedd6933b9fc4174f626882877eab2a08344e665e87","depends":["base-4.17.2.0","bytestring-0.11.5.2","containers-0.6.7","deepseq-1.4.8.0","ghc-bignum-1.3","ghc-prim-0.9.1","text-2.0.2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"heaps-0.4-9a77df4e3db3d50a3637137af4f3f2c10095c04ac23988b3e9c72116053f5c6b","pkg-name":"heaps","pkg-version":"0.4","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"66b19fcd813b0e4db3e0bac541bd46606c3b13d3d081d9f9666f4be0f5ff14b8","pkg-src-sha256":"89329df8b95ae99ef272e41e7a2d0fe2f1bb7eacfcc34bc01664414b33067cfd","depends":["base-4.17.2.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"js-dgtable-0.5.2-094ee8872eb10913dc0a4350523def131afcebe1cf1a50cc5c29f687abc622c9","pkg-name":"js-dgtable","pkg-version":"0.5.2","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"f75cb4fa53c88c65794becdd48eb0d3b2b8abd89a3d5c19e87af91f5225c15e4","pkg-src-sha256":"e28dd65bee8083b17210134e22e01c6349dc33c3b7bd17705973cd014e9f20ac","depends":["base-4.17.2.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"js-flot-0.8.3-fbfb60e628ed902edbd1d03606b546b320963590fbaf653dbe7b3df0086c4c2c","pkg-name":"js-flot","pkg-version":"0.8.3","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4c1c447a9a2fba0adba6d30678302a30c32b9dfde9e7aa9e9156483e1545096d","pkg-src-sha256":"1ba2f2a6b8d85da76c41f526c98903cbb107f8642e506c072c1e7e3c20fe5e7a","depends":["base-4.17.2.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"js-jquery-3.3.1-0dd26cbd63adfa57d02a6ab830dac2a6776b4c32af37950f31f0810ef850e5ab","pkg-name":"js-jquery","pkg-version":"3.3.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"59ab6c79159549ef94b584abce8e6d3b336014c2cce1337b59a8f637e2856df5","pkg-src-sha256":"e0e0681f0da1130ede4e03a051630ea439c458cb97216cdb01771ebdbe44069b","depends":["base-4.17.2.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"mtl-2.2.2","pkg-name":"mtl","pkg-version":"2.2.2","depends":["base-4.17.2.0","transformers-0.5.6.2"]},{"type":"pre-existing","id":"parsec-3.1.16.1","pkg-name":"parsec","pkg-version":"3.1.16.1","depends":["base-4.17.2.0","bytestring-0.11.5.2","mtl-2.2.2","text-2.0.2"]},{"type":"pre-existing","id":"pretty-1.1.3.6","pkg-name":"pretty","pkg-version":"1.1.3.6","depends":["base-4.17.2.0","deepseq-1.4.8.0","ghc-prim-0.9.1"]},{"type":"configured","id":"primitive-0.7.4.0-1bfcae07bbe7a4c30cf0212d7cff521f3f15d455031c5e55a5f87a2712756619","pkg-name":"primitive","pkg-version":"0.7.4.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"89b88a3e08493b7727fa4089b0692bfbdf7e1e666ef54635f458644eb8358764","pkg-src-sha256":"5b2d6dc2812eb2f6a115f05fcbe3e723d3aeff7894b012c617e075130581add5","depends":["base-4.17.2.0","deepseq-1.4.8.0","template-haskell-2.19.0.0","transformers-0.5.6.2"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"process-1.6.17.0","pkg-name":"process","pkg-version":"1.6.17.0","depends":["base-4.17.2.0","deepseq-1.4.8.0","directory-1.3.7.1","filepath-1.4.2.2","unix-2.7.3"]},{"type":"configured","id":"random-1.2.1.1-133900be89374336b8ef3d0d416d09cc1f8d0db494e6d253066d8b628ffa2c90","pkg-name":"random","pkg-version":"1.2.1.1","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"dea1f11e5569332dc6c8efaad1cb301016a5587b6754943a49f9de08ae0e56d9","pkg-src-sha256":"3e1272f7ed6a4d7bd1712b90143ec326fee9b225789222379fea20a9c90c9b76","depends":["base-4.17.2.0","bytestring-0.11.5.2","deepseq-1.4.8.0","mtl-2.2.2","splitmix-0.1.0.4-c9bdc990d84f70c85edf41640dfcb7a846636c0902cf0042545d76a4b66ef88d"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"rts-1.0.2","pkg-name":"rts","pkg-version":"1.0.2","depends":[]},{"type":"configured","id":"shake-0.19.7-606795c3537efa6a043c6eab8fc06ef2a0f357406a3d612ae27318bf2ad51f3b","pkg-name":"shake","pkg-version":"0.19.7","flags":{"cloud":false,"embed-files":false,"portable":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4a0bf8b7d3b44448a0c0c506374b7388f65e88b17c10400def1ba06e37b2dc00","pkg-src-sha256":"352a56af12f70b50d564dcb61131555577281957ee196f1702a3723c0a3699d1","depends":["base-4.17.2.0","binary-0.8.9.1","bytestring-0.11.5.2","deepseq-1.4.8.0","directory-1.3.7.1","extra-1.7.12-29a3609566f3846fb68ff3c4e447f6e5305dbdffb532dcd11a61ce8302bdb76d","filepath-1.4.2.2","filepattern-0.1.3-ec2af416cdbcc708bf283cc354256aa16116517da64efbc13da67e5cf8934991","hashable-1.4.1.0-e1a0a62b24990d9b67068e289933c09acf3bab75fa165ef2a2e7fd1c68b53368","heaps-0.4-9a77df4e3db3d50a3637137af4f3f2c10095c04ac23988b3e9c72116053f5c6b","js-dgtable-0.5.2-094ee8872eb10913dc0a4350523def131afcebe1cf1a50cc5c29f687abc622c9","js-flot-0.8.3-fbfb60e628ed902edbd1d03606b546b320963590fbaf653dbe7b3df0086c4c2c","js-jquery-3.3.1-0dd26cbd63adfa57d02a6ab830dac2a6776b4c32af37950f31f0810ef850e5ab","primitive-0.7.4.0-1bfcae07bbe7a4c30cf0212d7cff521f3f15d455031c5e55a5f87a2712756619","process-1.6.17.0","random-1.2.1.1-133900be89374336b8ef3d0d416d09cc1f8d0db494e6d253066d8b628ffa2c90","time-1.12.2","transformers-0.5.6.2","unix-2.7.3","unordered-containers-0.2.19.1-6cd6b29e7b2b508810255877ba7ad5157aa89b8c4afaa42c0d48f65dcc6c622c","utf8-string-1.0.2-345983e5c7a6c6cf03fc29fd6e582ef4fae34f87a1835d6facaefcb954a9cb22"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"shake-0.19.7-e-shake-37919e6f6dea6a5cad2e8153414902e084fc9388aa18562ca1c7dc395c35fbff","pkg-name":"shake","pkg-version":"0.19.7","flags":{"cloud":false,"embed-files":false,"portable":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"4a0bf8b7d3b44448a0c0c506374b7388f65e88b17c10400def1ba06e37b2dc00","pkg-src-sha256":"352a56af12f70b50d564dcb61131555577281957ee196f1702a3723c0a3699d1","depends":["base-4.17.2.0","binary-0.8.9.1","bytestring-0.11.5.2","deepseq-1.4.8.0","directory-1.3.7.1","extra-1.7.12-29a3609566f3846fb68ff3c4e447f6e5305dbdffb532dcd11a61ce8302bdb76d","filepath-1.4.2.2","filepattern-0.1.3-ec2af416cdbcc708bf283cc354256aa16116517da64efbc13da67e5cf8934991","hashable-1.4.1.0-e1a0a62b24990d9b67068e289933c09acf3bab75fa165ef2a2e7fd1c68b53368","heaps-0.4-9a77df4e3db3d50a3637137af4f3f2c10095c04ac23988b3e9c72116053f5c6b","js-dgtable-0.5.2-094ee8872eb10913dc0a4350523def131afcebe1cf1a50cc5c29f687abc622c9","js-flot-0.8.3-fbfb60e628ed902edbd1d03606b546b320963590fbaf653dbe7b3df0086c4c2c","js-jquery-3.3.1-0dd26cbd63adfa57d02a6ab830dac2a6776b4c32af37950f31f0810ef850e5ab","primitive-0.7.4.0-1bfcae07bbe7a4c30cf0212d7cff521f3f15d455031c5e55a5f87a2712756619","process-1.6.17.0","random-1.2.1.1-133900be89374336b8ef3d0d416d09cc1f8d0db494e6d253066d8b628ffa2c90","time-1.12.2","transformers-0.5.6.2","unix-2.7.3","unordered-containers-0.2.19.1-6cd6b29e7b2b508810255877ba7ad5157aa89b8c4afaa42c0d48f65dcc6c622c","utf8-string-1.0.2-345983e5c7a6c6cf03fc29fd6e582ef4fae34f87a1835d6facaefcb954a9cb22"],"exe-depends":[],"component-name":"exe:shake","bin-file":"/home/iliastsi/.cabal/store/ghc-9.4.7/shake-0.19.7-e-shake-37919e6f6dea6a5cad2e8153414902e084fc9388aa18562ca1c7dc395c35fbff/bin/shake"},{"type":"configured","id":"splitmix-0.1.0.4-c9bdc990d84f70c85edf41640dfcb7a846636c0902cf0042545d76a4b66ef88d","pkg-name":"splitmix","pkg-version":"0.1.0.4","flags":{"optimised-mixer":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"804e2574bc7e32d08cbab91e47ee6287b4df7d50851d73f9e778f94a9a7814c7","pkg-src-sha256":"6d065402394e7a9117093dbb4530a21342c9b1e2ec509516c8a8d0ffed98ecaa","depends":["base-4.17.2.0","deepseq-1.4.8.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"template-haskell-2.19.0.0","pkg-name":"template-haskell","pkg-version":"2.19.0.0","depends":["base-4.17.2.0","ghc-boot-th-9.4.7","ghc-prim-0.9.1","pretty-1.1.3.6"]},{"type":"pre-existing","id":"text-2.0.2","pkg-name":"text","pkg-version":"2.0.2","depends":["array-0.5.4.0","base-4.17.2.0","binary-0.8.9.1","bytestring-0.11.5.2","deepseq-1.4.8.0","ghc-prim-0.9.1","template-haskell-2.19.0.0"]},{"type":"pre-existing","id":"time-1.12.2","pkg-name":"time","pkg-version":"1.12.2","depends":["base-4.17.2.0","deepseq-1.4.8.0"]},{"type":"pre-existing","id":"transformers-0.5.6.2","pkg-name":"transformers","pkg-version":"0.5.6.2","depends":["base-4.17.2.0"]},{"type":"pre-existing","id":"unix-2.7.3","pkg-name":"unix","pkg-version":"2.7.3","depends":["base-4.17.2.0","bytestring-0.11.5.2","time-1.12.2"]},{"type":"configured","id":"unordered-containers-0.2.19.1-6cd6b29e7b2b508810255877ba7ad5157aa89b8c4afaa42c0d48f65dcc6c622c","pkg-name":"unordered-containers","pkg-version":"0.2.19.1","flags":{"debug":false},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"db11042bb0356c0adea277d0794743829125b4c99455af6af2bd5f7bd5e88a39","pkg-src-sha256":"1b27bec5e0d522b27a6029ebf4c4a6d40acbc083c787008e32fb55c4b1d128d2","depends":["base-4.17.2.0","deepseq-1.4.8.0","hashable-1.4.1.0-e1a0a62b24990d9b67068e289933c09acf3bab75fa165ef2a2e7fd1c68b53368","template-haskell-2.19.0.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"utf8-string-1.0.2-345983e5c7a6c6cf03fc29fd6e582ef4fae34f87a1835d6facaefcb954a9cb22","pkg-name":"utf8-string","pkg-version":"1.0.2","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"79416292186feeaf1f60e49ac5a1ffae9bf1b120e040a74bf0e81ca7f1d31d3f","pkg-src-sha256":"ee48deada7600370728c4156cb002441de770d0121ae33a68139a9ed9c19b09a","depends":["base-4.17.2.0","bytestring-0.11.5.2"],"exe-depends":[],"component-name":"lib"}]} +\ No newline at end of file +Index: b/hadrian/bootstrap/plan-bootstrap-9_4_7.json +=================================================================== +--- /dev/null ++++ b/hadrian/bootstrap/plan-bootstrap-9_4_7.json +@@ -0,0 +1 @@ ++{"builtin":[{"package":"rts","version":"1.0.2"},{"package":"ghc-prim","version":"0.9.1"},{"package":"ghc-bignum","version":"1.3"},{"package":"base","version":"4.17.2.0"},{"package":"array","version":"0.5.4.0"},{"package":"deepseq","version":"1.4.8.0"},{"package":"ghc-boot-th","version":"9.4.7"},{"package":"pretty","version":"1.1.3.6"},{"package":"template-haskell","version":"2.19.0.0"},{"package":"bytestring","version":"0.11.5.2"},{"package":"containers","version":"0.6.7"},{"package":"binary","version":"0.8.9.1"},{"package":"filepath","version":"1.4.2.2"},{"package":"time","version":"1.12.2"},{"package":"unix","version":"2.7.3"},{"package":"directory","version":"1.3.7.1"},{"package":"transformers","version":"0.5.6.2"},{"package":"mtl","version":"2.2.2"},{"package":"text","version":"2.0.2"},{"package":"parsec","version":"3.1.16.1"},{"package":"Cabal-syntax","version":"3.8.1.0"},{"package":"process","version":"1.6.17.0"},{"package":"Cabal","version":"3.8.1.0"}],"dependencies":[{"cabal_sha256":"db25c2e17967aa6b6046ab8b1b96ba3f344ca59a62b60fb6113d51ea305a3d8e","flags":["-optimised-mixer"],"package":"splitmix","revision":2,"source":"hackage","src_sha256":"6d065402394e7a9117093dbb4530a21342c9b1e2ec509516c8a8d0ffed98ecaa","version":"0.1.0.4"},{"cabal_sha256":"dea1f11e5569332dc6c8efaad1cb301016a5587b6754943a49f9de08ae0e56d9","flags":[],"package":"random","revision":0,"source":"hackage","src_sha256":"3e1272f7ed6a4d7bd1712b90143ec326fee9b225789222379fea20a9c90c9b76","version":"1.2.1.1"},{"cabal_sha256":"4ce29211223d5e6620ebceba34a3ca9ccf1c10c0cf387d48aea45599222ee5aa","flags":["-old-random","+templatehaskell"],"package":"QuickCheck","revision":0,"source":"hackage","src_sha256":"d87b6c85696b601175274361fa62217894401e401e150c3c5d4013ac53cd36f3","version":"2.14.2"},{"cabal_sha256":"a692159828c2cd278eaec317b3a7e9fb6d7b787c8a19f086004d15d9fa1fd72c","flags":["-llvm"],"package":"clock","revision":0,"source":"hackage","src_sha256":"845ce5db4c98cefd517323e005f87effceff886987305e421c4ef616dc0505d1","version":"0.8.3"},{"cabal_sha256":"3ac58d7341976173d1052e7b2837d119212d9afcf911735667c7f1ab67aec25f","flags":[],"package":"extra","revision":0,"source":"hackage","src_sha256":"e571a9ec1d8865f0fbb0e0ba1eb575f783b0365c80db19b54a93600bae43b03c","version":"1.7.12"},{"cabal_sha256":"372c1733d83b90045eb29da9f010fed79bfef8771ce65eb126a1d83ecc54a9a2","flags":[],"package":"filepattern","revision":0,"source":"hackage","src_sha256":"cc445d439ea2f65cac7604d3578aa2c3a62e5a91dc989f4ce5b3390db9e59636","version":"0.1.3"},{"cabal_sha256":"50b2f002c68fe67730ee7a3cd8607486197dd99b084255005ad51ecd6970a41b","flags":["+containers","+integer-gmp","-random-initial-seed"],"package":"hashable","revision":0,"source":"hackage","src_sha256":"e1b305c280e66ad827edeaedd6933b9fc4174f626882877eab2a08344e665e87","version":"1.4.1.0"},{"cabal_sha256":"66b19fcd813b0e4db3e0bac541bd46606c3b13d3d081d9f9666f4be0f5ff14b8","flags":[],"package":"heaps","revision":0,"source":"hackage","src_sha256":"89329df8b95ae99ef272e41e7a2d0fe2f1bb7eacfcc34bc01664414b33067cfd","version":"0.4"},{"cabal_sha256":"f75cb4fa53c88c65794becdd48eb0d3b2b8abd89a3d5c19e87af91f5225c15e4","flags":[],"package":"js-dgtable","revision":0,"source":"hackage","src_sha256":"e28dd65bee8083b17210134e22e01c6349dc33c3b7bd17705973cd014e9f20ac","version":"0.5.2"},{"cabal_sha256":"4c1c447a9a2fba0adba6d30678302a30c32b9dfde9e7aa9e9156483e1545096d","flags":[],"package":"js-flot","revision":0,"source":"hackage","src_sha256":"1ba2f2a6b8d85da76c41f526c98903cbb107f8642e506c072c1e7e3c20fe5e7a","version":"0.8.3"},{"cabal_sha256":"59ab6c79159549ef94b584abce8e6d3b336014c2cce1337b59a8f637e2856df5","flags":[],"package":"js-jquery","revision":0,"source":"hackage","src_sha256":"e0e0681f0da1130ede4e03a051630ea439c458cb97216cdb01771ebdbe44069b","version":"3.3.1"},{"cabal_sha256":"c2f0ed97b3dce97f2f43b239c3be8b136e4368f1eb7b61322ee9ac98f604622b","flags":[],"package":"primitive","revision":1,"source":"hackage","src_sha256":"5b2d6dc2812eb2f6a115f05fcbe3e723d3aeff7894b012c617e075130581add5","version":"0.7.4.0"},{"cabal_sha256":"9ad8972c2e913c37b1d4f0e1261517fd7a1b8c8a58077e057be69837e3dbaa00","flags":["-debug"],"package":"unordered-containers","revision":2,"source":"hackage","src_sha256":"1b27bec5e0d522b27a6029ebf4c4a6d40acbc083c787008e32fb55c4b1d128d2","version":"0.2.19.1"},{"cabal_sha256":"79416292186feeaf1f60e49ac5a1ffae9bf1b120e040a74bf0e81ca7f1d31d3f","flags":[],"package":"utf8-string","revision":0,"source":"hackage","src_sha256":"ee48deada7600370728c4156cb002441de770d0121ae33a68139a9ed9c19b09a","version":"1.0.2"},{"cabal_sha256":"3cb5814cce210b9756fa9246ff1b2a1e1b86be46fdc4c5e2baacdc5bf83ce5c3","flags":["-cloud","-embed-files","-portable"],"package":"shake","revision":1,"source":"hackage","src_sha256":"352a56af12f70b50d564dcb61131555577281957ee196f1702a3723c0a3699d1","version":"0.19.7"},{"cabal_sha256":null,"flags":["+selftest","+threaded"],"package":"hadrian","revision":null,"source":"local","src_sha256":null,"version":"0.1.0.0"}]} +\ No newline at end of file diff --git a/patches/hadrian-relpath b/patches/hadrian-relpath new file mode 100644 index 00000000..5a47db22 --- /dev/null +++ b/patches/hadrian-relpath @@ -0,0 +1,22 @@ +Description: Use realpath instead of custom script + Use realpath instead of the custom script, which is broken. As an example, + . + $ ./mk/relpath.sh /usr/lib/ghc/lib /usr/lib/ghc-doc + ..-doc + $ realpath --relative-to=/usr/lib/ghc/lib /usr/lib/ghc-doc + ../../ghc-doc +Author: Ilias Tsitsimpis + +Index: b/hadrian/bindist/Makefile +=================================================================== +--- a/hadrian/bindist/Makefile ++++ b/hadrian/bindist/Makefile +@@ -229,7 +229,7 @@ update_package_db: install_bin install_l + $(INSTALL_DATA) mk/system-cxx-std-lib-1.0.conf "$(DESTDIR)$(ActualLibsDir)/package.conf.d" + @echo "Updating the package DB" + $(foreach p, $(PKG_CONFS),\ +- $(call patchpackageconf,$(shell echo $(notdir $p) | sed 's/-\([0-9]*[0-9]\.\)*conf//g'),$(shell echo "$p" | sed 's:\0xxx\0: :g'),$(docdir),$(shell mk/relpath.sh "$(ActualLibsDir)" "$(docdir)"),$(shell echo $(notdir $p) | sed 's/.conf//g'))) ++ $(call patchpackageconf,$(shell echo $(notdir $p) | sed 's/-\([0-9]*[0-9]\.\)*conf//g'),$(shell echo "$p" | sed 's:\0xxx\0: :g'),$(docdir),$(shell realpath -z --relative-to="$(ActualLibsDir)" "$(docdir)"),$(shell echo $(notdir $p) | sed 's/.conf//g'))) + '$(DESTDIR)$(ActualBinsDir)/$(CrossCompilePrefix)ghc-pkg' --global-package-db "$(DESTDIR)$(ActualLibsDir)/package.conf.d" recache + + install_mingw: diff --git a/patches/kfreebsd-aclocal.m4 b/patches/kfreebsd-aclocal.m4 new file mode 100644 index 00000000..4ab4b44e --- /dev/null +++ b/patches/kfreebsd-aclocal.m4 @@ -0,0 +1,27 @@ +Description: Add kfreebsdgnu to GHC_CONVERT_OS in aclocal.m4 +Author: Svante Signell +Bug-Debian: https://bugs.debian.org/913140 + +Index: b/m4/ghc_convert_os.m4 +=================================================================== +--- a/m4/ghc_convert_os.m4 ++++ b/m4/ghc_convert_os.m4 +@@ -26,7 +26,7 @@ AC_DEFUN([GHC_CONVERT_OS],[ + $3="mingw32" + ;; + # As far as I'm aware, none of these have relevant variants +- freebsd|dragonfly|hpux|linuxaout|kfreebsdgnu|freebsd2|darwin|nextstep2|nextstep3|sunos4|ultrix|haiku) ++ freebsd|dragonfly|hpux|linuxaout|freebsd2|darwin|nextstep2|nextstep3|sunos4|ultrix|haiku) + $3="$1" + ;; + msys) +@@ -46,6 +46,9 @@ AC_DEFUN([GHC_CONVERT_OS],[ + # i686-gentoo-freebsd8.2 + $3="freebsd" + ;; ++ kfreebsd*) ++ $3="kfreebsdgnu" ++ ;; + nto-qnx*) + $3="nto-qnx" + ;; diff --git a/patches/local-mathjax b/patches/local-mathjax new file mode 100644 index 00000000..3dafef30 --- /dev/null +++ b/patches/local-mathjax @@ -0,0 +1,13 @@ +Index: b/docs/users_guide/conf.py +=================================================================== +--- a/docs/users_guide/conf.py ++++ b/docs/users_guide/conf.py +@@ -75,7 +75,7 @@ html_use_opensearch = 'https://downloads + html_show_copyright = True + + # See GHC #15006, #19423 +-mathjax_path = 'https://cdn.jsdelivr.net/npm/mathjax@2/MathJax.js?config=TeX-AMS-MML_HTMLorMML ' ++mathjax_path = 'file:///usr/share/javascript/mathjax/MathJax.js' + + # If true, an OpenSearch description file will be output, and all pages will + # contain a tag referring to it. The value of this option must be the diff --git a/patches/newer-llvm b/patches/newer-llvm new file mode 100644 index 00000000..13314418 --- /dev/null +++ b/patches/newer-llvm @@ -0,0 +1,46 @@ +commit 0cc16aaf89d7dc3963764b7193ceac73e4e3329b +Author: Matthew Pickering +Date: Mon Jan 30 10:58:12 2023 +0000 + + Bump supported LLVM range from 10 through 15 to 11 through 16 + + LLVM 15 turns on the new pass manager by default, which we have yet to + migrate to so for new we pass the `-enable-new-pm-0` flag in our + llvm-passes flag. + + LLVM 11 was the first version to support the `-enable-new-pm` flag so we + bump the lowest supported version to 11. + + Our CI jobs are using LLVM 12 so they should continue to work despite + this bump to the lower bound. + + Fixes #21936 + +Index: b/configure.ac +=================================================================== +--- a/configure.ac ++++ b/configure.ac +@@ -581,8 +581,8 @@ AC_SUBST(InstallNameToolCmd) + # tools we are looking for. In the past, GHC supported a number of + # versions of LLVM simultaneously, but that stopped working around + # 3.5/3.6 release of LLVM. +-LlvmMinVersion=10 # inclusive +-LlvmMaxVersion=15 # not inclusive ++LlvmMinVersion=11 # inclusive ++LlvmMaxVersion=16 # not inclusive + AC_SUBST([LlvmMinVersion]) + AC_SUBST([LlvmMaxVersion]) + sUPPORTED_LLVM_VERSION_MIN=$(echo \($LlvmMinVersion\) | sed 's/\./,/') +Index: b/llvm-passes +=================================================================== +--- a/llvm-passes ++++ b/llvm-passes +@@ -1,5 +1,5 @@ + [ +-(0, "-mem2reg -globalopt -lower-expect"), +-(1, "-O1 -globalopt"), +-(2, "-O2") ++(0, "-enable-new-pm=0 -mem2reg -globalopt -lower-expect"), ++(1, "-enable-new-pm=0 -O1 -globalopt"), ++(2, "-enable-new-pm=0 -O2") + ] diff --git a/patches/no-missing-haddock-file-warning b/patches/no-missing-haddock-file-warning new file mode 100644 index 00000000..a7de4e3b --- /dev/null +++ b/patches/no-missing-haddock-file-warning @@ -0,0 +1,22 @@ +Description: Do not emit a warning if the .haddock file is missing + As it is quite common on Debian installations to install the -dev package + without the -doc package. +Author: Joachim Breitner + +Index: b/utils/ghc-pkg/Main.hs +=================================================================== +--- a/utils/ghc-pkg/Main.hs ++++ b/utils/ghc-pkg/Main.hs +@@ -1923,8 +1923,10 @@ checkPackageConfig pkg verbosity db_stac + mapM_ (checkDir True "dynamic-library-dirs") (libraryDynDirs pkg) + mapM_ (checkDir True "include-dirs") (includeDirs pkg) + mapM_ (checkDir True "framework-dirs") (frameworkDirs pkg) +- mapM_ (checkFile True "haddock-interfaces") (haddockInterfaces pkg) +- mapM_ (checkDirURL True "haddock-html") (haddockHTMLs pkg) ++ -- In Debian, it is quite normal that the package is installed without the ++ -- documentation. Do not print a warning there. ++ -- mapM_ (checkFile True "haddock-interfaces") (haddockInterfaces pkg) ++ -- mapM_ (checkDirURL True "haddock-html") (haddockHTMLs pkg) + checkDuplicateModules pkg + checkExposedModules db_stack pkg + checkOtherModules pkg diff --git a/patches/ppc64el-fix-clrri b/patches/ppc64el-fix-clrri new file mode 100644 index 00000000..2bee9f74 --- /dev/null +++ b/patches/ppc64el-fix-clrri @@ -0,0 +1,38 @@ +From 368444785432ac9f73b99ff15153ac33f95aed6d Mon Sep 17 00:00:00 2001 +From: Peter Trommler +Date: Tue, 7 Nov 2023 21:47:24 +0100 +Subject: [PATCH] PPC NCG: Generate clear right insn at arch width + +The clear right immediate (clrrxi) is only available in word and +doubleword width. Generate clrrxi instructions at architecture +width for all MachOp widths. + +Fixes #24145 +--- + compiler/GHC/CmmToAsm/PPC/CodeGen.hs | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +Index: b/compiler/GHC/CmmToAsm/PPC/CodeGen.hs +=================================================================== +--- a/compiler/GHC/CmmToAsm/PPC/CodeGen.hs ++++ b/compiler/GHC/CmmToAsm/PPC/CodeGen.hs +@@ -547,7 +547,7 @@ getRegister' config platform (CmmMachOp + CLRLI arch_fmt dst src1 (arch_bits - size) + return (Any (intFormat to) code) + +-getRegister' _ _ (CmmMachOp mop [x, y]) -- dyadic PrimOps ++getRegister' _ platform (CmmMachOp mop [x, y]) -- dyadic PrimOps + = case mop of + MO_F_Eq _ -> condFltReg EQQ x y + MO_F_Ne _ -> condFltReg NE x y +@@ -627,8 +627,9 @@ getRegister' _ _ (CmmMachOp mop [x, y]) + (src, srcCode) <- getSomeReg x + let clear_mask = if imm == -4 then 2 else 3 + fmt = intFormat rep ++ arch_fmt = intFormat (wordWidth platform) + code dst = srcCode +- `appOL` unitOL (CLRRI fmt dst src clear_mask) ++ `appOL` unitOL (CLRRI arch_fmt dst src clear_mask) + return (Any fmt code) + _ -> trivialCode rep False AND x y + MO_Or rep -> trivialCode rep False OR x y diff --git a/patches/series b/patches/series new file mode 100644 index 00000000..698f2fc1 --- /dev/null +++ b/patches/series @@ -0,0 +1,25 @@ +ARM-VFPv3D16 +no-missing-haddock-file-warning +buildpath-abi-stability.patch +x32-use-native-x86_64-insn.patch +kfreebsd-aclocal.m4 +local-mathjax +haddock-remove-googleapis-fonts +fix-llvm-armel +use-unbundled-sphinx-rtd-theme +newer-llvm +hadrian-plans +hadrian-haddock-opts +hadrian-relpath +hadrian-iserv +allow-setting-llvm-program +fix-cross-compilation +sparc-support +hadrian-disable-threaded +fix-hs_cmpxchg64 +fix-32-bit-unreg +hadrian-fix-dnosmp +hadrian-enable-interpreter +use-modern-atomics +ppc64el-fix-clrri +dfe1c3540e4b519b62b862b5966dfec5cae9ece1.patch diff --git a/patches/sparc-support b/patches/sparc-support new file mode 100644 index 00000000..c30fe2f6 --- /dev/null +++ b/patches/sparc-support @@ -0,0 +1,30 @@ +Index: b/m4/ghc_convert_cpu.m4 +=================================================================== +--- a/m4/ghc_convert_cpu.m4 ++++ b/m4/ghc_convert_cpu.m4 +@@ -68,6 +68,12 @@ case "$1" in + sh4) + $2="sh4" + ;; ++ sparc64*) ++ $2="sparc64" ++ ;; ++ sparc*) ++ $2="sparc" ++ ;; + vax) + $2="vax" + ;; +Index: b/m4/fptools_set_haskell_platform_vars.m4 +=================================================================== +--- a/m4/fptools_set_haskell_platform_vars.m4 ++++ b/m4/fptools_set_haskell_platform_vars.m4 +@@ -42,7 +42,7 @@ AC_DEFUN([FPTOOLS_SET_HASKELL_PLATFORM_V + riscv64) + test -z "[$]2" || eval "[$]2=ArchRISCV64" + ;; +- hppa|hppa1_1|ia64|m68k|nios2|riscv32|rs6000|s390|sh4|vax) ++ hppa|hppa1_1|ia64|m68k|nios2|riscv32|rs6000|s390|sh4|sparc|sparc64|vax) + test -z "[$]2" || eval "[$]2=ArchUnknown" + ;; + *) diff --git a/patches/use-modern-atomics b/patches/use-modern-atomics new file mode 100644 index 00000000..5e89eadf --- /dev/null +++ b/patches/use-modern-atomics @@ -0,0 +1,56 @@ +commit f8fa1d08d7cbfef508bab355bda80f495e928f98 +Author: Ben Gamari +Date: Mon Apr 17 21:04:47 2023 +0000 + + ghc-prim: Use C11 atomics + + Previously `ghc-prim`'s atomic wrappers used the legacy `__sync_*` + family of C builtins. Here we refactor these to rather use the + appropriate C11 atomic equivalents, allowing us to be more explicit + about the expected ordering semantics. + +Index: b/libraries/ghc-prim/cbits/atomic.c +=================================================================== +--- a/libraries/ghc-prim/cbits/atomic.c ++++ b/libraries/ghc-prim/cbits/atomic.c +@@ -291,28 +291,36 @@ extern StgWord hs_cmpxchg8(StgWord x, St + StgWord + hs_cmpxchg8(StgWord x, StgWord old, StgWord new) + { +- return __sync_val_compare_and_swap((volatile StgWord8 *) x, (StgWord8) old, (StgWord8) new); ++ StgWord8 expected = (StgWord8) old; ++ __atomic_compare_exchange_n((StgWord8 *) x, &expected, (StgWord8) new, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); ++ return expected; + } + + extern StgWord hs_cmpxchg16(StgWord x, StgWord old, StgWord new); + StgWord + hs_cmpxchg16(StgWord x, StgWord old, StgWord new) + { +- return __sync_val_compare_and_swap((volatile StgWord16 *) x, (StgWord16) old, (StgWord16) new); ++ StgWord16 expected = (StgWord16) old; ++ __atomic_compare_exchange_n((StgWord16 *) x, &expected, (StgWord16) new, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); ++ return expected; + } + + extern StgWord hs_cmpxchg32(StgWord x, StgWord old, StgWord new); + StgWord + hs_cmpxchg32(StgWord x, StgWord old, StgWord new) + { +- return __sync_val_compare_and_swap((volatile StgWord32 *) x, (StgWord32) old, (StgWord32) new); ++ StgWord32 expected = (StgWord32) old; ++ __atomic_compare_exchange_n((StgWord32 *) x, &expected, (StgWord32) new, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); ++ return expected; + } + + extern StgWord64 hs_cmpxchg64(StgWord x, StgWord64 old, StgWord64 new); + StgWord64 + hs_cmpxchg64(StgWord x, StgWord64 old, StgWord64 new) + { +- return __sync_val_compare_and_swap((volatile StgWord64 *) x, old, new); ++ StgWord64 expected = (StgWord64) old; ++ __atomic_compare_exchange_n((StgWord64 *) x, &expected, (StgWord64) new, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); ++ return expected; + } + + // Atomic exchange operations diff --git a/patches/use-unbundled-sphinx-rtd-theme b/patches/use-unbundled-sphinx-rtd-theme new file mode 100644 index 00000000..5b1d79e0 --- /dev/null +++ b/patches/use-unbundled-sphinx-rtd-theme @@ -0,0 +1,13 @@ +Index: b/docs/users_guide/conf.py +=================================================================== +--- a/docs/users_guide/conf.py ++++ b/docs/users_guide/conf.py +@@ -66,7 +66,7 @@ exclude_patterns = ['.build'] + html_title = "Glasgow Haskell Compiler %s User's Guide" % release + html_short_title = "GHC %s User's Guide" % release + html_theme_path = ['.'] +-html_theme = 'rtd-theme' ++html_theme = 'sphinx_rtd_theme' + html_logo = None + html_static_path = ['images'] + # Convert quotes and dashes to typographically correct entities diff --git a/patches/x32-use-native-x86_64-insn.patch b/patches/x32-use-native-x86_64-insn.patch new file mode 100644 index 00000000..af2a938b --- /dev/null +++ b/patches/x32-use-native-x86_64-insn.patch @@ -0,0 +1,27 @@ +Description: Use native x86_64 instructions on x32 + This patch enables a few native 64-bit integer instructions + on x32 which are available on this architecture despite using + 32-bit pointers. These instructions are present on x86_64 but + not on x86 and ghc checks the size of (void *) to determine + that. This method fails on x32 since despite using 32-bit + pointers and hence sizeof(void *) == 4, it still uses the + full x86_64 instruction set and software-emulated variants + of the aforementioned 64-bit integer instructions are + therefore not present in the toolchain which will make ghc + fail to build on x32. + See: https://ghc.haskell.org/trac/ghc/ticket/11571 + . + +Index: b/rts/RtsSymbols.c +=================================================================== +--- a/rts/RtsSymbols.c ++++ b/rts/RtsSymbols.c +@@ -935,7 +935,7 @@ extern char **environ; + + + // 64-bit support functions in libgcc.a +-#if defined(__GNUC__) && SIZEOF_VOID_P <= 4 && !defined(_ABIN32) ++#if defined(__GNUC__) && SIZEOF_VOID_P <= 4 && !defined(_ABIN32) && !(defined(__x86_64__) && defined(__ILP32__)) + #define RTS_LIBGCC_SYMBOLS \ + SymI_NeedsProto(__divdi3) \ + SymI_NeedsProto(__udivdi3) \ diff --git a/provided_substvars b/provided_substvars new file mode 100644 index 00000000..5e205d47 --- /dev/null +++ b/provided_substvars @@ -0,0 +1,58 @@ +#! /usr/bin/perl + +-x '_build/stage1/bin/ghc-pkg' or die "ghc-pkg not executable or present"; + +open PKG, '_build/stage1/bin/ghc-pkg list --simple-output |' + or die "ghc-pkg list failed: $!"; + +my @ignored = ('ghc', 'rts'); +my %ignored; +$ignored{$_}++ for @ignored; +my %pkgver; +my %renamed; +$renamed{"parsec"} = "parsec3"; + +my @pkgs; +while () { + y/A-Z/a-z/; + my $pkgstring = $_; + LOOP: while ($pkgstring =~ m,([^ ]*?)-(\d[\d.]*) ?,g) { + my $pkg = $1; + next if exists $ignored{$pkg}; + $pkg = $renamed{$pkg} if exists $renamed{$pkg}; + $pkgver{$pkg} = $2; + push @pkgs, $pkg; + } +} +close PKG; + +my $buf; +open DEV, '>>debian/ghc.substvars'; +$buf = "provided-devs="; +foreach (sort @pkgs) {$buf .= "libghc-$_-dev (= $pkgver{$_}), ";} +$buf =~ s#(.*), #$1#; +print DEV $buf."\n"; + +$buf = "conflicting-devs="; +foreach (sort @pkgs) { + $buf .= "libghc-$_-dev (<< $pkgver{$_}+), "; +} +$buf =~ s#(.*), #$1#; +print DEV $buf."\n"; +close DEV; + +open PROF, '>>debian/ghc-prof.substvars'; +print PROF 'provided-profs='; +$buf = ""; +foreach (@pkgs) {$buf .= "libghc-$_-prof (= $pkgver{$_}), ";} +$buf =~ s#(.*), #$1#; +print PROF $buf."\n"; +close PROF; + +open DOC, '>>debian/ghc-doc.substvars'; +print DOC 'provided-docs='; +$buf = ""; +foreach (@pkgs) {$buf .= "libghc-$_-doc (= $pkgver{$_}), ";} +$buf =~ s#(.*), #$1#; +print DOC $buf."\n"; +close DOC; diff --git a/rules b/rules new file mode 100755 index 00000000..79329d39 --- /dev/null +++ b/rules @@ -0,0 +1,405 @@ +#!/usr/bin/make -f +# Sample debian/rules that uses debhelper. +# This file is public domain software, originally written by Joey Hess. +# +# This version is for a multibinary package. It also allows you to build any +# of the binary packages independantly, via binary- targets. + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +# Set a dummy HOME variable upon build. Some build daemons do not set HOME, but +# ghc-cabal expects it to be available. +export HOME = /homedoesnotexistatbuildtime + +# From /usr/share/doc/autotools-dev/examples/rules.gz: +export DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) +export DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) +export DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH) +export DEB_TARGET_ARCH_ENDIAN ?= $(shell dpkg-architecture -qDEB_TARGET_ARCH_ENDIAN) + +# Bootstrap GHC +export GHC := $(firstword $(shell bash -c "type -p ghc")) + +# The version of the GHC we are building +ProjectVersion := $(shell cat VERSION) + +# Move this somewhere else? +DEB_HOOGLE_TXT_DIR := /usr/lib/ghc-doc/hoogle/ + + +# -------------------------------------------------------------------- +# Build configuration +# For configuration options, see +# https://www.haskell.org/ghc/blog/20220805-make-to-hadrian.html +# https://gitlab.haskell.org/ghc/ghc/-/blob/master/hadrian/doc/user-settings.md + +# Explicitly pass 'host', 'build' and 'target', because the configuration +# script fails to properly detect them (e.g., it detects 'x86_64-unknown-linux' +# instead of 'x86_64-linux-gnu'. +EXTRA_CONFIGURE_FLAGS += --host $(DEB_BUILD_GNU_TYPE) --build $(DEB_BUILD_GNU_TYPE) --target $(DEB_HOST_GNU_TYPE) +EXTRA_INSTALL_CONFIGURE_FLAGS += --host $(DEB_BUILD_GNU_TYPE) --build $(DEB_BUILD_GNU_TYPE) --target $(DEB_HOST_GNU_TYPE) + +# We're cross-building if DEB_BUILD_GNU_TYPE != DEB_HOST_GNU_TYPE +ifneq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE)) + # EXTRA_CONFIGURE_FLAGS += --enable-unregisterised + # EXTRA_HADRIAN_FLAGS += --integer-simple + EXTRA_HADRIAN_FLAGS += --flavour=quickest + # Do not build docs *at all* (avoid dependency on Sphinx) + EXTRA_HADRIAN_FLAGS += --docs=none + BUILD_CROSS = YES +else + BUILD_CROSS = NO +endif + +# From GHC 8.10 and later, native code generator support for legacy x87 +# floating point coprocessor has been removed. GHC now only support floating +# point via SSE2. This causes a baseline violation on Debian for i386 where +# there is no SSE support. Fallback to unregisterised builds on i386. +ifneq (,$(filter i386 powerpcspe x32, $(DEB_HOST_ARCH))) + EXTRA_CONFIGURE_FLAGS += --enable-unregisterised +endif + +# Use system's default ld (ld.bfd) rather than ld.gold, which fails for +# haskell-cryptohash-sha256 on mips/mipsel. For more information, see +# https://bugs.debian.org/901947 +# NOTE: This should probably be removed, and revert back to using ld.gold, +# once #901947 has been fixed. +# Do the same for powerpcspe, due to https://bugs.debian.org/904915 +# Do the same for sparc64, due to https://bugs.debian.org/908998 +# See also https://bugs.debian.org/1056636 +ifneq (,$(filter mips mipsel powerpc powerpcspe sparc64, $(DEB_HOST_ARCH))) + EXTRA_CONFIGURE_FLAGS += --disable-ld-override +endif + +ifneq (,$(filter armhf, $(DEB_HOST_ARCH))) + EXTRA_HADRIAN_FLAGS += "*.*.ghc.hs.opts += -D__ARM_PCS_VFP" +endif + +ifneq (,$(filter i386 mips mipsel hppa, $(DEB_HOST_ARCH))) + EXTRA_HADRIAN_FLAGS += "*.*.ghc.hs.opts += -optc--param -optcggc-min-expand=10" +endif + +# mips64el compiles fine without it. Keep this commented out in +# case we need it in the future. +# ifneq (,$(filter mips64el, $(DEB_HOST_ARCH))) +# # Pass -mxgot to fix relocation linker errors +# EXTRA_HADRIAN_FLAGS += "*.*.ghc.hs.opts += -optc-mxgot" +# endif + +ifneq (,$(filter x32, $(DEB_HOST_ARCH))) + EXTRA_HADRIAN_FLAGS += --integer-simple +endif + +ifneq (,$(filter noopt, $(DEB_BUILD_OPTIONS))) + EXTRA_HADRIAN_FLAGS += "*.*.ghc.*.opts += -H64m -O0" + EXTRA_HADRIAN_FLAGS += "*.*.rts.*.opts += -O0" +endif + +ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) + NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) +endif + +# Use system libffi +EXTRA_CONFIGURE_FLAGS += --with-system-libffi + +# Set LLVM version +# If we don't set these, then the default value (llc / opt) will not work +# on architectures where the default llc/opt version is different than +# one of the supported versions. +EXTRA_CONFIGURE_FLAGS += LLC=llc-15 OPT=opt-15 +EXTRA_INSTALL_CONFIGURE_FLAGS += LLC=llc-15 OPT=opt-15 + + +%: + dh $@ + +# -------------------------------------------------------------------- +# Configure hadrian + +hadrian/hadrian: +# Case A (default, with hadrian package available): the builder did not select +# the "pkg.ghc.nohadrian" build profile. In this case, we use the distro's +# hadrian. +ifeq (,$(findstring pkg.ghc.nohadrian,$(DEB_BUILD_PROFILES))) + test -f "$$(which hadrian)" + ln -s "$$(which hadrian)" hadrian/hadrian +# Case B (without hadrian): the builder selected the "pkg.ghc.nohadrian" build +# profile. In this case, we use the ./hadrian/bootstrap/bootstrap.py script in +# order to download the build-dependencies for hadrian, and build it ourselves +# with our bootstrap ghc. +else + cd hadrian && \ + ./bootstrap/bootstrap.py && \ + test -f _build/bin/hadrian && \ + ln -s _build/bin/hadrian hadrian +endif + +.PHONY: clean-hadrian +clean-hadrian: + rm -f hadrian/hadrian + rm -rf hadrian/_build + +# -------------------------------------------------------------------- +# Configure/Build rules + +override_dh_autoreconf: + dh_autoreconf ./boot.source + +override_dh_auto_configure: + dh_auto_configure -- $(EXTRA_CONFIGURE_FLAGS) + +override_dh_auto_build-arch: export LC_ALL=C.UTF-8 +override_dh_auto_build-arch: hadrian/hadrian +ifeq (YES,$(BUILD_CROSS)) + # See https://gitlab.haskell.org/ghc/ghc/-/issues/23975 + # and https://gitlab.haskell.org/ghc/ghc/-/issues/22006 + $(error cross-compilation is not supported) +endif + hadrian/hadrian \ + -V -j$(NUMJOBS) \ + --docs=no-haddocks --docs=no-sphinx-html --docs=no-sphinx-pdfs \ + binary-dist-dir \ + $(EXTRA_HADRIAN_FLAGS) + # I have noticed that on some rare cases the package cache + # generated for stage2 is stale. This is probably an upstream bug, + # and it wouldn't affect us (the package cache for binary-dist-dir is + # correct), but we use ghc-pkg from stage2 when we generate our control file. + # Maybe we should consider using ghc-pkg from binary-dist-dir instead. + # As a work-around for now, regenerate the stage2 package cache. + _build/stage1/bin/ghc-pkg recache + +# This rule is a superset of 'override_dh_auto_build-arch'. It builds everything +# that the '-arch' rule builds, and then docs on top. +# The reason we split those two rules, is to avoid building docs on arch +# builders, because building docs requires running Haddock, which fails with +# OOM errors on some weak builders. +override_dh_auto_build-indep: export LC_ALL=C.UTF-8 +override_dh_auto_build-indep: hadrian/hadrian +ifeq (YES,$(BUILD_CROSS)) + $(error override_dh_auto_build-indep is not supported when cross compiling) +endif + hadrian/hadrian \ + -V -j$(NUMJOBS) \ + --docs=no-sphinx-pdfs \ + binary-dist-dir \ + $(EXTRA_HADRIAN_FLAGS) + # I have noticed that on some rare cases the package cache + # generated for stage2 is stale. This is probably an upstream bug, + # and it wouldn't affect us (the package cache for binary-dist-dir is + # correct), but we use ghc-pkg from stage2 when we generate our control file. + # Maybe we should consider using ghc-pkg from binary-dist-dir instead. + # As a work-around for now, regenerate the stage2 package cache. + _build/stage1/bin/ghc-pkg recache + + +# -------------------------------------------------------------------- +# Installation rules +# Configure and install the binary distribution generated by +# 'hadrian binary-dist-dir' + +BINDIST = _build/bindist/ghc-$(ProjectVersion)-$(DEB_HOST_GNU_TYPE) + +$(BINDIST)/mk/install.mk: + cd $(BINDIST) && \ + ./configure \ + --prefix=/usr \ + --docdir=/usr/share/doc/ghc-doc \ + $(EXTRA_INSTALL_CONFIGURE_FLAGS) + # We cannot modify 'ghclibdir' through configure, mk/install.mk sets it + # to '$(libdir)/$(CrossCompilePrefix)ghc-$(ProjectVersion)'. + # Modify 'mk/install.mk' and set 'ghclibdir' to '/usr/lib/ghc'. + echo 'ghclibdir := $$(libdir)/ghc' >> $@ + +# The reason this is a PHONY target is because we need to re-run this in case +# we first built and installed '-arch' packages, and now we want to build and +# install '-indep' packages. +.PHONY: debian/tmp +debian/tmp: $(BINDIST)/mk/install.mk + rm -rf debian/tmp + DESTDIR=$$(pwd)/debian/tmp/ make -C $(BINDIST) install + + # Remove the conf.copy files, they really should not be in the installed + # package. + find debian/tmp -name \*.conf.copy -delete + + # Move the package.conf files + # GHC installs package configuration files under '/usr/lib/ghc/lib/package.conf.d' + # but in Debian we move these files under 'var/lib/ghc/package.conf.d'. + # See also the debian/ghc.links file. + mkdir -p debian/tmp/var/lib/ghc + mv debian/tmp/usr/lib/ghc/lib/package.conf.d debian/tmp/var/lib/ghc/ + rm -f debian/tmp/var/lib/ghc/package.conf.d/package.cache* + rm -f debian/tmp/var/lib/ghc/package.conf.d/.stamp + + # Modify the ghc-doc path in package.conf files + sed -ri 's,share/doc/ghc-doc/html/libraries/(.*)\.haddock,lib/ghc-doc/haddock/ghc/\1.haddock,' debian/tmp/var/lib/ghc/package.conf.d/*.conf + + # Replace ${pkgroot} in the package.conf files. + # The "pkgroot" is the directory containing the package database, + # which for us should be '/usr/lib/ghc/lib/'. + # The reason we change it here is because we are moving the package.conf + # files under '/var/lib/ghc/package.conf.d'. + sed -ri 's,\$$\{pkgroot\},/usr/lib/ghc/lib,' debian/tmp/var/lib/ghc/package.conf.d/*.conf + + # manpages +ifeq (NO,$(BUILD_CROSS)) + echo ".so man1/ghc.1" > debian/tmp/usr/share/man/man1/ghc-$(ProjectVersion).1 + if test -e debian/tmp/usr/bin/ghci-$(ProjectVersion); then \ + echo ".so man1/ghc.1" > debian/tmp/usr/share/man/man1/ghci.1 ;\ + echo ".so man1/ghc.1" > debian/tmp/usr/share/man/man1/ghci-$(ProjectVersion).1 ;\ + cp debian/runghc.man debian/tmp/usr/share/man/man1/runghc.1 ; fi + cp utils/hp2ps/hp2ps.1 debian/tmp/usr/share/man/man1/hp2ps.1 + cp debian/ghc-pkg.man debian/tmp/usr/share/man/man1/ghc-pkg.1 + echo ".so man1/ghc-pkg.1" > debian/tmp/usr/share/man/man1/ghc-pkg-$(ProjectVersion).1 + cp debian/haddock.man debian/tmp/usr/share/man/man1/haddock.1 +endif + + # Delete all the library LICENSE files + rm -f debian/tmp/usr/share/doc/ghc-doc/html/libraries/*/LICENSE + + # Move gen_contents_index binary + # We use our own binary because upstream expects to be run from + # a different directory. + mkdir -p debian/tmp/usr/lib/ghc-doc + rm -f debian/tmp/usr/share/doc/ghc-doc/html/libraries/gen_contents_index + cp debian/gen_contents_index debian/tmp/usr/lib/ghc-doc/ + chmod +x debian/tmp/usr/lib/ghc-doc/gen_contents_index + + # Delete 'doc-index.html' and 'index.html' files. These are generated at + # installation time using 'gen_contents_index'. + rm -f debian/tmp/usr/share/doc/ghc-doc/html/libraries/doc-index*.html \ + debian/tmp/usr/share/doc/ghc-doc/html/libraries/index.html \ + debian/tmp/usr/share/doc/ghc-doc/html/libraries/frames.html \ + debian/tmp/usr/share/doc/ghc-doc/html/libraries/index-frames.html \ + debian/tmp/usr/share/doc/ghc-doc/html/libraries/haddock-util.js \ + debian/tmp/usr/share/doc/ghc-doc/html/libraries/hslogo-16.png \ + debian/tmp/usr/share/doc/ghc-doc/html/libraries/minus.gif \ + debian/tmp/usr/share/doc/ghc-doc/html/libraries/plus.gif \ + debian/tmp/usr/share/doc/ghc-doc/html/libraries/ocean.css \ + debian/tmp/usr/share/doc/ghc-doc/html/libraries/haddock-bundle.min.js \ + debian/tmp/usr/share/doc/ghc-doc/html/libraries/quick-jump.css \ + debian/tmp/usr/share/doc/ghc-doc/html/libraries/linuwial.css \ + debian/tmp/usr/share/doc/ghc-doc/html/libraries/synopsis.png + + # Move haddock files to the correct folder + # (Create folders if they don't exist, i.e., if we are building '-arch') + mkdir -p debian/tmp/usr/lib/ghc-doc/haddock/ghc/ + mkdir -p debian/tmp/usr/share/doc/ghc-doc/html/libraries/ + for f in `find debian/tmp/usr/share/doc/ghc-doc/html/libraries/ -maxdepth 1 -mindepth 1 -type d`; do \ + mkdir debian/tmp/usr/lib/ghc-doc/haddock/ghc/`basename $$f` ; \ + mv $$f/*.haddock debian/tmp/usr/lib/ghc-doc/haddock/ghc/`basename $$f` ; done + cd debian/tmp/usr/share/doc/ghc-doc/html/libraries/; ln -s ghc-$(ProjectVersion) ghc + + install -Dm 644 debian/index.html debian/tmp/usr/share/doc/ghc-doc/index.html + + # Create Hoogle directory + mkdir -p debian/tmp/$(DEB_HOOGLE_TXT_DIR) + + # Generate lintian overrides + mkdir -p debian/tmp/usr/share/lintian/overrides + echo "ghc binary: extra-license-file `cd debian/tmp && echo usr/lib/ghc/lib/*/Cabal-*/Distribution/License.hi`" >> debian/tmp/usr/share/lintian/overrides/ghc + echo "ghc binary: extra-license-file `cd debian/tmp && echo usr/lib/ghc/lib/*/Cabal-*/Distribution/SPDX/License.hi`" >> debian/tmp/usr/share/lintian/overrides/ghc + echo "ghc: extra-license-file `cd debian/tmp && echo usr/lib/ghc/lib/*/Cabal-*/Distribution/License.dyn_hi`" >> debian/tmp/usr/share/lintian/overrides/ghc + echo "ghc: extra-license-file `cd debian/tmp && echo usr/lib/ghc/lib/*/Cabal-*/Distribution/SPDX/License.dyn_hi`" >> debian/tmp/usr/share/lintian/overrides/ghc + echo "ghc-prof binary: extra-license-file `cd debian/tmp && echo usr/lib/ghc/lib/*/Cabal-*/Distribution/License.p_hi`" >> debian/tmp/usr/share/lintian/overrides/ghc-prof + echo "ghc-prof binary: extra-license-file `cd debian/tmp && echo usr/lib/ghc/lib/*/Cabal-*/Distribution/SPDX/License.p_hi`" >> debian/tmp/usr/share/lintian/overrides/ghc-prof + +FILES = \( -type f -o -type l \) +PROF_FILE = \( -name "*.p_*" -o -name "lib*_p.a" \) + +override_dh_auto_install-arch: debian/tmp + # Manpages +ifeq (NO,$(BUILD_CROSS)) + find debian/tmp/usr/share/man $(FILES) >> debian/ghc.install +endif + # ghc + find debian/tmp/usr/bin $(FILES) >> debian/ghc.install +# find debian/tmp/usr/share/ghc* $(FILES) >> debian/ghc.install + find debian/tmp/usr/lib/ghc $(FILES) ! $(PROF_FILE) >> debian/ghc.install + find debian/tmp/var >> debian/ghc.install + echo debian/tmp/usr/share/lintian/overrides/ghc >> debian/ghc.install + # ghc-prof + find debian/tmp/usr/lib/ghc $(FILES) $(PROF_FILE) > debian/ghc-prof.install + echo debian/tmp/usr/share/lintian/overrides/ghc-prof >> debian/ghc-prof.install + # Normalize paths + sed -i s,^debian/tmp,, debian/*.install debian/*.links + +override_dh_auto_install-indep: debian/tmp + # ghc-doc + find debian/tmp/usr/share/doc/ghc-doc/html/libraries/*/ -name "*.txt" \ + -printf "%p $(DEB_HOOGLE_TXT_DIR)/%f\n" >> debian/ghc-doc.links + find debian/tmp/usr/share/doc/ghc-doc/html $(FILES) > debian/ghc-doc.install + find debian/tmp/usr/lib/ghc-doc $(FILES) >> debian/ghc-doc.install + echo debian/tmp/usr/share/doc/ghc-doc/index.html >> debian/ghc-doc.install + # Normalize paths + sed -i s,^debian/tmp,, debian/*.install debian/*.links + + +# -------------------------------------------------------------------- +# Cleanup and other rules + +override_dh_auto_clean: clean-hadrian + # Build artifacts + rm -rf _build/ + + # Temp files in debian/ dir + rm -rf debian/tmp + rm -f debian/*.install + rm -f debian/ghc-doc.links + rm -rf debian/testghc + rm -rf debian/tmp-db + +override_dh_auto_test: +ifeq (,$(filter nocheck, $(DEB_BUILD_OPTIONS))) + # Do some very simple tests that the compiler actually works + rm -rf debian/testghc + mkdir debian/testghc + echo 'main = putStrLn "Foo"' > debian/testghc/foo.hs + _build/stage1/bin/ghc debian/testghc/foo.hs -o debian/testghc/foo + [ "$$(debian/testghc/foo)" = "Foo" ] + rm debian/testghc/* + echo 'main = putStrLn "Foo"' > debian/testghc/foo.hs + _build/stage1/bin/ghc debian/testghc/foo.hs -o debian/testghc/foo -O2 + [ "$$(debian/testghc/foo)" = "Foo" ] + rm debian/testghc/* + # Test runghc + echo 'main = putStrLn "Foo"' > debian/testghc/foo.hs + [ "$$(_build/stage1/bin/runghc debian/testghc/foo.hs)" = "Foo" ] + rm debian/testghc/* + # Output information about GHC + @printf "====BEGIN GHC INFO OUTPUT====\n" + _build/stage1/bin/ghc --info + @printf "====END GHC INFO OUTPUT====\n" + @printf "====BEGIN GHC-PKG OUTPUT====\n" + _build/stage1/bin/ghc-pkg list + @printf "====END GHC-PKG OUTPUT====\n" +endif + +override_dh_compress: + dh_compress -X.haddock -X.txt + +override_dh_gencontrol: +ifeq (NO,$(BUILD_CROSS)) + # Generate substvars + chmod +x debian/provided_substvars + debian/provided_substvars + # Check if we have a ghci binary + if test -e debian/tmp/usr/bin/ghci-$(ProjectVersion); then \ + echo 'ghci=ghc-ghci' >> debian/ghc.substvars ; fi + # Add haddock substvars + echo "haddock:Provides=haddock-interface-$$(debian/tmp/usr/lib/ghc/bin/haddock --interface-version)" >> debian/ghc.substvars + echo "haddock:Depends=haddock-interface-$$(debian/tmp/usr/lib/ghc/bin/haddock --interface-version)" >> debian/ghc-doc.substvars + dh_haskell_provides +endif + dh_gencontrol + +override_dh_shlibdeps: + dh_shlibdeps -XlibHS + +# we do not want shlibs files there, neither postrm scripts +override_dh_makeshlibs: + +# GHC has no meaningful debugging symbols, so we don't ship a -dbgsym package. +override_dh_strip: + dh_strip --no-automatic-dbgsym diff --git a/runghc.man b/runghc.man new file mode 100644 index 00000000..61a90760 --- /dev/null +++ b/runghc.man @@ -0,0 +1,45 @@ +.TH RUNGHC 1 "28 NOVEMBER 2007" +.SH NAME +runghc \- program to run Haskell programs without first having to compile them. +.SH SYNOPSIS +.B runghc +.RI +[runghc|flags] [GHC|flags] module [program|flags]... +.br +.SH DESCRIPTION +.B runghc +is considered a non-interactive interpreter and part of The Glasgow Haskell Compiler. +.B runghc +is a compiler that automatically runs its results at the end. +.PP +.SH OPTIONS +.TP +the flags are: +.TP +.B \-f +it tells runghc which GHC to use to run the program. If it is not given then runghc will search for GHC in the directories in the system search path. runghc -f /path/to/ghc +.TP +.B \-- +runghc will try to work out where the boundaries between [runghc flags] and [GHC flags], and [GHC flags] and module are, but you can use a -- flag if it doesn't get it right. For example, runghc -- -fglasgow-exts Foo +means runghc won't try to use glasgow-exts as the path to GHC, but instead will pass the flag to GHC. + +.SH EXAMPLES +.TP +.B runghc foo +.PP +.B runghc -f /path/to/ghc foo +.TP +.B runghc -- -fglasgow-exts Foo + +.SH SEE ALSO +.BR ghc (1), +.BR ghci (1). +.br + +.SH COPYRIGHT +Copyright 2002, The University Court of the University of Glasgow. All rights reserved. + +.SH AUTHOR +This manual page was written by Efrain Valles Pulgar . This is free documentation; see the GNU +General Public Licence version 2 or later for copying conditions. There is NO WARRANTY. + diff --git a/source/format b/source/format new file mode 100644 index 00000000..163aaf8d --- /dev/null +++ b/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/tests/compile b/tests/compile new file mode 100644 index 00000000..ed7f6b1f --- /dev/null +++ b/tests/compile @@ -0,0 +1,18 @@ +#!/bin/sh + +set -e + +WORKDIR=$(mktemp -d) +trap "rm -rf $WORKDIR" 0 INT QUIT ABRT PIPE TERM +cd ${WORKDIR} + +cat >simple.hs < + +xsDNBGC7eIUBDAC5xWztdYHAHMraJcy555udPgGyw36KOIH0/Sp6mRS5YJCwSp86 +yNzuJTo/zZfZc7oDoQX5c8/tNi9BsDL0f/XEBiYEtfXmSTeN9R0NU/3THjdCz9t9 +H9bD52l1nOwyawwanIjktfB7qZU97agcMHyl8VVmEH9kCTHTKkGxvDwtL4MHANsz +ZcFQggMvNKE/uxc8CARIdYM1G1PxxxnyPrKry461s6Q9tNmiOyxAjv5t72qGHGZh +d+jKq31zI+VPuXB1UuMqvQMwhvplHlWEZOeazSpt361ryuUHDWdKkiKrzSRDK1JV +Gsi3Exdioa4HSNQVv3bX4q1pmVneyTPSjF3rge5Qe77ogok1ba92PvJqe6VG+2yD +gIbug15mnLspySqc3ukvPUBUyJx5y7i/RY4sbElvvnQfiGwITGEeA81ejOUrbKKD +czEI2a2cLNFINn5En4+M2PCkc9tOuRU4PE/fS4qfUWknPn0+rW6PaE/AR7aGaqaq +11jQQzxX/gZtrU0AEQEAAc01WnViaW4gRHVnZ2FsIChHSEMgc2lnbmluZyBrZXkp +IDx6dWJpbkB3ZWxsLXR5cGVkLmNvbT7CwRQEEwEIAD4WIQSItX/PfbU7TbO/pLFY +h2T74i0ZxAUCYLt4hQIbAwUJA8JnAAULCQgHAgYVCgkICwIEFgIDAQIeAQIXgAAK +CRBYh2T74i0ZxNTCC/9sfAWRr8GjI0HtN2dkGtMFCgyM0YNR472wEsquR1g3oabD +pFptsKDxcL2V9NFTEReim9MsOYcQyJuiszk2KiWfSuPxuPvsTbo3vrk4XX2WC37o +X4MT02DPYp40jBF8Vc4jfMLoPkzQD82Lzpq2qqowc8RWKRY9U+EgfXywmTL3++ri +GeYkIijjbqipaLDUustMugIyr/SH/6qpBmrKdFYt9vAdOWF2yxNTiCTYDTYERX87 +T4bmTEYvPj1Vl44/flU6tzTSwbXtF8Ns/QL9Rrm+2GoSGfhY2wHpbeRC2fTB/H3L +avkZ9kjO64xjXNmrCHI93jJ4MlSEyJPsVDsrgsTXHhCy5ms69dlpQ+Dn3c1DmwIK +UzTSdqitXCxEKZV6drbb/ITTwcg+JT1uEv1sTb0WYkoWenJzNtSTiinfcW9GeiYJ +6OzCFWuC/AstCABJhfXjSNuGwYss2W7ly98gqibL9Rpth+MfcOGwxrrOPLMb4zyG +bt9SJYGfUsHDq6M6fBTOwM0EYLt4hQEMAM0gd3FflmjwJ/Hmq6GWO4R1nm6doQ5t +uuIaSLapOVqXLSEX2zS/qy5uvNvq9cWtq4JFlNiVC0ZFpBULLjB06CGcwCbKe/f8 +S2/Dx4Q6PVorP6yIx/jQawlT8jz4rS76p2xeUyWK/wKqoCItk2aMeqBLFlo69Xt2 +XTDtgaENehWE/r5fqr0ubMqYC9yjqmsRWceyNeM9zoP3rWKVtgyhQGv6wZ8/9gAQ +FLi92mCjNjQyisoqOSv8FReJNYYk8pwUQHjlS1Gxo9APBT8Pfi7Crt0VaHXKQQRC +IjKFWKmDAZZJG3SKcWaGYbtTrg4oIi3ARKKcg+3hM+WRBgOkfvrDVSd/f+swH54e +1qHf/ysLLKqNBmciqamSBIhez66wIHksXLRB/ZR8XFsWN3uTJkiMoo1NoiKNtoPG +Ek+HFf3peWmXuBKGTerBUSVBtZRXKGI9aMFQDhgi96lEi1qammQOwUyymPha1qzl +w3EJpcz2Uh9zXTPtx2ImKvDZE91Xv/HrYwARAQABwsD8BBgBCAAmFiEEiLV/z321 +O02zv6SxWIdk++ItGcQFAmC7eIUCGwwFCQPCZwAACgkQWIdk++ItGcSVqAwAnJHT +1hTyOjFxJdLVr2R+Y6BO8/hBCvCcW1CL+8mMBAVIM9Eu1TEViKG5n3972qbBurvC +jUt8j1Wa0//FrFV+3q5wkJ2+2qyJ1esTYwU1o54kSLMwj2bXG8N4K3XrXxGScJm6 +vCzbLToTyQ/wZfB0iYA7Jwoxww8FoYmrTo/iqXVI6pIVK4xZVpR1pQZgc0wOoFku +5p58DJlr4somcysEh8HlwC8NcVF1FDILkT6q4jAybU8Mw7pmk7hQlla7CtR3pf/n +Q0jbbfpWSdDmdaG4SMa3msjKf3nw2Vo+VOWSGvxxzDw/abhY3z85SUR3WU4QWlNN +SIUy5xE56Do4a21hMwc/x8SjMgK8h8u7hoP6ebJNzhwVWruQqha2+ADzTOVhvsfy +G8N3uv6qSJdzhg7QH9MFiHydXaQVGBqX6IEwjghcP+bI7BgC87dUD/OQ3HF81S3A +QJeQnApm+4zYUl2nhR16E8rtQ8aZpZDoDSI2fWjUPQ7uRDxW9/LuA9VO7yoq +=BYYp +-----END PGP PUBLIC KEY BLOCK----- diff --git a/watch b/watch new file mode 100644 index 00000000..f663de14 --- /dev/null +++ b/watch @@ -0,0 +1,4 @@ +version=3 +opts="pgpsigurlmangle=s/$/.sig/,dirversionmangle=s/-rc/~rc/" \ +https://downloads.haskell.org/~ghc/(\d[\d.rc-]*)/ghc-(\d[\d.]*)-src.tar.(?:bz2|xz|gz) + -- 2.30.2