summaryrefslogtreecommitdiffstats
path: root/meta/recipes-core/meta/dummy-sdk-package.inc
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2018-01-09 11:20:31 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-01-10 22:14:52 +0000
commit9d490dc01dcedb216129b22cbe17a6c99efc4f5c (patch)
tree88826cf0a465900d63419d7ee8de6bccf08ac28f /meta/recipes-core/meta/dummy-sdk-package.inc
parentfc08972688d784f561c8be88d3100d6baaf22070 (diff)
downloadopenembedded-core-contrib-9d490dc01dcedb216129b22cbe17a6c99efc4f5c.tar.gz
openembedded-core-contrib-9d490dc01dcedb216129b22cbe17a6c99efc4f5c.tar.bz2
openembedded-core-contrib-9d490dc01dcedb216129b22cbe17a6c99efc4f5c.zip
nativesdk/sdk: Update sdk dummy providers
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>
Diffstat (limited to 'meta/recipes-core/meta/dummy-sdk-package.inc')
-rw-r--r--meta/recipes-core/meta/dummy-sdk-package.inc24
1 files changed, 24 insertions, 0 deletions
diff --git a/meta/recipes-core/meta/dummy-sdk-package.inc b/meta/recipes-core/meta/dummy-sdk-package.inc
new file mode 100644
index 0000000000..ed83dd77da
--- /dev/null
+++ b/meta/recipes-core/meta/dummy-sdk-package.inc
@@ -0,0 +1,24 @@
+SUMMARY = "Dummy packages which handle excluding packages from the sdk, e.g. ensuring perl is excluded from buildtools"
+LICENSE = "MIT"
+
+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}')
+}
+
+ALLOW_EMPTY_${PN} = "1"
+
+PR[vardeps] += "DUMMYPROVIDES"
+
+python populate_packages_prepend() {
+ p = d.getVar("PN")
+ d.appendVar("RPROVIDES_%s" % p, "${DUMMYPROVIDES}")
+ #d.appendVar("RCONFLICTS_%s" % p, "${DUMMYPROVIDES}")
+ #d.appendVar("RREPLACES_%s" % p, "${DUMMYPROVIDES}")
+}
+