From: Thomas Monjalon Date: Mon, 12 Aug 2019 23:03:56 +0000 (+0200) Subject: net/mlx: fix build with make and recent gcc X-Git-Url: http://git.droids-corp.org/?p=dpdk.git;a=commitdiff_plain;h=b38a54aeb16cb36e42d638c4335b8314aa0b1794 net/mlx: fix build with make and recent gcc With VERBOSE=1, this error was seen in debug mode with gcc 9.1: In file included from /tmp/dpdk.auto-config-h.sh.c.w0VWMi:1: In file included from rdma-core/build/include/infiniband/mlx5dv.h:47: In file included from rdma-core/build/include/infiniband/verbs.h:46: In file included from rdma-core/build/include/infiniband/verbs_api.h:66: In file included from rdma-core/build/include/infiniband/ib_user_ioctl_verbs.h:38: include/rdma/ib_user_verbs.h:161:28: fatal error: zero size arrays are an extension [-Wzero-length-array] __aligned_u64 driver_data0; ^ 1 error generated. As a result, buildtools/auto-config-h.sh was not generating a correct autoconf file, so the compilation was generating such error: fatal error: redefinition of 'mlx5_ib_uapi_flow_action_packet_reformat_type' It is fixed by disabling -pedantic option when calling auto-config-h.sh from the makefile-based system. Cc: stable@dpdk.org Signed-off-by: Thomas Monjalon Acked-by: Luca Boccassi Acked-by: Matan Azrad --- diff --git a/drivers/net/mlx4/Makefile b/drivers/net/mlx4/Makefile index 8126b0dfc6..25d7c7555d 100644 --- a/drivers/net/mlx4/Makefile +++ b/drivers/net/mlx4/Makefile @@ -68,6 +68,7 @@ endif # User-defined CFLAGS. ifeq ($(CONFIG_RTE_LIBRTE_MLX4_DEBUG),y) CFLAGS += -pedantic -UNDEBUG -DPEDANTIC +AUTO_CONFIG_CFLAGS += -Wno-pedantic else CFLAGS += -DNDEBUG -UPEDANTIC endif @@ -77,7 +78,7 @@ include $(RTE_SDK)/mk/rte.lib.mk # Generate and clean-up mlx4_autoconf.h. export CC CFLAGS CPPFLAGS EXTRA_CFLAGS EXTRA_CPPFLAGS -export AUTO_CONFIG_CFLAGS = -Wno-error +export AUTO_CONFIG_CFLAGS += -Wno-error ifndef V AUTOCONF_OUTPUT := >/dev/null diff --git a/drivers/net/mlx5/Makefile b/drivers/net/mlx5/Makefile index dbb2a4e80c..299cf3afe4 100644 --- a/drivers/net/mlx5/Makefile +++ b/drivers/net/mlx5/Makefile @@ -83,6 +83,7 @@ endif # User-defined CFLAGS. ifeq ($(CONFIG_RTE_LIBRTE_MLX5_DEBUG),y) CFLAGS += -pedantic -UNDEBUG -DPEDANTIC +AUTO_CONFIG_CFLAGS += -Wno-pedantic else CFLAGS += -DNDEBUG -UPEDANTIC endif @@ -92,7 +93,7 @@ include $(RTE_SDK)/mk/rte.lib.mk # Generate and clean-up mlx5_autoconf.h. export CC CFLAGS CPPFLAGS EXTRA_CFLAGS EXTRA_CPPFLAGS -export AUTO_CONFIG_CFLAGS = -Wno-error +export AUTO_CONFIG_CFLAGS += -Wno-error ifndef V AUTOCONF_OUTPUT := >/dev/null