[yocto] psplash_git.bb: Error when building with icecc
Francesco Del Degan
f.deldegan at pr0gg3d.net
Thu Apr 25 05:44:25 PDT 2013
Martin Jansa <martin.jansa at gmail.com>
writes:
> On Thu, Apr 25, 2013 at 09:34:09AM +0200, Francesco Del Degan wrote:
>> Hi all, i just found an error building core-image-basic with icecc
>> inherited:
>
> You can send patch extending blacklist defined in icecc.bbclass:
> system_package_blacklist = [ "uclibc", "glibc", "gcc", "bind", "u-boot", "dhcp-forwarder", "enchant", "connman", "orbit2" ]
> user_package_blacklist = (d.getVar('ICECC_USER_PACKAGE_BL') or "").split()
>
> or add psplash to ICECC_USER_PACKAGE_BL
This is not going to work, because set_icecc_env gets prepended anyhow,
so i just got the same error.
In fact, the icecc.bbclass declares:
do_compile_prepend() {
set_icecc_env
}
and only in set_icecc_env the blacklist controls is performed.
The problem seems to be that do_compile in psplash_git.bb is written in python:
python do_compile () {
import shutil, commands
....
}
so prepending just mixes the two languages.
Could be this the first case of mixing languages? Is bitbake able to
make some transformation when prepending/appending like that.
Also a some sort of conditional prepending based on languages could
works. What do you think?
>
>> NameError: global name 'set_icecc_env' is not defined
>>
>> ERROR: The stack trace of python calls that resulted in this
>> exception/failure was:
>> ERROR: File "do_compile", line 26, in <module>
>> ERROR:
>> ERROR: File "do_compile", line 3, in do_compile
>> ERROR:
>> ERROR: The code that was being executed was:
>> ERROR: 0022: bb.build.exec_func("oe_runmake", d)
>> ERROR: 0023: shutil.copyfile("psplash", outputfile)
>> ERROR: 0024:
>> ERROR: 0025:
>> ERROR: *** 0026:do_compile(d)
>> ERROR: 0027:
>> ERROR: [From file: 'do_compile', lineno: 26, function: <module>]
>> ERROR: 0001:
>> ERROR: 0002:def do_compile(d):
>> ERROR: *** 0003: set_icecc_env
>> ERROR: 0004: import shutil, commands
>> ERROR: 0005:
>> ERROR: 0006: # Build a separate executable for each splash image
>> ERROR: 0007: convertscript = "%s/make-image-header.sh" %
>> d.getVar('S', True)
>> ERROR: [From file: 'do_compile', lineno: 3, function: do_compile]
>> ERROR: Function failed: do_compile
>>
>>
>>
>> Seems that icecc compile_prepend (set_icecc_env shell function) gets prepended
>> into psplash compile that is written in python. How to deal with it, and
>> in general, is that possible to mix languages in prepend/append?
>>
>> I'm using poky master and icecc is working great!
>>
>> Cheers,
>> Francesco
>>
>>
>>
>> _______________________________________________
>> yocto mailing list
>> yocto at yoctoproject.org
>> https://lists.yoctoproject.org/listinfo/yocto
More information about the yocto
mailing list