X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=mk%2Ftoolchain%2Fgcc%2Frte.vars.mk;h=f19305e4951e63803af2b1ea0b3e29bd445dc780;hb=b62c5f0df54512d8fd93dd28a2b482b2d2bad540;hp=7e4531bab355a0660dd8fcccb47019ed8a300219;hpb=a6ec31597a0b1f6b6ddf21546f76bbb280f62c37;p=dpdk.git diff --git a/mk/toolchain/gcc/rte.vars.mk b/mk/toolchain/gcc/rte.vars.mk index 7e4531bab3..f19305e495 100644 --- a/mk/toolchain/gcc/rte.vars.mk +++ b/mk/toolchain/gcc/rte.vars.mk @@ -62,15 +62,34 @@ endif # process cpu flags include $(RTE_SDK)/mk/toolchain/$(RTE_TOOLCHAIN)/rte.toolchain-compat.mk -# workaround GCC bug with warning "missing initializer" for "= {0}" -ifeq ($(shell test $(GCC_VERSION) -lt 47 && echo 1), 1) -WERROR_FLAGS += -Wno-missing-field-initializers +ifeq ($(CONFIG_RTE_ENABLE_LTO),y) +# 'fat-lto' is used since pmdinfogen needs to have 'this_pmd_nameX' +# exported in symbol table and without this option only internal +# representation is present. +TOOLCHAIN_CFLAGS += -flto -ffat-lto-objects +TOOLCHAIN_LDFLAGS += -flto +# workaround for GCC bug 81440 +ifeq ($(shell test $(GCC_VERSION) -lt 80 && echo 1), 1) +WERROR_FLAGS += -Wno-lto-type-mismatch +endif endif + +# disable warning for non-initialised fields +WERROR_FLAGS += -Wno-missing-field-initializers # workaround GCC bug with warning "may be used uninitialized" ifeq ($(shell test $(GCC_VERSION) -lt 47 && echo 1), 1) WERROR_FLAGS += -Wno-uninitialized endif +HOST_WERROR_FLAGS := $(WERROR_FLAGS) + +ifeq ($(shell test $(HOST_GCC_VERSION) -gt 70 && echo 1), 1) +# Tell GCC only to error for switch fallthroughs without a suitable comment +HOST_WERROR_FLAGS += -Wimplicit-fallthrough=2 +# Ignore errors for snprintf truncation +HOST_WERROR_FLAGS += -Wno-format-truncation +endif + ifeq ($(shell test $(GCC_VERSION) -gt 70 && echo 1), 1) # Tell GCC only to error for switch fallthroughs without a suitable comment WERROR_FLAGS += -Wimplicit-fallthrough=2 @@ -78,5 +97,8 @@ WERROR_FLAGS += -Wimplicit-fallthrough=2 WERROR_FLAGS += -Wno-format-truncation endif +# disable packed member unalign warnings +WERROR_FLAGS += -Wno-address-of-packed-member + export CC AS AR LD OBJCOPY OBJDUMP STRIP READELF export TOOLCHAIN_CFLAGS TOOLCHAIN_LDFLAGS TOOLCHAIN_ASFLAGS