mirror of
https://github.com/Redot-Engine/redot-engine.git
synced 2025-12-06 07:17:42 -05:00
[Windows] Fix MinGW debug symbols.
(cherry picked from commit 404383e161)
This commit is contained in:
@@ -710,9 +710,12 @@ if env.msvc:
|
||||
env.Append(CCFLAGS=["/Od"])
|
||||
else:
|
||||
if env["debug_symbols"]:
|
||||
# Adding dwarf-4 explicitly makes stacktraces work with clang builds,
|
||||
# otherwise addr2line doesn't understand them
|
||||
env.Append(CCFLAGS=["-gdwarf-4"])
|
||||
if env["platform"] == "windows":
|
||||
env.Append(CCFLAGS=["-gdwarf-5"])
|
||||
else:
|
||||
# Adding dwarf-4 explicitly makes stacktraces work with clang builds,
|
||||
# otherwise addr2line doesn't understand them
|
||||
env.Append(CCFLAGS=["-gdwarf-4"])
|
||||
if methods.using_emcc(env):
|
||||
# Emscripten only produces dwarf symbols when using "-g3".
|
||||
env.Append(CCFLAGS=["-g3"])
|
||||
|
||||
@@ -166,6 +166,9 @@ extern void CrashHandlerException(int signal) {
|
||||
int64_t image_file_base = get_image_base(_execpath);
|
||||
data.offset = image_mem_base - image_file_base;
|
||||
|
||||
if (FileAccess::exists(_execpath + ".debugsymbols")) {
|
||||
_execpath = _execpath + ".debugsymbols";
|
||||
}
|
||||
data.state = backtrace_create_state(_execpath.utf8().get_data(), 0, &error_callback, reinterpret_cast<void *>(&data));
|
||||
if (data.state != nullptr) {
|
||||
data.index = 1;
|
||||
|
||||
Reference in New Issue
Block a user