authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2023-01-07 19:07:24-07:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2023-01-07 19:07:33-07:00
logc53a556a61fabbfa664d0bc433d0edf8092ee0db
treeacc7df3dbe3e57a51bfeedc55c179e7fc0d1d67c
parent01e34c1cd9a1cb56563e6c611c19d864c81de3c3

std.build.WriteFileStep: fix regression in this branch

This branch makes WriteFileStep use the same hashing algorithm as our cache system, reducing the divergence between zig build and the cache system.

2 files changed, 3 insertions(+), 5 deletions(-)

lib/std/build/ConfigHeaderStep.zig-1
......@@ -135,7 +135,6 @@ fn make(step: *Step) !void {
135135 self.output_dir = try std.fs.path.join(gpa, &[_][]const u8{
136136 self.builder.cache_root, "o", &hash_basename,
137137 });
138
139138 var dir = std.fs.cwd().makeOpenPath(self.output_dir, .{}) catch |err| {
140139 std.debug.print("unable to make path {s}: {s}\n", .{ self.output_dir, @errorName(err) });
141140 return err;
lib/std/build/WriteFileStep.zig+3-4
......@@ -82,16 +82,15 @@ fn make(step: *Step) !void {
8282 }
8383 var digest: [16]u8 = undefined;
8484 hash.final(&digest);
85 var hash_basename: [64]u8 = undefined;
85 var hash_basename: [digest.len * 2]u8 = undefined;
8686 _ = std.fmt.bufPrint(
8787 &hash_basename,
8888 "{s}",
8989 .{std.fmt.fmtSliceHexLower(&digest)},
9090 ) catch unreachable;
91
9192 self.output_dir = try fs.path.join(self.builder.allocator, &[_][]const u8{
92 self.builder.cache_root,
93 "o",
94 &hash_basename,
93 self.builder.cache_root, "o", &hash_basename,
9594 });
9695 var dir = fs.cwd().makeOpenPath(self.output_dir, .{}) catch |err| {
9796 std.debug.print("unable to make path {s}: {s}\n", .{ self.output_dir, @errorName(err) });