DPDK patches and discussions
 help / color / mirror / Atom feed
From: Ali Alnubani <alialnu@mellanox.com>
To: 'Gavin Hu' <gavin.hu@arm.com>, "'dev@dpdk.org'" <dev@dpdk.org>
Cc: "'nd@arm.com'" <nd@arm.com>, "'stable@dpdk.org'" <stable@dpdk.org>
Subject: Re: [dpdk-dev] [PATCH v13 1/6] mk: fix makefile based cross build errors
Date: Mon, 25 Jun 2018 16:10:37 +0000	[thread overview]
Message-ID: <VI1PR05MB426980834D9A947603ED66F9D74A0@VI1PR05MB4269.eurprd05.prod.outlook.com> (raw)
In-Reply-To: <20180625024913.17219-2-gavin.hu@arm.com>

Tested-by: Ali Alnubani <alialnu@mellanox.com>

> -----Original Message-----
> From: dev <dev-bounces@dpdk.org> On Behalf Of Gavin Hu
> Sent: Monday, June 25, 2018 5:49 AM
> To: dev@dpdk.org
> Cc: nd@arm.com; gavin.hu@arm.com; stable@dpdk.org
> Subject: [dpdk-dev] [PATCH v13 1/6] mk: fix makefile based cross build errors
> 
> From: gavin hu <gavin.hu@arm.com>
> 
> The "-Wimplicit-fallthrough=2" option was introduced into gcc 7.0, it was
> enabled when the cross compiler gcc is greater than 7.0, but for the host side
> buildtools/pmdinfogen, if the native gcc is older than 7.0, or the host cc
> compiler is clang, it should not be enabled.
> 
> The fix is to differentiate the host gcc Werror options from the cross gcc.
> 
> gcc -Wp,-MD,./.pmdinfogen.o.d.tmp  -W -Wall -Wstrict-prototypes -
> Wmissing-prototypes -Wmissing-declarations -Wold-style-definition -
> Wpointer-arith -Wcast-align -Wnested-externs -Wcast-qual -Wformat-
> nonliteral -Wformat-security -Wundef -Wwrite-strings -Wdeprecated -
> Werror -Wimplicit-fallthrough=2 -Dbbb -Wno-format-truncation -g
> -I/home/gavin/arm_repo/dpdk/build/include    -o pmdinfogen.o -c
> ~/dpdk/buildtools/pmdinfogen/pmdinfogen.c gcc: error:
> unrecognized command line option ‘-Wimplicit-fallthrough=2’
> ~/dpdk/mk/internal/rte.compile-pre.mk:114: recipe for target
> 'pmdinfogen.o'
> failed make[3]: *** [pmdinfogen.o] Error 1
> 
> Fixes: ced3e6f8 ("mk: adjust gcc flags for new gcc 7 warnings")
> Cc: stable@dpdk.org
> 
> Signed-off-by: Gavin Hu <gavin.hu@arm.com>
> Reviewed-by: Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>
> Reviewed-by: Steve Capper <Steve.Capper@arm.com>
> ---
>  buildtools/pmdinfogen/Makefile           | 2 +-
>  mk/toolchain/gcc/rte.toolchain-compat.mk | 5 +++++
>  mk/toolchain/gcc/rte.vars.mk             | 9 +++++++++
>  3 files changed, 15 insertions(+), 1 deletion(-)
> 
> diff --git a/buildtools/pmdinfogen/Makefile
> b/buildtools/pmdinfogen/Makefile index bf07b6f2e..ff7a5fae6 100644
> --- a/buildtools/pmdinfogen/Makefile
> +++ b/buildtools/pmdinfogen/Makefile
> @@ -41,7 +41,7 @@ HOSTAPP = dpdk-pmdinfogen  #  SRCS-y +=
> pmdinfogen.c
> 
> -HOST_CFLAGS += $(WERROR_FLAGS) -g
> +HOST_CFLAGS += $(HOST_WERROR_FLAGS) -g
>  HOST_CFLAGS += -I$(RTE_OUTPUT)/include
> 
>  include $(RTE_SDK)/mk/rte.hostapp.mk
> diff --git a/mk/toolchain/gcc/rte.toolchain-compat.mk
> b/mk/toolchain/gcc/rte.toolchain-compat.mk
> index 255c89677..1e4434fa9 100644
> --- a/mk/toolchain/gcc/rte.toolchain-compat.mk
> +++ b/mk/toolchain/gcc/rte.toolchain-compat.mk
> @@ -15,6 +15,11 @@ GCC_MINOR = $(shell echo __GNUC_MINOR__ |
> $(CC) -E -x c - | tail -n 1)  GCC_PATCHLEVEL = $(shell echo
> __GNUC_PATCHLEVEL__ | $(CC) -E -x c - | tail -n 1)  GCC_VERSION =
> $(GCC_MAJOR)$(GCC_MINOR)
> 
> +HOST_GCC_MAJOR = $(shell echo __GNUC__ | $(HOSTCC) -E -x c - | tail -n
> +1) HOST_GCC_MINOR = $(shell echo __GNUC_MINOR__ | $(HOSTCC) -E -x
> c - |
> +tail -n 1) HOST_GCC_PATCHLEVEL = $(shell echo __GNUC_PATCHLEVEL__ |
> +$(HOSTCC) -E -x c - | tail -n 1) HOST_GCC_VERSION =
> +$(HOST_GCC_MAJOR)$(HOST_GCC_MINOR)
> +
>  # if GCC is older than 4.x
>  ifeq ($(shell test $(GCC_VERSION) -lt 40 && echo 1), 1)
>  	MACHINE_CFLAGS =
> diff --git a/mk/toolchain/gcc/rte.vars.mk b/mk/toolchain/gcc/rte.vars.mk
> index 7e4531bab..d8b99faf6 100644
> --- a/mk/toolchain/gcc/rte.vars.mk
> +++ b/mk/toolchain/gcc/rte.vars.mk
> @@ -71,6 +71,15 @@ 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
> --
> 2.11.0


  reply	other threads:[~2018-06-25 16:10 UTC|newest]

