aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMark Hatle <mark.hatle@windriver.com>2013-08-12 19:45:48 -0500
committerSaul Wold <sgw@linux.intel.com>2013-08-22 09:15:33 -0700
commit0341bfa886ea851f5a394051545b4e624d8003dd (patch)
tree503300b10922a486d09691760080e83c2864e1b4
parent6fd8141bbdcd84c591149d84ad84effc2357de72 (diff)
downloadopenembedded-core-0341bfa886ea851f5a394051545b4e624d8003dd.tar.gz
package_rpm.bbclass: NO_RECOMMENDATIONS support
Add NO_RECOMMENDATIONS support. A way to disable all recommended packages from being installed. This will help shrink the size of the resulting filesystem. Add documentation on NO_RECOMMENDATIONS and BAD_RECOMMENDATIONS. Note, using NO_RECOMMENDATIONS has side effects such that kernel-modules may not have been installed. A user will need to manually add to their image any kernel-modules required to be on the image for functionality. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
-rw-r--r--meta/classes/package_rpm.bbclass3
-rw-r--r--meta/conf/bitbake.conf1
-rw-r--r--meta/conf/documentation.conf3
3 files changed, 7 insertions, 0 deletions
diff --git a/meta/classes/package_rpm.bbclass b/meta/classes/package_rpm.bbclass
index cb3ceacbcb..b29d3edb2f 100644
--- a/meta/classes/package_rpm.bbclass
+++ b/meta/classes/package_rpm.bbclass
@@ -359,6 +359,9 @@ EOF
smart --data-dir=${target_rootfs}/var/lib/smart config --set rpm-extra-macros._tmppath=/install/tmp
package_write_smart_config ${target_rootfs}
# Do the following configurations here, to avoid them being saved for field upgrade
+ if [ "x${NO_RECOMMENDATIONS}" = "x1" ]; then
+ smart --data-dir=$1/var/lib/smart config --set ignore-all-recommends=1
+ fi
for i in ${PACKAGE_EXCLUDE}; do
smart --data-dir=$1/var/lib/smart flag --set exclude-packages $i
done
diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
index 07eb473190..43acc077b8 100644
--- a/meta/conf/bitbake.conf
+++ b/meta/conf/bitbake.conf
@@ -753,6 +753,7 @@ COMBINED_FEATURES[vardeps] += "DISTRO_FEATURES MACHINE_FEATURES"
SERIAL_CONSOLE ??= ""
SERIAL_CONSOLES ??= "${@d.getVar('SERIAL_CONSOLE', True).replace(' ', ';')}"
+NO_RECOMMENDATIONS ?= ""
BAD_RECOMMENDATIONS ?= ""
# Make sure MACHINE isn't exported
diff --git a/meta/conf/documentation.conf b/meta/conf/documentation.conf
index b930611c8b..e83981cc51 100644
--- a/meta/conf/documentation.conf
+++ b/meta/conf/documentation.conf
@@ -114,6 +114,9 @@ SYSVINIT_ENABLED_GETTYS[doc] = "Specify which VTs should be running a getty, the
IPK_FEED_URIS[doc] = "List of ipkg feed records to put into generated image."
FEED_DEPLOYDIR_BASE_URI[doc] = "Allow to serve ipk deploy dir as an adhoc feed (bogofeed). Set to base URL of the dir as exported by HTTP. Set of adhoc feed configs will be generated in image."
+BAD_RECOMMENDATIONS[doc] = "List of packages to not install if recommended. These will still be installed if required."
+NO_RECOMMENDATIONS[doc] = "When set to 1, no recommended packages will be installed. Note: some recommended packages may be required for certain system functionality, such as kernel-modules. It is up to the user to add packages to IMAGE_INSTALL as needed."
+
IMAGE_INSTALL[doc] = "Used by an image recipe to list the packages to be installed. See PACKAGE_INSTALL."
PACKAGE_EXCLUDE[doc] = "Packages to exclude from the installation, if required an error will be generated."