]> code.ossystems Code Review - openembedded-core.git/commit
package_manager.py: Explicit complementary fail
authorNiko Mauno <niko.mauno@vaisala.com>
Fri, 16 Mar 2018 09:01:53 +0000 (11:01 +0200)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Mon, 2 Apr 2018 16:09:06 +0000 (17:09 +0100)
commit88bbc4b84ce97f82d08c841edf25e6fc29d408b0
tree3101acee15a925fc27bd9f0ca3681963428bdde4
parent5c880fe974907195c563b5580cb43b3b2fb92203
package_manager.py: Explicit complementary fail

When running bitbake -c populate_sdk <image_name>, it is expected that
packages matching SDKIMAGE_INSTALL_COMPLEMENTARY name mask (unless
declared in PACKAGE_EXCLUDE_COMPLEMENTARY) are installed to resulting
SDK. Underlying mechanism issues a package manager install call for set
of complementary packages. However the mechanism doesn't seem to inform
the user all too obviously in case the package manager command behind
install_complementary() method fails -- and since it is combined with
attempt_only=True option, user might end up wondering why several *-dev,
*-dbg packages are missing from resulting SDK.

Improve associated install() method behaviour in affected OpkgPM and
DpkgPM classes so that a problematic state of affairs becomes directly
obvious for bitbake user, resulting in shell output like:

  WARNING: someimage-1.0-r0 do_populate_sdk: Unable to install packages.
  Command '...' returned 1:
  Collected errors:
   * Solver encountered 1 problem(s):
   * Problem 1/1:
   *   - package somepkg-dev-1.0-r0.x86 requires somepkg = 1.0-r0, but
         none of the providers can be installed
   *
   * Solution 1:
   *   - allow deinstallation of someotherpkg-1.1-r1.x86

   *   - do not ask to install a package providing somepkg-dev

   * Solution 2:
   *   - do not ask to install a package providing somepkg-dev

(From OE-Core rev: 2502bd591c37bf532d02dc6b37fc1e8b5224fb0a)

Signed-off-by: Niko Mauno <niko.mauno@vaisala.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 0d4459e7086fced5e9e0b4ad10378c9eddec56a8)
Signed-off-by: Armin Kuster <akuster808@gmail.com>
meta/lib/oe/package_manager.py