There are compiler issues when building with -mcpu=native with popular compilers, such as GCC-8.4 and clang (which doesn't define __ARM_FEATURE_ATOMIC). Fix this by always specifying the proper machine args and never using the native flags.
Fixes: 78ac8eac7e8a ("config/arm: use native machine build arguments") Cc: juraj.lin...@pantheon.tech Signed-off-by: Juraj Linkeš <juraj.lin...@pantheon.tech> --- config/arm/meson.build | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/config/arm/meson.build b/config/arm/meson.build index f207e5a288..f948768578 100644 --- a/config/arm/meson.build +++ b/config/arm/meson.build @@ -24,7 +24,6 @@ flags_common = [ ['RTE_ARCH_ARM64', true], ['RTE_CACHE_LINE_SIZE', 128] ] -native_machine_args = ['-mcpu=native'] ## Part numbers are specific to Arm implementers # implementer specific aarch64 flags have middle priority @@ -193,7 +192,6 @@ if dpdk_conf.get('RTE_ARCH_32') machine_args += '-mfpu=neon' else # aarch64 build - use_native_machine_args = false if not meson.is_cross_build() if machine == 'default' # default build @@ -213,7 +211,6 @@ else else error('Error when getting Arm Implementer ID and part number.') endif - use_native_machine_args = true endif else # cross build @@ -249,12 +246,7 @@ else # apply supported machine args machine_args = [] # Clear previous machine args - if use_native_machine_args - candidate_machine_args = native_machine_args - else - candidate_machine_args = part_number_config['machine_args'] - endif - foreach flag: candidate_machine_args + foreach flag: part_number_config['machine_args'] if cc.has_argument(flag) machine_args += flag endif -- 2.20.1