Openembedded Core Discussions
 help / color / mirror / Atom feed
From: Martin Jansa <martin.jansa@gmail.com>
To: openembedded-core@lists.openembedded.org
Subject: [PATCH 2/3] dummy-sdk-package.inc: work around MACHINE_ARCH SSTATE_MANMACH
Date: Mon, 17 Sep 2018 05:48:43 +0000	[thread overview]
Message-ID: <20180917054844.12934-2-Martin.Jansa@gmail.com> (raw)
In-Reply-To: <20180917054844.12934-1-Martin.Jansa@gmail.com>

* since following change:
  allarch: only enable allarch when multilib is	not used
  the sstate-diff-machines.sh reports different signature for target-sdk-provides-dummy
  when multilib is enabled

 === Comparing signatures for task do_populate_sysroot.sigdata between qemux86 and qemux86copy ===
ERROR: lib32-target-sdk-provides-dummy different signature for task do_populate_sysroot.sigdata between qemux86 and qemux86copy
basehash changed from b0a44b2c7003b6b4aa3a023d9cb9fe82 to 3a59fa25ddb6a95aff079d477ebf3457
Variable SSTATE_MANMACH value changed from 'qemux86' to 'qemux86copy'

ERROR: target-sdk-provides-dummy different signature for task do_populate_sysroot.sigdata between qemux86 and qemux86copy
basehash changed from 9e44f1deb3d15886ee96db1a3332764c to 6b417d08a5113c9b06d13b3681f5ab4f
Variable SSTATE_MANMACH value changed from 'qemux86' to 'qemux86copy'

It's using:
inherit allarch

python() {
    # Put the package somewhere separate to ensure it's never used except
    # when we want it
    # (note that we have to do this in anonymous python here to avoid
    # allarch.bbclass disabling itself)
    d.setVar('PACKAGE_ARCH', '${DUMMYARCH}')
}

and DUMMYARCH = "sdk-provides-dummy-target"

The difference as shown with bitbake -e before and after reverting allarch.bbclass commit:

before revert:
   $SSTATE_MANMACH [2 operations]
     set? oe-core/meta/classes/sstate.bbclass:61
       "${SSTATE_PKGARCH}"
     set sstate.bbclass:100 [__anon_111_oe_core_meta_classes_sstate_bbclass]
       "machineName"
   pre-expansion value:
     "machineName"
SSTATE_MANMACH="machineName"

   $SSTATE_PKGARCH
     set oe-core/meta/classes/sstate.bbclass:11
       "${PACKAGE_ARCH}"
SSTATE_PKGARCH="sdk-provides-dummy-target"

   $PACKAGE_ARCH [3 operations]
     set oe-core/meta/conf/bitbake.conf:150
       [_defaultval] "${TUNE_PKGARCH}"
     set oe-core/meta/conf/documentation.conf:304
       [doc] "The architecture of the resulting package or packages."
     set dummy-sdk-package.inc:12 [__anon_12_oe_core_meta_recipes_core_meta_dummy_sdk_package_inc]
       "${DUMMYARCH}"
   pre-expansion value:
     "${DUMMYARCH}"
PACKAGE_ARCH="sdk-provides-dummy-target"

after revert:
   $SSTATE_MANMACH
     set? oe-core/meta/classes/sstate.bbclass:61
       "${SSTATE_PKGARCH}"
SSTATE_MANMACH="allarch"

   $SSTATE_PKGARCH [2 operations]
     set oe-core/meta/classes/sstate.bbclass:11
       "${PACKAGE_ARCH}"
     set sstate.bbclass:98 [__anon_111__oe_core_meta_classes_sstate_bbclass]
       "allarch"
   pre-expansion value:
     "allarch"
SSTATE_PKGARCH="allarch"

   $PACKAGE_ARCH [4 operations]
     set oe-core/meta/conf/bitbake.conf:150
       [_defaultval] "${TUNE_PKGARCH}"
     set oe-core/meta/conf/documentation.conf:304
       [doc] "The architecture of the resulting package or packages."
     set oe-core/meta/classes/allarch.bbclass:5
       "all"
     set dummy-sdk-package.inc:12 [__anon_12_oe_core_meta_recipes_core_meta_dummy_sdk_package_inc]
       "${DUMMYARCH}"
   pre-expansion value:
     "${DUMMYARCH}"
PACKAGE_ARCH="sdk-provides-dummy-target"

the relevant part of the anonymous python in sstate.bbclass:

    elif bb.data.inherits_class('allarch', d) and d.getVar("PACKAGE_ARCH") == "all":
        d.setVar('SSTATE_PKGARCH', "allarch")
    else:
        d.setVar('SSTATE_MANMACH', d.expand("${PACKAGE_ARCH}"))

So with allarch.bbclass change, the PACKAGE_ARCH isn't set to "all" because multilib is enabled,
but that causes sstate.bbclass to set SSTATE_MANMACH to MACHINE instead of SSTATE_PKGARCH
allarch, where it got MACHINE is still a bit of mystery to me.

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
 meta/recipes-core/meta/dummy-sdk-package.inc | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/meta/recipes-core/meta/dummy-sdk-package.inc b/meta/recipes-core/meta/dummy-sdk-package.inc
index ed83dd77da..eafcb823ab 100644
--- a/meta/recipes-core/meta/dummy-sdk-package.inc
+++ b/meta/recipes-core/meta/dummy-sdk-package.inc
@@ -1,6 +1,8 @@
 SUMMARY = "Dummy packages which handle excluding packages from the sdk, e.g. ensuring perl is excluded from buildtools"
 LICENSE = "MIT"
 
+PACKAGE_ARCH = "all"
+
 inherit allarch
 
 python() {
-- 
2.17.1



  reply	other threads:[~2018-09-17  5:48 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-09-17  5:48 [PATCH 1/3] coreutils: update printenv's ALTERNATIVE_LINK_NAME Martin Jansa
2018-09-17  5:48 ` Martin Jansa [this message]
2018-09-17  5:48 ` [PATCH 3/3] glibc: fix build with -O Martin Jansa
2018-09-19  4:12   ` Khem Raj
2018-09-19 10:10     ` Martin Jansa
2018-09-19 10:12       ` [PATCHv2] " Martin Jansa
2018-09-19 11:25       ` [PATCHv3] " Martin Jansa
2018-09-19 11:26       ` [PATCHv4] " Martin Jansa
2018-09-19 10:33 ` ✗ patchtest: failure for "coreutils: update printenv's A..." and 2 more (rev2) Patchwork
2018-09-19 11:35 ` ✗ patchtest: failure for "coreutils: update printenv's A..." and 2 more (rev3) Patchwork

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180917054844.12934-2-Martin.Jansa@gmail.com \
    --to=martin.jansa@gmail.com \
    --cc=openembedded-core@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox