authorgravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2024-11-05 15:07:32+01:00
committergravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2024-11-05 22:41:09+01:00
log2a65b84572f19369e831d71c513da88a295193c8
tree3e3ea5611b7eb885ffa3e7b0ca14e31ee7cdc434
parent0563525b214f776c9ae43d4b2c97da45bdc513d6
signaturebadge-check Signed by SSH key SHA256:7B/LJ7bpR1eX8aCXSr4mtd5M45VMPKcx9zY8e95b5QM

tsan: Handle more Apple targets when picking library name.


1 files changed, 5 insertions(+), 5 deletions(-)

src/libtsan.zig+5-5
...@@ -29,11 +29,11 @@ pub fn buildTsan(comp: *Compilation, prog_node: std.Progress.Node) BuildError!vo...@@ -29,11 +29,11 @@ pub fn buildTsan(comp: *Compilation, prog_node: std.Progress.Node) BuildError!vo
29 const root_name = switch (target.os.tag) {29 const root_name = switch (target.os.tag) {
30 // On Apple platforms, we use the same name as LLVM because the30 // On Apple platforms, we use the same name as LLVM because the
31 // TSAN library implementation hard-codes a check for these names.31 // TSAN library implementation hard-codes a check for these names.
32 .macos => "clang_rt.tsan_osx_dynamic",32 .driverkit, .macos => "clang_rt.tsan_osx_dynamic",
33 .ios => switch (target.abi) {33 .ios => if (target.abi == .simulator) "clang_rt.tsan_iossim_dynamic" else "clang_rt.tsan_ios_dynamic",
34 .simulator => "clang_rt.tsan_iossim_dynamic",34 .tvos => if (target.abi == .simulator) "clang_rt.tsan_tvossim_dynamic" else "clang_rt.tsan_tvos_dynamic",
35 else => "clang_rt.tsan_ios_dynamic",35 .visionos => if (target.abi == .simulator) "clang_rt.tsan_xrossim_dynamic" else "clang_rt.tsan_xros_dynamic",
36 },36 .watchos => if (target.abi == .simulator) "clang_rt.tsan_watchossim_dynamic" else "clang_rt.tsan_watchos_dynamic",
37 else => "tsan",37 else => "tsan",
38 };38 };
39 const link_mode: std.builtin.LinkMode = if (target.isDarwin()) .dynamic else .static;39 const link_mode: std.builtin.LinkMode = if (target.isDarwin()) .dynamic else .static;