You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-28 16:07:14 +00:00
SCons: Cleanup DEBUG, _DEBUG and NDEBUG defines
- `_DEBUG` is MSVC specific so it didn't make much sense to define for Android and iOS builds. - iOS was the only platform to define `DEBUG`. We don't use it anywhere outside thirdparty code, which we usually don't intend to debug, so it seems better to be consistent with other platforms. - Consistently define `NDEBUG` to disable assert behavior in both `release` and `release_debug` targets. This used to be set for `release` for all platforms, and `release_debug` for Android and iOS only. - Due to the above, I removed the only use we made of `assert()` in Godot code, which was only implemented for Unix anyway, should have been `DEV_ENABLED`, and is in PoolAllocator which we don't actually use. - The denoise and recast modules keep defining `NDEBUG` even for the `debug` target as we don't want OIDN and Embree asserting all over the place.
This commit is contained in:
@@ -55,7 +55,7 @@ def configure(env):
|
||||
## Build type
|
||||
|
||||
if env["target"].startswith("release"):
|
||||
env.Append(CPPDEFINES=["NDEBUG", ("NS_BLOCK_ASSERTIONS", 1)])
|
||||
env.Append(CPPDEFINES=[("NS_BLOCK_ASSERTIONS", 1)])
|
||||
if env["optimize"] == "speed": # optimize for speed (default)
|
||||
# `-O2` is more friendly to debuggers than `-O3`, leading to better crash backtraces
|
||||
# when using `target=release_debug`.
|
||||
@@ -67,8 +67,7 @@ def configure(env):
|
||||
env.Append(LINKFLAGS=["-Os"])
|
||||
|
||||
elif env["target"] == "debug":
|
||||
env.Append(CCFLAGS=["-gdwarf-2", "-O0"])
|
||||
env.Append(CPPDEFINES=["_DEBUG", ("DEBUG", 1)])
|
||||
env.Append(CCFLAGS=["-g", "-O0"])
|
||||
|
||||
## LTO
|
||||
|
||||
|
||||
Reference in New Issue
Block a user