summaryrefslogtreecommitdiff
path: root/meta/classes/icecc.bbclass
diff options
context:
space:
mode:
authorMartin Jansa <martin.jansa@gmail.com>2013-03-13 20:04:51 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-03-15 01:52:54 +0000
commitf46cf86d0ec3b80ce526b4dad1b1eac5995969ec (patch)
tree18f92cdce5ad1485405d7691b39d56e23fb20f42 /meta/classes/icecc.bbclass
parent61010972284cc53cfc7958a9f6422e3fe74fcc0e (diff)
downloadopenembedded-core-f46cf86d0ec3b80ce526b4dad1b1eac5995969ec.tar.gz
openembedded-core-f46cf86d0ec3b80ce526b4dad1b1eac5995969ec.tar.bz2
openembedded-core-f46cf86d0ec3b80ce526b4dad1b1eac5995969ec.zip
icecc: improve interaction with sstate
* exclude ICECC_PARALLEL_MAKE (like PARALLEL_MAKE is) * add ICECC_DISBLED to be able to disable whole icecc functionality while keeping icecc enabled. This is useful when you want multiple builders sharing same sstate-cache, but only some of them using icecc. * inheriting icecc changes all checksums because of do_*_prepends calls, but because icecc should not influence binary output of task we should get same checksums for tasks build with and without icecc * ICECC_DISABLED when set (to any non-empty value will disable icecc env modifications but while keeping same sstate checksum Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Diffstat (limited to 'meta/classes/icecc.bbclass')
-rw-r--r--meta/classes/icecc.bbclass6
1 files changed, 6 insertions, 0 deletions
diff --git a/meta/classes/icecc.bbclass b/meta/classes/icecc.bbclass
index ae74050f6b..f3e89a9747 100644
--- a/meta/classes/icecc.bbclass
+++ b/meta/classes/icecc.bbclass
@@ -26,6 +26,8 @@
#Error checking is kept to minimum so double check any parameters you pass to the class
###########################################################################################
+BB_HASHBASE_WHITELIST += "ICECC_PARALLEL_MAKE ICECC_DISABLED"
+
ICECC_ENV_EXEC ?= "${STAGING_BINDIR_NATIVE}/icecc-create-env"
def icecc_dep_prepend(d):
@@ -160,6 +162,10 @@ def icc_get_tool(bb, d, tool):
return os.path.join(ice_dir, "%s-%s" % (target_sys, tool))
set_icecc_env() {
+ if [ "x${ICECC_DISABLED}" != "x" ]
+ then
+ return
+ fi
ICECC_VERSION="${@icc_version(bb, d)}"
if [ "x${ICECC_VERSION}" = "x" ]
then