diff options
| author | Felix (xq) Queißner <git@mq32.de> | 2021-02-26 11:28:23 +0100 |
|---|---|---|
| committer | Veikka Tuominen <git@vexu.eu> | 2021-06-11 10:39:50 +0300 |
| commit | 27bd0971bb725fd3166bcee9364d3af868a24b5d (patch) | |
| tree | 0d863026c3a4f46764f56b572b2a242a41286f1c /lib/std/build/WriteFileStep.zig | |
| parent | 07acb1ccc97329cdcc0df37234325af9b00420a3 (diff) | |
| download | zig-27bd0971bb725fd3166bcee9364d3af868a24b5d.tar.gz zig-27bd0971bb725fd3166bcee9364d3af868a24b5d.zip | |
Changes to .path instead of .getPathFn. Changes LibExeObjStep to also provide FileSource.
Diffstat (limited to 'lib/std/build/WriteFileStep.zig')
| -rw-r--r-- | lib/std/build/WriteFileStep.zig | 20 |
1 files changed, 5 insertions, 15 deletions
diff --git a/lib/std/build/WriteFileStep.zig b/lib/std/build/WriteFileStep.zig index b26113385d..5978fd05ae 100644 --- a/lib/std/build/WriteFileStep.zig +++ b/lib/std/build/WriteFileStep.zig @@ -37,10 +37,7 @@ pub fn add(self: *WriteFileStep, basename: []const u8, bytes: []const u8) void { const node = self.builder.allocator.create(std.TailQueue(File).Node) catch unreachable; node.* = .{ .data = .{ - .source = build.GeneratedFile{ - .step = &self.step, - .getPathFn = getFilePath, - }, + .source = build.GeneratedFile{ .step = &self.step }, .basename = self.builder.dupePath(basename), .bytes = self.builder.dupe(bytes), }, @@ -59,17 +56,6 @@ pub fn getFileSource(step: *WriteFileStep, basename: []const u8) ?build.FileSour return null; } -/// Returns the -fn getFilePath(source: *const build.GeneratedFile) []const u8 { - const file = @fieldParentPtr(File, "source", source); - const step = @fieldParentPtr(WriteFileStep, "step", source.step); - - return fs.path.join( - step.builder.allocator, - &[_][]const u8{ step.output_dir, file.basename }, - ) catch unreachable; -} - fn make(step: *Step) !void { const self = @fieldParentPtr(WriteFileStep, "step", step); @@ -124,6 +110,10 @@ fn make(step: *Step) !void { }); return err; }; + node.data.source.path = fs.path.join( + self.builder.allocator, + &[_][]const u8{ self.output_dir, node.data.basename }, + ) catch unreachable; } } } |
