diff --git a/build.zig b/build.zig index b47860be..b4adbd3b 100644 --- a/build.zig +++ b/build.zig @@ -25,9 +25,11 @@ pub fn build(b: *std.Build) !void { .flags = &.{"-std=c11"}, }); } else { + const files = try findSourceFiles(b); + defer b.allocator.free(files); lib.addCSourceFiles(.{ .root = b.path("lib/src"), - .files = try findSourceFiles(b), + .files = files, .flags = &.{"-std=c11"}, }); } @@ -96,7 +98,7 @@ pub fn wasmtimeDep(target: std.Target) []const u8 { } fn findSourceFiles(b: *std.Build) ![]const []const u8 { - var sources = std.ArrayList([]const u8).init(b.allocator); + var sources: std.ArrayListUnmanaged([]const u8) = .empty; var dir = try b.build_root.handle.openDir("lib/src", .{ .iterate = true }); var iter = dir.iterate(); @@ -107,9 +109,9 @@ fn findSourceFiles(b: *std.Build) ![]const []const u8 { const file = entry.name; const ext = std.fs.path.extension(file); if (std.mem.eql(u8, ext, ".c") and !std.mem.eql(u8, file, "lib.c")) { - try sources.append(b.dupe(file)); + try sources.append(b.allocator, b.dupe(file)); } } - return sources.items; + return sources.toOwnedSlice(b.allocator); } diff --git a/build.zig.zon b/build.zig.zon index 0e539786..7635a348 100644 --- a/build.zig.zon +++ b/build.zig.zon @@ -2,6 +2,7 @@ .name = .tree_sitter, .fingerprint = 0x841224b447ac0d4f, .version = "0.25.8", + .minimum_zig_version = "0.14.1", .paths = .{ "build.zig", "build.zig.zon",