From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?Q?Simon_K=c3=a5gstr=c3=b6m?= Subject: Re: [PATCH v2] mk: pass EXTRA_CFLAGS to AUTO_CPUFLAGS to enable local modifications Date: Mon, 7 Dec 2015 12:47:19 +0100 Message-ID: <566571C7.3020004@netinsight.net> References: <20151124085001.58817bf0@miho> <56614AE8.2010200@netinsight.net> <566167CC.3040303@6wind.com> <4623746.AUJoGgWqRB@xps13> <56654454.3040508@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Cc: dev@dpdk.org To: Panu Matilainen , Thomas Monjalon Return-path: Received: from ernst.netinsight.se (ernst.netinsight.se [194.16.221.21]) by dpdk.org (Postfix) with SMTP id 2B22895AC for ; Mon, 7 Dec 2015 12:47:28 +0100 (CET) In-Reply-To: <56654454.3040508@redhat.com> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On 2015-12-07 09:33, Panu Matilainen wrote: > On 12/04/2015 08:53 PM, Thomas Monjalon wrote: >>>>> We have encountered a CPU where the AES-NI instruction set is disabled >>>>> due to export restrictions. Since the build machine and target machine >>>>> is different, using -native configs doesn't work, and on this CPU, the >>>>> application refuses to run due to the AES CPU flags being amiss. >>>>> >>>>> The patch passes EXTRA_CFLAGS to the figure-out-cpu-flags helper, >>>>> which allows us to add -mno-aes to the compile flags and resolve this >>>>> problem. > > More specifically, when EXTRA_CFLAGS contains warning flag manipulation > this patch can cause mismatch between other options that are okay > elsewhere in dpdk make. A simple fix is to pass WERROR_FLAGS to > AUTO_CPUFLAGS too to counter this, ie > > diff --git a/mk/rte.cpuflags.mk b/mk/rte.cpuflags.mk > index c6bb8de..28f203b 100644 > --- a/mk/rte.cpuflags.mk > +++ b/mk/rte.cpuflags.mk > @@ -33,7 +33,7 @@ > # used to set the RTE_CPUFLAG_* environment variables giving details > # of what instruction sets the target cpu supports. > > -AUTO_CPUFLAGS := $(shell $(CC) $(MACHINE_CFLAGS) $(EXTRA_CFLAGS) -dM -E > - < /dev/null) > +AUTO_CPUFLAGS := $(shell $(CC) $(MACHINE_CFLAGS) $(WERROR_FLAGS) > $(EXTRA_CFLAGS) -dM -E - < /dev/null) Looks fine to me at least. // Simon