summaryrefslogtreecommitdiffstats
path: root/meta/recipes-core/meta/dummy-sdk-package.inc
Commit message (Collapse)AuthorAgeFilesLines
* nativesdk-*-provides-dummy: Fixes to allow correct operation with opkgRichard Purdie2019-01-031-2/+2
| | | | | | | | | | | | | | | opkg needs the replaces/conflicts/provides in order for this package to function as intended. When enabled, this code caused failures for core-image-sato -c populate_sdk. The reason is that nativesdk-autoconf has several perl dependencies. We need to list more of the things which this package provides/conflicts with in order for it to function correctly. Therefore add the missing entries. (From OE-Core rev: 27412b377dda47daa87bfcb3a41babe53ff8b0a3) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* dummy-sdk-package.inc: work around MACHINE_ARCH SSTATE_MANMACHMartin Jansa2018-09-191-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* nativesdk/sdk: Update sdk dummy providersRichard Purdie2018-01-101-0/+24
When we migrated rpm v5 -> v4, we lost the ability to drop "per file" dependencies from the rpm backend for things like "/bin/bash" and "/usr/bin/env" which meant the sdks were becomming 'bloated'. This restores the functionality using a dummy package, similarly to the way the buildtools perl issue was addressed. It also removes the non-functional old code so as not to confuse people in future. I ran into this problem trying to filter dependencies to only rpms a build directly depends upon and it turns out we have some determinism issues in this area so this is something key to fix. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>