diff --git a/src/clang_options_data.zig b/src/clang_options_data.zig index b1cb6c258c9b7aa97ceba92c7cbd610008970cca..d0f00625b7d5fe0999e8bd1aefe535673e64380b 100644 --- a/src/clang_options_data.zig +++ b/src/clang_options_data.zig @@ -2426,7 +2426,14 @@ flagpd1("dwarf-ext-refs"), sepd1("dylib_file"), flagpd1("dylinker"), flagpd1("dynamic"), -flagpd1("dynamiclib"), +.{ + .name = "dynamiclib", + .syntax = .flag, + .zig_equivalent = .shared, + .pd1 = true, + .pd2 = false, + .psl = false, +}, flagpd1("emit-ast"), flagpd1("emit-codegen-only"), flagpd1("emit-header-module"), diff --git a/src/link/MachO.zig b/src/link/MachO.zig index fe8fcd6281469f8779a1efe1a58bf1bdb93d5cab..52d434da2f2e8dec92143bbc0f63b8f093c3a6c2 100644 --- a/src/link/MachO.zig +++ b/src/link/MachO.zig @@ -644,9 +644,7 @@ fn linkWithLLD(self: *MachO, comp: *Compilation) !void { try argv.append("defs"); } - if (is_dyn_lib) { - try argv.append("-static"); - } else { + if (is_exe_or_dyn_lib) { try argv.append("-dynamic"); } diff --git a/tools/update_clang_options.zig b/tools/update_clang_options.zig index f0dfe1639d207817dd964b493ababad03f113ee9..8c3eddf7cf329a83ae65a1303b3618d9d49e653c 100644 --- a/tools/update_clang_options.zig +++ b/tools/update_clang_options.zig @@ -332,6 +332,10 @@ const known_options = [_]KnownOpt{ .name = "s", .ident = "strip", }, + .{ + .name = "dynamiclib", + .ident = "shared", + }, }; const blacklisted_options = [_][]const u8{};