icecc: use exact match in blacklists, re-start with empty system_package_blacklist
* unify debug messages a bit * old implementation allowed partial match in blacklist, it's safer to explicitly list exact matches * I was able to build all entries from system_package_blacklist with icecc enabled, lets assume that they were already resolved by newer versions (we've fixed a lot of parallel issues in recipes which were detected even without icecc and this list is very old). (From OE-Core rev: 5a5319d2e6f41bb0e290d6a1decbd996e9572690) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
033671d82a
commit
ea94e0fdee
|
@ -95,36 +95,39 @@ def use_icc(bb,d):
|
|||
if icc_is_allarch(bb, d):
|
||||
return "no"
|
||||
|
||||
package_tmp = d.expand('${PN}')
|
||||
pn = d.getVar('PN', True)
|
||||
|
||||
system_class_blacklist = [ "none" ]
|
||||
system_class_blacklist = []
|
||||
user_class_blacklist = (d.getVar('ICECC_USER_CLASS_BL') or "none").split()
|
||||
package_class_blacklist = system_class_blacklist + user_class_blacklist
|
||||
|
||||
for black in package_class_blacklist:
|
||||
if bb.data.inherits_class(black, d):
|
||||
#bb.note(package_tmp, ' class ', black, ' found in blacklist, disable icecc')
|
||||
bb.debug(1, "%s: class %s found in blacklist, disable icecc" % (pn, black))
|
||||
return "no"
|
||||
|
||||
#"system" package blacklist contains a list of packages that can not distribute compile tasks
|
||||
#for one reason or the other
|
||||
system_package_blacklist = [ "uclibc", "glibc", "gcc", "bind", "u-boot", "dhcp-forwarder", "enchant", "connman", "orbit2" ]
|
||||
# "system" recipe blacklist contains a list of packages that can not distribute compile tasks
|
||||
# for one reason or the other
|
||||
# this is the old list (which doesn't seem to be valid anymore, because I was able to build
|
||||
# all these with icecc enabled)
|
||||
# system_package_blacklist = [ "uclibc", "glibc", "gcc", "bind", "u-boot", "dhcp-forwarder", "enchant", "connman", "orbit2" ]
|
||||
# when adding new entry, please document why (how it failed) so that we can re-evaluate it later
|
||||
# e.g. when there is new version
|
||||
system_package_blacklist = []
|
||||
user_package_blacklist = (d.getVar('ICECC_USER_PACKAGE_BL') or "").split()
|
||||
user_package_whitelist = (d.getVar('ICECC_USER_PACKAGE_WL') or "").split()
|
||||
package_blacklist = system_package_blacklist + user_package_blacklist
|
||||
|
||||
for black in package_blacklist:
|
||||
if black in package_tmp:
|
||||
#bb.note(package_tmp, ' found in blacklist, disable icecc')
|
||||
return "no"
|
||||
if pn in package_blacklist:
|
||||
bb.debug(1, "%s: found in blacklist, disable icecc" % pn)
|
||||
return "no"
|
||||
|
||||
for white in user_package_whitelist:
|
||||
if white in package_tmp:
|
||||
bb.debug(1, package_tmp, " ", d.expand('${PV})'), " found in whitelist, enable icecc")
|
||||
return "yes"
|
||||
if pn in user_package_whitelist:
|
||||
bb.debug(1, "%s: found in whitelist, enable icecc" % pn)
|
||||
return "yes"
|
||||
|
||||
if d.getVar('PARALLEL_MAKE') == "":
|
||||
bb.debug(1, package_tmp, " ", d.expand('${PV}'), " has empty PARALLEL_MAKE, disable icecc")
|
||||
bb.debug(1, "%s: has empty PARALLEL_MAKE, disable icecc" % pn)
|
||||
return "no"
|
||||
|
||||
return "yes"
|
||||
|
|
Loading…
Reference in New Issue