[OE-core] [PATCH V2] meta: move image-mklibs image-prelink to IMAGE_CLASSES
liu.ming50 at gmail.com
liu.ming50 at gmail.com
Fri Jul 7 03:38:46 UTC 2017
From: Ming Liu <peter.x.liu at external.atlascopco.com>
The code logic in image-mklibs.bbclass and image-prelink.bbclass is all
about optimizing the rootfs image, so it makes more sense to put them
into IMAGE_CLASSES rather than USER_CLASSES.
What's more, this fixes a potential issue by moving out image-mklibs
from INHERIT, considering that, I found a following dependency is
missing in image-mklibs.bblcass:
...
do_rootfs[depends] += "virtual/${MLPREFIX}${TARGET_PREFIX}binutils:do_populate_sysroot"
...
but if I add it in, I got a following error:
...
NOTE: Resolving any missing task queue dependencies
ERROR: Nothing PROVIDES 'virtual/none-oe-none-binutils'. Close matches:
virtual/i586-oe-linux-binutils
ERROR: Nothing PROVIDES 'virtual/none-oe-none-binutils'. Close matches:
virtual/i586-oe-linux-binutils
ERROR: Nothing PROVIDES 'virtual/none-oe-none-binutils'. Close matches:
virtual/i586-oe-linux-binutils
ERROR: Nothing PROVIDES 'virtual/none-oe-none-binutils'. Close matches:
virtual/i586-oe-linux-binutils
ERROR: Nothing PROVIDES 'virtual/none-oe-none-binutils'. Close matches:
virtual/i586-oe-linux-binutils
ERROR: Nothing PROVIDES 'virtual/none-oe-none-binutils'. Close matches:
virtual/i586-oe-linux-binutils
...
this can be fixed by moving image-mklibs to IMAGE_CLASSES per test.
Also change the image_types_uboot example in local.conf.sample.extended
to be appended to IMAGE_CLASSES, since now IMAGE_CLASSES has a default
value in local.conf.sample.
Signed-off-by: Ming Liu <peter.x.liu at external.atlascopco.com>
---
meta/conf/local.conf.sample | 14 ++++++++++----
meta/conf/local.conf.sample.extended | 9 ++++++---
meta/recipes-devtools/prelink/prelink_git.bb | 2 +-
3 files changed, 17 insertions(+), 8 deletions(-)
diff --git a/meta/conf/local.conf.sample b/meta/conf/local.conf.sample
index b754853..e9faa97 100644
--- a/meta/conf/local.conf.sample
+++ b/meta/conf/local.conf.sample
@@ -118,18 +118,24 @@ PACKAGE_CLASSES ?= "package_ipk"
EXTRA_IMAGE_FEATURES ?= "debug-tweaks"
#
-# Additional image features
+# Additional user features
#
-# The following is a list of additional classes to use when building images which
+# The following is a list of additional classes to use when bitbaking recipes which
# enable extra features. Some available options which can be included in this variable
# are:
# - 'buildstats' collect build statistics
+USER_CLASSES ?= "buildstats"
+
+#
+# Additional image generation features
+#
+# The following is a list of classes to import to use in the generation of images.
+# Some available options which can be included in this variable are:
# - 'image-mklibs' to reduce shared library files size for an image
# - 'image-prelink' in order to prelink the filesystem image
# NOTE: if listing mklibs & prelink both, then make sure mklibs is before prelink
# NOTE: mklibs also needs to be explicitly enabled for a given image, see local.conf.extended
-USER_CLASSES ?= "buildstats image-mklibs image-prelink"
-
+IMAGE_CLASSES ?= "image-mklibs image-prelink"
#
# Runtime testing of images
diff --git a/meta/conf/local.conf.sample.extended b/meta/conf/local.conf.sample.extended
index 5d6c37d..cb39240 100644
--- a/meta/conf/local.conf.sample.extended
+++ b/meta/conf/local.conf.sample.extended
@@ -165,9 +165,12 @@
# Additional image generation features
#
-# The following is a list of classes to import to use in the generation of images
-# currently an example class is image_types_uboot
-# IMAGE_CLASSES = " image_types_uboot"
+# The following is a list of extra classes to import to use in the generation
+# of images, currently an example class is image_types_uboot.
+# Note: IMAGE_CLASSES defaults to "image-mklibs image-prelink" in local.conf,
+# copy this appended variable definition to local.conf if you want use this
+# option.
+# IMAGE_CLASSES += "image_types_uboot"
# The following options will build a companion 'debug filesystem' in addition
# to the normal deployable filesystem. This companion system allows a
diff --git a/meta/recipes-devtools/prelink/prelink_git.bb b/meta/recipes-devtools/prelink/prelink_git.bb
index 4529dbf..573157d 100644
--- a/meta/recipes-devtools/prelink/prelink_git.bb
+++ b/meta/recipes-devtools/prelink/prelink_git.bb
@@ -156,7 +156,7 @@ pkg_postinst_prelink() {
#!/bin/sh
if [ "x$D" != "x" ]; then
- ${@bb.utils.contains('USER_CLASSES', 'image-prelink', 'exit 0', 'exit 1', d)}
+ ${@bb.utils.contains('IMAGE_CLASSES', 'image-prelink', 'exit 0', 'exit 1', d)}
fi
prelink -a
--
2.7.4
More information about the Openembedded-core
mailing list