[Git][haskell-team/DHG_packages][experimental] 5 commits: ghc: New upstream release (9.6.5)

Ilias Tsitsimpis (@iliastsi) gitlab at salsa.debian.org
Fri May 3 17:52:09 BST 2024



Ilias Tsitsimpis pushed to branch experimental at Debian Haskell Group / DHG_packages


Commits:
6394ea8c by Ilias Tsitsimpis at 2024-05-03T10:28:15+03:00
ghc: New upstream release (9.6.5)

- - - - -
84889d73 by Ilias Tsitsimpis at 2024-05-03T14:10:03+03:00
ghc: Backport patch to use newer LLVM versions

- - - - -
e3b31e17 by Ilias Tsitsimpis at 2024-05-03T14:13:58+03:00
ghc: Use LLVM 17

- - - - -
90e97587 by Ilias Tsitsimpis at 2024-05-03T14:15:17+03:00
ghc: Build registerised on loong64

- - - - -
10782444 by Ilias Tsitsimpis at 2024-05-03T17:00:18+03:00
ghc: Add hadrian bootstrap plan for GHC v9.6.5

- - - - -


16 changed files:

- p/ghc/debian/changelog
- p/ghc/debian/control
- p/ghc/debian/patches/allow-setting-llvm-program
- − p/ghc/debian/patches/dfe1c3540e4b519b62b862b5966dfec5cae9ece1.patch
- − p/ghc/debian/patches/fix-gcc14-ffi_arg
- p/ghc/debian/patches/hadrian-disable-threaded
- p/ghc/debian/patches/hadrian-plans
- p/ghc/debian/patches/hadrian-relpath
- p/ghc/debian/patches/hurd-cabal-osstring
- p/ghc/debian/patches/hurd-cabal-supportrpaths
- + p/ghc/debian/patches/llvm-new-pass-manager
- + p/ghc/debian/patches/llvm-newer-version
- p/ghc/debian/patches/series
- − p/ghc/debian/patches/time_t-directory
- − p/ghc/debian/patches/time_t-unix
- p/ghc/debian/rules


Changes:

=====================================
p/ghc/debian/changelog
=====================================
@@ -1,3 +1,13 @@
+ghc (9.6.5-1~exp1) experimental; urgency=medium
+
+  * New upstream release
+  * Backport patch to use newer LLVM versions
+  * Use LLVM 17
+  * Build registerised on loong64
+  * Add hadrian bootstrap plan for GHC v9.6.5
+
+ -- Ilias Tsitsimpis <iliastsi at debian.org>  Fri, 03 May 2024 10:15:54 +0300
+
 ghc (9.6.4-1~exp1) experimental; urgency=medium
 
   * New upstream release


=====================================
p/ghc/debian/control
=====================================
@@ -13,9 +13,9 @@ Build-Depends:
   devscripts,
   pkg-config,
   ghc:native (>= 9.2),
-  hadrian:native (>= 9.6.4) <!pkg.ghc.nohadrian>,
+  hadrian:native (>= 9.6.5) <!pkg.ghc.nohadrian>,
   hadrian:native (<< 9.7) <!pkg.ghc.nohadrian>,
-  llvm-15 [armel armhf s390x riscv64],
+  llvm-17 [armel armhf s390x riscv64 loong64],
   libgmp-dev,
   libffi-dev,
   libncurses-dev,
@@ -32,7 +32,7 @@ Vcs-Browser: https://salsa.debian.org/haskell-team/DHG_packages/tree/master/p/gh
 Package: ghc
 Architecture: any
 Depends:
-  llvm-15 [armel armhf s390x riscv64],
+  llvm-17 [armel armhf s390x riscv64 loong64],
   gcc,
   libgmp-dev,
   libffi-dev,
@@ -53,7 +53,7 @@ Provides:
   ${haddock:Provides}
 Replaces: ${conflicting-devs}
 Breaks: ${conflicting-devs}
-Suggests: perl, ghc-prof, ghc-doc, llvm-15
+Suggests: perl, ghc-prof, ghc-doc, llvm-17
 Description: The Glasgow Haskell Compilation system
  The Glorious Glasgow Haskell Compilation system (GHC) is a compiler for
  Haskell.


=====================================
p/ghc/debian/patches/allow-setting-llvm-program
=====================================
@@ -7,7 +7,7 @@ Index: b/configure.ac
 ===================================================================
 --- a/configure.ac
 +++ b/configure.ac
-@@ -571,14 +571,18 @@ AC_SUBST([ClangCmd])
+@@ -574,14 +574,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]])


=====================================
p/ghc/debian/patches/dfe1c3540e4b519b62b862b5966dfec5cae9ece1.patch deleted
=====================================
@@ -1,28 +0,0 @@
-From dfe1c3540e4b519b62b862b5966dfec5cae9ece1 Mon Sep 17 00:00:00 2001
-From: Stefan Schulze Frielinghaus <stefansf at linux.ibm.com>
-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(+)
-
-Index: b/compiler/GHC/CmmToLlvm/Data.hs
-===================================================================
---- a/compiler/GHC/CmmToLlvm/Data.hs
-+++ b/compiler/GHC/CmmToLlvm/Data.hs
-@@ -89,6 +89,7 @@ genLlvmData (sec, CmmStaticsRaw lbl xs)
-         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


