Skip to content

Commit

Permalink
[Mod] build: Makefile: Consolidate warning otiosn for all GCC and all…
Browse files Browse the repository at this point in the history
… Clang backends.

[Mod] build: Makefile: Add -Wpedantic to default set of warnigns for all compilers.


git-svn-id: https://source.openmpt.org/svn/openmpt/trunk/OpenMPT@13468 56274372-70c3-4bfc-bfc3-4c3a0b034d27
  • Loading branch information
manxorist committed Aug 13, 2020
1 parent 91bad3b commit 23e2893
Show file tree
Hide file tree
Showing 12 changed files with 66 additions and 65 deletions.
4 changes: 2 additions & 2 deletions Makefile
Expand Up @@ -372,8 +372,8 @@ CXXFLAGS += -fno-omit-frame-pointer
CFLAGS += -fno-omit-frame-pointer
endif

CXXFLAGS += -Wall -Wextra -Wundef -Wcast-qual -Wcast-align $(CXXFLAGS_WARNINGS)
CFLAGS += -Wall -Wextra -Wundef -Wcast-qual -Wcast-align $(CFLAGS_WARNINGS)
CXXFLAGS += -Wall -Wextra -Wpedantic $(CXXFLAGS_WARNINGS)
CFLAGS += -Wall -Wextra -Wpedantic $(CFLAGS_WARNINGS)
LDFLAGS += $(LDFLAGS_WARNINGS)

endif
Expand Down
2 changes: 2 additions & 0 deletions build/make/config-afl.mk
Expand Up @@ -35,6 +35,8 @@ CXXFLAGS += -fsanitize=undefined
CFLAGS += -fsanitize=undefined
endif

include build/make/warnings-clang.mk

EXESUFFIX=

FUZZ=1
Expand Down
26 changes: 1 addition & 25 deletions build/make/config-clang.mk
Expand Up @@ -36,30 +36,6 @@ CXXFLAGS += -fsanitize=undefined
CFLAGS += -fsanitize=undefined
endif

CXXFLAGS_WARNINGS += -Wmissing-declarations -Wshift-count-negative -Wshift-count-overflow -Wshift-overflow -Wshift-sign-overflow -Wshift-op-parentheses
CFLAGS_WARNINGS += -Wmissing-prototypes -Wshift-count-negative -Wshift-count-overflow -Wshift-overflow -Wshift-sign-overflow -Wshift-op-parentheses

CXXFLAGS_WARNINGS += -Wdeprecated -Wextra-semi -Wnon-virtual-dtor -Wreserved-id-macro -Wglobal-constructors -Wimplicit-fallthrough

#CXXFLAGS_WARNINGS += -Wdocumentation
#CXXFLAGS_WARNINGS += -Wconversion
#CXXFLAGS_WARNINGS += -Weverything -Wno-c++98-compat -Wno-c++98-compat-pedantic -Wno-padded -Wno-shadow -Wno-sign-conversion -Wno-weak-vtables

ifeq ($(MODERN),1)
LDFLAGS += -fuse-ld=lld
CXXFLAGS_WARNINGS += -Wpedantic -Wframe-larger-than=16000
CFLAGS_WARNINGS += -Wpedantic -Wframe-larger-than=4000
LDFLAGS_WARNINGS += -Wl,-no-undefined -Wl,--detect-odr-violations
# re-renable after 1.29 branch
#CXXFLAGS_WARNINGS += -Wdouble-promotion
#CFLAGS_WARNINGS += -Wdouble-promotion
endif

CFLAGS_SILENT += -Wno-cast-align
CFLAGS_SILENT += -Wno-cast-qual
CFLAGS_SILENT += -Wno-missing-prototypes
CFLAGS_SILENT += -Wno-sign-compare
CFLAGS_SILENT += -Wno-unused-function
CFLAGS_SILENT += -Wno-unused-parameter
include build/make/warnings-clang.mk

EXESUFFIX=
2 changes: 1 addition & 1 deletion build/make/config-djgpp.mk
Expand Up @@ -24,7 +24,7 @@ LDFLAGS_ALLEGRO42 :=
LDLIBS_ALLEGRO42 := include/allegro42/lib/liballeg.a
endif

CFLAGS_SILENT += -Wno-unused-parameter -Wno-unused-function -Wno-cast-qual -Wno-old-style-declaration -Wno-type-limits -Wno-unused-but-set-variable
include build/make/warnings-gcc.mk

EXESUFFIX=.exe

