Tentative improvement of exercism warning handling...
This commit is contained in:
@@ -13,6 +13,20 @@ CFLAGS += -Werror
|
||||
CFLAGS += -Wmissing-declarations
|
||||
CFLAGS += -DUNITY_SUPPORT_64
|
||||
|
||||
# detect compiler.
|
||||
REALCC=$(realpath $(shell which $(CC)))
|
||||
CC_VERSION_TEXT=$(shell $(REALCC) --version 2>/dev/null | head -n 1)
|
||||
|
||||
# fix discrepancies in compilers warnings. Only gcc and clang for now.
|
||||
ifneq ($(findstring clang,$(CC_VERSION_TEXT)),)
|
||||
CFLAGS += -Wimplicit-fallthrough
|
||||
else
|
||||
ifneq ($(findstring gcc,$(CC_VERSION_TEXT)),)
|
||||
CFLAGS := $(filter-out -Wimplicit-fallthrough%,$(CFLAGS))
|
||||
CFLAGS += -Wimplicit-fallthrough=5
|
||||
endif
|
||||
endif
|
||||
|
||||
ASANFLAGS = -fsanitize=address
|
||||
ASANFLAGS += -fno-common
|
||||
ASANFLAGS += -fno-omit-frame-pointer
|
||||
@@ -24,7 +38,7 @@ test: tests.out
|
||||
.PHONY: memcheck
|
||||
memcheck: ./*.c ./*.h
|
||||
@echo Compiling $@
|
||||
@$(CC) $(ASANFLAGS) $(CFLAGS) test-framework/unity.c ./*.c -o memcheck.out $(LIBS)
|
||||
$(CC) $(ASANFLAGS) $(CFLAGS) test-framework/unity.c ./*.c -o memcheck.out $(LIBS)
|
||||
@./memcheck.out
|
||||
@echo "Memory check passed"
|
||||
|
||||
@@ -34,4 +48,4 @@ clean:
|
||||
|
||||
tests.out: ./*.c ./*.h
|
||||
@echo Compiling $@
|
||||
@$(CC) $(CFLAGS) test-framework/unity.c ./*.c -o tests.out $(LIBS)
|
||||
$(CC) $(CFLAGS) test-framework/unity.c ./*.c -o tests.out $(LIBS)
|
||||
|
Reference in New Issue
Block a user