Disable the crash handler if execinfo=no scons option is set
This commit is contained in:
parent
5f05e2b9b1
commit
f1a677fb4c
2 changed files with 14 additions and 8 deletions
|
@ -36,8 +36,8 @@
|
|||
#include "core/version.h"
|
||||
#include "main/main.h"
|
||||
|
||||
#ifdef DEBUG_ENABLED
|
||||
#define CRASH_HANDLER_ENABLED 1
|
||||
#ifndef DEBUG_ENABLED
|
||||
#undef CRASH_HANDLER_ENABLED
|
||||
#endif
|
||||
|
||||
#ifdef CRASH_HANDLER_ENABLED
|
||||
|
|
|
@ -50,7 +50,7 @@ def get_opts():
|
|||
BoolVariable("wayland", "Enable Wayland display", True),
|
||||
BoolVariable("libdecor", "Enable libdecor support", True),
|
||||
BoolVariable("touch", "Enable touch events", True),
|
||||
BoolVariable("execinfo", "Use libexecinfo on systems where glibc is not available", False),
|
||||
BoolVariable("execinfo", "Use libexecinfo on systems where glibc is not available", None),
|
||||
]
|
||||
|
||||
|
||||
|
@ -487,14 +487,20 @@ def configure(env: "SConsEnvironment"):
|
|||
if platform.system() == "Linux":
|
||||
env.Append(LIBS=["dl"])
|
||||
|
||||
if not env["execinfo"] and platform.libc_ver()[0] != "glibc":
|
||||
if platform.libc_ver()[0] != "glibc":
|
||||
# The default crash handler depends on glibc, so if the host uses
|
||||
# a different libc (BSD libc, musl), fall back to libexecinfo.
|
||||
print("Note: Using `execinfo=yes` for the crash handler as required on platforms where glibc is missing.")
|
||||
env["execinfo"] = True
|
||||
if not "execinfo" in env:
|
||||
print("Note: Using `execinfo=yes` for the crash handler as required on platforms where glibc is missing.")
|
||||
env["execinfo"] = True
|
||||
|
||||
if env["execinfo"]:
|
||||
env.Append(LIBS=["execinfo"])
|
||||
if env["execinfo"]:
|
||||
env.Append(LIBS=["execinfo"])
|
||||
env.Append(CPPDEFINES=["CRASH_HANDLER_ENABLED"])
|
||||
else:
|
||||
print("Note: Using `execinfo=no` disables the crash handler on platforms where glibc is missing.")
|
||||
else:
|
||||
env.Append(CPPDEFINES=["CRASH_HANDLER_ENABLED"])
|
||||
|
||||
if platform.system() == "FreeBSD":
|
||||
env.Append(LINKFLAGS=["-lkvm"])
|
||||
|
|
Loading…
Reference in a new issue