=====================================
p/ghc/debian/patches/fix-gcc14-ffi_arg deleted
=====================================
@@ -1,33 +0,0 @@
-commit 1f534c2e7388273e70534680212c1357614c11ed
-Author: Florian Weimer <fweimer at redhat.com>
-Date:   Thu Feb 15 15:19:52 2024 +0000
-
-    Fix C output for modern C initiative
-    
-    GCC 14 on aarch64 rejects the C code written by GHC with this kind of
-    error:
-    
-       error: assignment to ‘ffi_arg’ {aka ‘long unsigned int’} from ‘HsPtr’ {aka ‘void *’} makes integer from pointer without a cast [-Wint-conversion]
-             68 | *(ffi_arg*)resp = cret;
-                |                 ^
-    
-    Add the correct cast.
-    
-    For more information on this see:
-    https://fedoraproject.org/wiki/Changes/PortingToModernC
-    
-    Tested-by: Richard W.M. Jones <rjones at redhat.com>
-
-Index: b/compiler/GHC/HsToCore/Foreign/Decl.hs
-===================================================================
---- a/compiler/GHC/HsToCore/Foreign/Decl.hs
-+++ b/compiler/GHC/HsToCore/Foreign/Decl.hs
-@@ -681,7 +681,7 @@ mkFExportCBits dflags c_nm maybe_target
-      ,   ppUnless res_hty_is_unit $
-          if libffi
-                   then char '*' <> parens (ffi_cResType <> char '*') <>
--                       text "resp = cret;"
-+                       text "resp = " <> parens ffi_cResType <> text "cret;"
-                   else text "return cret;"
-      , rbrace
-      ]


=====================================
p/ghc/debian/patches/hadrian-disable-threaded
=====================================
@@ -11,7 +11,7 @@ Index: b/hadrian/hadrian.cabal
      description:         Build with the threaded runtime for improved
                           performance. Users with bootstrap compilers
                           which don't support the threaded runtime should
-@@ -169,14 +169,6 @@ executable hadrian
+@@ -170,14 +170,6 @@ executable hadrian
                         -rtsopts
                         -fno-ignore-asserts
  


=====================================
p/ghc/debian/patches/hadrian-plans
=====================================
@@ -544,3 +544,282 @@ Index: b/hadrian/bootstrap/plan-bootstrap-9_6_4.json
 +    }
 +  ]
 +}
