From: Pavan Nikhilesh <pbhagavat...@marvell.com> Fix extra_march_features not being added to mcpu flags when SoC configuration advertises them.
Fixes: c02c01dbf907 ("config/arm: prefer strict use of -mcpu if supported") Signed-off-by: Pavan Nikhilesh <pbhagavat...@marvell.com> --- config/arm/meson.build | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/config/arm/meson.build b/config/arm/meson.build index dea329ceb7..7f85b088c9 100644 --- a/config/arm/meson.build +++ b/config/arm/meson.build @@ -841,6 +841,7 @@ if update_flags implementer_config = implementers[implementer_id] part_number = soc_config['part_number'] soc_flags = soc_config.get('flags', []) + extra_features = soc_config.get('extra_march_features', []) if not soc_config.get('numa', true) has_libnuma = false endif @@ -909,11 +910,15 @@ if update_flags machine_args += march else candidate_mcpu = '-mcpu=' + mcpu - if (cc.has_argument(candidate_mcpu)) - machine_args += candidate_mcpu - else + if not cc.has_argument(candidate_mcpu) error('Compiler does not support -mcpu=@0@.'.format(mcpu)) endif + foreach flag: extra_features + if cc.has_argument('+'.join([candidate_mcpu, flag])) + candidate_mcpu = '+'.join([candidate_mcpu, flag]) + endif + endforeach + machine_args += candidate_mcpu endif # apply supported compiler options -- 2.43.0