meson: ensure non-debug builds will use proper configuration

meson will set add -DHYPRLAND_DEBUG to CXXFLAGS during compilation of
debug builds. this avoids NDEBUG issues with wlroots and ensures asserts
will also work on release builds.
This commit is contained in:
Florian "sp1rit"​ 2022-06-18 13:09:38 +02:00
parent 75918c14d7
commit 7c3626f15e
No known key found for this signature in database
GPG key ID: BA579378AC81FB05
3 changed files with 11 additions and 0 deletions

View file

@ -15,6 +15,10 @@ if not have_xwayland
add_project_arguments('-DNO_XWAYLAND', language: 'cpp') add_project_arguments('-DNO_XWAYLAND', language: 'cpp')
endif endif
if get_option('buildtype') == 'debug'
add_project_arguments('-DHYPRLAND_DEBUG', language: 'cpp')
endif
subdir('protocols') subdir('protocols')
subdir('src') subdir('src')
subdir('hyprctl') subdir('hyprctl')

View file

@ -114,6 +114,9 @@ std::string versionRequest() {
#ifndef NDEBUG #ifndef NDEBUG
result += "debug\n"; result += "debug\n";
#endif #endif
#ifdef HYPRLAND_DEBUG
result += "debug\n";
#endif
#ifdef NO_XWAYLAND #ifdef NO_XWAYLAND
result += "no xwayland\n"; result += "no xwayland\n";
#endif #endif

View file

@ -7,10 +7,14 @@
#include "wlrunstable/wlr_ext_workspace_v1.hpp" #include "wlrunstable/wlr_ext_workspace_v1.hpp"
#ifndef NDEBUG #ifndef NDEBUG
#ifdef HYPRLAND_DEBUG
#define ISDEBUG true #define ISDEBUG true
#else #else
#define ISDEBUG false #define ISDEBUG false
#endif #endif
#else
#define ISDEBUG false
#endif
#define RIP(format, ... ) { fprintf(stderr, format "\n", ##__VA_ARGS__); exit(EXIT_FAILURE); } #define RIP(format, ... ) { fprintf(stderr, format "\n", ##__VA_ARGS__); exit(EXIT_FAILURE); }