build: set -mfpu=neon flag for armv7a builds
Checks
Commit Message
Building on armv7a with meson currenctly fails:
/usr/lib/gcc/arm-linux-gnueabihf/8/include/arm_neon.h:10369:1: error:
inlining failed in call to always_inline ‘vld1q_s32’: target
specific option mismatch
Set -mfpu=neon on that architecture like the legacy makefiles do to fix
the issue.
Fixes: b1d48c41189a ("build: support ARM with meson")
Cc: stable@dpdk.org
Signed-off-by: Luca Boccassi <bluca@debian.org>
---
config/arm/meson.build | 3 +++
1 file changed, 3 insertions(+)
Comments
On Thu, Nov 15, 2018 at 5:54 PM Luca Boccassi <bluca@debian.org> wrote:
>
> Building on armv7a with meson currenctly fails:
>
> /usr/lib/gcc/arm-linux-gnueabihf/8/include/arm_neon.h:10369:1: error:
> inlining failed in call to always_inline ‘vld1q_s32’: target
> specific option mismatch
>
> Set -mfpu=neon on that architecture like the legacy makefiles do to fix
> the issue.
>
> Fixes: b1d48c41189a ("build: support ARM with meson")
> Cc: stable@dpdk.org
>
> Signed-off-by: Luca Boccassi <bluca@debian.org>
Acked-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
> ---
> config/arm/meson.build | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/config/arm/meson.build b/config/arm/meson.build
> index 4b23b3954..b75513855 100644
> --- a/config/arm/meson.build
> +++ b/config/arm/meson.build
> @@ -89,6 +89,9 @@ if cc.sizeof('void *') != 8
> dpdk_conf.set('RTE_CACHE_LINE_SIZE', 64)
> dpdk_conf.set('RTE_ARCH_ARM', 1)
> dpdk_conf.set('RTE_ARCH_ARMv7', 1)
> + # the minimum architecture supported, armv7-a, needs the following,
> + # mk/machine/armv7a/rte.vars.mk sets it too
> + machine_args += '-mfpu=neon'
> else
> dpdk_conf.set('RTE_CACHE_LINE_SIZE', 128)
> dpdk_conf.set('RTE_ARCH_ARM64', 1)
> --
> 2.19.1
>
15/11/2018 20:29, Christian Ehrhardt:
> On Thu, Nov 15, 2018 at 5:54 PM Luca Boccassi <bluca@debian.org> wrote:
> >
> > Building on armv7a with meson currenctly fails:
> >
> > /usr/lib/gcc/arm-linux-gnueabihf/8/include/arm_neon.h:10369:1: error:
> > inlining failed in call to always_inline ‘vld1q_s32’: target
> > specific option mismatch
> >
> > Set -mfpu=neon on that architecture like the legacy makefiles do to fix
> > the issue.
> >
> > Fixes: b1d48c41189a ("build: support ARM with meson")
> > Cc: stable@dpdk.org
> >
> > Signed-off-by: Luca Boccassi <bluca@debian.org>
>
> Acked-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
Applied, thanks
@@ -89,6 +89,9 @@ if cc.sizeof('void *') != 8
dpdk_conf.set('RTE_CACHE_LINE_SIZE', 64)
dpdk_conf.set('RTE_ARCH_ARM', 1)
dpdk_conf.set('RTE_ARCH_ARMv7', 1)
+ # the minimum architecture supported, armv7-a, needs the following,
+ # mk/machine/armv7a/rte.vars.mk sets it too
+ machine_args += '-mfpu=neon'
else
dpdk_conf.set('RTE_CACHE_LINE_SIZE', 128)
dpdk_conf.set('RTE_ARCH_ARM64', 1)