[prev in list] [next in list] [prev in thread] [next in thread] 

List:       openembedded-core
Subject:    [OE-core] [PATCH 1/2] linux-yocto-rt, core-image-rt*: Explicitly skip when
From:       Martin Jansa <martin.jansa () gmail ! com>
Date:       2016-04-29 17:46:09
Message-ID: 1461951970-1225-1-git-send-email-Martin.Jansa () gmail ! com
[Download RAW message or body]

* 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']

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
 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 a138957..7c0b453 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 ?= "28d8cfdbcb18a6eef202099cca66430fd3b6eae0"
 SRCREV_meta ?= "a4f88c3fad887e1c559d03ae1b531ca267137b69"
 
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 d81ca13..1723b4b 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"
 
 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 ?= "2bc112a6ccd16800a4c45e47ccb3018a1042abdf"
 SRCREV_meta ?= "bcc65090840f51a6ac937297be5c22fe268d01ab"
 
diff --git a/meta/recipes-rt/images/core-image-rt-sdk.bb \
b/meta/recipes-rt/images/core-image-rt-sdk.bb index db7d581..7ddf671 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 cab6f8b..9c86f25 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"
-- 
2.8.1

-- 
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic