forked from lix-project/hydra
Fix build
This commit is contained in:
parent
e463f44bfc
commit
405c52b589
3 changed files with 13 additions and 9 deletions
|
@ -473,7 +473,7 @@ int main(int argc, char * * argv)
|
||||||
auto outPath = store->makeOutputPath("out", h, drvName);
|
auto outPath = store->makeOutputPath("out", h, drvName);
|
||||||
drv.env["out"] = store->printStorePath(outPath);
|
drv.env["out"] = store->printStorePath(outPath);
|
||||||
drv.outputs.insert_or_assign("out", DerivationOutput { .output = DerivationOutputInputAddressed { .path = outPath } });
|
drv.outputs.insert_or_assign("out", DerivationOutput { .output = DerivationOutputInputAddressed { .path = outPath } });
|
||||||
auto newDrvPath = store->printStorePath(writeDerivation(store, drv, drvName));
|
auto newDrvPath = store->printStorePath(writeDerivation(*store, drv));
|
||||||
|
|
||||||
debug("rewrote aggregate derivation %s -> %s", store->printStorePath(drvPath), newDrvPath);
|
debug("rewrote aggregate derivation %s -> %s", store->printStorePath(drvPath), newDrvPath);
|
||||||
|
|
||||||
|
|
|
@ -445,16 +445,20 @@ void State::buildRemote(ref<Store> destStore,
|
||||||
while (true) {
|
while (true) {
|
||||||
auto storePathS = readString(from);
|
auto storePathS = readString(from);
|
||||||
if (storePathS == "") break;
|
if (storePathS == "") break;
|
||||||
ValidPathInfo info(localStore->parseStorePath(storePathS));
|
|
||||||
assert(outputs.count(info.path));
|
|
||||||
readString(from); // deriver
|
readString(from); // deriver
|
||||||
info.references = readStorePaths<StorePathSet>(*localStore, from);
|
auto references = readStorePaths<StorePathSet>(*localStore, from);
|
||||||
readLongLong(from); // download size
|
readLongLong(from); // download size
|
||||||
info.narSize = readLongLong(from);
|
auto narSize = readLongLong(from);
|
||||||
totalNarSize += info.narSize;
|
auto narHash = Hash::parseAny(readString(from), htSHA256);
|
||||||
info.narHash = Hash::parseAny(readString(from), htSHA256);
|
auto ca = parseContentAddressOpt(readString(from));
|
||||||
info.ca = parseContentAddressOpt(readString(from));
|
|
||||||
readStrings<StringSet>(from); // sigs
|
readStrings<StringSet>(from); // sigs
|
||||||
|
ValidPathInfo info(localStore->parseStorePath(storePathS), narHash);
|
||||||
|
assert(outputs.count(info.path));
|
||||||
|
info.references = references;
|
||||||
|
info.narSize = narSize;
|
||||||
|
totalNarSize += info.narSize;
|
||||||
|
info.narHash = narHash;
|
||||||
|
info.ca = ca;
|
||||||
infos.insert_or_assign(info.path, info);
|
infos.insert_or_assign(info.path, info);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -430,7 +430,7 @@ Step::ptr State::createStep(ref<Store> destStore,
|
||||||
step->drv = std::make_unique<Derivation>(localStore->readDerivation(drvPath));
|
step->drv = std::make_unique<Derivation>(localStore->readDerivation(drvPath));
|
||||||
step->parsedDrv = std::make_unique<ParsedDerivation>(drvPath, *step->drv);
|
step->parsedDrv = std::make_unique<ParsedDerivation>(drvPath, *step->drv);
|
||||||
|
|
||||||
step->preferLocalBuild = step->parsedDrv->willBuildLocally();
|
step->preferLocalBuild = step->parsedDrv->willBuildLocally(*localStore);
|
||||||
step->isDeterministic = get(step->drv->env, "isDetermistic").value_or("0") == "1";
|
step->isDeterministic = get(step->drv->env, "isDetermistic").value_or("0") == "1";
|
||||||
|
|
||||||
step->systemType = step->drv->platform;
|
step->systemType = step->drv->platform;
|
||||||
|
|
Loading…
Reference in a new issue