From mboxrd@z Thu Jan 1 00:00:00 1970 From: Luca Boccassi Subject: Re: [PATCH] build: use generic march on arm64 when using 'default' machine Date: Mon, 07 Jan 2019 13:40:14 +0000 Message-ID: <1546868414.6022.19.camel@debian.org> References: <20181224125627.25690-1-bluca@debian.org> <20190107122401.GA14912@bricha3-MOBL.ger.corp.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Cc: dev@dpdk.org, christian.ehrhardt@canonical.com, stable@dpdk.org To: Bruce Richardson Return-path: In-Reply-To: <20190107122401.GA14912@bricha3-MOBL.ger.corp.intel.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On Mon, 2019-01-07 at 12:24 +0000, Bruce Richardson wrote: > On Mon, Dec 24, 2018 at 01:56:27PM +0100, Luca Boccassi wrote: > > When building for generic distribution we need a stable baseline > > architecture, or depending on the build worker the result will > > vary. > >=20 > > Force the default flags if the user explicitly sets > > marchine=3Ddefault >=20 > typo: marchine >=20 > > at configuration time. > >=20 > > Fixes: b1d48c41189a ("build: support ARM with meson") > > Cc: stable@dpdk.org > >=20 > > Signed-off-by: Luca Boccassi > > --- > > =C2=A0config/arm/meson.build | 7 ++++++- > > =C2=A01 file changed, 6 insertions(+), 1 deletion(-) > >=20 > > diff --git a/config/arm/meson.build b/config/arm/meson.build > > index dae55d6b2..fa21a2fd2 100644 > > --- a/config/arm/meson.build > > +++ b/config/arm/meson.build > > @@ -6,6 +6,7 @@ > > =C2=A0march_opt =3D '-march=3D@0@'.format(machine) > > =C2=A0 > > =C2=A0arm_force_native_march =3D false > > +arm_force_default_march =3D machine =3D=3D 'default' >=20 > Do we need a new variable here? Given it only seems to be used once > below, > I think just having the boolean expression directly in the if > statement is > clearer. If you do keep the variable, suggest putting braces around > the > comparison, otherwise at first glance it looks like a chained > assignment > like you get in C e.g. x =3D y =3D 0; >=20 > > =C2=A0 > > =C2=A0machine_args_generic =3D [ > > =C2=A0 ['default', ['-march=3Darmv8-a+crc+crypto']], > > @@ -105,7 +106,11 @@ else > > =C2=A0 cmd_generic =3D ['generic', '', '', 'default', ''] > > =C2=A0 cmd_output =3D cmd_generic # Set generic by default > > =C2=A0 machine_args =3D [] # Clear previous machine args > > - if not meson.is_cross_build() > > + if arm_force_default_march and not meson.is_cross_build() > > + machine =3D impl_generic > > + cmd_output =3D cmd_generic > > + impl_pn =3D 'default' > > + elif not meson.is_cross_build() > > =C2=A0 # The script returns ['Implementer', 'Variant', > > 'Architecture', > > =C2=A0 # 'Primary Part number', 'Revision'] > > =C2=A0 detect_vendor =3D find_program(join_paths( > > --=C2=A0 > > 2.19.2 > >=20 >=20 > With these comments, looks ok to me from a meson viewpoint. I think > an ack > from the arm side would be good to get too though. >=20 > Acked-by: Bruce Richardson Fixed typo, removed variable and added the arm maintainers to CC in v2, thanks. --=20 Kind regards, Luca Boccassi