From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 7280073785777061888 X-Received: by 2002:a2e:700d:0:b0:2bc:d993:b7ba with SMTP id l13-20020a2e700d000000b002bcd993b7bamr4218626ljc.27.1696008825403; Fri, 29 Sep 2023 10:33:45 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a05:651c:1545:b0:2c0:d63:6f2 with SMTP id y5-20020a05651c154500b002c00d6306f2ls169126ljp.1.-pod-prod-01-eu; Fri, 29 Sep 2023 10:33:43 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGS3zZ1mGLNCI/Pl/ss5Zjkhgi8gUlkPe1Stdw88/yFhP2/yTWkBH1rl5vxp+Aq0L/J+XMn X-Received: by 2002:a05:651c:91:b0:2bf:fa16:2787 with SMTP id 17-20020a05651c009100b002bffa162787mr4236981ljq.39.1696008823144; Fri, 29 Sep 2023 10:33:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1696008823; cv=none; d=google.com; s=arc-20160816; b=Jo+a7G2enhyXawcKP1NfqQdrH0TPqXAz891sBIWUrs1sIE+UUz0XNJWlRW8nGYcUdT rdkcyFey0CMFTzUs/9v+e7tu4kchFcOPL3c6eIw/kGTlg+li5GpmQ6QeKdz7KUgHyM2H tB5M2KgffNjqeY0odSn6++1M7WcpOngvVTXXjVrBVJDWv7CumpqeWFLWUVXQbUEAI2sE muyGUCse/8pjSQydNgnVvEULXNUXl3BUIemitEt4CTI1gqAl4p+8NQf6ZXopliL3mUtU BT7Ahj6mtisyptCNo6OVq1x7QO4hFzgp/EkMTVRMI4PI8mOCYXiGqJmsAAr0P9bwX6+u m0FA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id; bh=2g+ZZtm0xdmAlCn6/c8vtItTi3USzh1d2o1iiLwnpMQ=; fh=IxbeHM4vWxalf1XNf2rnGcQL+r1v0Lr0C6ICsGNNkYw=; b=bCvTvLACQMTcps63HSkXIKDLhlnu6S749pl/4PIB+Vbfqewpr0Rrzdh4trc68wqyIQ G8bX/B37smufoiKTuImooulh8Bu9z90+ThS0dsJN53Vq5AQulX8OR0mx61qHjIUhOv1c 8ee78i5QiFyQnzm7yT1dTzHpL7rbs2bSBo7FENA61FgWg9UcciXt2U20+WKVDZGQAamM IMlTHQ0xTltlcXg0PPNGGOwr0zfC4y2xwbhGEyXQ5ULjWF+dFBkjDtQAVQX2O85toJ3d 3FifdMfkG7+S8StxfmBJL0tKG9Bb/7JVn+BnNdfB2PkxS/EmHYXAznOXlsNrfUNBl695 PN1Q== ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of ubely@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=ubely@ilbers.de Return-Path: Received: from shymkent.ilbers.de (shymkent.ilbers.de. [85.214.156.166]) by gmr-mx.google.com with ESMTPS id i16-20020a2ea230000000b002b9e701adbfsi587837ljm.1.2023.09.29.10.33.42 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 29 Sep 2023 10:33:43 -0700 (PDT) Received-SPF: pass (google.com: domain of ubely@ilbers.de designates 85.214.156.166 as permitted sender) client-ip=85.214.156.166; Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of ubely@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=ubely@ilbers.de Received: from [127.0.0.1] (host-80-81-17-52.static.customer.m-online.net [80.81.17.52]) (authenticated bits=0) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPSA id 38THXepN000659 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 29 Sep 2023 19:33:41 +0200 Message-ID: Subject: Re: [PATCH v2] base: Fix HOST_ARCH for native builds From: Uladzimir Bely To: Jan Kiszka , isar-users Date: Fri, 29 Sep 2023 20:33:43 +0300 In-Reply-To: <2086e64361cb3fdc602f358e53a27310a182f3f5.camel@ilbers.de> References: <6c5308f8c43513ce66e462f6125d40009e5f7390.camel@ilbers.de> <2086e64361cb3fdc602f358e53a27310a182f3f5.camel@ilbers.de> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.48.4 (by Flathub.org) MIME-Version: 1.0 X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shymkent.ilbers.de X-TUID: tnRcvs4AWotg On Fri, 2023-09-29 at 20:25 +0300, Uladzimir Bely wrote: > On Fri, 2023-09-29 at 19:36 +0300, Uladzimir Bely wrote: > > On Mon, 2023-09-25 at 13:41 +0200, Jan Kiszka wrote: > > > From: Jan Kiszka > > >=20 > > > HOST_ARCH must be DISTRO_ARCH when we are not cross-building. > > > Otherwise, > > > recipes that set PACKAGE_ARCH to it will fail in native builds. > > >=20 > > > Use late expansion for ISAR_CROSS_COMPILE to avoid recursion > > > issues. > > >=20 > > > Signed-off-by: Jan Kiszka > > > --- > > >=20 > > > That "expand=3DFalse" seems to work fine, so let's move forward > > > with > > > it. > > >=20 > > > =C2=A0meta/classes/base.bbclass | 6 ++++-- > > > =C2=A01 file changed, 4 insertions(+), 2 deletions(-) > > >=20 > > > diff --git a/meta/classes/base.bbclass > > > b/meta/classes/base.bbclass > > > index 88004120..8ca089a2 100644 > > > --- a/meta/classes/base.bbclass > > > +++ b/meta/classes/base.bbclass > > > @@ -49,13 +49,15 @@ def oe_import(d): > > > =C2=A0# We need the oe module name space early (before INHERITs get > > > added) > > > =C2=A0OE_IMPORTED :=3D "${@oe_import(d)}" > > > =C2=A0 > > > -def get_deb_host_arch(): > > > +def get_deb_host_arch(d): > > > =C2=A0=C2=A0=C2=A0=C2=A0 import subprocess > > > +=C2=A0=C2=A0=C2=A0 if d.getVar("ISAR_CROSS_COMPILE", expand=3DFalse)= !=3D "1": > > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return d.getVar("DISTRO_A= RCH") > > > =C2=A0=C2=A0=C2=A0=C2=A0 host_arch =3D subprocess.check_output( > > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ["dpkg", "--print-ar= chitecture"] > > > =C2=A0=C2=A0=C2=A0=C2=A0 ).decode('utf-8').strip() > > > =C2=A0=C2=A0=C2=A0=C2=A0 return host_arch > > > -HOST_ARCH ??=3D "${@get_deb_host_arch()}" > > > +HOST_ARCH ??=3D "${@get_deb_host_arch(d)}" > > > =C2=A0HOST_DISTRO ??=3D "${DISTRO}" > > > =C2=A0 > > > =C2=A0die() { > >=20 > > For some reason this doesn't properly work for some targets in case > > of > > cross-compile mode. > >=20 > > Without patch (default local.conf with ISAR_CROSS_COMPILE set): > > ``` > > bitbake mc:qemuarm64-focal:isar-image-base -e | grep "^HOST_ARCH=3D" > > HOST_ARCH=3D"amd64" > > bitbake mc:rpi-arm64-v8-bullseye:isar-image-base -e | grep > > "^HOST_ARCH=3D" > > HOST_ARCH=3D"amd64" > > bitbake mc:rpi-arm-v7-bullseye:isar-image-base -e | grep > > "^HOST_ARCH=3D" > > HOST_ARCH=3D"amd64" > > bitbake mc:stm32mp15x-bullseye:isar-image-base -e | grep > > "^HOST_ARCH=3D" > > HOST_ARCH=3D"amd64" > > ``` > >=20 > > With patch: > > ``` > > bitbake mc:qemuarm64-focal:isar-image-base -e | grep "^HOST_ARCH=3D" > > HOST_ARCH=3D"amd64" > > bitbake mc:rpi-arm64-v8-bullseye:isar-image-base -e | grep > > "^HOST_ARCH=3D" > > HOST_ARCH=3D"amd64" > > bitbake mc:rpi-arm-v7-bullseye:isar-image-base -e | grep > > "^HOST_ARCH=3D" > > HOST_ARCH=3D"armhf" > > bitbake mc:stm32mp15x-bullseye:isar-image-base -e | grep > > "^HOST_ARCH=3D" > > HOST_ARCH=3D"armhf" > > ``` > >=20 > > For some reasons this affects only "armhf" targets... > >=20 >=20 > ... And it looks to be caused by line 69 in "imagetypes.bbclass": > ISAR_CROSS_COMPILE:armhf =3D "${@bb.utils.contains('IMAGE_BASETYPES', > 'ubifs', '1', '${THIS_ISAR_CROSS_COMPILE}', d)}" >=20 ... And it seems extactly this line caused the issue with parsing "armhf" multiconfigs in patch v1. > With (,"expand=3DFalse") in case of armhf the wrong DISTRO_ARCH value > assigned to HOST_ARCH. >=20 > > As a result, in case of rpi-arm-v7 ${DL_DIR}/deb/debian-bullseye/ > > has > > wrongly imported non-debian packages and second (cached from base- > > apt) > > build does not work since it can't resolve the dependencies. > >=20 >=20