From e3fec6cce91a6ad5d63f78afe96649dc2aeea6a1 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Wed, 25 Mar 2020 19:32:12 -0400 Subject: [PATCH] zig cc: add detection for `-###` it turns on --verbose-cc and --verbose-link --- src-self-hosted/clang_options_data.zig | 9 ++++++++- src-self-hosted/stage2.zig | 1 + src/main.cpp | 4 ++++ src/stage2.h | 1 + tools/update_clang_options.zig | 4 ++++ 5 files changed, 18 insertions(+), 1 deletion(-) diff --git a/src-self-hosted/clang_options_data.zig b/src-self-hosted/clang_options_data.zig index d94a6fd002114cd9afd61ff7d69306d1373521b6..89cf29024f85531d633f3a35eddd0f3180a59881 100644 --- a/src-self-hosted/clang_options_data.zig +++ b/src-self-hosted/clang_options_data.zig @@ -96,7 +96,14 @@ sepd1("Zlinker-input"), .pd2 = true, .psl = false, }, -flagpd1("###"), +.{ + .name = "###", + .syntax = .flag, + .zig_equivalent = .verbose_cmds, + .pd1 = true, + .pd2 = false, + .psl = false, +}, .{ .name = "Brepro", .syntax = .flag, diff --git a/src-self-hosted/stage2.zig b/src-self-hosted/stage2.zig index a5ca6ccfa59a63a3558c8551151cc268658e0bdf..03cdcc5b08d1051fac17dd46e33e6698a9a3c6c2 100644 --- a/src-self-hosted/stage2.zig +++ b/src-self-hosted/stage2.zig @@ -1279,6 +1279,7 @@ pub const ClangArgIterator = extern struct { debug, sanitize, linker_script, + verbose_cmds, }; fn init(argv: []const [*:0]const u8) ClangArgIterator { diff --git a/src/main.cpp b/src/main.cpp index b90d2bbc8cd1893d8e858bb1ebc953aaf29d5012..dd7cdead6cf61190b1abfcfc045c1c3292a431b5 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -708,6 +708,10 @@ static int main0(int argc, char **argv) { case Stage2ClangArgLinkerScript: linker_script = it.only_arg; break; + case Stage2ClangArgVerboseCmds: + verbose_cc = true; + verbose_link = true; + break; } } // Parse linker args diff --git a/src/stage2.h b/src/stage2.h index 1aef0efe811142a24aa07ce4298e19806ad74707..00a3b9451ea13d255d99c483412fa7e469b33d86 100644 --- a/src/stage2.h +++ b/src/stage2.h @@ -341,6 +341,7 @@ enum Stage2ClangArg { Stage2ClangArgDebug, Stage2ClangArgSanitize, Stage2ClangArgLinkerScript, + Stage2ClangArgVerboseCmds, }; // ABI warning diff --git a/tools/update_clang_options.zig b/tools/update_clang_options.zig index 6fd50de92ec97f57929250602cdb2a79819c382a..97be4978d23a1734446b93a57031aa54dd4afb4f 100644 --- a/tools/update_clang_options.zig +++ b/tools/update_clang_options.zig @@ -150,6 +150,10 @@ const known_options = [_]KnownOpt{ .name = "T", .ident = "linker_script", }, + .{ + .name = "###", + .ident = "verbose_cmds", + }, }; const blacklisted_options = [_][]const u8{}; -- 2.54.0