Merge pull request #7612 from g-w1/do-7296

Implement #7296
This commit is contained in:
Andrew Kelley 2021-01-02 22:05:31 -08:00 committed by GitHub
commit 683814190b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 11 additions and 5 deletions

2
.gitignore vendored
View File

@ -10,6 +10,8 @@
# -andrewrk
zig-cache/
/release/
/debug/
/build/
/build-*/
/docgen_tmp/

View File

@ -200,12 +200,16 @@ pub const Builder = struct {
const install_prefix = self.install_prefix orelse "/usr";
self.install_path = fs.path.join(self.allocator, &[_][]const u8{ dest_dir, install_prefix }) catch unreachable;
} else {
const install_prefix = self.install_prefix orelse blk: {
const p = self.cache_root;
self.install_path = self.install_prefix orelse blk: {
const p = if (self.release_mode) |mode| switch (mode) {
.Debug => "debug",
.ReleaseSafe => "release",
.ReleaseFast => "release",
.ReleaseSmall => "release",
} else "debug";
self.install_prefix = p;
break :blk p;
break :blk self.pathFromRoot(p);
};
self.install_path = install_prefix;
}
self.lib_dir = fs.path.join(self.allocator, &[_][]const u8{ self.install_path, "lib" }) catch unreachable;
self.exe_dir = fs.path.join(self.allocator, &[_][]const u8{ self.install_path, "bin" }) catch unreachable;

View File

@ -134,8 +134,8 @@ pub fn main() !void {
}
}
builder.resolveInstallPrefix();
try runBuild(builder);
builder.resolveInstallPrefix();
if (builder.validateUserInputDidItFail())
return usageAndErr(builder, true, stderr_stream);