Added support to use pkg shlib-{provides,requires} objects.

This effectively checks that all pkgs in a transaction to be installed
or updated, have not unmatched shared libraries, which might happen with
pkgs that had major soname bumps.

This implementation slow downs xbps_transaction_prepare() 2x, due to
the use of xbps_pkgdb_get_pkg_metadata(). A new pkgdb format is required
that adds the pkg shlib-provides objects to pkgdb, avoiding the need
to use xbps_pkgdb_get_pkg_metadata().
This commit is contained in:
Juan RP
2014-09-09 11:08:54 +02:00
parent c61317e219
commit fb9c94fab9
6 changed files with 166 additions and 2 deletions

View File

@@ -279,6 +279,9 @@ xbps_transaction_prepare(struct xbps_handle *xhp)
xhp->transd = NULL;
return rv;
}
if (xbps_transaction_shlibs(xhp))
return ENODEV;
/*
* Sort package dependencies if necessary.
*/