summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorSoby Mathew <soby.mathew@arm.com>2018-12-12 15:54:47 +0000
committerGitHub <noreply@github.com>2018-12-12 15:54:47 +0000
commitc0940083bc6e7d30fb8b0828adac5a3715d3e9f1 (patch)
tree4063fc81c35ff02862d5955e7d31e9ef4ed9ceae /Makefile
parentfd809dc8d86bfe46a6dca528630f42985fa62828 (diff)
parent6336b07ad25cb05ca75f5a465d816af7956e0a59 (diff)
Merge pull request #1708 from Yann-lms/warnings
Add possibility to add compilation warnings
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile44
1 files changed, 43 insertions, 1 deletions
diff --git a/Makefile b/Makefile
index 2d016480..9525d411 100644
--- a/Makefile
+++ b/Makefile
@@ -188,8 +188,50 @@ TF_CFLAGS_aarch64 += -mgeneral-regs-only -mstrict-align
ASFLAGS_aarch32 = $(march32-directive)
ASFLAGS_aarch64 = -march=armv8-a
+WARNING1 := -Wextra
+WARNING1 += -Wunused -Wno-unused-parameter
+WARNING1 += -Wmissing-declarations
+WARNING1 += -Wmissing-format-attribute
+WARNING1 += -Wmissing-prototypes
+WARNING1 += -Wold-style-definition
+WARNING1 += -Wunused-but-set-variable
+WARNING1 += -Wunused-const-variable
+
+WARNING2 := -Waggregate-return
+WARNING2 += -Wcast-align
+WARNING2 += -Wdisabled-optimization
+WARNING2 += -Wnested-externs
+WARNING2 += -Wshadow
+WARNING2 += -Wlogical-op
+WARNING2 += -Wmissing-field-initializers
+WARNING2 += -Wsign-compare
+WARNING2 += -Wmaybe-uninitialized
+
+WARNING3 := -Wbad-function-cast
+WARNING3 += -Wcast-qual
+WARNING3 += -Wconversion
+WARNING3 += -Wpacked
+WARNING3 += -Wpadded
+WARNING3 += -Wpointer-arith
+WARNING3 += -Wredundant-decls
+WARNING3 += -Wswitch-default
+WARNING3 += -Wpacked-bitfield-compat
+WARNING3 += -Wvla
+
+ifeq (${W},1)
+WARNINGS := $(WARNING1)
+else ifeq (${W},2)
+WARNINGS := $(WARNING1) $(WARNING2)
+else ifeq (${W},3)
+WARNINGS := $(WARNING1) $(WARNING2) $(WARNING3)
+endif
+
+ifneq (${E},0)
+ERRORS := -Werror
+endif
+
CPPFLAGS = ${DEFINES} ${INCLUDES} ${MBEDTLS_INC} -nostdinc \
- -Wmissing-include-dirs -Werror
+ -Wmissing-include-dirs $(ERRORS) $(WARNINGS)
ASFLAGS += $(CPPFLAGS) $(ASFLAGS_$(ARCH)) \
-D__ASSEMBLY__ -ffreestanding \
-Wa,--fatal-warnings