Fix build

This commit is contained in:
Eelco Dolstra 2020-08-27 17:46:36 +02:00
parent e463f44bfc
commit 405c52b589
No known key found for this signature in database
GPG key ID: 8170B4726D7198DE
3 changed files with 13 additions and 9 deletions

View file

@ -473,7 +473,7 @@ int main(int argc, char * * argv)
auto outPath = store->makeOutputPath("out", h, drvName);
drv.env["out"] = store->printStorePath(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);

View file

@ -445,16 +445,20 @@ void State::buildRemote(ref<Store> destStore,
while (true) {
auto storePathS = readString(from);
if (storePathS == "") break;
ValidPathInfo info(localStore->parseStorePath(storePathS));
assert(outputs.count(info.path));
readString(from); // deriver
info.references = readStorePaths<StorePathSet>(*localStore, from);
auto references = readStorePaths<StorePathSet>(*localStore, from);
readLongLong(from); // download size
info.narSize = readLongLong(from);
totalNarSize += info.narSize;
info.narHash = Hash::parseAny(readString(from), htSHA256);
info.ca = parseContentAddressOpt(readString(from));
auto narSize = readLongLong(from);
auto narHash = Hash::parseAny(readString(from), htSHA256);
auto ca = parseContentAddressOpt(readString(from));
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);
}

View file

@ -430,7 +430,7 @@ Step::ptr State::createStep(ref<Store> destStore,
step->drv = std::make_unique<Derivation>(localStore->readDerivation(drvPath));
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->systemType = step->drv->platform;