[Git][haskell-team/DHG_packages][hadrian] 4 commits: ghc: Set LLVM version during configuration

Ilias Tsitsimpis (@iliastsi) gitlab at salsa.debian.org
Sun Sep 17 19:37:02 BST 2023



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


Commits:
8f2400e9 by Ilias Tsitsimpis at 2023-09-17T17:46:42+03:00
ghc: Set LLVM version during configuration

- - - - -
8d5bbcaf by Ilias Tsitsimpis at 2023-09-17T17:46:42+03:00
ghc: Set LC_ALL=C.UTF-8 which is needed to build docs

- - - - -
49eceaf7 by Ilias Tsitsimpis at 2023-09-17T17:46:42+03:00
ghc: Remove .stamp file

- - - - -
3897792b by Ilias Tsitsimpis at 2023-09-17T21:36:26+03:00
ghc: Support cross compilation (WIP)

- - - - -


8 changed files:

- p/ghc/debian/control
- + p/ghc/debian/patches/allow-setting-llvm-program
- + p/ghc/debian/patches/fix-cross-compilation
- p/ghc/debian/patches/hadrian-haddock-opts
- p/ghc/debian/patches/hadrian-plans
- p/ghc/debian/patches/hadrian-relpath
- p/ghc/debian/patches/series
- p/ghc/debian/rules


Changes:

=====================================
p/ghc/debian/control
=====================================
@@ -13,15 +13,15 @@ Build-Depends:
   devscripts,
   pkg-config,
   ghc:native (>= 9.0),
+  hadrian:native (>= 9.4) <!pkg.ghc.nohadrian>,
   libgmp-dev,
-  hadrian (>= 9.4) <!pkg.ghc.nohadrian>,
   llvm-15 [armel armhf],
   libffi-dev,
   libncurses-dev,
-  python3,
-  python3-sphinx,
-  python3-sphinx-rtd-theme,
-  dpkg-dev (>= 1.16.1.1)
+  python3:native,
+  python3-sphinx <!cross>,
+  python3-sphinx-rtd-theme <!cross>,
+  dpkg-dev,
 Build-Depends-Indep:
   hscolour,
   fop


=====================================
p/ghc/debian/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 <iliastsi at debian.org>
+
+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])
+ 


=====================================
p/ghc/debian/patches/fix-cross-compilation
=====================================
@@ -0,0 +1,46 @@
+commit bd92182cd56140ffb2f68ec01492e5aa6333a8fc
+Author: Ben Gamari <bgamari.foss at gmail.com>
+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


=====================================
p/ghc/debian/patches/hadrian-haddock-opts
=====================================
@@ -4,9 +4,11 @@ Description: Pass 'mathjax' to Haddock
 Author: Ilias Tsitsimpis <iliastsi at debian.org>
 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 @@
+@@ -32,6 +32,7 @@ haddockBuilderArgs = mconcat
              , arg "-o", arg $ takeDirectory output
              , arg "-t", arg "Haskell Hierarchical Libraries"
              , arg "-p", arg "libraries/prologue.txt"
@@ -14,7 +16,7 @@ Bug: https://gitlab.haskell.org/ghc/ghc/-/issues/23625
              , pure [ "--read-interface="
                       ++ (takeFileName . takeDirectory) haddock
                       ++ "," ++ haddock | haddock <- inputs ] ]
-@@ -60,6 +61,7 @@
+@@ -60,6 +61,7 @@ haddockBuilderArgs = mconcat
              , arg "--hyperlinked-source"
              , arg "--hoogle"
              , arg "--quickjump"


=====================================
p/ghc/debian/patches/hadrian-plans
=====================================
@@ -4,11 +4,15 @@ Description: Add more hadrian bootstrap plans
  cross-compiled GHC that is of the same version as the GHC we are building here.
 Author: Ilias Tsitsimpis <iliastsi at debian.org>
 
+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 @@


=====================================
p/ghc/debian/patches/hadrian-relpath
=====================================
@@ -7,9 +7,11 @@ Description: Use realpath instead of custom script
    ../../ghc-doc
 Author: Ilias Tsitsimpis <iliastsi at debian.org>
 
+Index: b/hadrian/bindist/Makefile
+===================================================================
 --- a/hadrian/bindist/Makefile
 +++ b/hadrian/bindist/Makefile
-@@ -229,7 +229,7 @@
+@@ -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),\


=====================================
p/ghc/debian/patches/series
=====================================
@@ -14,3 +14,5 @@ hadrian-plans
 hadrian-haddock-opts
 hadrian-relpath
 hadrian-iserv
+allow-setting-llvm-program
+fix-cross-compilation


=====================================
p/ghc/debian/rules
=====================================
@@ -38,12 +38,16 @@ DEB_HOOGLE_TXT_DIR := /usr/lib/ghc-doc/hoogle/
 # 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_CONFIGURE_FLAGS += --program-prefix=""
-  EXTRA_HADRIAN_FLAGS += --flavour=quickest --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
@@ -94,7 +98,11 @@ endif
 EXTRA_CONFIGURE_FLAGS += --with-system-libffi
 
 # Set LLVM version
-#EXTRA_CONFIGURE_FLAGS += --with-llc=llc-15 --with-opt=opt-15
+# 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
 
 
 %:
@@ -135,6 +143,7 @@ override_dh_autoreconf:
 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
 	hadrian/hadrian \
 		-V -j \
@@ -147,6 +156,7 @@ override_dh_auto_build-arch: hadrian/hadrian
 # 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
 	hadrian/hadrian \
 		-V -j \
@@ -166,7 +176,8 @@ $(BINDIST)/mk/install.mk:
 	cd $(BINDIST) && \
 		./configure \
 			--prefix=/usr \
-			--docdir=/usr/share/doc/ghc-doc
+			--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'.
@@ -190,7 +201,8 @@ debian/tmp: $(BINDIST)/mk/install.mk
 	# 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 debian/tmp/var/lib/ghc/package.conf.d/package.cache*
+	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



View it on GitLab: https://salsa.debian.org/haskell-team/DHG_packages/-/compare/00581173cc70aa97bc78ca318c6e92c424ff7814...3897792b1436e417fe51a962b183019613b133ef

-- 
View it on GitLab: https://salsa.debian.org/haskell-team/DHG_packages/-/compare/00581173cc70aa97bc78ca318c6e92c424ff7814...3897792b1436e417fe51a962b183019613b133ef
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/20230917/3d12be1f/attachment-0001.htm>


More information about the Pkg-haskell-commits mailing list