Expand Down
13 changes: 1 addition & 12 deletions build/make/config-emscripten.mk
Expand Up @@ -81,18 +81,7 @@ CXXFLAGS += -s DISABLE_EXCEPTION_CATCHING=0 -s ERROR_ON_UNDEFINED_SYMBOLS=1 -s E
CFLAGS += -s DISABLE_EXCEPTION_CATCHING=0 -s ERROR_ON_UNDEFINED_SYMBOLS=1 -s ERROR_ON_MISSING_LIBRARIES=1 -ffast-math -fno-strict-aliasing
LDFLAGS += -s DISABLE_EXCEPTION_CATCHING=0 -s ERROR_ON_UNDEFINED_SYMBOLS=1 -s ERROR_ON_MISSING_LIBRARIES=1 -s EXPORT_NAME="'libopenmpt'"

CFLAGS_SILENT += -Wno-\#warnings
CFLAGS_SILENT += -Wno-cast-align
CFLAGS_SILENT += -Wno-cast-qual
CFLAGS_SILENT += -Wno-format
CFLAGS_SILENT += -Wno-missing-prototypes
CFLAGS_SILENT += -Wno-sign-compare
CFLAGS_SILENT += -Wno-unused-function
CFLAGS_SILENT += -Wno-unused-parameter
CFLAGS_SILENT += -Wno-unused-variable

CXXFLAGS_WARNINGS += -Wmissing-declarations
CFLAGS_WARNINGS += -Wmissing-prototypes
include build/make/warnings-clang.mk

REQUIRES_RUNPREFIX=1

Expand Down
22 changes: 1 addition & 21 deletions build/make/config-gcc.mk
Expand Up @@ -32,27 +32,7 @@ CXXFLAGS += -fsanitize=undefined
CFLAGS += -fsanitize=undefined
endif

CXXFLAGS_WARNINGS += -Wfloat-conversion -Wsuggest-override -Wno-psabi

ifeq ($(MODERN),1)
LDFLAGS += -fuse-ld=gold
CXXFLAGS_WARNINGS += -Wpedantic -Wlogical-op -Wframe-larger-than=16000
CFLAGS_WARNINGS += -Wpedantic -Wlogical-op -Wframe-larger-than=4000
LDFLAGS_WARNINGS += -Wl,-no-undefined -Wl,--detect-odr-violations
# re-renable after 1.29 branch
#CXXFLAGS_WARNINGS += -Wdouble-promotion
#CFLAGS_WARNINGS += -Wdouble-promotion
endif

CFLAGS_SILENT += -Wno-cast-qual
CFLAGS_SILENT += -Wno-empty-body
CFLAGS_SILENT += -Wno-implicit-fallthrough
CFLAGS_SILENT += -Wno-old-style-declaration
CFLAGS_SILENT += -Wno-sign-compare
CFLAGS_SILENT += -Wno-type-limits
CFLAGS_SILENT += -Wno-unused-but-set-variable
CFLAGS_SILENT += -Wno-unused-function
CFLAGS_SILENT += -Wno-unused-parameter
include build/make/warnings-gcc.mk

EXESUFFIX=

2 changes: 1 addition & 1 deletion build/make/config-mingw64-win32.mk
Expand Up @@ -16,7 +16,7 @@ LDFLAGS +=
LDLIBS += -lm -lrpcrt4 -lwinmm
ARFLAGS := rcs

CFLAGS_SILENT += -Wno-unused-parameter -Wno-unused-function -Wno-cast-qual -Wno-old-style-declaration -Wno-type-limits -Wno-unused-but-set-variable
include build/make/warnings-gcc.mk

EXESUFFIX=.exe
SOSUFFIX=.dll
Expand Down
2 changes: 1 addition & 1 deletion build/make/config-mingw64-win64.mk
Expand Up @@ -16,7 +16,7 @@ LDFLAGS +=
LDLIBS += -lm -lrpcrt4 -lwinmm
ARFLAGS := rcs

CFLAGS_SILENT += -Wno-unused-parameter -Wno-unused-function -Wno-cast-qual -Wno-old-style-declaration -Wno-type-limits -Wno-unused-but-set-variable
include build/make/warnings-gcc.mk

EXESUFFIX=.exe
SOSUFFIX=.dll
Expand Down
2 changes: 1 addition & 1 deletion build/make/config-mingw64-winrt-amd64.mk
Expand Up @@ -16,7 +16,7 @@ LDFLAGS +=
LDLIBS += -lm -lole32 -lwinmm
ARFLAGS := rcs

CFLAGS_SILENT += -Wno-unused-parameter -Wno-unused-function -Wno-cast-qual -Wno-old-style-declaration -Wno-type-limits -Wno-unused-but-set-variable
include build/make/warnings-gcc.mk

