brainix/nix/overlays/llvm-tablegen.nix
2026-02-13 17:06:24 +09:00

18 lines
627 B
Nix

final: prev: let
lib = final.lib;
fixLLVM = pkg: let
stdenv = pkg.stdenv or final.stdenv;
isCross = stdenv.hostPlatform != stdenv.buildPlatform;
in pkg.overrideAttrs (old: if !isCross then {} else {
cmakeFlags = let
flags = old.cmakeFlags or [];
filtered = builtins.filter (f: !(lib.hasPrefix "-DLLVM_TABLEGEN=" f)) flags;
tblgen = "${final.buildPackages.llvmPackages_9.llvm}/bin/llvm-tblgen";
in filtered ++ [ "-DLLVM_TABLEGEN=${tblgen}" ];
});
in {
llvmPackages_9 = prev.llvmPackages_9 // {
llvm = fixLLVM prev.llvmPackages_9.llvm;
};
llvm_9 = final.llvmPackages_9.llvm;
}