bitbake: runqueue.py: check whether multiple versions of the same PN are due to be...
authorRobert Yang <liezhi.yang@windriver.com>
Mon, 2 Sep 2013 13:47:21 +0000 (09:47 -0400)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Mon, 9 Sep 2013 15:28:46 +0000 (16:28 +0100)
commit7597322a32355ee9538a5a4331c8d262d955b65d
tree9ab72b8cfabd1597a3d1b0cde0c4f6921a1c7507
parent4222a6e2274cfddab1f37078dae4c22e36b66553
bitbake: runqueue.py: check whether multiple versions of the same PN are due to be built

There would be an race issue if we:

$ bitbake make-3.81 make-3.82

This because they are being built at the same time which would cause
unexpected problems, for example:

[snip]
ERROR: Package already staged (/path/to/tmp/sstate-control/manifest-qemux86-make.populate-sysroot)?!
ERROR: Function failed: sstate_task_postfunc
[snip]

Or there would be python's strack trace such as:

[snip]
 *** 0004:    mfile = open(manifest)
     0005:    entries = mfile.readlines()
     0006:    mfile.close()
     0007:
     0008:    for entry in entries:
Exception: IOError: [Errno 2] No such file or directory: xxx
[snip]

[YOCTO #5094]

We can quit earlier to avoid this kind of issue when two versions of the same PN
are going to be built since this isn't supported.

(Bitbake rev: ab377c00c33a2d296bfda1b0b6c2a62b29d1004f)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
bitbake/lib/bb/runqueue.py