diff options
author | NRK <nrk@disroot.org> | 2023-05-26 09:06:17 +0200 |
---|---|---|
committer | NRK <nrk@disroot.org> | 2023-05-26 09:06:17 +0200 |
commit | 40480596cad8654dca225e7fb136f4151f5df5c0 (patch) | |
tree | c03bd62682be982691268defed6835c537633518 | |
parent | 0e1bc3c045384bca18922accbc50fa6914a67bd0 (diff) | |
download | nsxiv-40480596cad8654dca225e7fb136f4151f5df5c0.tar.zst |
make assertions opt-in (#447)
slight addendum to 657080a7e55843e351fa6ce41e4ce315eab62b67
instead of disabling asserts by adding -DNDEBUG to config.mk, this
disables asserts by default in the source code itself. this way, if
someone compiles with `make CFLAGS="-O3 -march=native"` without knowing
about asserts/-DNDEBUG then he won't accidentally get a build with
assertions in it.
this basically makes the assertions opt-in, if someone wants it, he'll
need to *explicitly* set `-DDEBUG` to get it. so that it's not possible
to accidentally end up with assertions enabled.
Reviewed-on: https://codeberg.org/nsxiv/nsxiv/pulls/447
Reviewed-by: TAAPArthur <taaparthur@noreply.codeberg.org>
-rw-r--r-- | config.mk | 2 | ||||
-rw-r--r-- | nsxiv.h | 4 |
2 files changed, 5 insertions, 1 deletions
@@ -26,7 +26,7 @@ CC = c99 # CFLAGS, any additional compiler flags goes here CFLAGS = -Wall -pedantic -O2 -DNDEBUG # Uncomment for a debug build using gcc/clang -# CFLAGS = -Wall -pedantic -g3 -fsanitize=address,undefined +# CFLAGS = -Wall -pedantic -DDEBUG -g3 -fsanitize=address,undefined # LDFLAGS = $(CFLAGS) # icons that will be installed via `make icon` @@ -20,6 +20,10 @@ #ifndef NSXIV_H #define NSXIV_H +#if !defined(DEBUG) && !defined(NDEBUG) + #define NDEBUG +#endif + #include <stdbool.h> #include <stddef.h> |