[dpdk-dev] mk: pass EXTRA_CFLAGS to AUTO_CPUFLAGS to enable local modifications
Commit Message
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.
Signed-off-by: Simon Kagstrom <simon.kagstrom@netinsight.net>
---
mk/rte.cpuflags.mk | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Comments
Hi Simon,
On 11/18/2015 08:53 AM, Simon Kagstrom 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.
>
> Signed-off-by: Simon Kagstrom <simon.kagstrom@netinsight.net>
> ---
> mk/rte.cpuflags.mk | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/mk/rte.cpuflags.mk b/mk/rte.cpuflags.mk
> index f595cd0..17da810 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) -dM -E - < /dev/null)
> +AUTO_CPUFLAGS := $(shell $(CC) $(EXTRA_CFLAGS) $(MACHINE_CFLAGS) -dM -E - < /dev/null)
Wouldn't it be better to have EXTRA_CFLAGS after MACHINE_CFLAGS
so they can override the MACHINE_CFLAGS?
@@ -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) -dM -E - < /dev/null)
+AUTO_CPUFLAGS := $(shell $(CC) $(EXTRA_CFLAGS) $(MACHINE_CFLAGS) -dM -E - < /dev/null)
# adding flags to CPUFLAGS