diff options
author | cbdev <cb@cbcdn.com> | 2018-02-24 05:51:52 +0100 |
---|---|---|
committer | cbdev <cb@cbcdn.com> | 2018-02-24 05:51:52 +0100 |
commit | 2deebf9056528ef6d12cbbd0b56411741676a062 (patch) | |
tree | 4c4b452fb22c444c81b10c077ec8c40610a0b4e4 | |
parent | 9a3969b21825838a09460acfcdf18d49db944e44 (diff) | |
download | midimonster-2deebf9056528ef6d12cbbd0b56411741676a062.tar.gz midimonster-2deebf9056528ef6d12cbbd0b56411741676a062.tar.bz2 midimonster-2deebf9056528ef6d12cbbd0b56411741676a062.zip |
Add and document sanitizer/valgrind makefile targets
-rw-r--r-- | README.md | 5 | ||||
-rw-r--r-- | makefile | 6 |
2 files changed, 10 insertions, 1 deletions
@@ -358,3 +358,8 @@ at start time, which provide a protocol mapping to instances / channels. The API and structures are more-or-less documented in [midimonster.h](midimonster.h), more detailed documentation may follow. + +To build with `clang` sanitizers and even more warnings enabled, run `make sanitize`. +This is useful to check for common errors and oversights. + +For runtime leak analysis with `valgrind`, you can use `make run`. @@ -1,4 +1,4 @@ -.PHONY: clean +.PHONY: all clean run sanitize BACKENDS = artnet.so midi.so osc.so loopback.so evdev.so OBJS = config.o backend.o plugin.o PLUGINDIR = "\"./\"" @@ -30,3 +30,7 @@ clean: run: valgrind --leak-check=full --show-leak-kinds=all ./midimonster + +sanitize: CC = clang +sanitize: CFLAGS = -g -Wall -Wpedantic -fsanitize=address -fsanitize=undefined -fno-omit-frame-pointer +sanitize: midimonster $(BACKENDS) |