diff options
author | Chris Larson <chris_larson@mentor.com> | 2011-08-08 16:09:37 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-08-10 13:33:07 +0100 |
commit | 073caff59944eae399ad0be1203cf0a7b11d93d0 (patch) | |
tree | 54c648c6842a500a7be4ee3d70bbecb692921ba0 | |
parent | b0761479e46a99b3b96e20fd142881e2a0a63136 (diff) | |
download | poky-073caff59944eae399ad0be1203cf0a7b11d93d0.tar.gz |
image: implement IMAGE_FEATURES
IMAGE_FEATURES is analagous to DISTRO_FEATURES and MACHINE_FEATURES, for
root filesystem construction. Currently, the only supported features are
any defined package groups, as used by the oe.packagegroup python
module.
Example usage:
PACKAGE_GROUP_myfeature = "vim iptables"
IMAGE_FEATURES += "myfeature"
(From OE-Core rev: f9f4416a8cfbd37c7d3a8eb19ee82820e2e6b38c)
Signed-off-by: Chris Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/classes/image.bbclass | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass index 243baa9c35..e057329017 100644 --- a/meta/classes/image.bbclass +++ b/meta/classes/image.bbclass | |||
@@ -6,15 +6,26 @@ inherit imagetest-${IMAGETEST} | |||
6 | LICENSE = "MIT" | 6 | LICENSE = "MIT" |
7 | PACKAGES = "" | 7 | PACKAGES = "" |
8 | MULTILIB_IMAGE_INSTALL ?= "" | 8 | MULTILIB_IMAGE_INSTALL ?= "" |
9 | RDEPENDS += "${IMAGE_INSTALL} ${LINGUAS_INSTALL} ${MULTILIB_IMAGE_INSTALL}" | 9 | RDEPENDS += "${IMAGE_INSTALL} ${LINGUAS_INSTALL} ${MULTILIB_IMAGE_INSTALL} ${FEATURE_INSTALL}" |
10 | RRECOMMENDS += "${FEATURE_INSTALL_OPTIONAL}" | ||
10 | 11 | ||
11 | INHIBIT_DEFAULT_DEPS = "1" | 12 | INHIBIT_DEFAULT_DEPS = "1" |
12 | 13 | ||
14 | # IMAGE_FEATURES may contain any available package group | ||
15 | IMAGE_FEATURES ?= "" | ||
16 | IMAGE_FEATURES[type] = "list" | ||
17 | |||
18 | # packages to install from features | ||
19 | FEATURE_INSTALL = "${@' '.join(oe.packagegroup.required_packages(oe.data.typed_value('IMAGE_FEATURES', d), d))}" | ||
20 | FEATURE_INSTALL_OPTIONAL = "${@' '.join(oe.packagegroup.optional_packages(oe.data.typed_value('IMAGE_FEATURES', d), d))}" | ||
21 | |||
13 | # "export IMAGE_BASENAME" not supported at this time | 22 | # "export IMAGE_BASENAME" not supported at this time |
23 | IMAGE_INSTALL ?= "" | ||
24 | IMAGE_INSTALL[type] = "list" | ||
14 | IMAGE_BASENAME[export] = "1" | 25 | IMAGE_BASENAME[export] = "1" |
15 | export PACKAGE_INSTALL ?= "${IMAGE_INSTALL}" | 26 | export PACKAGE_INSTALL ?= "${IMAGE_INSTALL} ${FEATURE_INSTALL}" |
16 | export MULTILIB_PACKAGE_INSTALL ?= "${MULTILIB_IMAGE_INSTALL}" | 27 | export MULTILIB_PACKAGE_INSTALL ?= "${MULTILIB_IMAGE_INSTALL}" |
17 | PACKAGE_INSTALL_ATTEMPTONLY ?= "" | 28 | PACKAGE_INSTALL_ATTEMPTONLY ?= "${FEATURE_INSTALL_OPTIONAL}" |
18 | 29 | ||
19 | # Images are generally built explicitly, do not need to be part of world. | 30 | # Images are generally built explicitly, do not need to be part of world. |
20 | EXCLUDE_FROM_WORLD = "1" | 31 | EXCLUDE_FROM_WORLD = "1" |