+Index: b/hadrian/bootstrap/plan-9_6_5.json
+===================================================================
+--- /dev/null
++++ b/hadrian/bootstrap/plan-9_6_5.json
+@@ -0,0 +1 @@
++{"cabal-version":"3.8.1.0","cabal-lib-version":"3.8.1.0","compiler-id":"ghc-9.6.5","os":"linux","arch":"x86_64","install-plan":[{"type":"configured","id":"Cabal-3.8.1.0-d9b6e65d978c818d7bd1edee64ab5c04c36de4ffd1dd426a0225e5591602a532","pkg-name":"Cabal","pkg-version":"3.8.1.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"77121d8e1aff14a0fd95684b751599db78a7dd26d55862d9fcef27c88b193e9d","pkg-src-sha256":"7464cbe6c2f3d7e5d0232023a1a7330621f8b24853cb259fc89a2af85b736608","depends":["Cabal-syntax-3.8.1.0-3bf061650fb8c57649b905290583a03f1edb4a1292b47a6e2a8da5c7c608441c","array-0.5.6.0","base-4.18.2.1","bytestring-0.11.5.3","containers-0.6.7","deepseq-1.4.8.1","directory-1.3.8.4","filepath-1.4.300.1","mtl-2.3.1","parsec-3.1.16.1","pretty-1.1.3.6","process-1.6.19.0","text-2.0.2","time-1.12.2","transformers-0.6.1.0","unix-2.8.4.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"Cabal-syntax-3.8.1.0-3bf061650fb8c57649b905290583a03f1edb4a1292b47a6e2a8da5c7c608441c","pkg-name":"Cabal-syntax","pkg-version":"3.8.1.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"ed2d937ba6c6a20b75850349eedd41374885fc42369ef152d69e2ba70f44f593","pkg-src-sha256":"07e8ddb19fe01781485f1522b6afc22aba680b0ab28ebe6bbfb84a2dd698ce0f","depends":["array-0.5.6.0","base-4.18.2.1","binary-0.8.9.1","bytestring-0.11.5.3","containers-0.6.7","deepseq-1.4.8.1","directory-1.3.8.4","filepath-1.4.300.1","mtl-2.3.1","parsec-3.1.16.1","pretty-1.1.3.6","text-2.0.2","time-1.12.2","transformers-0.6.1.0","unix-2.8.4.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"array-0.5.6.0","pkg-name":"array","pkg-version":"0.5.6.0","depends":["base-4.18.2.1"]},{"type":"pre-existing","id":"base-4.18.2.1","pkg-name":"base","pkg-version":"4.18.2.1","depends":["ghc-bignum-1.3","ghc-prim-0.10.0","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.6.0","base-4.18.2.1","bytestring-0.11.5.3","containers-0.6.7"]},{"type":"pre-existing","id":"bytestring-0.11.5.3","pkg-name":"bytestring","pkg-version":"0.11.5.3","depends":["base-4.18.2.1","deepseq-1.4.8.1","ghc-prim-0.10.0","template-haskell-2.20.0.0"]},{"type":"configured","id":"clock-0.8.3-0496d3424be8c93c37a3a63dcd2138b7dc5279c8ce7f53b72040c17c2ea47973","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.18.2.1"],"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.6.0","base-4.18.2.1","deepseq-1.4.8.1","template-haskell-2.20.0.0"]},{"type":"pre-existing","id":"deepseq-1.4.8.1","pkg-name":"deepseq","pkg-version":"1.4.8.1","depends":["array-0.5.6.0","base-4.18.2.1","ghc-prim-0.10.0"]},{"type":"pre-existing","id":"directory-1.3.8.4","pkg-name":"directory","pkg-version":"1.3.8.4","depends":["base-4.18.2.1","filepath-1.4.300.1","time-1.12.2","unix-2.8.4.0"]},{"type":"pre-existing","id":"exceptions-0.10.7","pkg-name":"exceptions","pkg-version":"0.10.7","depends":["base-4.18.2.1","mtl-2.3.1","stm-2.5.1.0","template-haskell-2.20.0.0","transformers-0.6.1.0"]},{"type":"configured","id":"extra-1.7.13-a0a7b3aabf334214ad54397b3cf93e2bc2db0c3f2f4603e56daac8587ce8a275","pkg-name":"extra","pkg-version":"1.7.13","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"5f6aa264fd6b30f3f83a3b7f94232255140ff45600fd401305453aba2419a4c4","pkg-src-sha256":"bdeac5b0316ce4649faae02f7b79cef2bf59a7ddae6dc1c0e3d6c0667a5c7b67","depends":["base-4.18.2.1","clock-0.8.3-0496d3424be8c93c37a3a63dcd2138b7dc5279c8ce7f53b72040c17c2ea47973","directory-1.3.8.4","filepath-1.4.300.1","process-1.6.19.0","time-1.12.2","unix-2.8.4.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"filepath-1.4.300.1","pkg-name":"filepath","pkg-version":"1.4.300.1","depends":["base-4.18.2.1","bytestring-0.11.5.3","deepseq-1.4.8.1","exceptions-0.10.7","template-haskell-2.20.0.0"]},{"type":"configured","id":"filepattern-0.1.3-34b57831f918f64cf555223b4e6979772ecd66a9dcde4a15ade2f13cad9f6dcf","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.18.2.1","directory-1.3.8.4","extra-1.7.13-a0a7b3aabf334214ad54397b3cf93e2bc2db0c3f2f4603e56daac8587ce8a275","filepath-1.4.300.1"],"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.10.0"]},{"type":"pre-existing","id":"ghc-boot-th-9.6.5","pkg-name":"ghc-boot-th","pkg-version":"9.6.5","depends":["base-4.18.2.1"]},{"type":"pre-existing","id":"ghc-prim-0.10.0","pkg-name":"ghc-prim","pkg-version":"0.10.0","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":false,"threaded":false},"style":"local","pkg-src":{"type":"local","path":"/build/ghc-9.6.5/hadrian/."},"dist-dir":"/build/ghc-9.6.5/hadrian/dist-newstyle/build/x86_64-linux/ghc-9.6.5/hadrian-0.1.0.0/x/hadrian","build-info":"/build/ghc-9.6.5/hadrian/dist-newstyle/build/x86_64-linux/ghc-9.6.5/hadrian-0.1.0.0/x/hadrian/build-info.json","depends":["Cabal-3.8.1.0-d9b6e65d978c818d7bd1edee64ab5c04c36de4ffd1dd426a0225e5591602a532","base-4.18.2.1","bytestring-0.11.5.3","containers-0.6.7","directory-1.3.8.4","extra-1.7.13-a0a7b3aabf334214ad54397b3cf93e2bc2db0c3f2f4603e56daac8587ce8a275","filepath-1.4.300.1","mtl-2.3.1","parsec-3.1.16.1","shake-0.19.7-4a59e77ddb4398c85c52cd26b76fd3f2c7f315a38751c3b226b647818a776a46","text-2.0.2","time-1.12.2","transformers-0.6.1.0","unordered-containers-0.2.19.1-f193c19faf7bb9e64b62859e4626d0deee459887d980360440bb1d8dfd7d48ee"],"exe-depends":[],"component-name":"exe:hadrian","bin-file":"/build/ghc-9.6.5/hadrian/dist-newstyle/build/x86_64-linux/ghc-9.6.5/hadrian-0.1.0.0/x/hadrian/build/hadrian/hadrian"},{"type":"configured","id":"hashable-1.4.2.0-e33f9c4367e887520066b0ec89f5023a05786837595b98781c800a0439c199ea","pkg-name":"hashable","pkg-version":"1.4.2.0","flags":{"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":"585792335d5541dba78fa8dfcb291a89cd5812a281825ff7a44afa296ab5d58a","pkg-src-sha256":"1b4000ea82b81f69d46d0af4152c10c6303873510738e24cfc4767760d30e3f8","depends":["base-4.18.2.1","bytestring-0.11.5.3","containers-0.6.7","deepseq-1.4.8.1","filepath-1.4.300.1","ghc-bignum-1.3","ghc-prim-0.10.0","text-2.0.2"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"heaps-0.4-a0af5cebd95f83c7430a90e72087c462b392db9bd4317164ac95680638fca6f7","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.18.2.1"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"js-dgtable-0.5.2-46131c1d8f288717c70f6bee2ed13aae2464f24fd18fe664fad9c6ce06175503","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.18.2.1"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"js-flot-0.8.3-53b6365f1a8856b02570854db9f5a5ec5fc9cc671fff1c7e9fce361ef784c0c9","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.18.2.1"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"js-jquery-3.3.1-cdbd0fb16bc4aae40a84b4d9c26f3d2ff487fbf589c8e71030a013cc3f0b1441","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.18.2.1"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"mtl-2.3.1","pkg-name":"mtl","pkg-version":"2.3.1","depends":["base-4.18.2.1","transformers-0.6.1.0"]},{"type":"pre-existing","id":"parsec-3.1.16.1","pkg-name":"parsec","pkg-version":"3.1.16.1","depends":["base-4.18.2.1","bytestring-0.11.5.3","mtl-2.3.1","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.18.2.1","deepseq-1.4.8.1","ghc-prim-0.10.0"]},{"type":"configured","id":"primitive-0.8.0.0-228db1ded4f735ddde21a01372cfa2e89517b929e070affafd2bbe5d88bdf51f","pkg-name":"primitive","pkg-version":"0.8.0.0","flags":{},"style":"global","pkg-src":{"type":"repo-tar","repo":{"type":"secure-repo","uri":"http://hackage.haskell.org/"}},"pkg-cabal-sha256":"826bf2a702a26ef87532a135808abad69d74f70ead39f26c06d034b1f0537a19","pkg-src-sha256":"5553c21b4a789f9b591eed69e598cc58484c274af29250e517b5a8bcc62b995f","depends":["base-4.18.2.1","deepseq-1.4.8.1","template-haskell-2.20.0.0","transformers-0.6.1.0"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"process-1.6.19.0","pkg-name":"process","pkg-version":"1.6.19.0","depends":["base-4.18.2.1","deepseq-1.4.8.1","directory-1.3.8.4","filepath-1.4.300.1","unix-2.8.4.0"]},{"type":"configured","id":"random-1.2.1.1-99a8a36f2cb2cdcadf81201e1d5b3832839746fbcf5b9f1cc8143c1cc5f4411a","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.18.2.1","bytestring-0.11.5.3","deepseq-1.4.8.1","mtl-2.3.1","splitmix-0.1.0.4-29a0e48c9126a0f6db1bd6dc5f95cdf94c60df6a6061f4309ea047c4cdd2d593"],"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-4a59e77ddb4398c85c52cd26b76fd3f2c7f315a38751c3b226b647818a776a46","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":"3cb5814cce210b9756fa9246ff1b2a1e1b86be46fdc4c5e2baacdc5bf83ce5c3","pkg-src-sha256":"352a56af12f70b50d564dcb61131555577281957ee196f1702a3723c0a3699d1","depends":["base-4.18.2.1","binary-0.8.9.1","bytestring-0.11.5.3","deepseq-1.4.8.1","directory-1.3.8.4","extra-1.7.13-a0a7b3aabf334214ad54397b3cf93e2bc2db0c3f2f4603e56daac8587ce8a275","filepath-1.4.300.1","filepattern-0.1.3-34b57831f918f64cf555223b4e6979772ecd66a9dcde4a15ade2f13cad9f6dcf","hashable-1.4.2.0-e33f9c4367e887520066b0ec89f5023a05786837595b98781c800a0439c199ea","heaps-0.4-a0af5cebd95f83c7430a90e72087c462b392db9bd4317164ac95680638fca6f7","js-dgtable-0.5.2-46131c1d8f288717c70f6bee2ed13aae2464f24fd18fe664fad9c6ce06175503","js-flot-0.8.3-53b6365f1a8856b02570854db9f5a5ec5fc9cc671fff1c7e9fce361ef784c0c9","js-jquery-3.3.1-cdbd0fb16bc4aae40a84b4d9c26f3d2ff487fbf589c8e71030a013cc3f0b1441","primitive-0.8.0.0-228db1ded4f735ddde21a01372cfa2e89517b929e070affafd2bbe5d88bdf51f","process-1.6.19.0","random-1.2.1.1-99a8a36f2cb2cdcadf81201e1d5b3832839746fbcf5b9f1cc8143c1cc5f4411a","time-1.12.2","transformers-0.6.1.0","unix-2.8.4.0","unordered-containers-0.2.19.1-f193c19faf7bb9e64b62859e4626d0deee459887d980360440bb1d8dfd7d48ee","utf8-string-1.0.2-2161ba7d76c2a85774f0b2e6c58a45f6bb3feb1a482c184c0248e5042c30ee1f"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"shake-0.19.7-e-shake-eb0984b5bf0f23a2a470ddba3ae9673280b719a931e3291dad418b928947783e","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":"3cb5814cce210b9756fa9246ff1b2a1e1b86be46fdc4c5e2baacdc5bf83ce5c3","pkg-src-sha256":"352a56af12f70b50d564dcb61131555577281957ee196f1702a3723c0a3699d1","depends":["base-4.18.2.1","binary-0.8.9.1","bytestring-0.11.5.3","deepseq-1.4.8.1","directory-1.3.8.4","extra-1.7.13-a0a7b3aabf334214ad54397b3cf93e2bc2db0c3f2f4603e56daac8587ce8a275","filepath-1.4.300.1","filepattern-0.1.3-34b57831f918f64cf555223b4e6979772ecd66a9dcde4a15ade2f13cad9f6dcf","hashable-1.4.2.0-e33f9c4367e887520066b0ec89f5023a05786837595b98781c800a0439c199ea","heaps-0.4-a0af5cebd95f83c7430a90e72087c462b392db9bd4317164ac95680638fca6f7","js-dgtable-0.5.2-46131c1d8f288717c70f6bee2ed13aae2464f24fd18fe664fad9c6ce06175503","js-flot-0.8.3-53b6365f1a8856b02570854db9f5a5ec5fc9cc671fff1c7e9fce361ef784c0c9","js-jquery-3.3.1-cdbd0fb16bc4aae40a84b4d9c26f3d2ff487fbf589c8e71030a013cc3f0b1441","primitive-0.8.0.0-228db1ded4f735ddde21a01372cfa2e89517b929e070affafd2bbe5d88bdf51f","process-1.6.19.0","random-1.2.1.1-99a8a36f2cb2cdcadf81201e1d5b3832839746fbcf5b9f1cc8143c1cc5f4411a","time-1.12.2","transformers-0.6.1.0","unix-2.8.4.0","unordered-containers-0.2.19.1-f193c19faf7bb9e64b62859e4626d0deee459887d980360440bb1d8dfd7d48ee","utf8-string-1.0.2-2161ba7d76c2a85774f0b2e6c58a45f6bb3feb1a482c184c0248e5042c30ee1f"],"exe-depends":[],"component-name":"exe:shake","bin-file":"/home/iliastsi/.cabal/store/ghc-9.6.5/shake-0.19.7-e-shake-eb0984b5bf0f23a2a470ddba3ae9673280b719a931e3291dad418b928947783e/bin/shake"},{"type":"configured","id":"splitmix-0.1.0.4-29a0e48c9126a0f6db1bd6dc5f95cdf94c60df6a6061f4309ea047c4cdd2d593","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":"db25c2e17967aa6b6046ab8b1b96ba3f344ca59a62b60fb6113d51ea305a3d8e","pkg-src-sha256":"6d065402394e7a9117093dbb4530a21342c9b1e2ec509516c8a8d0ffed98ecaa","depends":["base-4.18.2.1","deepseq-1.4.8.1"],"exe-depends":[],"component-name":"lib"},{"type":"pre-existing","id":"stm-2.5.1.0","pkg-name":"stm","pkg-version":"2.5.1.0","depends":["array-0.5.6.0","base-4.18.2.1"]},{"type":"pre-existing","id":"template-haskell-2.20.0.0","pkg-name":"template-haskell","pkg-version":"2.20.0.0","depends":["base-4.18.2.1","ghc-boot-th-9.6.5","ghc-prim-0.10.0","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.6.0","base-4.18.2.1","binary-0.8.9.1","bytestring-0.11.5.3","deepseq-1.4.8.1","ghc-prim-0.10.0","template-haskell-2.20.0.0"]},{"type":"pre-existing","id":"time-1.12.2","pkg-name":"time","pkg-version":"1.12.2","depends":["base-4.18.2.1","deepseq-1.4.8.1"]},{"type":"pre-existing","id":"transformers-0.6.1.0","pkg-name":"transformers","pkg-version":"0.6.1.0","depends":["base-4.18.2.1"]},{"type":"pre-existing","id":"unix-2.8.4.0","pkg-name":"unix","pkg-version":"2.8.4.0","depends":["base-4.18.2.1","bytestring-0.11.5.3","filepath-1.4.300.1","time-1.12.2"]},{"type":"configured","id":"unordered-containers-0.2.19.1-f193c19faf7bb9e64b62859e4626d0deee459887d980360440bb1d8dfd7d48ee","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":"9ad8972c2e913c37b1d4f0e1261517fd7a1b8c8a58077e057be69837e3dbaa00","pkg-src-sha256":"1b27bec5e0d522b27a6029ebf4c4a6d40acbc083c787008e32fb55c4b1d128d2","depends":["base-4.18.2.1","deepseq-1.4.8.1","hashable-1.4.2.0-e33f9c4367e887520066b0ec89f5023a05786837595b98781c800a0439c199ea","template-haskell-2.20.0.0"],"exe-depends":[],"component-name":"lib"},{"type":"configured","id":"utf8-string-1.0.2-2161ba7d76c2a85774f0b2e6c58a45f6bb3feb1a482c184c0248e5042c30ee1f","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.18.2.1","bytestring-0.11.5.3"],"exe-depends":[],"component-name":"lib"}]}
+\ No newline at end of file
+Index: b/hadrian/bootstrap/plan-bootstrap-9_6_5.json
+===================================================================
+--- /dev/null
++++ b/hadrian/bootstrap/plan-bootstrap-9_6_5.json
+@@ -0,0 +1,267 @@
++{
++  "builtin": [
++    {
++      "package": "rts",
++      "version": "1.0.2"
++    },
++    {
++      "package": "ghc-prim",
++      "version": "0.10.0"
++    },
++    {
++      "package": "ghc-bignum",
++      "version": "1.3"
++    },
++    {
++      "package": "base",
++      "version": "4.18.2.1"
++    },
++    {
++      "package": "array",
++      "version": "0.5.6.0"
++    },
++    {
++      "package": "deepseq",
++      "version": "1.4.8.1"
++    },
++    {
++      "package": "ghc-boot-th",
++      "version": "9.6.5"
++    },
++    {
++      "package": "pretty",
++      "version": "1.1.3.6"
++    },
++    {
++      "package": "template-haskell",
++      "version": "2.20.0.0"
++    },
++    {
++      "package": "bytestring",
++      "version": "0.11.5.3"
++    },
++    {
++      "package": "containers",
++      "version": "0.6.7"
++    },
++    {
++      "package": "binary",
++      "version": "0.8.9.1"
++    },
++    {
++      "package": "transformers",
++      "version": "0.6.1.0"
++    },
++    {
++      "package": "mtl",
++      "version": "2.3.1"
++    },
++    {
++      "package": "stm",
++      "version": "2.5.1.0"
++    },
++    {
++      "package": "exceptions",
++      "version": "0.10.7"
++    },
++    {
++      "package": "filepath",
++      "version": "1.4.300.1"
++    },
++    {
++      "package": "time",
++      "version": "1.12.2"
++    },
++    {
++      "package": "unix",
++      "version": "2.8.4.0"
++    },
++    {
++      "package": "directory",
++      "version": "1.3.8.4"
++    },
++    {
++      "package": "text",
++      "version": "2.0.2"
++    },
++    {
++      "package": "parsec",
++      "version": "3.1.16.1"
++    },
++    {
++      "package": "process",
++      "version": "1.6.19.0"
++    }
++  ],
++  "dependencies": [
++    {
++      "cabal_sha256": "ed2d937ba6c6a20b75850349eedd41374885fc42369ef152d69e2ba70f44f593",
++      "flags": [],
++      "package": "Cabal-syntax",
++      "revision": 3,
++      "source": "hackage",
++      "src_sha256": "07e8ddb19fe01781485f1522b6afc22aba680b0ab28ebe6bbfb84a2dd698ce0f",
++      "version": "3.8.1.0"
++    },
++    {
++      "cabal_sha256": "77121d8e1aff14a0fd95684b751599db78a7dd26d55862d9fcef27c88b193e9d",
++      "flags": [],
++      "package": "Cabal",
++      "revision": 2,
++      "source": "hackage",
++      "src_sha256": "7464cbe6c2f3d7e5d0232023a1a7330621f8b24853cb259fc89a2af85b736608",
++      "version": "3.8.1.0"
++    },
++    {
++      "cabal_sha256": "a692159828c2cd278eaec317b3a7e9fb6d7b787c8a19f086004d15d9fa1fd72c",
++      "flags": [
++        "-llvm"
++      ],
++      "package": "clock",
++      "revision": 0,
++      "source": "hackage",
++      "src_sha256": "845ce5db4c98cefd517323e005f87effceff886987305e421c4ef616dc0505d1",
++      "version": "0.8.3"
++    },
++    {
++      "cabal_sha256": "5f6aa264fd6b30f3f83a3b7f94232255140ff45600fd401305453aba2419a4c4",
++      "flags": [],
++      "package": "extra",
++      "revision": 0,
++      "source": "hackage",
++      "src_sha256": "bdeac5b0316ce4649faae02f7b79cef2bf59a7ddae6dc1c0e3d6c0667a5c7b67",
++      "version": "1.7.13"
++    },
++    {
++      "cabal_sha256": "372c1733d83b90045eb29da9f010fed79bfef8771ce65eb126a1d83ecc54a9a2",
++      "flags": [],
++      "package": "filepattern",
++      "revision": 0,
++      "source": "hackage",
++      "src_sha256": "cc445d439ea2f65cac7604d3578aa2c3a62e5a91dc989f4ce5b3390db9e59636",
++      "version": "0.1.3"
++    },
++    {
++      "cabal_sha256": "585792335d5541dba78fa8dfcb291a89cd5812a281825ff7a44afa296ab5d58a",
++      "flags": [
++        "+integer-gmp",
++        "-random-initial-seed"
++      ],
++      "package": "hashable",
++      "revision": 1,
++      "source": "hackage",
++      "src_sha256": "1b4000ea82b81f69d46d0af4152c10c6303873510738e24cfc4767760d30e3f8",
++      "version": "1.4.2.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": "d0ff45fa6e61f92af23611ceb8b9a6a04c236b50fb70c60e2ed3bfa532703670",
++      "flags": [],
++      "package": "primitive",
++      "revision": 1,
++      "source": "hackage",
++      "src_sha256": "5553c21b4a789f9b591eed69e598cc58484c274af29250e517b5a8bcc62b995f",
++      "version": "0.8.0.0"
++    },
++    {
++      "cabal_sha256": "db25c2e17967aa6b6046ab8b1b96ba3f344ca59a62b60fb6113d51ea305a3d8e",
++      "flags": [
++        "-optimised-mixer"
++      ],
++      "package": "splitmix",
++      "revision": 2,
++      "source": "hackage",
++      "src_sha256": "6d065402394e7a9117093dbb4530a21342c9b1e2ec509516c8a8d0ffed98ecaa",
++      "version": "0.1.0.4"
++    },
++    {
++      "cabal_sha256": "e7c1f881159d5cc788619c9ee8b8f340ba2ff0db571cdf3d1a1968ebc5108789",
++      "flags": [],
++      "package": "random",
++      "revision": 1,
++      "source": "hackage",
++      "src_sha256": "3e1272f7ed6a4d7bd1712b90143ec326fee9b225789222379fea20a9c90c9b76",
++      "version": "1.2.1.1"
++    },
++    {
++      "cabal_sha256": "1c28ca429e3960de0330908579a427ccacddd700cb84ec1969e2bbe576152add",
++      "flags": [
++        "-debug"
++      ],
++      "package": "unordered-containers",
++      "revision": 3,
++      "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"
++    }
++  ]
++}


