Luke Granger-Brown
57725ef3ec
git-subtree-dir: third_party/nixpkgs git-subtree-split: 76612b17c0ce71689921ca12d9ffdc9c23ce40b2
35 lines
706 B
Nix
35 lines
706 B
Nix
{
|
|
lib,
|
|
libc,
|
|
config,
|
|
system,
|
|
bootstrapFiles,
|
|
isFromBootstrapFiles ? false,
|
|
}:
|
|
|
|
let
|
|
maybeDenoteProvenance = lib.optionalAttrs isFromBootstrapFiles {
|
|
passthru = {
|
|
inherit isFromBootstrapFiles;
|
|
};
|
|
};
|
|
|
|
maybeContentAddressed = lib.optionalAttrs config.contentAddressedByDefault {
|
|
__contentAddressed = true;
|
|
outputHashAlgo = "sha256";
|
|
outputHashMode = "recursive";
|
|
};
|
|
|
|
args = {
|
|
inherit system bootstrapFiles;
|
|
extraAttrs = maybeContentAddressed;
|
|
};
|
|
result =
|
|
if libc == "glibc" then
|
|
import ./glibc.nix args
|
|
else if libc == "musl" then
|
|
import ./musl.nix args
|
|
else
|
|
throw "unsupported libc";
|
|
in
|
|
result // maybeDenoteProvenance
|