diff options
author | Randy Witt <randy.e.witt@linux.intel.com> | 2017-01-18 10:31:51 -0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2017-02-19 06:49:00 -0800 |
commit | 5da9c1c38b31c5edb957ad22fd093c9bc3a2ecd7 (patch) | |
tree | d93a33f75b64877e9a3e35af2d70c3c6f2994e26 | |
parent | 1b8f485c2431582abd5f709ea4cc919477bec97b (diff) | |
download | poky-5da9c1c38b31c5edb957ad22fd093c9bc3a2ecd7.tar.gz |
image-container.bbclass: Error if not using linux-dummy
In the typical case of a container, the user doesn't particularly care
about the kernel version used. Since using linux-dummy prevents building
a kernel in the most common case, alert the user if they choose a
container image, but don't also specify linux-dummy.
In the cases the user actually does want to build against particular
kernel headers, etc, they can override by setting
IMAGE_CONTAINER_NO_DUMMY = "1".
[YOCTO #9502]
(From OE-Core rev: f0645e172bb839803d616f19307e1e81e0d204c0)
Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/classes/image-container.bbclass | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/meta/classes/image-container.bbclass b/meta/classes/image-container.bbclass index a10ee326ce..f002858bd2 100644 --- a/meta/classes/image-container.bbclass +++ b/meta/classes/image-container.bbclass | |||
@@ -1,3 +1,21 @@ | |||
1 | ROOTFS_BOOTSTRAP_INSTALL = "" | 1 | ROOTFS_BOOTSTRAP_INSTALL = "" |
2 | IMAGE_TYPES_MASKED += "container" | 2 | IMAGE_TYPES_MASKED += "container" |
3 | IMAGE_TYPEDEP_container = "tar.bz2" | 3 | IMAGE_TYPEDEP_container = "tar.bz2" |
4 | |||
5 | python __anonymous() { | ||
6 | if "container" in d.getVar("IMAGE_FSTYPES") and \ | ||
7 | d.getVar("IMAGE_CONTAINER_NO_DUMMY") != "1" and \ | ||
8 | "linux-dummy" not in d.getVar("PREFERRED_PROVIDER_virtual/kernel"): | ||
9 | msg = '"container" is in IMAGE_FSTYPES, but ' \ | ||
10 | 'PREFERRED_PROVIDER_virtual/kernel is not "linux-dummy". ' \ | ||
11 | 'Unless a particular kernel is needed, using linux-dummy will ' \ | ||
12 | 'prevent a kernel from being built, which can reduce ' \ | ||
13 | 'build times. If you don\'t want to use "linux-dummy", set ' \ | ||
14 | '"IMAGE_CONTAINER_NO_DUMMY" to "1".' | ||
15 | |||
16 | # Raising skip recipe was Paul's clever idea. It causes the error to | ||
17 | # only be shown for the recipes actually requested to build, rather | ||
18 | # than bb.fatal which would appear for all recipes inheriting the | ||
19 | # class. | ||
20 | raise bb.parse.SkipRecipe(msg) | ||
21 | } | ||