mirror of
https://github.com/NixOS/nixpkgs.git
synced 2026-09-30 03:39:59 +00:00
electron: fix build
Just like with Firefox, we need to make sure there's only a single
version of LLVM involved in building Chromium, or we get errors like
this:
ld.lld: error: Invalid record (Producer: 'LLVM18.1.7' Reader: 'LLVM 17.0.6')
Fixes: 23d4f83453 ("cargo,clippy,rustc,rustfmt: 1.77.2 -> 1.78.0")
This commit is contained in:
@@ -12,7 +12,6 @@
|
||||
, ninja, pkg-config
|
||||
, python3, perl
|
||||
, which
|
||||
, llvmPackages_attrName
|
||||
, libuuid
|
||||
, overrideCC
|
||||
# postPatch:
|
||||
@@ -131,7 +130,7 @@ let
|
||||
# https://github.com/NixOS/nixpkgs/issues/142901
|
||||
buildPlatformLlvmStdenv =
|
||||
let
|
||||
llvmPackages = pkgsBuildBuild.${llvmPackages_attrName};
|
||||
llvmPackages = pkgsBuildBuild.rustc.llvmPackages;
|
||||
in
|
||||
overrideCC llvmPackages.stdenv
|
||||
(llvmPackages.stdenv.cc.override {
|
||||
@@ -164,7 +163,7 @@ let
|
||||
ninja pkg-config
|
||||
python3WithPackages perl
|
||||
which
|
||||
buildPackages.${llvmPackages_attrName}.bintools
|
||||
buildPackages.rustc.llvmPackages.bintools
|
||||
bison gperf
|
||||
];
|
||||
|
||||
@@ -381,8 +380,8 @@ let
|
||||
llvmCcAndBintools = symlinkJoin {
|
||||
name = "llvmCcAndBintools";
|
||||
paths = [
|
||||
buildPackages.${llvmPackages_attrName}.llvm
|
||||
buildPackages.${llvmPackages_attrName}.stdenv.cc
|
||||
buildPackages.rustc.llvmPackages.llvm
|
||||
buildPackages.rustc.llvmPackages.stdenv.cc
|
||||
];
|
||||
};
|
||||
|
||||
|
||||
@@ -24,11 +24,7 @@
|
||||
}:
|
||||
|
||||
let
|
||||
# Sometimes we access `llvmPackages` via `pkgs`, and other times
|
||||
# via `pkgsFooBar`, so a string (attrname) is the only way to have
|
||||
# a single point of control over the LLVM version used.
|
||||
llvmPackages_attrName = "llvmPackages_17";
|
||||
stdenv = pkgs.${llvmPackages_attrName}.stdenv;
|
||||
stdenv = pkgs.rustc.llvmPackages.stdenv;
|
||||
|
||||
# Helper functions for changes that depend on specific versions:
|
||||
warnObsoleteVersionConditional = min-version: result:
|
||||
@@ -48,7 +44,7 @@ let
|
||||
callPackage = newScope chromium;
|
||||
|
||||
chromium = rec {
|
||||
inherit stdenv llvmPackages_attrName upstream-info;
|
||||
inherit stdenv upstream-info;
|
||||
|
||||
mkChromiumDerivation = callPackage ./common.nix ({
|
||||
inherit channel chromiumVersionAtLeast versionRange;
|
||||
|
||||
Reference in New Issue
Block a user