summaryrefslogtreecommitdiff
path: root/meta/classes/rm_work.bbclass
diff options
context:
space:
mode:
authorChen Qi <Qi.Chen@windriver.com>2013-03-13 15:01:33 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-03-18 13:17:33 +0000
commit6c930c3c06f2e698540626c87bd7f7f571df35ef (patch)
tree05799d21a1d7cad289de8fd22e557d8db28312fa /meta/classes/rm_work.bbclass
parent392562a21d9f2deb6fe6f8bb5378b09f4c5918d4 (diff)
downloadopenembedded-core-6c930c3c06f2e698540626c87bd7f7f571df35ef.tar.gz
openembedded-core-6c930c3c06f2e698540626c87bd7f7f571df35ef.tar.bz2
openembedded-core-6c930c3c06f2e698540626c87bd7f7f571df35ef.zip
rm_work.bbclass: inhibit rm_work per recipe
Use RM_WORK_WHITELIST to inhibit rm_work per recipe. In this way, one can use rm_work for the most of the recipes but still keep the work area for the recipe(s) one is working on. As an example, the following settings in local.conf will inhibit rm_work for icu-native, icu and busybox. INHERIT += "rm_work" RM_WORK_WHITELIST += "icu-native icu busybox" If we comment out the RM_WORK_WHITELIST line and do a rebuild, the working area of these recipes will be cleaned up. [YOCTO #3675] Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Diffstat (limited to 'meta/classes/rm_work.bbclass')
-rw-r--r--meta/classes/rm_work.bbclass13
1 files changed, 13 insertions, 0 deletions
diff --git a/meta/classes/rm_work.bbclass b/meta/classes/rm_work.bbclass
index d3be0be887..54287bf6b3 100644
--- a/meta/classes/rm_work.bbclass
+++ b/meta/classes/rm_work.bbclass
@@ -5,6 +5,11 @@
#
# INHERIT += "rm_work"
#
+# To inhibit rm_work for some recipes, specify them in RM_WORK_WHITELIST.
+# For example, in conf/local.conf:
+#
+# RM_WORK_WHITELIST += "icu-native icu busybox"
+#
# Use the completion scheduler by default when rm_work is active
# to try and reduce disk usage
@@ -14,6 +19,14 @@ RMWORK_ORIG_TASK := "${BB_DEFAULT_TASK}"
BB_DEFAULT_TASK = "rm_work_all"
do_rm_work () {
+ # If the recipe name is in the RM_WORK_WHITELIST, skip the recipe.
+ for p in ${RM_WORK_WHITELIST}; do
+ if [ "$p" = "${PN}" ]; then
+ bbnote "rm_work: Skipping ${PN} since it is in RM_WORK_WHITELIST"
+ exit 0
+ fi
+ done
+
cd ${WORKDIR}
for dir in *
do