From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 7286543990069919744 X-Received: by 2002:a2e:8505:0:b0:2bf:efcd:8022 with SMTP id j5-20020a2e8505000000b002bfefcd8022mr19834662lji.28.1697087810867; Wed, 11 Oct 2023 22:16:50 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a2e:bc11:0:b0:2bf:f55d:1df9 with SMTP id b17-20020a2ebc11000000b002bff55d1df9ls345140ljf.1.-pod-prod-05-eu; Wed, 11 Oct 2023 22:16:48 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGk0PefuN1zKcExE6LGRqGMun/fHgDqlfQjDzQcWrRT3H2tSrBLzFFhfn0EIWUOj1r22Zl1 X-Received: by 2002:a2e:7207:0:b0:2c0:da8:39e4 with SMTP id n7-20020a2e7207000000b002c00da839e4mr21884266ljc.43.1697087808624; Wed, 11 Oct 2023 22:16:48 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1697087808; cv=none; d=google.com; s=arc-20160816; b=wj8887l0sLM9aRtbSpiviWuQvdvBtCQ3d/Of/zXawpEqkqa0U1oohHJrzqYnE0nWaB jODCERevr8jWL7q/Ar5VmkUqsXaCs+9hJwdgh+N/nGzG3IB3m5okav+9lIOmBIHDmQcu uP4Hkf/LoKmK8BC7HkSnN1lvneosJ4fbyJ4v+/XL9csg7udYQ7kNQHGHYPaTVQlw3he0 yOQNHnGAX5LjZSiFNU5zgdfA3akRElKrE/FrZqnyVITHaSterYzEAshcf3IhX7JwYydU zqKzO5ytHZY3XocmoB/eNaT87J0B2uqEaolJgQATifNdizPnEaLS7H3rxYPmEAMKw+Su Sxag== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=feedback-id:content-transfer-encoding:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:dkim-signature; bh=nrazHrl3JKRpv7yKZSP4JROvdV6fbPDnuwOcQYvK9PE=; fh=oMwV7fLMNO6+b1+J7DgRaIeS6HOdhYK0IzT7NJ4piPQ=; b=Af6t/DvpCXFAw7nXA5FHgverZo3mkOgW1M8H5OavTA5t8mpGkUyRoqbQ9UuiDePDL4 9onmPHs8kvxfMtg3TFYA3GqxjMERvpWy9EZWK3NY80GmzDMuQavdHjnWbuFmWnvqbh8Z Qnx7FlxYxgNa9tDb7v9Kbe4yGYKlrLGusecUCZAZZYZ3dBGZDgxoZsx2hX+iA5Qk8TXh f1obH8kxop0/mXlQlpK/XYGuF2na69taLL6e9PiCGMtF2pB6klAi+9o59yRZAXNHg3ma FlKJPukjub5Nk1b0qiUmeeEFc48OJNlXIATAl8xvuutHqqHdCYTxUSVaH/d0J8Lng1AS mCRw== ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=Swf44we3; spf=pass (google.com: domain of fm-294854-202310120516470617e4db6de543d4c7-_lptk7@rts-flowmailer.siemens.com designates 185.136.64.225 as permitted sender) smtp.mailfrom=fm-294854-202310120516470617e4db6de543d4c7-_LptK7@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Return-Path: Received: from mta-64-225.siemens.flowmailer.net (mta-64-225.siemens.flowmailer.net. [185.136.64.225]) by gmr-mx.google.com with ESMTPS id n26-20020a2e721a000000b002c282c67bfasi819831ljc.8.2023.10.11.22.16.48 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 11 Oct 2023 22:16:48 -0700 (PDT) Received-SPF: pass (google.com: domain of fm-294854-202310120516470617e4db6de543d4c7-_lptk7@rts-flowmailer.siemens.com designates 185.136.64.225 as permitted sender) client-ip=185.136.64.225; Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=Swf44we3; spf=pass (google.com: domain of fm-294854-202310120516470617e4db6de543d4c7-_lptk7@rts-flowmailer.siemens.com designates 185.136.64.225 as permitted sender) smtp.mailfrom=fm-294854-202310120516470617e4db6de543d4c7-_LptK7@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: by mta-64-225.siemens.flowmailer.net with ESMTPSA id 202310120516470617e4db6de543d4c7 for ; Thu, 12 Oct 2023 07:16:47 +0200 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; s=fm1; d=siemens.com; i=jan.kiszka@siemens.com; h=Date:From:Subject:To:Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:Cc:References:In-Reply-To; bh=nrazHrl3JKRpv7yKZSP4JROvdV6fbPDnuwOcQYvK9PE=; b=Swf44we3H8pSsFO5vJl08AWkwRFOLJI5bzFQ9YYW71Id6alD4cXWQkcDFsBMYXy7s9mlna 6x/z9Bgr1PE9YeXkWMctW8Fg0UfKUFGyaY+7rgUG5NDpuqt2WmboFim+QMq6WH1sAqwZn2z4 WZ1S5gUqgVKAj4F1TlQGu1Xp/rESU=; From: Jan Kiszka To: isar-users Cc: Adriaan Schmidt , Felix Moessbauer , Uladzimir Bely , Cedric Hombourger Subject: [PATCH v3 3/9] crossvars: Adjust logic to account for -native package builds in non-cross setups Date: Thu, 12 Oct 2023 07:16:39 +0200 Message-Id: <0e19bab2ebab1fdd4676d9d88e3d3770d19ca018.1697087805.git.jan.kiszka@siemens.com> In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-294854:519-21489:flowmailer X-TUID: LgDIYg5hB0/4 From: Jan Kiszka When selecting a -native version of a package while cross-building is disabled for it, we will use the target build env instead. That may work, just slowly, or even fail miserably. Extend the build env selection logic to take PACKAGE_ARCH into account as well. It defaults to DISTRO_ARCH for non-package recipe, thus should works fine for those as well. Reported-by: Cedric Hombourger Signed-off-by: Jan Kiszka --- meta/classes/crossvars.bbclass | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/meta/classes/crossvars.bbclass b/meta/classes/crossvars.bbclass index 22bc4714..a7834b99 100644 --- a/meta/classes/crossvars.bbclass +++ b/meta/classes/crossvars.bbclass @@ -16,16 +16,22 @@ python __anonymous() { flavor_suffix = ('-' + flavor) if flavor else '' distro_arch = d.getVar('DISTRO_ARCH') - if mode == "0" or d.getVar('HOST_ARCH') == distro_arch or distro_arch == None: + compat_arch = d.getVar('COMPAT_DISTRO_ARCH') + host_arch = d.getVar('HOST_ARCH') + package_arch = d.getVar('PACKAGE_ARCH') + + if distro_arch != host_arch and \ + (package_arch == host_arch or \ + (package_arch in [distro_arch, compat_arch] and mode == "1")): + d.setVar('BUILD_ARCH', host_arch) + schroot_dir = d.getVar('SCHROOT_HOST_DIR', False) + sbuild_dep = "sbuild-chroot-host" + flavor_suffix + ":do_build" + sdk_toolchain = "crossbuild-essential-" + distro_arch + else: d.setVar('BUILD_ARCH', distro_arch) schroot_dir = d.getVar('SCHROOT_TARGET_DIR', False) sbuild_dep = "sbuild-chroot-target" + flavor_suffix + ":do_build" sdk_toolchain = "build-essential" - else: - d.setVar('BUILD_ARCH', d.getVar('HOST_ARCH')) - schroot_dir = d.getVar('SCHROOT_HOST_DIR', False) - sbuild_dep = "sbuild-chroot-host" + flavor_suffix + ":do_build" - sdk_toolchain = "crossbuild-essential-" + distro_arch d.setVar('SCHROOT_DIR', schroot_dir + flavor_suffix) d.setVar('SCHROOT_DEP', sbuild_dep) if isar_can_build_compat(d): -- 2.35.3