From 9d61829dce6f7bcbfa0064e9617c700efb8cd7ea Mon Sep 17 00:00:00 2001 From: slipher Date: Fri, 3 Jul 2026 11:48:25 -0500 Subject: [PATCH 1/2] Update Breakpad dump_syms_dwarf path See https://github.com/DaemonEngine/breakpad/pull/18 --- build-release | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build-release b/build-release index 63efb3f..22d39e8 100755 --- a/build-release +++ b/build-release @@ -385,7 +385,7 @@ build () { 'windows-'*) build_engine='true' system_windows='true' - dumpsyms_relpath=windows/dump_syms_dwarf/dump_syms + dumpsyms_relpath=windows/dump_syms_dwarf/dump_syms_dwarf ;; esac @@ -679,7 +679,7 @@ build () { local make_targets='' if "${host_windows}" then - make_targets='src/tools/windows/dump_syms_dwarf/dump_syms.exe' + make_targets='src/tools/windows/dump_syms_dwarf/dump_syms_dwarf.exe' fi make -j"${job_count}" -C"${breakpad_dir}" $make_targets \ || throwError INTERNAL 'breakpad build failed' From cc9b24e247aba8a16db6bc2bda04c7dc0a308f3d Mon Sep 17 00:00:00 2001 From: slipher Date: Sun, 5 Jul 2026 01:26:46 -0500 Subject: [PATCH 2/2] Use symbolize.py from our Breakpad repo This deduplicates a little of the work for setting up the symbol directory paths. Also symbolize.py has an additional feature of erroring out if the build ID is missing. --- build-release | 24 ++++++------------------ 1 file changed, 6 insertions(+), 18 deletions(-) diff --git a/build-release b/build-release index 22d39e8..65c7a1a 100755 --- a/build-release +++ b/build-release @@ -142,23 +142,11 @@ getBinPath () { } dumpSymbols () { - local dumpsyms_bin="${1}" - local symbol_dir="${2}" - local exec_file="${3}" - - local temp_file="$(mktemp)" - - "${dumpsyms_bin}" "${exec_file}" > "${temp_file}" - - local symbol_basename="$(head -n'1' "${temp_file}" | cut -f'5' -d' ')" - - local build_id="$(head -n'1' "${temp_file}" | cut -f'4' -d' ')" - - local exec_symbol_dir="${symbol_dir}/${symbol_basename}/${build_id}" - - mkdir -pv "${exec_symbol_dir}" + local symbol_dir="${1}" + local exec_file="${2}" - mv "${temp_file}" "${exec_symbol_dir}/${symbol_basename}.sym" + mkdir -pv "${symbol_dir}" + "${breakpad_dir}/symbolize.py" --symbol-directory "${symbol_dir}" "${exec_file}" } findDll () { @@ -716,7 +704,7 @@ build () { ln -s "${vm_file}" 'main.nexe' - dumpSymbols "${dumpsyms_bin}" "${symbol_dir}" "${main_nexe}" + dumpSymbols "${symbol_dir}" "${main_nexe}" mkdir -pv "${content_dir}" @@ -772,7 +760,7 @@ build () { do bin_path="${target_build_dir}/${bin}" printf 'extracting symbols from %s\n' "${bin_path}" - dumpSymbols "${dumpsyms_bin}" "${symbol_dir}" "${bin_path}" + dumpSymbols "${symbol_dir}" "${bin_path}" done fi