-
Notifications
You must be signed in to change notification settings - Fork 1.3k
NDEBUG not defined for Release builds #6887
Comments
Nope, Release builds are still built with @friedbunny @incanus @1ec5 did you accidentally build iOS packages without |
We could add something like this: diff --git a/src/mbgl/gl/debugging.hpp b/src/mbgl/gl/debugging.hpp
index 42c31cc..1f1cf09 100644
--- a/src/mbgl/gl/debugging.hpp
+++ b/src/mbgl/gl/debugging.hpp
@@ -2,6 +2,8 @@
#ifndef NDEBUG
+#pragma message "WARNING: Building with BUILDTYPE=Debug"
+
#include <string>
namespace mbgl { |
We have a hard fail when trying to publish a Node.js package with |
@kkaefer we don't use the default when we publish a build. We use a script and it sets the build type to release. See https://github.com/mapbox/mapbox-gl-native/blob/release-ios-v3.4.0/platform/ios/scripts/deploy-packages.sh#L53 |
One theory is that we’re building the SDK itself in Release, but it’s linking to an mbgl static library built in Debug. |
When I build locally with |
When I built beta.2 I used Xcode 7.3.1 because #6842 (comment). I'm not exactly sure why, but something about I spent a bunch of time on this before deciding to turn my computer off and turn it back on it again. This appears to have "fixed" the problem. I'm going to close this and will keep an eye on future releases. I think the solution for this already ticketed: #2844 |
The stack trace from #6883 indicates that the
MBGL_CHECK_ERROR
macro was compiled to the error-checking variant in a release build. Most likely, this means that release builds are neglecting to defineNDEBUG
, and therefore including code intended only for debug builds. This includes GL error checking, debug level logging, andassert
s.@kkaefer, is this something that may have regressed in the switch to cmake?
The text was updated successfully, but these errors were encountered: