[dpdk-dev] [EXT] Re: [PATCH v3] build: use generic march on arm64 when using 'default' machine
Luca Boccassi
bluca at debian.org
Mon Jan 14 10:58:30 CET 2019
On Mon, 2019-01-14 at 08:09 +0000, Jerin Jacob Kollanukkaran wrote:
> On Fri, 2019-01-11 at 10:45 +0000, Luca Boccassi wrote:
> > External Email
> >
> > -------------------------------------------------------------------
> > ---
> > On Mon, 2019-01-07 at 14:11 +0000, Luca Boccassi wrote:
> > > When building for generic distribution we need a stable baseline
> > > architecture, or depending on the build worker the result will
> > > vary.
> > >
> > > Force the default flags if the user explicitly sets
> > > machine=default
> > > at configuration time.
> > >
> > > Fixes: b1d48c41189a ("build: support ARM with meson")
> > > Cc: stable at dpdk.org
> > >
> > > Signed-off-by: Luca Boccassi <bluca at debian.org>
> > > Acked-by: Bruce Richardson <bruce.richardson at intel.com>
> > > ---
> > > v2: fix typo in commit message, remove variable used only once
> > > v3: put back temporary variable, as "machine" gets overwritten
> > > by the function and loses the original value before we need
> > > it.
> > >
> > > config/arm/meson.build | 7 ++++++-
> > > 1 file changed, 6 insertions(+), 1 deletion(-)
> > >
> > > diff --git a/config/arm/meson.build b/config/arm/meson.build
> > > index dae55d6b2..614139534 100644
> > > --- a/config/arm/meson.build
> > > +++ b/config/arm/meson.build
> > > @@ -6,6 +6,7 @@
> > > march_opt = '-march=@0@'.format(machine)
> > >
> > > arm_force_native_march = false
> > > +arm_force_default_march = (machine == 'default')
> > >
> > > machine_args_generic = [
> > > ['default', ['-march=armv8-a+crc+crypto']],
> > > @@ -105,7 +106,11 @@ else
> > > cmd_generic = ['generic', '', '', 'default', '']
> > > cmd_output = cmd_generic # Set generic by default
> > > machine_args = [] # Clear previous machine args
> > > - if not meson.is_cross_build()
> > > + if arm_force_default_march and not
> > > meson.is_cross_build()
> > > + machine = impl_generic
> > > + cmd_output = cmd_generic
> > > + impl_pn = 'default'
> > > + elif not meson.is_cross_build()
> > > # The script returns ['Implementer', 'Variant',
> > > 'Architecture',
> > > # 'Primary Part number', 'Revision']
> > > detect_vendor = find_program(join_paths(
> >
> > Any chance for a quick review from the arm maintainers/devs?
> > Thanks!
>
> Looks good.
>
> Could you please document the procedure to build generic image some
> where in the DPDK documentation.
>
> I guess the procedure will be same for x86 and arm64. Right?
The "machine" meson option is already described in meson_options.txt,
is that enough?
--
Kind regards,
Luca Boccassi
More information about the dev
mailing list