EXESUFFIX=.exe
SOSUFFIX=.dll
Expand Down
2 changes: 1 addition & 1 deletion build/make/config-mingw64-winrt-x86.mk
Expand Up @@ -16,7 +16,7 @@ LDFLAGS +=
LDLIBS += -lm -lole32 -lwinmm
ARFLAGS := rcs

CFLAGS_SILENT += -Wno-unused-parameter -Wno-unused-function -Wno-cast-qual -Wno-old-style-declaration -Wno-type-limits -Wno-unused-but-set-variable
include build/make/warnings-gcc.mk

EXESUFFIX=.exe
SOSUFFIX=.dll
Expand Down
31 changes: 31 additions & 0 deletions build/make/warnings-clang.mk
@@ -0,0 +1,31 @@

CXXFLAGS_WARNINGS += -Wcast-align -Wcast-qual -Wundef
CFLAGS_WARNINGS += -Wcast-align -Wcast-qual -Wundef

CXXFLAGS_WARNINGS += -Wmissing-declarations -Wshift-count-negative -Wshift-count-overflow -Wshift-overflow -Wshift-sign-overflow -Wshift-op-parentheses
CFLAGS_WARNINGS += -Wmissing-prototypes -Wshift-count-negative -Wshift-count-overflow -Wshift-overflow -Wshift-sign-overflow -Wshift-op-parentheses

CXXFLAGS_WARNINGS += -Wdeprecated -Wextra-semi -Wnon-virtual-dtor -Wreserved-id-macro -Wglobal-constructors -Wimplicit-fallthrough

#CXXFLAGS_WARNINGS += -Wdocumentation
#CXXFLAGS_WARNINGS += -Wconversion
#CXXFLAGS_WARNINGS += -Weverything -Wno-c++98-compat -Wno-c++98-compat-pedantic -Wno-padded -Wno-shadow -Wno-sign-conversion -Wno-weak-vtables

ifeq ($(MODERN),1)
LDFLAGS += -fuse-ld=lld
CXXFLAGS_WARNINGS += -Wpedantic -Wframe-larger-than=16000
CFLAGS_WARNINGS += -Wpedantic -Wframe-larger-than=4000
LDFLAGS_WARNINGS += -Wl,-no-undefined -Wl,--detect-odr-violations
# re-renable after 1.29 branch
#CXXFLAGS_WARNINGS += -Wdouble-promotion
#CFLAGS_WARNINGS += -Wdouble-promotion
endif

CFLAGS_SILENT += -Wno-\#warnings
CFLAGS_SILENT += -Wno-cast-align
CFLAGS_SILENT += -Wno-cast-qual
CFLAGS_SILENT += -Wno-missing-prototypes
CFLAGS_SILENT += -Wno-sign-compare
CFLAGS_SILENT += -Wno-unused-function
CFLAGS_SILENT += -Wno-unused-parameter
CFLAGS_SILENT += -Wno-unused-variable
23 changes: 23 additions & 0 deletions build/make/warnings-gcc.mk
@@ -0,0 +1,23 @@

CXXFLAGS_WARNINGS += -Wcast-align -Wcast-qual -Wfloat-conversion -Wsuggest-override -Wundef -Wno-psabi
CFLAGS_WARNINGS += -Wcast-align -Wcast-qual -Wfloat-conversion -Wundef

ifeq ($(MODERN),1)
LDFLAGS += -fuse-ld=gold
CXXFLAGS_WARNINGS += -Wlogical-op -Wframe-larger-than=16000
CFLAGS_WARNINGS += -Wlogical-op -Wframe-larger-than=4000
LDFLAGS_WARNINGS += -Wl,-no-undefined -Wl,--detect-odr-violations
# re-renable after 1.29 branch
#CXXFLAGS_WARNINGS += -Wdouble-promotion
#CFLAGS_WARNINGS += -Wdouble-promotion
endif

CFLAGS_SILENT += -Wno-cast-qual
CFLAGS_SILENT += -Wno-empty-body
CFLAGS_SILENT += -Wno-implicit-fallthrough
CFLAGS_SILENT += -Wno-old-style-declaration
CFLAGS_SILENT += -Wno-sign-compare
CFLAGS_SILENT += -Wno-type-limits
CFLAGS_SILENT += -Wno-unused-but-set-variable
CFLAGS_SILENT += -Wno-unused-function
CFLAGS_SILENT += -Wno-unused-parameter

0 comments on commit 23e2893

Please sign in to comment.