mirror of
https://codeberg.org/ziglang/zig.git
synced 2026-04-27 19:09:47 +03:00
build runner: clean up tmp dirs
This commit is contained in:
@@ -784,6 +784,9 @@ fn runStepNames(
|
||||
var pending_count: usize = 0;
|
||||
var total_compile_errors: usize = 0;
|
||||
|
||||
var cleanup_task = io.async(cleanTmpFiles, .{ io, step_stack.keys() });
|
||||
defer cleanup_task.await(io);
|
||||
|
||||
for (step_stack.keys()) |s| {
|
||||
test_pass_count += s.test_results.passCount();
|
||||
test_skip_count += s.test_results.skip_count;
|
||||
@@ -1849,3 +1852,14 @@ fn initStdoutWriter(io: Io) *Writer {
|
||||
stdout_writer_allocation = Io.File.stdout().writerStreaming(io, &stdio_buffer_allocation);
|
||||
return &stdout_writer_allocation.interface;
|
||||
}
|
||||
|
||||
fn cleanTmpFiles(io: Io, steps: []const *Step) void {
|
||||
for (steps) |step| {
|
||||
const wf = step.cast(std.Build.Step.WriteFile) orelse continue;
|
||||
if (wf.mode != .tmp) continue;
|
||||
const path = wf.generated_directory.path orelse continue;
|
||||
Io.Dir.cwd().deleteTree(io, path) catch |err| {
|
||||
std.log.warn("failed to delete {s}: {t}", .{ path, err });
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user