From 682cb00f0476226280a552e98976c183ac7574fa Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Fri, 29 Apr 2016 19:46:09 +0200 Subject: linux-yocto-rt, core-image-rt*: Explicitly skip when PREFERRED_PROVIDER_virtual/kernel isn't set to linux-yocto-rt * just like linux-yocto-dev is doing * fixes following errors in world builds: ERROR: Nothing PROVIDES 'linux-yocto-rt' (but /home/jenkins/oe/world/shr-core/openembedded-core/meta/recipes-rt/images/core-image-rt-sdk.bb DEPENDS on or otherwise requires it) ERROR: linux-yocto-rt was skipped: PREFERRED_PROVIDER_virtual/kernel set to linux-yocto, not linux-yocto-rt ERROR: linux-yocto-rt was skipped: PREFERRED_PROVIDER_virtual/kernel set to linux-yocto, not linux-yocto-rt ERROR: Required build target 'core-image-rt-sdk' has no buildable providers. Missing or unbuildable dependency chain was: ['core-image-rt-sdk', 'linux-yocto-rt'] ERROR: Nothing PROVIDES 'linux-yocto-rt' (but /home/jenkins/oe/world/shr-core/openembedded-core/meta/recipes-rt/images/core-image-rt.bb DEPENDS on or otherwise requires it) ERROR: linux-yocto-rt was skipped: PREFERRED_PROVIDER_virtual/kernel set to linux-yocto, not linux-yocto-rt ERROR: linux-yocto-rt was skipped: PREFERRED_PROVIDER_virtual/kernel set to linux-yocto, not linux-yocto-rt ERROR: Required build target 'core-image-rt' has no buildable providers. Missing or unbuildable dependency chain was: ['core-image-rt', 'linux-yocto-rt'] (From OE-Core rev: 048c901fc32a1fd9a6c4b6f68f618101dfdf94ad) (From OE-Core rev: 6ff8b98b6f176503671c651bacecef90dd9f4d89) Signed-off-by: Martin Jansa Signed-off-by: Ross Burton Signed-off-by: Richard Purdie Signed-off-by: Armin Kuster Signed-off-by: Richard Purdie --- meta/recipes-kernel/linux/linux-yocto-rt_4.1.bb | 9 +++++++++ meta/recipes-kernel/linux/linux-yocto-rt_4.4.bb | 9 +++++++++ meta/recipes-rt/images/core-image-rt-sdk.bb | 8 ++++++++ meta/recipes-rt/images/core-image-rt.bb | 8 ++++++++ 4 files changed, 34 insertions(+) diff --git a/meta/recipes-kernel/linux/linux-yocto-rt_4.1.bb b/meta/recipes-kernel/linux/linux-yocto-rt_4.1.bb index e6bbee81f4..090f8f3310 100644 --- a/meta/recipes-kernel/linux/linux-yocto-rt_4.1.bb +++ b/meta/recipes-kernel/linux/linux-yocto-rt_4.1.bb @@ -2,6 +2,15 @@ KBRANCH ?= "standard/preempt-rt/base" require recipes-kernel/linux/linux-yocto.inc +# Skip processing of this recipe if it is not explicitly specified as the +# PREFERRED_PROVIDER for virtual/kernel. This avoids errors when trying +# to build multiple virtual/kernel providers, e.g. as dependency of +# core-image-rt-sdk, core-image-rt. +python () { + if d.getVar("PREFERRED_PROVIDER_virtual/kernel", True) != "linux-yocto-rt": + raise bb.parse.SkipPackage("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it") +} + SRCREV_machine ?= "51cca91a1f74dab225598282019f0d694abdc4a0" SRCREV_meta ?= "2bdebd11f1a0bc00071ec1467289a7feb5418dde" diff --git a/meta/recipes-kernel/linux/linux-yocto-rt_4.4.bb b/meta/recipes-kernel/linux/linux-yocto-rt_4.4.bb index 92ae059d74..94dc8915a2 100644 --- a/meta/recipes-kernel/linux/linux-yocto-rt_4.4.bb +++ b/meta/recipes-kernel/linux/linux-yocto-rt_4.4.bb @@ -2,6 +2,15 @@ KBRANCH ?= "standard/preempt-rt/base" require recipes-kernel/linux/linux-yocto.inc +# Skip processing of this recipe if it is not explicitly specified as the +# PREFERRED_PROVIDER for virtual/kernel. This avoids errors when trying +# to build multiple virtual/kernel providers, e.g. as dependency of +# core-image-rt-sdk, core-image-rt. +python () { + if d.getVar("PREFERRED_PROVIDER_virtual/kernel", True) != "linux-yocto-rt": + raise bb.parse.SkipPackage("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it") +} + SRCREV_machine ?= "7ef3fe56827bd9c20021e3a52bc36ebd4c6b2ce3" SRCREV_meta ?= "d6ee402d461048cf1afd10375fee5769c06d21d6" diff --git a/meta/recipes-rt/images/core-image-rt-sdk.bb b/meta/recipes-rt/images/core-image-rt-sdk.bb index db7d581832..7ddf671bca 100644 --- a/meta/recipes-rt/images/core-image-rt-sdk.bb +++ b/meta/recipes-rt/images/core-image-rt-sdk.bb @@ -1,5 +1,13 @@ require recipes-core/images/core-image-minimal.bb +# Skip processing of this recipe if linux-yocto-rt is not explicitly specified as the +# PREFERRED_PROVIDER for virtual/kernel. This avoids errors when trying +# to build multiple virtual/kernel providers. +python () { + if d.getVar("PREFERRED_PROVIDER_virtual/kernel", True) != "linux-yocto-rt": + raise bb.parse.SkipPackage("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it") +} + DESCRIPTION = "Small image capable of booting a device with a test suite and \ tools for real-time use. It includes the full meta-toolchain, development \ headers and libraries to form a standalone SDK." diff --git a/meta/recipes-rt/images/core-image-rt.bb b/meta/recipes-rt/images/core-image-rt.bb index cab6f8b749..9c86f25335 100644 --- a/meta/recipes-rt/images/core-image-rt.bb +++ b/meta/recipes-rt/images/core-image-rt.bb @@ -1,5 +1,13 @@ require recipes-core/images/core-image-minimal.bb +# Skip processing of this recipe if linux-yocto-rt is not explicitly specified as the +# PREFERRED_PROVIDER for virtual/kernel. This avoids errors when trying +# to build multiple virtual/kernel providers. +python () { + if d.getVar("PREFERRED_PROVIDER_virtual/kernel", True) != "linux-yocto-rt": + raise bb.parse.SkipPackage("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it") +} + DESCRIPTION = "A small image just capable of allowing a device to boot plus a \ real-time test suite and tools appropriate for real-time use." DEPENDS = "linux-yocto-rt" -- cgit v1.2.3-54-g00ecf