All of lore.kernel.org
 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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.