Thread overview: 84+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20180614095127.16245-1-git-send-email-gavin.hu@arm.com>
2018-06-15  7:08 ` [dpdk-dev] [PATCH v7 0/7] fix the cross compiling errors Gavin Hu
2018-06-15  7:08   ` [dpdk-dev] [PATCH v7 1/7] mk: fix cross build errors Gavin Hu
2018-06-15  7:08   ` [dpdk-dev] [PATCH v7 2/7] doc: add a guide doc for cross compiling from x86 Gavin Hu
2018-06-15  7:08   ` [dpdk-dev] [PATCH v7 3/7] devtools: fix the Exec format error Gavin Hu
2018-06-15  7:08   ` [dpdk-dev] [PATCH v7 4/7] build: fix the meson build warning Gavin Hu
2018-06-15  7:08   ` [dpdk-dev] [PATCH v7 5/7] devtools: fix the missing ninja command error on CentOS Gavin Hu
2018-06-15  7:08   ` [dpdk-dev] [PATCH v7 6/7] build: fix the meson cross compile error Gavin Hu
2018-06-15  7:08   ` [dpdk-dev] [PATCH v7 7/7] devtools: expand meson cross compiling coverage Gavin Hu
2018-06-15  8:01   ` [dpdk-dev] [PATCH v8 0/6] Fix the cross compiling errors Gavin Hu
2018-06-15  8:01     ` [dpdk-dev] [PATCH v8 1/6] mk: fix cross build errors Gavin Hu
2018-06-15  8:01     ` [dpdk-dev] [PATCH v8 2/6] doc: add a guide doc for cross compiling from x86 Gavin Hu
2018-06-15  8:01     ` [dpdk-dev] [PATCH v8 3/6] build: fix the meson build warning Gavin Hu
2018-06-15  8:01     ` [dpdk-dev] [PATCH v8 4/6] devtools: fix the missing ninja command error on CentOS Gavin Hu
2018-06-15  8:24       ` Bruce Richardson
2018-06-15  8:01     ` [dpdk-dev] [PATCH v8 5/6] build: fix the meson cross compile error Gavin Hu
2018-06-15  8:01     ` [dpdk-dev] [PATCH v8 6/6] devtools: expand meson cross compiling coverage Gavin Hu
2018-06-15  8:28       ` Bruce Richardson
2018-06-15  9:31         ` Gavin Hu
2018-06-15  9:25     ` [dpdk-dev] [PATCH v9 0/6] Fix the cross compiling errors Gavin Hu
2018-06-15  9:26       ` [dpdk-dev] [PATCH v9 1/6] mk: fix makefile based cross build errors Gavin Hu
2018-06-15  9:26       ` [dpdk-dev] [PATCH v9 2/6] doc: add a guide doc for cross compiling from x86 Gavin Hu
2018-06-15  9:26       ` [dpdk-dev] [PATCH v9 3/6] build: fix the meson build warning Gavin Hu
2018-06-15  9:26       ` [dpdk-dev] [PATCH v9 4/6] devtools: fix the missing ninja command error Gavin Hu
2018-06-15  9:59         ` Bruce Richardson
2018-06-15  9:26       ` [dpdk-dev] [PATCH v9 5/6] build: fix the meson cross compile error Gavin Hu
2018-06-15  9:26       ` [dpdk-dev] [PATCH v9 6/6] devtools: expand meson cross compiling test coverage Gavin Hu
2018-06-15 10:01         ` Bruce Richardson
2018-06-15 10:21       ` [dpdk-dev] [PATCH v10 0/6] Fix the cross compiling errors Gavin Hu
2018-06-15 10:21         ` [dpdk-dev] [PATCH v10 1/6] mk: fix makefile based cross build errors Gavin Hu
2018-06-15 10:21         ` [dpdk-dev] [PATCH v10 2/6] doc: add a guide doc for cross compiling from x86 Gavin Hu
2018-06-15 10:21         ` [dpdk-dev] [PATCH v10 3/6] build: fix the meson build warning Gavin Hu
2018-06-15 10:21         ` [dpdk-dev] [PATCH v10 4/6] devtools: fix the missing ninja command error Gavin Hu
2018-06-15 13:27           ` Bruce Richardson
2018-06-15 10:21         ` [dpdk-dev] [PATCH v10 5/6] build: fix the meson cross compile error Gavin Hu
2018-06-15 10:21         ` [dpdk-dev] [PATCH v10 6/6] devtools: expand meson cross compiling test coverage Gavin Hu
2018-06-15 14:14           ` Bruce Richardson
2018-06-19  1:44             ` Gavin Hu
2018-06-19  1:37         ` [dpdk-dev] [PATCH v11 0/6] Fix the cross compiling errors Gavin Hu
2018-06-19  1:37           ` [dpdk-dev] [PATCH v11 1/6] mk: fix makefile based cross build errors Gavin Hu
2018-06-19  1:37           ` [dpdk-dev] [PATCH v11 2/6] doc: add a guide doc for cross compiling from x86 Gavin Hu
2018-06-19  1:37           ` [dpdk-dev] [PATCH v11 3/6] build: fix the meson build warning Gavin Hu
2018-06-19  1:37           ` [dpdk-dev] [PATCH v11 4/6] devtools: fix the missing ninja command error Gavin Hu
2018-06-19 10:12             ` Bruce Richardson
2018-06-19 10:41               ` Gavin Hu
2018-06-19 12:30                 ` Bruce Richardson
2018-06-19 23:58                   ` Gavin Hu
2018-06-19  1:37           ` [dpdk-dev] [PATCH v11 5/6] build: fix the meson cross compile error Gavin Hu
2018-06-19  1:37           ` [dpdk-dev] [PATCH v11 6/6] devtools: expand meson cross compiling test coverage Gavin Hu
2018-06-19 10:14             ` Bruce Richardson
2018-06-19 10:15             ` Bruce Richardson
2018-06-19 10:36           ` [dpdk-dev] [PATCH v12 0/6] Fix the cross compiling errors Gavin Hu
2018-06-19 10:36             ` [dpdk-dev] [PATCH v12 1/6] mk: fix makefile based cross build errors Gavin Hu
2018-06-19 10:36             ` [dpdk-dev] [PATCH v12 2/6] doc: add a guide doc for cross compiling from x86 Gavin Hu
2018-06-24 11:43               ` Jerin Jacob
2018-06-19 10:36             ` [dpdk-dev] [PATCH v12 3/6] build: fix the meson build warning Gavin Hu
2018-06-24 11:05               ` Jerin Jacob
2018-06-19 10:36             ` [dpdk-dev] [PATCH v12 4/6] devtools: fix the missing ninja command error Gavin Hu
2018-06-19 10:36             ` [dpdk-dev] [PATCH v12 5/6] build: fix the meson cross compile error Gavin Hu
2018-06-19 10:36             ` [dpdk-dev] [PATCH v12 6/6] devtools: expand meson cross compiling test coverage Gavin Hu
2018-06-19 12:31               ` Bruce Richardson
2018-06-25  2:49             ` [dpdk-dev] [PATCH v13 0/6] Fix the cross compiling errors Gavin Hu
2018-06-25  2:49               ` [dpdk-dev] [PATCH v13 1/6] mk: fix makefile based cross build errors Gavin Hu
2018-06-25 16:10                 ` Ali Alnubani [this message]
2018-06-27 21:00                 ` [dpdk-dev] [dpdk-stable] " Thomas Monjalon
2018-06-25  2:49               ` [dpdk-dev] [PATCH v13 2/6] doc: add a guide doc for cross compiling from x86 Gavin Hu
2018-06-27 14:25                 ` Ali Alnubani
2018-06-29 17:30                   ` Gavin Hu
2018-06-25  2:49               ` [dpdk-dev] [PATCH v13 3/6] build: fix the meson build warning Gavin Hu
2018-06-25 16:11                 ` Ali Alnubani
2018-06-25  2:49               ` [dpdk-dev] [PATCH v13 4/6] devtools: fix the missing ninja command error Gavin Hu
2018-06-27 21:13                 ` [dpdk-dev] [dpdk-stable] " Thomas Monjalon
2018-06-25  2:49               ` [dpdk-dev] [PATCH v13 5/6] build: fix the meson cross compile error Gavin Hu
2018-06-25  2:49               ` [dpdk-dev] [PATCH v13 6/6] devtools: expand meson cross compiling test coverage Gavin Hu
2018-06-27 21:25                 ` [dpdk-dev] [dpdk-stable] " Thomas Monjalon
2018-06-29 17:29                   ` Gavin Hu
2018-06-29 17:27               ` [dpdk-dev] [PATCH v14 0/6] Fix the cross compiling errors Gavin Hu
2018-06-29 17:27                 ` [dpdk-dev] [PATCH v14 1/6] mk: fix makefile based cross build errors Gavin Hu
2018-06-29 17:27                 ` [dpdk-dev] [PATCH v14 2/6] doc: add a guide doc for cross compiling from x86 Gavin Hu
2018-06-29 17:27                 ` [dpdk-dev] [PATCH v14 3/6] build: fix the meson build warning Gavin Hu
2018-06-29 17:27                 ` [dpdk-dev] [PATCH v14 4/6] devtools: fix the missing ninja command error Gavin Hu
2018-06-29 17:27                 ` [dpdk-dev] [PATCH v14 5/6] build: fix the meson cross compile error Gavin Hu
2018-06-29 17:27                 ` [dpdk-dev] [PATCH v14 6/6] devtools: expand meson cross compiling test coverage Gavin Hu
2018-07-11 17:46                   ` [dpdk-dev] [dpdk-stable] " Thomas Monjalon
2018-07-11 19:16                 ` [dpdk-dev] [PATCH v14 0/6] Fix the cross compiling errors Thomas Monjalon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=VI1PR05MB426980834D9A947603ED66F9D74A0@VI1PR05MB4269.eurprd05.prod.outlook.com \
    --to=alialnu@mellanox.com \
    --cc=dev@dpdk.org \
    --cc=gavin.hu@arm.com \
    --cc=nd@arm.com \
    --cc=stable@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).