summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorLars-Dominik Braun <lars@6xq.net>2014-01-31 17:43:00 +0100
committerLars-Dominik Braun <lars@6xq.net>2014-01-31 17:43:00 +0100
commitef4fe8e4c89bcf8df9b3f74d285d8bbd71a09eea (patch)
tree9fccf82e53d3df2f41546c609a613872c48c0ee9 /Makefile
parentb91dada75f804ccca64644f6d40276db4815f4b3 (diff)
downloadpianobar-windows-ef4fe8e4c89bcf8df9b3f74d285d8bbd71a09eea.tar.gz
pianobar-windows-ef4fe8e4c89bcf8df9b3f74d285d8bbd71a09eea.tar.bz2
pianobar-windows-ef4fe8e4c89bcf8df9b3f74d285d8bbd71a09eea.zip
Switch to clang for debugging build + fix issues
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile42
1 files changed, 16 insertions, 26 deletions
diff --git a/Makefile b/Makefile
index d2f2a8a..2867da1 100644
--- a/Makefile
+++ b/Makefile
@@ -167,32 +167,22 @@ clean:
all: pianobar
debug: pianobar
-debug: CFLAGS=-pedantic -ggdb -Wall -Wmissing-declarations -Wshadow -Wcast-qual \
- -Wformat=2 -Winit-self -Wignored-qualifiers -Wmissing-include-dirs \
- -Wfloat-equal -Wundef -Wpointer-arith -Wtype-limits -Wbad-function-cast \
- -Wcast-align -Wclobbered -Wempty-body -Wjump-misses-init -Waddress \
- -Wlogical-op -Waggregate-return -Wstrict-prototypes \
- -Wold-style-declaration -Wold-style-definition -Wmissing-parameter-type \
- -Wmissing-prototypes -Wmissing-field-initializers -Woverride-init \
- -Wpacked -Wredundant-decls -Wnested-externs
-# warnings for gcc 4.5; disabled:
-# -Wswitch-default: too many bogus warnings
-# -Wswitch-enum: too many bogus warnings
-# -Wunused-parameter: too many bogus warnings
-# -Wstrict-overflow: depends on optimization level
-# -Wunsafe-loop-optimizations: depends on optimization level
-# -Wwrite-strings: to be enabled
-# -Wconversion: too many (bogus?) warnings
-# -Wsign-conversion: same here
-# -Wsign-compare: to be enabled
-# -Wmissing-noreturn: recommendation
-# -Wmissing-format-attribute: same here
-# -Wpadded: have a closer look at this one
-# -Winline: we don't care
-# -Winvalid-pch: not our business
-# -Wdisabled-optimization: depends on optimization level
-# -Wstack-protector: we don't use stack protector
-# -Woverlength-strings: over-portability-ish
+debug: CC=clang
+debug: CFLAGS=-Wall -Wextra \
+ -pedantic \
+ -Wno-unused-parameter \
+ -fsanitize=address \
+ -fsanitize=integer \
+ -fsanitize=undefined \
+ -fsanitize=alignment \
+ -fsanitize=bool \
+ -fsanitize=bounds \
+ -fsanitize=enum \
+ -fsanitize=shift \
+ -fsanitize=signed-integer-overflow \
+ -fsanitize=unsigned-integer-overflow \
+ -fno-sanitize-recover
+debug: LDFLAGS=$(CFLAGS)
waitress-test: ${LIBWAITRESS_TEST_OBJ}
${CC} ${LDFLAGS} ${LIBWAITRESS_TEST_OBJ} ${LIBGNUTLS_LDFLAGS} -o waitress-test