1 # SPDX-License-Identifier: BSD-3-Clause
2 # Copyright(c) 2010-2014 Intel Corporation
7 # - define CC, LD, AR, AS, ... (overridden by cmdline value)
8 # - define TOOLCHAIN_CFLAGS variable (overridden by cmdline value)
9 # - define TOOLCHAIN_LDFLAGS variable (overridden by cmdline value)
10 # - define TOOLCHAIN_ASFLAGS variable (overridden by cmdline value)
14 KERNELCC
= $(CROSS
)gcc
16 # for now, we don't use as but nasm.
21 OBJCOPY
= $(CROSS
)objcopy
22 OBJDUMP
= $(CROSS
)objdump
24 READELF
= $(CROSS
)readelf
27 ifeq ("$(origin CC)", "command line")
38 WERROR_FLAGS
:= -W
-Wall
-Wstrict-prototypes
-Wmissing-prototypes
39 WERROR_FLAGS
+= -Wmissing-declarations
-Wold-style-definition
-Wpointer-arith
40 WERROR_FLAGS
+= -Wnested-externs
-Wcast-qual
41 WERROR_FLAGS
+= -Wformat-nonliteral
-Wformat-security
42 WERROR_FLAGS
+= -Wundef
-Wwrite-strings
-Wdeprecated
44 ifeq ($(RTE_DEVEL_BUILD
),y
)
45 WERROR_FLAGS
+= -Werror
49 include $(RTE_SDK
)/mk
/toolchain
/$(RTE_TOOLCHAIN
)/rte.toolchain-compat.mk
51 # disable warning for non-initialised fields
52 WERROR_FLAGS
+= -Wno-missing-field-initializers
54 # disable packed member unalign warnings
55 ifeq ($(shell test $(CLANG_MAJOR_VERSION
) -ge
4 && echo
1), 1)
56 WERROR_FLAGS
+= -Wno-address-of-packed-member
59 export CC AS AR LD OBJCOPY OBJDUMP STRIP READELF
60 export TOOLCHAIN_CFLAGS TOOLCHAIN_LDFLAGS TOOLCHAIN_ASFLAGS