summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoshua Watt <jpewhacker@gmail.com>2018-11-20 14:04:15 -0600
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-11-21 11:54:14 +0000
commit1da297d35411e923ca3b6accdd37074f5182f019 (patch)
tree42040fd83614812cbddac8951fd39497589a9c6a
parent5ce58802e03fa8c32212d85f99d57aeabf8d3b53 (diff)
downloadpoky-1da297d35411e923ca3b6accdd37074f5182f019.tar.gz
meta/icecc.bbclass: Move system blacklist to variables
The system blacklists are moved to variables which are ignore when hashing. This prevents changes to the blacklists from causing all taskhashes to change (and thus rebuild). (From OE-Core rev: f5be9f6e9180ace3362bba52c7ced3b039441d7d) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/classes/icecc.bbclass31
1 files changed, 20 insertions, 11 deletions
diff --git a/meta/classes/icecc.bbclass b/meta/classes/icecc.bbclass
index b5a8457747..9ccd42d784 100644
--- a/meta/classes/icecc.bbclass
+++ b/meta/classes/icecc.bbclass
@@ -33,7 +33,7 @@ BB_HASHBASE_WHITELIST += "ICECC_PARALLEL_MAKE ICECC_DISABLED ICECC_USER_PACKAGE_
33 ICECC_CARET_WORKAROUND ICECC_CFLAGS ICECC_ENV_VERSION \ 33 ICECC_CARET_WORKAROUND ICECC_CFLAGS ICECC_ENV_VERSION \
34 ICECC_DEBUG ICECC_LOGFILE ICECC_REPEAT_RATE ICECC_PREFERRED_HOST \ 34 ICECC_DEBUG ICECC_LOGFILE ICECC_REPEAT_RATE ICECC_PREFERRED_HOST \
35 ICECC_CLANG_REMOTE_CPP ICECC_IGNORE_UNVERIFIED ICECC_TEST_SOCKET \ 35 ICECC_CLANG_REMOTE_CPP ICECC_IGNORE_UNVERIFIED ICECC_TEST_SOCKET \
36 ICECC_ENV_DEBUG \ 36 ICECC_ENV_DEBUG ICECC_SYSTEM_PACKAGE_BL ICECC_SYSTEM_CLASS_BL \
37 " 37 "
38 38
39ICECC_ENV_EXEC ?= "${STAGING_BINDIR_NATIVE}/icecc-create-env" 39ICECC_ENV_EXEC ?= "${STAGING_BINDIR_NATIVE}/icecc-create-env"
@@ -61,6 +61,23 @@ CXXFLAGS += "${ICECC_CFLAGS}"
61# Debug flags when generating environments 61# Debug flags when generating environments
62ICECC_ENV_DEBUG ??= "" 62ICECC_ENV_DEBUG ??= ""
63 63
64# "system" recipe blacklist contains a list of packages that can not distribute
65# compile tasks for one reason or the other. When adding new entry, please
66# document why (how it failed) so that we can re-evaluate it later e.g. when
67# there is new version
68#
69# libgcc-initial - fails with CPP sanity check error if host sysroot contains
70# cross gcc built for another target tune/variant
71ICECC_SYSTEM_PACKAGE_BL += "\
72 libgcc-initial \
73 "
74
75# "system" classes that should be blacklisted. When adding new entry, please
76# document why (how it failed) so that we can re-evaluate it later
77#
78ICECC_SYSTEM_CLASS_BL += "\
79 "
80
64def icecc_dep_prepend(d): 81def icecc_dep_prepend(d):
65 # INHIBIT_DEFAULT_DEPS doesn't apply to the patch command. Whether or not 82 # INHIBIT_DEFAULT_DEPS doesn't apply to the patch command. Whether or not
66 # we need that built is the responsibility of the patch function / class, not 83 # we need that built is the responsibility of the patch function / class, not
@@ -134,7 +151,7 @@ def use_icecc(bb,d):
134 151
135 pn = d.getVar('PN') 152 pn = d.getVar('PN')
136 153
137 system_class_blacklist = [] 154 system_class_blacklist = (d.getVar('ICECC_SYSTEM_CLASS_BL') or "").split()
138 user_class_blacklist = (d.getVar('ICECC_USER_CLASS_BL') or "none").split() 155 user_class_blacklist = (d.getVar('ICECC_USER_CLASS_BL') or "none").split()
139 package_class_blacklist = system_class_blacklist + user_class_blacklist 156 package_class_blacklist = system_class_blacklist + user_class_blacklist
140 157
@@ -143,15 +160,7 @@ def use_icecc(bb,d):
143 bb.debug(1, "%s: class %s found in blacklist, disable icecc" % (pn, black)) 160 bb.debug(1, "%s: class %s found in blacklist, disable icecc" % (pn, black))
144 return "no" 161 return "no"
145 162
146 # "system" recipe blacklist contains a list of packages that can not distribute compile tasks 163 system_package_blacklist = (d.getVar('ICECC_SYSTEM_PACKAGE_BL') or "").split()
147 # for one reason or the other
148 # this is the old list (which doesn't seem to be valid anymore, because I was able to build
149 # all these with icecc enabled)
150 # system_package_blacklist = [ "glibc", "gcc", "bind", "u-boot", "dhcp-forwarder", "enchant", "connman", "orbit2" ]
151 # when adding new entry, please document why (how it failed) so that we can re-evaluate it later
152 # e.g. when there is new version
153 # building libgcc-initial with icecc fails with CPP sanity check error if host sysroot contains cross gcc built for another target tune/variant
154 system_package_blacklist = ["libgcc-initial"]
155 user_package_blacklist = (d.getVar('ICECC_USER_PACKAGE_BL') or "").split() 164 user_package_blacklist = (d.getVar('ICECC_USER_PACKAGE_BL') or "").split()
156 user_package_whitelist = (d.getVar('ICECC_USER_PACKAGE_WL') or "").split() 165 user_package_whitelist = (d.getVar('ICECC_USER_PACKAGE_WL') or "").split()
157 package_blacklist = system_package_blacklist + user_package_blacklist 166 package_blacklist = system_package_blacklist + user_package_blacklist