]> code.ossystems Code Review - openembedded-core.git/commit
package_manager: Fix multilib package arch ordering issues
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 21 Jun 2016 11:57:25 +0000 (12:57 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 21 Jun 2016 11:58:37 +0000 (12:58 +0100)
commit61a33582dfc964d612d20d34734a787d873e312c
tree77cebe8ea2c0f2b52fa3460ef892688d9bc7ef93
parent2d636068d9d3a1ea2db3ace49462be13ba9ef125
package_manager: Fix multilib package arch ordering issues

Order is not preserved in dict() and this code depends on the order of
these lists of package architectures used when multilibs are enabled.
This caused 'random' breakage where sometimes the correct order was present
and sometimes it wasn't.

Use collections.OrderedDict() to avoid this problem.

Kudos to Bill Randle and Alejandro Hernandez who did most of the work debugging
this, I simply took the problem they identified and wrote a patch to fix it.

This unblocks the M1 build but this code needs auditing as there are clearly
other ordering issues (e.g. the set() usage).

[YOCTO #9717]

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/lib/oe/package_manager.py