diff options
| author | Laurentiu Palcu <laurentiu.palcu@intel.com> | 2014-02-13 13:55:26 +0200 | 
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-02-13 12:05:24 +0000 | 
| commit | 1fa94697163f16cdbb1499b57f1bc018546974ee (patch) | |
| tree | b5984458815b99e0fdcf78b92eb8b787d56755c0 | |
| parent | c6824a54c11f9a45720b2628ccba972653a0559a (diff) | |
| download | openembedded-core-1fa94697163f16cdbb1499b57f1bc018546974ee.tar.gz openembedded-core-1fa94697163f16cdbb1499b57f1bc018546974ee.tar.bz2 openembedded-core-1fa94697163f16cdbb1499b57f1bc018546974ee.zip | |
lib/oe/rootfs.py: fix RPM multilib issue
For some odd reason (at least I couldn't find an explanation to this,
yet), if a multilib version of a package is installed after the main one
(that is: in a different smart session), the main package binaries are
not overwritten.
This commit restores the functionality to the original one, before
migrating to python: feed all the packages to smart, apart from attempt
only ones which are installed separately.
Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
| -rw-r--r-- | meta/lib/oe/rootfs.py | 15 | 
1 files changed, 11 insertions, 4 deletions
| diff --git a/meta/lib/oe/rootfs.py b/meta/lib/oe/rootfs.py index 4fd17de58e..6114f5652a 100644 --- a/meta/lib/oe/rootfs.py +++ b/meta/lib/oe/rootfs.py @@ -317,10 +317,17 @@ class RpmRootfs(Rootfs):          self.pm.update() -        for pkg_type in self.install_order: -            if pkg_type in pkgs_to_install: -                self.pm.install(pkgs_to_install[pkg_type], -                                [False, True][pkg_type == "aop"]) +        pkgs = [] +        pkgs_attempt = [] +        for pkg_type in pkgs_to_install: +            if pkg_type == Manifest.PKG_TYPE_ATTEMPT_ONLY: +                pkgs_attempt += pkgs_to_install[pkg_type] +            else: +                pkgs += pkgs_to_install[pkg_type] + +        self.pm.install(pkgs) + +        self.pm.install(pkgs_attempt, True)          self.pm.install_complementary() | 