=====================================
p/ghc/debian/patches/hadrian-relpath
=====================================
@@ -11,7 +11,7 @@ Index: b/hadrian/bindist/Makefile
 ===================================================================
 --- a/hadrian/bindist/Makefile
 +++ b/hadrian/bindist/Makefile
-@@ -226,7 +226,7 @@ update_package_db: install_bin install_l
+@@ -232,7 +232,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),\


=====================================
p/ghc/debian/patches/hurd-cabal-osstring
=====================================
@@ -5,7 +5,7 @@ Index: b/libraries/Cabal/Cabal/src/Distribution/Simple/GHC/Internal.hs
 ===================================================================
 --- a/libraries/Cabal/Cabal/src/Distribution/Simple/GHC/Internal.hs
 +++ b/libraries/Cabal/Cabal/src/Distribution/Simple/GHC/Internal.hs
-@@ -637,6 +637,7 @@ ghcOsString :: OS -> String
+@@ -639,6 +639,7 @@ ghcOsString :: OS -> String
  ghcOsString Windows = "mingw32"
  ghcOsString OSX     = "darwin"
  ghcOsString Solaris = "solaris2"


=====================================
p/ghc/debian/patches/hurd-cabal-supportrpaths
=====================================
@@ -5,7 +5,7 @@ Index: b/libraries/Cabal/Cabal/src/Distribution/Simple/GHC.hs
 ===================================================================
 --- a/libraries/Cabal/Cabal/src/Distribution/Simple/GHC.hs
 +++ b/libraries/Cabal/Cabal/src/Distribution/Simple/GHC.hs
