Skip to content

Commit 378264d

Browse files
authored
Merge pull request #15750 from ziglang/zig2.c
zig2.c: omit non-essential subcommands
2 parents 6e05620 + f521898 commit 378264d

File tree

4 files changed

+19
-17
lines changed

4 files changed

+19
-17
lines changed

build.zig

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -197,7 +197,7 @@ pub fn build(b: *std.Build) !void {
197197
exe_options.addOption(bool, "llvm_has_xtensa", llvm_has_xtensa);
198198
exe_options.addOption(bool, "force_gpa", force_gpa);
199199
exe_options.addOption(bool, "only_c", only_c);
200-
exe_options.addOption(bool, "omit_pkg_fetching_code", only_c);
200+
exe_options.addOption(bool, "only_core_functionality", only_c);
201201

202202
if (link_libc) {
203203
exe.linkLibC();
@@ -353,7 +353,7 @@ pub fn build(b: *std.Build) !void {
353353
test_cases_options.addOption(bool, "llvm_has_xtensa", llvm_has_xtensa);
354354
test_cases_options.addOption(bool, "force_gpa", force_gpa);
355355
test_cases_options.addOption(bool, "only_c", only_c);
356-
test_cases_options.addOption(bool, "omit_pkg_fetching_code", true);
356+
test_cases_options.addOption(bool, "only_core_functionality", true);
357357
test_cases_options.addOption(bool, "enable_qemu", b.enable_qemu);
358358
test_cases_options.addOption(bool, "enable_wine", b.enable_wine);
359359
test_cases_options.addOption(bool, "enable_wasmtime", b.enable_wasmtime);
@@ -505,7 +505,7 @@ fn addWasiUpdateStep(b: *std.Build, version: [:0]const u8) !void {
505505
exe_options.addOption(bool, "enable_tracy_callstack", false);
506506
exe_options.addOption(bool, "enable_tracy_allocation", false);
507507
exe_options.addOption(bool, "value_tracing", false);
508-
exe_options.addOption(bool, "omit_pkg_fetching_code", true);
508+
exe_options.addOption(bool, "only_core_functionality", true);
509509

510510
const run_opt = b.addSystemCommand(&.{
511511
"wasm-opt",

src/Compilation.zig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2056,7 +2056,7 @@ pub fn update(comp: *Compilation, main_progress_node: *std.Progress.Node) !void
20562056
return;
20572057
}
20582058

2059-
if (!build_options.only_c and !build_options.omit_pkg_fetching_code) {
2059+
if (!build_options.only_c and !build_options.only_core_functionality) {
20602060
if (comp.emit_docs) |doc_location| {
20612061
if (comp.bin_file.options.module) |module| {
20622062
var autodoc = Autodoc.init(module, doc_location);

src/main.zig

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -281,12 +281,8 @@ pub fn mainArgs(gpa: Allocator, arena: Allocator, args: []const []const u8) !voi
281281
mem.eql(u8, cmd, "ar"))
282282
{
283283
return process.exit(try llvmArMain(arena, args));
284-
} else if (mem.eql(u8, cmd, "cc")) {
285-
return buildOutputType(gpa, arena, args, .cc);
286-
} else if (mem.eql(u8, cmd, "c++")) {
287-
return buildOutputType(gpa, arena, args, .cpp);
288-
} else if (mem.eql(u8, cmd, "translate-c")) {
289-
return buildOutputType(gpa, arena, args, .translate_c);
284+
} else if (mem.eql(u8, cmd, "build")) {
285+
return cmdBuild(gpa, arena, cmd_args);
290286
} else if (mem.eql(u8, cmd, "clang") or
291287
mem.eql(u8, cmd, "-cc1") or mem.eql(u8, cmd, "-cc1as"))
292288
{
@@ -296,8 +292,14 @@ pub fn mainArgs(gpa: Allocator, arena: Allocator, args: []const []const u8) !voi
296292
mem.eql(u8, cmd, "wasm-ld"))
297293
{
298294
return process.exit(try lldMain(arena, args, true));
299-
} else if (mem.eql(u8, cmd, "build")) {
300-
return cmdBuild(gpa, arena, cmd_args);
295+
} else if (build_options.only_core_functionality) {
296+
@panic("only a few subcommands are supported in a zig2.c build");
297+
} else if (mem.eql(u8, cmd, "cc")) {
298+
return buildOutputType(gpa, arena, args, .cc);
299+
} else if (mem.eql(u8, cmd, "c++")) {
300+
return buildOutputType(gpa, arena, args, .cpp);
301+
} else if (mem.eql(u8, cmd, "translate-c")) {
302+
return buildOutputType(gpa, arena, args, .translate_c);
301303
} else if (mem.eql(u8, cmd, "fmt")) {
302304
return cmdFmt(gpa, arena, cmd_args);
303305
} else if (mem.eql(u8, cmd, "objcopy")) {
@@ -678,7 +680,7 @@ const ArgMode = union(enum) {
678680

679681
/// Avoid dragging networking into zig2.c because it adds dependencies on some
680682
/// linker symbols that are annoying to satisfy while bootstrapping.
681-
const Ip4Address = if (build_options.omit_pkg_fetching_code) void else std.net.Ip4Address;
683+
const Ip4Address = if (build_options.only_core_functionality) void else std.net.Ip4Address;
682684

683685
const Listen = union(enum) {
684686
none,
@@ -1177,7 +1179,7 @@ fn buildOutputType(
11771179
if (mem.eql(u8, next_arg, "-")) {
11781180
listen = .stdio;
11791181
} else {
1180-
if (build_options.omit_pkg_fetching_code) unreachable;
1182+
if (build_options.only_core_functionality) unreachable;
11811183
// example: --listen 127.0.0.1:9000
11821184
var it = std.mem.split(u8, next_arg, ":");
11831185
const host = it.next().?;
@@ -3266,7 +3268,7 @@ fn buildOutputType(
32663268
return cleanExit();
32673269
},
32683270
.ip4 => |ip4_addr| {
3269-
if (build_options.omit_pkg_fetching_code) unreachable;
3271+
if (build_options.only_core_functionality) unreachable;
32703272

32713273
var server = std.net.StreamServer.init(.{
32723274
.reuse_address = true,
@@ -4413,7 +4415,7 @@ pub fn cmdBuild(gpa: Allocator, arena: Allocator, args: []const []const u8) !voi
44134415
.root_src_directory = build_directory,
44144416
.root_src_path = build_zig_basename,
44154417
};
4416-
if (!build_options.omit_pkg_fetching_code) {
4418+
if (!build_options.only_core_functionality) {
44174419
var http_client: std.http.Client = .{ .allocator = gpa };
44184420
defer http_client.deinit();
44194421

stage1/config.zig.in

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,4 @@ pub const have_stage1 = false;
1313
pub const skip_non_native = false;
1414
pub const only_c = false;
1515
pub const force_gpa = false;
16-
pub const omit_pkg_fetching_code = true;
16+
pub const only_core_functionality = true;

0 commit comments

Comments
 (0)