Allow disabling of -Werror

For distro maintainers having `-Werror` can delay update of GCC.
Since every GCC release might add new warnings that were not
yet captured, it might break the build of packages.

With this, distros can now build with `NOWERROR=TRUE` instead of
patching either the errors or the makefiles.

The default behavior keeps on using `-Werror`.

Fixes #798
This commit is contained in:
Valentin David 2022-09-28 21:43:36 +02:00
parent 7021087eed
commit 3fd0f94040
No known key found for this signature in database
GPG Key ID: 1496F0F95959AB6E
3 changed files with 23 additions and 10 deletions

View File

@ -150,7 +150,6 @@ CWARNINGFLAGS = \
-Wall\
-Wbad-function-cast\
-Wdeclaration-after-statement\
-Werror\
-Wformat=2\
-Wmissing-declarations\
-Wmissing-prototypes\
@ -162,6 +161,11 @@ CWARNINGFLAGS = \
-Wmissing-parameter-type\
-Wold-style-declaration\
-Wtype-limits
ifneq ($(NOWERROR),TRUE)
CWARNINGFLAGS += -Werror
endif
#
# Extra warning flags (for possible future use)
#

View File

@ -203,7 +203,6 @@ CWARNINGFLAGS = \
-Wall\
-Wbad-function-cast\
-Wdeclaration-after-statement\
-Werror\
-Wformat=2\
-Wmissing-declarations\
-Wmissing-prototypes\
@ -213,6 +212,10 @@ CWARNINGFLAGS = \
-Wpointer-arith\
-Wundef
ifneq ($(NOWERROR),TRUE)
CWARNINGFLAGS += -Werror
endif
#
# Common gcc 4+ warning flags
#

View File

@ -290,6 +290,12 @@ CFLAGS += \
-I$(ASL_COMPILER)\
-I$(OBJDIR)
ifeq ($(NOWERROR),TRUE)
WERROR_FLAGS=
else
WERROR_FLAGS=-Werror
endif
#
# Common Rules
#
@ -360,32 +366,32 @@ $(OBJDIR)/prparserparse.c $(OBJDIR)/prparser.y.h : $(ASL_COMPILER)/prparse
#
$(OBJDIR)/aslcompilerlex.o : $(OBJDIR)/aslcompilerlex.c
@echo "- " "Intermediate" $<
@$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
@$(CC) -c $(CFLAGS) -Wall $(WERROR_FLAGS) -o$@ $<
$(OBJDIR)/aslcompilerparse.o : $(OBJDIR)/aslcompilerparse.c
@echo "- " "Intermediate" $<
@$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
@$(CC) -c $(CFLAGS) -Wall $(WERROR_FLAGS) -o$@ $<
$(OBJDIR)/dtcompilerparserlex.o : $(OBJDIR)/dtcompilerparserlex.c
@echo "- " "Intermediate" $<
@$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
@$(CC) -c $(CFLAGS) -Wall $(WERROR_FLAGS) -o$@ $<
$(OBJDIR)/dtcompilerparserparse.o : $(OBJDIR)/dtcompilerparserparse.c
@echo "- " "Intermediate" $<
@$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
@$(CC) -c $(CFLAGS) -Wall $(WERROR_FLAGS) -o$@ $<
$(OBJDIR)/dtparserlex.o : $(OBJDIR)/dtparserlex.c
@echo "- " "Intermediate" $<
@$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
@$(CC) -c $(CFLAGS) -Wall $(WERROR_FLAGS) -o$@ $<
$(OBJDIR)/dtparserparse.o : $(OBJDIR)/dtparserparse.c
@echo "- " "Intermediate" $<
@$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
@$(CC) -c $(CFLAGS) -Wall $(WERROR_FLAGS) -o$@ $<
$(OBJDIR)/prparserlex.o : $(OBJDIR)/prparserlex.c
@echo "- " "Intermediate" $<
@$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
@$(CC) -c $(CFLAGS) -Wall $(WERROR_FLAGS) -o$@ $<
$(OBJDIR)/prparserparse.o : $(OBJDIR)/prparserparse.c
@echo "- " "Intermediate" $<
@$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
@$(CC) -c $(CFLAGS) -Wall $(WERROR_FLAGS) -o$@ $<