Merge pull request #147253 from sternenseemann/ghc-build-target

haskell.compiler.*: be clear about LLVM build->target role

authored by

John Ericson and committed by
GitHub
20a166d2 4f326207

+16 -16
+2 -2
pkgs/development/compilers/ghc/8.10.7.nix
··· 15 15 , # LLVM is conceptually a run-time-only depedendency, but for 16 16 # non-x86, we need LLVM to bootstrap later stages, so it becomes a 17 17 # build-time dependency too. 18 - buildLlvmPackages, llvmPackages 18 + buildTargetLlvmPackages, llvmPackages 19 19 20 20 , # If enabled, GHC will be built with the GPL-free but slower integer-simple 21 21 # library instead of the faster but GPLed integer-gmp library. ··· 122 122 123 123 toolsForTarget = [ 124 124 pkgsBuildTarget.targetPackages.stdenv.cc 125 - ] ++ lib.optional useLLVM buildLlvmPackages.llvm; 125 + ] ++ lib.optional useLLVM buildTargetLlvmPackages.llvm; 126 126 127 127 targetCC = builtins.head toolsForTarget; 128 128
+2 -2
pkgs/development/compilers/ghc/8.8.4.nix
··· 14 14 , # LLVM is conceptually a run-time-only depedendency, but for 15 15 # non-x86, we need LLVM to bootstrap later stages, so it becomes a 16 16 # build-time dependency too. 17 - buildLlvmPackages, llvmPackages 17 + buildTargetLlvmPackages, llvmPackages 18 18 19 19 , # If enabled, GHC will be built with the GPL-free but slower integer-simple 20 20 # library instead of the faster but GPLed integer-gmp library. ··· 130 130 131 131 toolsForTarget = [ 132 132 pkgsBuildTarget.targetPackages.stdenv.cc 133 - ] ++ lib.optional useLLVM buildLlvmPackages.llvm; 133 + ] ++ lib.optional useLLVM buildTargetLlvmPackages.llvm; 134 134 135 135 targetCC = builtins.head toolsForTarget; 136 136
+2 -2
pkgs/development/compilers/ghc/9.0.1.nix
··· 16 16 , # LLVM is conceptually a run-time-only depedendency, but for 17 17 # non-x86, we need LLVM to bootstrap later stages, so it becomes a 18 18 # build-time dependency too. 19 - buildLlvmPackages, llvmPackages 19 + buildTargetLlvmPackages, llvmPackages 20 20 21 21 , # If enabled, GHC will be built with the GPL-free but slower integer-simple 22 22 # library instead of the faster but GPLed integer-gmp library. ··· 117 117 118 118 toolsForTarget = [ 119 119 pkgsBuildTarget.targetPackages.stdenv.cc 120 - ] ++ lib.optional useLLVM buildLlvmPackages.llvm; 120 + ] ++ lib.optional useLLVM buildTargetLlvmPackages.llvm; 121 121 122 122 targetCC = builtins.head toolsForTarget; 123 123
+2 -2
pkgs/development/compilers/ghc/9.2.1.nix
··· 16 16 , # LLVM is conceptually a run-time-only depedendency, but for 17 17 # non-x86, we need LLVM to bootstrap later stages, so it becomes a 18 18 # build-time dependency too. 19 - buildLlvmPackages, llvmPackages 19 + buildTargetLlvmPackages, llvmPackages 20 20 21 21 , # If enabled, GHC will be built with the GPL-free but slower integer-simple 22 22 # library instead of the faster but GPLed integer-gmp library. ··· 117 117 118 118 toolsForTarget = [ 119 119 pkgsBuildTarget.targetPackages.stdenv.cc 120 - ] ++ lib.optional useLLVM buildLlvmPackages.llvm; 120 + ] ++ lib.optional useLLVM buildTargetLlvmPackages.llvm; 121 121 122 122 targetCC = builtins.head toolsForTarget; 123 123
+2 -2
pkgs/development/compilers/ghc/head.nix
··· 21 21 , # LLVM is conceptually a run-time-only depedendency, but for 22 22 # non-x86, we need LLVM to bootstrap later stages, so it becomes a 23 23 # build-time dependency too. 24 - buildLlvmPackages, llvmPackages 24 + buildTargetLlvmPackages, llvmPackages 25 25 26 26 , # If enabled, GHC will be built with the GPL-free but slightly slower native 27 27 # bignum backend instead of the faster but GPLed gmp backend. ··· 130 130 131 131 toolsForTarget = [ 132 132 pkgsBuildTarget.targetPackages.stdenv.cc 133 - ] ++ lib.optional useLLVM buildLlvmPackages.llvm; 133 + ] ++ lib.optional useLLVM buildTargetLlvmPackages.llvm; 134 134 135 135 targetCC = builtins.head toolsForTarget; 136 136
+6 -6
pkgs/top-level/haskell-packages.nix
··· 1 - { buildPackages, pkgs, newScope, stdenv }: 1 + { buildPackages, pkgsBuildTarget, pkgs, newScope, stdenv }: 2 2 3 3 let 4 4 # These are attributes in compiler and packages that don't support integer-simple. ··· 79 79 else 80 80 packages.ghc865Binary; 81 81 inherit (buildPackages.python3Packages) sphinx; 82 - buildLlvmPackages = buildPackages.llvmPackages_7; 82 + buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_7; 83 83 llvmPackages = pkgs.llvmPackages_7; 84 84 }; 85 85 ghc8107 = callPackage ../development/compilers/ghc/8.10.7.nix { ··· 96 96 # https://github.com/xattr/xattr/issues/44 and 97 97 # https://github.com/xattr/xattr/issues/55 are solved. 98 98 inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook; 99 - buildLlvmPackages = buildPackages.llvmPackages_9; 99 + buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_9; 100 100 llvmPackages = pkgs.llvmPackages_9; 101 101 }; 102 102 ghc901 = callPackage ../development/compilers/ghc/9.0.1.nix { ··· 109 109 packages.ghc8107Binary; 110 110 inherit (buildPackages.python3Packages) sphinx; 111 111 inherit (buildPackages.darwin) autoSignDarwinBinariesHook; 112 - buildLlvmPackages = buildPackages.llvmPackages_10; 112 + buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_10; 113 113 llvmPackages = pkgs.llvmPackages_10; 114 114 }; 115 115 ghc921 = callPackage ../development/compilers/ghc/9.2.1.nix { ··· 124 124 # https://github.com/xattr/xattr/issues/44 and 125 125 # https://github.com/xattr/xattr/issues/55 are solved. 126 126 inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook; 127 - buildLlvmPackages = buildPackages.llvmPackages_10; 127 + buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_10; 128 128 llvmPackages = pkgs.llvmPackages_10; 129 129 }; 130 130 ghcHEAD = callPackage ../development/compilers/ghc/head.nix { ··· 134 134 # https://github.com/xattr/xattr/issues/44 and 135 135 # https://github.com/xattr/xattr/issues/55 are solved. 136 136 inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook; 137 - buildLlvmPackages = buildPackages.llvmPackages_10; 137 + buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_10; 138 138 llvmPackages = pkgs.llvmPackages_10; 139 139 libffi = pkgs.libffi; 140 140 };