Commit Graph

6 Commits

Author SHA1 Message Date
Robert Yang c7541a25f4 rpmresolve: ignore null requires
It is not a problem if a package requires nothing (similar to RDEPENDS
is null), for example, these packages depends on nothing:

[snip]
alsa-conf-base
base-files
eglibc-binary-localedata-en-us
xserver-xf86-config
[snip]

The rpmresolve-native's algorithm is:
===fake code
for pkg in pkg1, pkg2, pkg3:
    rc = get_req(pkg)
return rc
===fake code

Suppose of the 3 pkgs requires null:
- We are lukcy if pkg1 or pkg2 is null, nothing happend.
- We are *not* lukcy if pkg3 is null, and will get the error when "INHERIT +=
  'buildhistory'":
  ERROR: Cannot get the package dependencies. Command
  '/path/to/x86_64-linux/usr/bin/rpmresolve -t /path/to/var/lib/rpm' returned 1:

This patch fixes the problem.

(From OE-Core rev: 2f234160ff4e9eccd8794a31df851b96328f6b74)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-09-03 16:00:28 +01:00
Paul Eggleton 27c30e46d9 rpmresolve: fix reporting of multiple matches error
We were mistakenly writing what was meant to go to stderr into the
output file, so when the "Multiple matches" error showed we weren't
actually seeing the matches printed.

Also change the wording of the "Unable to find package..." to "Unable
to resolve package..." instead so that it makes more sense if it is
printed after the "Multiple matches" error.

(From OE-Core rev: c26542eb4e8707b9639ec309a44809a728839db8)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-03 17:18:30 +01:00
Paul Eggleton 1ce0f3f867 rpmresolve: improve debug output
Rename rpmresolve's -d option to -t and make -d enable debug output;
add a -o option to specify the output file (so rpm debug output doesn't
go to the output file) and also add a little more detail to some of the
error messages.

(From OE-Core rev: 163dd734d79fd7040b48b10bca6fde28460ac20c)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-15 14:26:43 +01:00
Richard Purdie 8b8748c8f9 rpmresolve: Ensure we call the rpm relocation code at init
We need to call rpmcliInit to ensure the rpm relocation code is called
and it correctly honours the relocation environmental variables.

We can drop the ReadConfigFiles call since the cliInit does this for us.

(From OE-Core rev: eb17fdc1461953382360635480f12357eac4dc43)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-14 09:34:12 +01:00
Paul Eggleton 20ad566d60 buildhistory: improve performance of image info collection
Reduce the number of calls to the packaging tool, especially in the case
of rpm, using helper utilities to gather the required information more
efficiently where possible.

(From OE-Core rev: d0b8a98c5b46c305afd389fc862b3bf0c6f1eaab)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-29 10:16:15 +01:00
Paul Eggleton a73c25d2de classes/rootfs_rpm: improve speed of RPM rootfs construction
Improve the performance of the RPM backend during do_rootfs by
performing most of the package name to file resolution in a separate
utility written in C, processing the entire list of packages at once
rather than running rpm on the command line which loads the RPM database
for every package.

(From OE-Core rev: 9135d351ba7cb21e50239d2b310565680bd4fdca)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-29 10:16:14 +01:00