aboutsummaryrefslogtreecommitdiff
path: root/lib/std/Build/WriteFileStep.zig
diff options
context:
space:
mode:
Diffstat (limited to 'lib/std/Build/WriteFileStep.zig')
-rw-r--r--lib/std/Build/WriteFileStep.zig14
1 files changed, 6 insertions, 8 deletions
diff --git a/lib/std/Build/WriteFileStep.zig b/lib/std/Build/WriteFileStep.zig
index 9e8fcdc203..1621295ad8 100644
--- a/lib/std/Build/WriteFileStep.zig
+++ b/lib/std/Build/WriteFileStep.zig
@@ -9,7 +9,6 @@ pub const base_id = .write_file;
step: Step,
builder: *std.Build,
-output_dir: []const u8,
files: std.TailQueue(File),
pub const File = struct {
@@ -23,7 +22,6 @@ pub fn init(builder: *std.Build) WriteFileStep {
.builder = builder,
.step = Step.init(.write_file, "writefile", builder.allocator, make),
.files = .{},
- .output_dir = undefined,
};
}
@@ -87,11 +85,11 @@ fn make(step: *Step) !void {
.{std.fmt.fmtSliceHexLower(&digest)},
) catch unreachable;
- self.output_dir = try fs.path.join(self.builder.allocator, &[_][]const u8{
- self.builder.cache_root, "o", &hash_basename,
+ const output_dir = try self.builder.cache_root.join(self.builder.allocator, &.{
+ "o", &hash_basename,
});
- var dir = fs.cwd().makeOpenPath(self.output_dir, .{}) catch |err| {
- std.debug.print("unable to make path {s}: {s}\n", .{ self.output_dir, @errorName(err) });
+ var dir = fs.cwd().makeOpenPath(output_dir, .{}) catch |err| {
+ std.debug.print("unable to make path {s}: {s}\n", .{ output_dir, @errorName(err) });
return err;
};
defer dir.close();
@@ -101,14 +99,14 @@ fn make(step: *Step) !void {
dir.writeFile(node.data.basename, node.data.bytes) catch |err| {
std.debug.print("unable to write {s} into {s}: {s}\n", .{
node.data.basename,
- self.output_dir,
+ output_dir,
@errorName(err),
});
return err;
};
node.data.source.path = try fs.path.join(
self.builder.allocator,
- &[_][]const u8{ self.output_dir, node.data.basename },
+ &[_][]const u8{ output_dir, node.data.basename },
);
}
}