zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

commit 8b78df403fe71ffdf8c39361dd30a3c1171a1f1c (tree)
parent 78ebf8f577d865f6382aea718970034215d0678c
Author: Garrett Beck <garrettlennoxbeck@gmail.com>
Date:   Sat, 23 Sep 2023 09:33:34 -0500

Allow Step.TranslateC to not link libc

Diffstat:
Mlib/std/Build/Step/TranslateC.zig | 7++++++-
1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/lib/std/Build/Step/TranslateC.zig b/lib/std/Build/Step/TranslateC.zig @@ -16,11 +16,13 @@ out_basename: []const u8, target: CrossTarget, optimize: std.builtin.OptimizeMode, output_file: std.Build.GeneratedFile, +link_libc: bool, pub const Options = struct { source_file: std.Build.LazyPath, target: CrossTarget, optimize: std.builtin.OptimizeMode, + link_libc: bool = true, }; pub fn create(owner: *std.Build, options: Options) *TranslateC { @@ -40,6 +42,7 @@ pub fn create(owner: *std.Build, options: Options) *TranslateC { .target = options.target, .optimize = options.optimize, .output_file = std.Build.GeneratedFile{ .step = &self.step }, + .link_libc = options.link_libc, }; source.addStepDependencies(&self.step); return self; @@ -124,7 +127,9 @@ fn make(step: *Step, prog_node: *std.Progress.Node) !void { var argv_list = std.ArrayList([]const u8).init(b.allocator); try argv_list.append(b.zig_exe); try argv_list.append("translate-c"); - try argv_list.append("-lc"); + if (self.link_libc) { + try argv_list.append("-lc"); + } try argv_list.append("--listen=-");