| ... | @@ -152,16 +152,11 @@ pub fn main(init: std.process.Init) !void { | ... | @@ -152,16 +152,11 @@ pub fn main(init: std.process.Init) !void { |
| 152 | | 152 | |
| 153 | var child_args: std.ArrayList([]const u8) = .empty; | 153 | var child_args: std.ArrayList([]const u8) = .empty; |
| 154 | try child_args.appendSlice(arena, &.{ | 154 | try child_args.appendSlice(arena, &.{ |
| 155 | resolved_zig_exe, | 155 | resolved_zig_exe, "build-exe", |
| 156 | "build-exe", | 156 | "-fincremental", "-fno-ubsan-rt", |
| 157 | "-fincremental", | 157 | "-target", try target_query.zigTriple(arena), |
| 158 | "-fno-ubsan-rt", | 158 | "--cache-dir", ".local-cache", |
| 159 | "-target", | 159 | "--global-cache-dir", ".global-cache", |
| 160 | try target_query.zigTriple(arena), | | |
| 161 | "--cache-dir", | | |
| 162 | ".local-cache", | | |
| 163 | "--global-cache-dir", | | |
| 164 | ".global-cache", | | |
| 165 | }); | 160 | }); |
| 166 | | 161 | |
| 167 | if (opt_resolved_lib_dir) |resolved_lib_dir| { | 162 | if (opt_resolved_lib_dir) |resolved_lib_dir| { |
| ... | @@ -199,15 +194,13 @@ pub fn main(init: std.process.Init) !void { | ... | @@ -199,15 +194,13 @@ pub fn main(init: std.process.Init) !void { |
| 199 | resolved_zig_exe; | 194 | resolved_zig_exe; |
| 200 | | 195 | |
| 201 | try cc_child_args.appendSlice(arena, &.{ | 196 | try cc_child_args.appendSlice(arena, &.{ |
| 202 | resolved_cc_zig_exe, | 197 | resolved_cc_zig_exe, "build-exe", |
| 203 | "cc", | 198 | "-target", try target_query.zigTriple(arena), |
| 204 | "-target", | 199 | "--cache-dir", ".local-cache", |
| 205 | try target_query.zigTriple(arena), | 200 | "--global-cache-dir", ".global-cache", |
| 206 | "-I", | 201 | "-I", opt_resolved_lib_dir.?, // verified earlier |
| 207 | opt_resolved_lib_dir.?, // verified earlier | 202 | "-lc", |
| 208 | }); | 203 | }); |
| 209 | | | |
| 210 | try cc_child_args.append(arena, "-o"); | | |
| 211 | } | 204 | } |
| 212 | | 205 | |
| 213 | const allow_compiler_stderr = debug_log_args.items.len != 0; | 206 | const allow_compiler_stderr = debug_log_args.items.len != 0; |
| ... | @@ -669,9 +662,18 @@ const Eval = struct { | ... | @@ -669,9 +662,18 @@ const Eval = struct { |
| 669 | const child_prog_node = prog_node.start("build cbe output", 0); | 662 | const child_prog_node = prog_node.start("build cbe output", 0); |
| 670 | defer child_prog_node.end(); | 663 | defer child_prog_node.end(); |
| 671 | | 664 | |
| 672 | try eval.cc_child_args.appendSlice(eval.arena, &.{ out_path, c_path }); | 665 | try eval.cc_child_args.append(eval.arena, try std.fmt.allocPrint(eval.arena, "-femit-bin={s}", .{out_path})); |
| | 666 | try eval.cc_child_args.append(eval.arena, c_path); |
| 673 | defer eval.cc_child_args.items.len -= 2; | 667 | defer eval.cc_child_args.items.len -= 2; |
| 674 | | 668 | |
| | 669 | if (eval.allow_compiler_stderr) { |
| | 670 | const cmd: std.zig.SubprocessCommand = .{ |
| | 671 | .argv = eval.cc_child_args.items, |
| | 672 | .cwd = eval.tmp_dir_path, |
| | 673 | }; |
| | 674 | std.log.scoped(.spawn).info("{f}", .{cmd}); |
| | 675 | } |
| | 676 | |
| 675 | const result = std.process.run(eval.arena, eval.io, .{ | 677 | const result = std.process.run(eval.arena, eval.io, .{ |
| 676 | .argv = eval.cc_child_args.items, | 678 | .argv = eval.cc_child_args.items, |
| 677 | .cwd = .{ .path = eval.tmp_dir_path }, | 679 | .cwd = .{ .path = eval.tmp_dir_path }, |