[build] Get source positions in sanitizer backtraces for Mac.

Change-Id: Ied8dc6900fd5e3a37f2a301b8a9e2e2360270fc0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/456407
Reviewed-by: Alexander Markov <alexmarkov@google.com>
This commit is contained in:
Ryan Macnak
2025-10-21 14:51:54 -07:00
parent 6c5631ed88
commit 18db50f66a
2 changed files with 11 additions and 0 deletions
+7
View File
@@ -21,6 +21,7 @@ mac_toolchain_suite("ios_clang_arm64") {
asm = "${assembler_prefix}${prefix}/clang"
ar = "${prefix}/llvm-ar"
ld = "${link_prefix}${prefix}/clang++"
dsymutil = "${prefix}/dsymutil"
strip = "${prefix}/llvm-strip"
nm = "${prefix}/llvm-nm"
is_clang = true
@@ -44,6 +45,7 @@ mac_toolchain_suite("ios_clang_arm64_sim") {
asm = "${assembler_prefix}${prefix}/clang"
ar = "${prefix}/llvm-ar"
ld = "${link_prefix}${prefix}/clang++"
dsymutil = "${prefix}/dsymutil"
strip = "${prefix}/llvm-strip"
nm = "${prefix}/llvm-nm"
is_clang = true
@@ -68,6 +70,7 @@ mac_toolchain_suite("ios_clang_x64_sim") {
asm = "${assembler_prefix}${prefix}/clang"
ar = "${prefix}/llvm-ar"
ld = "${link_prefix}${prefix}/clang++"
dsymutil = "${prefix}/dsymutil"
strip = "${prefix}/llvm-strip"
nm = "${prefix}/llvm-nm"
is_clang = true
@@ -93,6 +96,7 @@ if (is_watchos) {
asm = "${assembler_prefix}${prefix}/clang"
ar = "${prefix}/llvm-ar"
ld = "${link_prefix}${prefix}/clang++"
dsymutil = "${prefix}/dsymutil"
strip = "${prefix}/llvm-strip"
nm = "${prefix}/llvm-nm"
is_clang = true
@@ -116,6 +120,7 @@ if (is_watchos) {
asm = "${assembler_prefix}${prefix}/clang"
ar = "${prefix}/llvm-ar"
ld = "${link_prefix}${prefix}/clang++"
dsymutil = "${prefix}/dsymutil"
strip = "${prefix}/llvm-strip"
nm = "${prefix}/llvm-nm"
is_clang = true
@@ -140,6 +145,7 @@ mac_toolchain_suite("clang_x64") {
asm = "${assembler_prefix}${prefix}/clang"
ar = "${prefix}/llvm-ar"
ld = "${link_prefix}${prefix}/clang++"
dsymutil = "${prefix}/dsymutil"
strip = "${prefix}/llvm-strip"
nm = "${prefix}/llvm-nm"
is_clang = true
@@ -162,6 +168,7 @@ mac_toolchain_suite("clang_arm64") {
asm = "${assembler_prefix}${prefix}/clang"
ar = "${prefix}/llvm-ar"
ld = "${link_prefix}${prefix}/clang++"
dsymutil = "${prefix}/dsymutil"
strip = "${prefix}/llvm-strip"
nm = "${prefix}/llvm-nm"
is_clang = true
+4
View File
@@ -63,6 +63,7 @@ template("mac_toolchain") {
cxx = invoker.cxx
ar = invoker.ar
ld = invoker.ld
dsymutil = invoker.dsymutil
nm = invoker.nm
# Make these apply to all tools below.
@@ -190,6 +191,7 @@ template("mac_toolchain") {
exename = "{{target_output_name}}{{output_extension}}"
outfile = "{{root_out_dir}}/$exename"
rspfile = "$outfile.rsp"
dsymdir = "$outfile.dSYM"
symfile = "$outfile.sym"
if (defined(invoker.strip)) {
@@ -198,6 +200,8 @@ template("mac_toolchain") {
commands = [ "$ld $sysroot_flags $toolchain_flags {{ldflags}} -Xlinker -rpath -Xlinker @executable_path/Frameworks -o $outfile -Wl,-filelist,$rspfile {{solibs}} {{libs}} {{frameworks}}" ]
commands += [ "$dsymutil -o $dsymdir $outfile" ]
symbolizer_script =
rebase_path("//runtime/tools/dart_profiler_symbols.py")
commands +=