-@@ -1830,7 +1830,7 @@ getRPaths lbi clbi | supportRPaths hostO
+@@ -1836,7 +1836,7 @@ getRPaths lbi clbi | supportRPaths hostO
      supportRPaths Android     = False
      supportRPaths Ghcjs       = False
      supportRPaths Wasi        = False


=====================================
p/ghc/debian/patches/llvm-new-pass-manager
=====================================
@@ -0,0 +1,77 @@
+commit 77db84aba1ba00f6d146e9107b24c6203798e796
+Author: Ben Gamari <bgamari.foss at gmail.com>
+Date:   Wed Jan 31 08:58:58 2024 -0500
+
+    llvmGen: Adapt to allow use of new pass manager.
+    
+    We now must use `-passes` in place of `-O<n>` due to #21936.
+    
+    Closes #21936.
+
+Index: b/compiler/GHC/Driver/Session.hs
+===================================================================
+--- a/compiler/GHC/Driver/Session.hs
++++ b/compiler/GHC/Driver/Session.hs
+@@ -3430,7 +3430,6 @@ fFlagsDeps = [
+   flagSpec "late-dmd-anal"                    Opt_LateDmdAnal,
+   flagSpec "late-specialise"                  Opt_LateSpecialise,
+   flagSpec "liberate-case"                    Opt_LiberateCase,
+-  flagHiddenSpec "llvm-tbaa"                  Opt_LlvmTBAA,
+   flagHiddenSpec "llvm-fill-undef-with-garbage" Opt_LlvmFillUndefWithGarbage,
+   flagSpec "loopification"                    Opt_Loopification,
+   flagSpec "block-layout-cfg"                 Opt_CfgBlocklayout,
+@@ -3989,7 +3988,6 @@ optLevelFlags :: [([Int], GeneralFlag)]
+ optLevelFlags -- see Note [Documenting optimisation flags]
+   = [ ([0,1,2], Opt_DoLambdaEtaExpansion)
+     , ([0,1,2], Opt_DoEtaReduction)       -- See Note [Eta-reduction in -O0]
+-    , ([0,1,2], Opt_LlvmTBAA)
+     , ([0,1,2], Opt_ProfManualCcs )
+     , ([2], Opt_DictsStrict)
+ 
+Index: b/compiler/GHC/Driver/Flags.hs
+===================================================================
+--- a/compiler/GHC/Driver/Flags.hs
++++ b/compiler/GHC/Driver/Flags.hs
+@@ -273,7 +273,6 @@ data GeneralFlag
+    | Opt_RegsGraph                      -- do graph coloring register allocation
+    | Opt_RegsIterative                  -- do iterative coalescing graph coloring register allocation
+    | Opt_PedanticBottoms                -- Be picky about how we treat bottom
+-   | Opt_LlvmTBAA                       -- Use LLVM TBAA infrastructure for improving AA (hidden flag)
+    | Opt_LlvmFillUndefWithGarbage       -- Testing for undef bugs (hidden flag)
+    | Opt_IrrefutableTuples
+    | Opt_CmmSink
+@@ -508,7 +507,6 @@ optimisationFlags = EnumSet.fromList
+    , Opt_EnableRewriteRules
+    , Opt_RegsGraph
+    , Opt_RegsIterative
+-   , Opt_LlvmTBAA
+    , Opt_IrrefutableTuples
+    , Opt_CmmSink
+    , Opt_CmmElimCommonBlocks
+Index: b/compiler/GHC/Driver/Pipeline/Execute.hs
+===================================================================
+--- a/compiler/GHC/Driver/Pipeline/Execute.hs
++++ b/compiler/GHC/Driver/Pipeline/Execute.hs
+@@ -989,8 +989,7 @@ llvmOptions :: LlvmConfig
+             -> DynFlags
+             -> [(String, String)]  -- ^ pairs of (opt, llc) arguments
+ llvmOptions llvm_config dflags =
+-       [("-enable-tbaa -tbaa",  "-enable-tbaa") | gopt Opt_LlvmTBAA dflags ]
+-    ++ [("-relocation-model=" ++ rmodel
++       [("-relocation-model=" ++ rmodel
+         ,"-relocation-model=" ++ rmodel) | not (null rmodel)]
+     ++ [("-stack-alignment=" ++ (show align)
+         ,"-stack-alignment=" ++ (show align)) | align > 0 ]
+Index: b/llvm-passes
+===================================================================
+--- a/llvm-passes
++++ b/llvm-passes
+@@ -1,5 +1,5 @@
+ [
+-(0, "-enable-new-pm=0 -mem2reg -globalopt -lower-expect"),
+-(1, "-enable-new-pm=0 -O1 -globalopt"),
+-(2, "-enable-new-pm=0 -O2")
++(0, "-passes=function(require<tbaa>),function(mem2reg),globalopt,function(lower-expect)"),
++(1, "-passes=default<O1>"),
++(2, "-passes=default<O2>")
+ ]


=====================================
p/ghc/debian/patches/llvm-newer-version
=====================================
@@ -0,0 +1,13 @@
+Index: b/configure.ac
+===================================================================
+--- a/configure.ac
++++ b/configure.ac
+@@ -556,7 +556,7 @@ AC_SUBST(InstallNameToolCmd)
+ # versions of LLVM simultaneously, but that stopped working around
+ # 3.5/3.6 release of LLVM.
+ LlvmMinVersion=11  # inclusive
+-LlvmMaxVersion=16 # not inclusive
++LlvmMaxVersion=18 # not inclusive
+ AC_SUBST([LlvmMinVersion])
+ AC_SUBST([LlvmMaxVersion])
+ sUPPORTED_LLVM_VERSION_MIN=$(echo \($LlvmMinVersion\) | sed 's/\./,/')


=====================================
p/ghc/debian/patches/series
=====================================
@@ -7,7 +7,6 @@ local-mathjax
 haddock-remove-googleapis-fonts
 fix-llvm-armel
 use-unbundled-sphinx-rtd-theme
-hadrian-plans
 hadrian-haddock-opts
 hadrian-relpath
 hadrian-iserv
@@ -23,8 +22,7 @@ hurd-cabal-supportrpaths
 hurd-getExecutablePath
 hurd-hadrian-osstring
 hurd-hadrian-supportrpaths
-dfe1c3540e4b519b62b862b5966dfec5cae9ece1.patch
-fix-gcc14-ffi_arg
-time_t-directory
 time_t-time
-time_t-unix
+llvm-new-pass-manager
+llvm-newer-version
+hadrian-plans


=====================================
p/ghc/debian/patches/time_t-directory deleted
=====================================
@@ -1,40 +0,0 @@
-From f6b288bd96fba5a955d1f73663eb52c1859ee765 Mon Sep 17 00:00:00 2001
-From: Marios Titas <redneb at gmx.com>
-Date: Sun, 2 Oct 2022 23:12:41 +0300
-Subject: [PATCH] Use capi for syscalls that break under musl's handling of
- 64-bit time_t
-
-Closes #145.
----
-
-Index: b/libraries/directory/System/Directory/Internal/C_utimensat.hsc
-===================================================================
---- a/libraries/directory/System/Directory/Internal/C_utimensat.hsc
-+++ b/libraries/directory/System/Directory/Internal/C_utimensat.hsc
-@@ -1,3 +1,5 @@
-+{-# LANGUAGE CApiFFI #-}
-+
- module System.Directory.Internal.C_utimensat where
- #include <HsDirectoryConfig.h>
- #ifdef HAVE_UTIMENSAT
-@@ -41,7 +43,7 @@ toCTimeSpec t = CTimeSpec (CTime sec) (t
-     (sec,  frac)  = if frac' < 0 then (sec' - 1, frac' + 1) else (sec', frac')
-     (sec', frac') = properFraction (toRational t)
- 
--foreign import ccall "utimensat" c_utimensat
-+foreign import capi "sys/stat.h utimensat" c_utimensat
-   :: CInt -> CString -> Ptr CTimeSpec -> CInt -> IO CInt
- 
- #endif
-Index: b/libraries/directory/directory.cabal
-===================================================================
---- a/libraries/directory/directory.cabal
-+++ b/libraries/directory/directory.cabal
-@@ -38,6 +38,7 @@ Library
-     default-language: Haskell2010
-     other-extensions:
-         CPP
-+        CApiFFI
-         Trustworthy
- 
-     exposed-modules:


=====================================
p/ghc/debian/patches/time_t-unix deleted
=====================================
@@ -1,76 +0,0 @@
-From e7ff902a69a90b206521de09da430b5cca6d8699 Mon Sep 17 00:00:00 2001
-From: Marios Titas <redneb at gmx.com>
-Date: Sun, 2 Oct 2022 23:12:32 +0300
-Subject: [PATCH] Use capi for syscalls that break under musl's handling of
- 64-bit time_t
-
----
-
-Index: b/libraries/unix/System/Posix/DynamicLinker/Prim.hsc
-===================================================================
---- a/libraries/unix/System/Posix/DynamicLinker/Prim.hsc
-+++ b/libraries/unix/System/Posix/DynamicLinker/Prim.hsc
-@@ -1,3 +1,4 @@
-+{-# LANGUAGE CApiFFI #-}
- {-# LANGUAGE Trustworthy #-}
- #if __GLASGOW_HASKELL__ >= 709
- {-# OPTIONS_GHC -fno-warn-trustworthy-safe #-}
-@@ -81,10 +82,10 @@ data RTLDFlags
-   | RTLD_LOCAL
-     deriving (Show, Read)
- 
--foreign import ccall unsafe "dlopen" c_dlopen :: CString -> CInt -> IO (Ptr ())
--foreign import ccall unsafe "dlsym"  c_dlsym  :: Ptr () -> CString -> IO (FunPtr a)
--foreign import ccall unsafe "dlerror" c_dlerror :: IO CString
--foreign import ccall unsafe "dlclose" c_dlclose :: (Ptr ()) -> IO CInt
-+foreign import capi unsafe "dlfcn.h dlopen" c_dlopen :: CString -> CInt -> IO (Ptr ())
-+foreign import capi unsafe "dlfcn.h dlsym"  c_dlsym  :: Ptr () -> CString -> IO (FunPtr a)
-+foreign import capi unsafe "dlfcn.h dlerror" c_dlerror :: IO CString
-+foreign import capi unsafe "dlfcn.h dlclose" c_dlclose :: (Ptr ()) -> IO CInt
- 
- packRTLDFlags :: [RTLDFlags] -> CInt
- packRTLDFlags flags = foldl (\ s f -> (packRTLDFlag f) .|. s) 0 flags
-Index: b/libraries/unix/System/Posix/Files/Common.hsc
-===================================================================
---- a/libraries/unix/System/Posix/Files/Common.hsc
-+++ b/libraries/unix/System/Posix/Files/Common.hsc
-@@ -1,3 +1,4 @@
-+{-# LANGUAGE CApiFFI #-}
- {-# LANGUAGE Trustworthy #-}
- 
- -----------------------------------------------------------------------------
-@@ -420,12 +421,12 @@ toCTimeSpec t = CTimeSpec (CTime sec) (t
- #endif
- 
- #ifdef HAVE_UTIMENSAT
--foreign import ccall unsafe "utimensat"
-+foreign import capi unsafe "sys/stat.h utimensat"
-     c_utimensat :: CInt -> CString -> Ptr CTimeSpec -> CInt -> IO CInt
- #endif
- 
- #if HAVE_FUTIMENS
--foreign import ccall unsafe "futimens"
-+foreign import capi unsafe "sys/stat.h futimens"
-     c_futimens :: CInt -> Ptr CTimeSpec -> IO CInt
- #endif
- 
-@@ -448,16 +449,16 @@ toCTimeVal t = CTimeVal sec (truncate $
-     (sec, frac) = if (frac' < 0) then (sec' - 1, frac' + 1) else (sec', frac')
-     (sec', frac') = properFraction $ toRational t
- 
--foreign import ccall unsafe "utimes"
-+foreign import capi unsafe "sys/time.h utimes"
-     c_utimes :: CString -> Ptr CTimeVal -> IO CInt
- 
- #ifdef HAVE_LUTIMES
--foreign import ccall unsafe "lutimes"
-+foreign import capi unsafe "sys/time.h lutimes"
-     c_lutimes :: CString -> Ptr CTimeVal -> IO CInt
- #endif
- 
- #if HAVE_FUTIMES
--foreign import ccall unsafe "futimes"
-+foreign import capi unsafe "sys/time.h futimes"
-     c_futimes :: CInt -> Ptr CTimeVal -> IO CInt
- #endif
- 


=====================================
p/ghc/debian/rules
=====================================
@@ -60,11 +60,6 @@ ifneq (,$(filter i386 powerpcspe x32, $(DEB_HOST_ARCH)))
   EXTRA_CONFIGURE_FLAGS += --enable-unregisterised
 endif
 
-# Build unregisterised on loong64, since llvm-15 is not available
-ifneq (,$(filter loong64, $(DEB_HOST_ARCH)))
-  EXTRA_CONFIGURE_FLAGS += --enable-unregisterised
-endif
-
 # See https://bugs.debian.org/1060196
 ifneq (,$(filter powerpc, $(DEB_HOST_ARCH)))
   EXTRA_CONFIGURE_FLAGS += --enable-unregisterised
@@ -118,8 +113,8 @@ EXTRA_CONFIGURE_FLAGS += --with-system-libffi
 # 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
+EXTRA_CONFIGURE_FLAGS += LLC=llc-17 OPT=opt-17
+EXTRA_INSTALL_CONFIGURE_FLAGS += LLC=llc-17 OPT=opt-17
 
 
 %:



View it on GitLab: https://salsa.debian.org/haskell-team/DHG_packages/-/compare/0f2963ff41b0e91c68f8b89ec45820d531f6f202...1078244450dc43c74c9496b07d0f5e3408ec93c7

-- 
View it on GitLab: https://salsa.debian.org/haskell-team/DHG_packages/-/compare/0f2963ff41b0e91c68f8b89ec45820d531f6f202...1078244450dc43c74c9496b07d0f5e3408ec93c7
You're receiving this email because of your account on salsa.debian.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/pkg-haskell-commits/attachments/20240503/7eb2cb38/attachment-0001.htm>


More information about the Pkg-haskell-commits mailing list