From 6c930c3c06f2e698540626c87bd7f7f571df35ef Mon Sep 17 00:00:00 2001 From: Chen Qi Date: Wed, 13 Mar 2013 15:01:33 +0800 Subject: 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 Signed-off-by: Saul Wold --- meta/classes/rm_work.bbclass | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'meta/classes/rm_work.bbclass') 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 -- cgit 1.2.3-korg