[yocto] Master build error caused a small typo by commit today : fetch2: unpack revision

Koen Kooi koen at dominion.thruhere.net
Sat Feb 12 11:08:10 PST 2011


Op 12 feb 2011, om 19:09 heeft Mark Hatle het volgende geschreven:

> On 2/12/11 3:30 AM, Cui, Dexuan wrote:
>> Hi Mark,
>> As Liping said, the following change breaks building xorg-minimal-fonts as destdir is not correct.
>> Can you please explain the actual different between cp and tar here? I think "cp -p" is similar to "tar -x -p" here?
>> 
> 
> We can revert the change.  But the reason for it is tar preserves hard links,
> while cp does not.

The problem is that people can hit things like this:

| NOTE: Unpacking /OE/tentacle/sources/angstrom-layers/BSP/TI/recipes-bsp/linux/linux-omap-psp-2.6.32/beagleboard/defconfig to /OE/tentacle/build/tmp-angstrom_2010_x/work/beagleboard-angstrom-linux-gnueabi/linux-omap-psp-2.6.32-r99+gitr5fc29e7b2a76a64a739f857858ef0b98294aa155/
| ERROR: Error executing a python function in /OE/tentacle/sources/angstrom-layers/BSP/TI/recipes-bsp/linux/linux-omap-psp_2.6.32.bb:
| TypeError: %d format: a number is required, not str
|
| ERROR: The stack trace of python calls that resulted in this exception/failure was:
| ERROR:   File "base_do_unpack", line 19, in <module>
| ERROR:
| ERROR:   File "base_do_unpack", line 14, in base_do_unpack
| ERROR:
| ERROR:   File "/OE/tentacle/sources/bitbake/lib/bb/fetch2/__init__.py", line 1015, in unpack
| ERROR:     ud.method.unpack(ud, root, self.d)
| ERROR:
| ERROR:   File "/OE/tentacle/sources/bitbake/lib/bb/fetch2/__init__.py", line 724, in unpack
| ERROR:     cmd = 'tar -cf - -C "%d" -ps . | tar -xf - -C "%s/%s/"' % (file, rootdir, destdir)
| ERROR:
| ERROR: The code that was being executed was:
| ERROR:      0015:        except bb.fetch2.BBFetchException, e:
| ERROR:      0016:            raise bb.build.FuncFailed(e)
| ERROR:      0017:
| ERROR:      0018:
| ERROR:  *** 0019:base_do_unpack(d)
| ERROR:      0020:
| ERROR: (file: 'base_do_unpack', lineno: 19, function: <module>)
| ERROR:      0010:     rootdir = bb.data.getVar('WORKDIR', localdata, True)
| ERROR:      0011:
| ERROR:      0012:        try:
| ERROR:      0013:            fetcher = bb.fetch2.Fetch(src_uri, localdata)
| ERROR:  *** 0014:            fetcher.unpack(rootdir)
| ERROR:      0015:        except bb.fetch2.BBFetchException, e:
| ERROR:      0016:            raise bb.build.FuncFailed(e)
| ERROR:      0017:
| ERROR:      0018:
| ERROR: (file: 'base_do_unpack', lineno: 14, function: base_do_unpack)
| ERROR: Function 'base_do_unpack' failed

Not sure what triggers it, but it breaks my build. It could be entirely my own fault for having buggy recipes in a BSP :)

regards,

Koen


More information about the yocto mailing list