]> git.ipfire.org Git - thirdparty/git.git/blame - config.mak.dev
Merge branch 'js/t1450-making-it-writable-does-not-need-full-posixperm'
[thirdparty/git.git] / config.mak.dev
CommitLineData
27e0c3c6
CMAB
1ifndef COMPILER_FEATURES
2COMPILER_FEATURES := $(shell ./detect-compiler $(CC))
3endif
4
99f763ba 5ifeq ($(filter no-error,$(DEVOPTS)),)
6d5d4b4e 6DEVELOPER_CFLAGS += -Werror
521dc562 7SPARSE_FLAGS += -Wsparse-error
99f763ba 8endif
ebd2e4a1 9
27e0c3c6 10DEVELOPER_CFLAGS += -Wall
6a8cbc41 11ifeq ($(filter no-pedantic,$(DEVOPTS)),)
6d5d4b4e 12DEVELOPER_CFLAGS += -pedantic
ebd2e4a1 13ifneq (($or $(filter gcc5,$(COMPILER_FEATURES)),$(filter clang4,$(COMPILER_FEATURES))),)
6a8cbc41 14DEVELOPER_CFLAGS += -Wpedantic
ebd2e4a1
CMAB
15ifneq ($(filter gcc10,$(COMPILER_FEATURES)),)
16ifeq ($(uname_S),MINGW)
6a8cbc41 17DEVELOPER_CFLAGS += -Wno-pedantic-ms-format
27e0c3c6 18endif
6d5d4b4e 19endif
ebd2e4a1
CMAB
20endif
21endif
5f463853
JK
22
23ifneq ($(or $(filter gcc6,$(COMPILER_FEATURES)),$(filter clang7,$(COMPILER_FEATURES))),)
24DEVELOPER_CFLAGS += -std=gnu99
25endif
26
6d5d4b4e
ÆAB
27DEVELOPER_CFLAGS += -Wdeclaration-after-statement
28DEVELOPER_CFLAGS += -Wformat-security
6d5d4b4e
ÆAB
29DEVELOPER_CFLAGS += -Wold-style-definition
30DEVELOPER_CFLAGS += -Woverflow
31DEVELOPER_CFLAGS += -Wpointer-arith
32DEVELOPER_CFLAGS += -Wstrict-prototypes
33DEVELOPER_CFLAGS += -Wunused
34DEVELOPER_CFLAGS += -Wvla
55391836 35DEVELOPER_CFLAGS += -fno-common
1da1580e 36
1da1580e 37ifneq ($(filter clang4,$(COMPILER_FEATURES)),)
6d5d4b4e 38DEVELOPER_CFLAGS += -Wtautological-constant-out-of-range-compare
1da1580e
NTND
39endif
40
41ifneq ($(or $(filter gcc6,$(COMPILER_FEATURES)),$(filter clang4,$(COMPILER_FEATURES))),)
6d5d4b4e 42DEVELOPER_CFLAGS += -Wextra
1da1580e
NTND
43# if a function is public, there should be a prototype and the right
44# header file should be included. If not, it should be static.
6d5d4b4e 45DEVELOPER_CFLAGS += -Wmissing-prototypes
26d2e4fb 46ifeq ($(filter extra-all,$(DEVOPTS)),)
1da1580e 47# These are disabled because we have these all over the place.
6d5d4b4e
ÆAB
48DEVELOPER_CFLAGS += -Wno-empty-body
49DEVELOPER_CFLAGS += -Wno-missing-field-initializers
50DEVELOPER_CFLAGS += -Wno-sign-compare
51DEVELOPER_CFLAGS += -Wno-unused-parameter
1da1580e 52endif
26d2e4fb 53endif
1da1580e
NTND
54
55# uninitialized warnings on gcc 4.9.2 in xdiff/xdiffi.c and config.c
56# not worth fixing since newer compilers correctly stop complaining
57ifneq ($(filter gcc4,$(COMPILER_FEATURES)),)
58ifeq ($(filter gcc5,$(COMPILER_FEATURES)),)
6d5d4b4e 59DEVELOPER_CFLAGS += -Wno-uninitialized
1da1580e
NTND
60endif
61endif
5338ed2b
JK
62
63GIT_TEST_PERL_FATAL_WARNINGS = YesPlease