xbps-rindex: check for consistent shlibs

When adding packages to the index, xbps-rindex will check if the
consistency of shlibs is broken by a package. If so, rindex will create
a stage file and commit the packages there. Once the consistency is restored,
rindex -a will commit the stage area back to the public repo and delete the
stage file.
This commit is contained in:
Enno Boland
2016-03-20 17:51:22 +01:00
parent 897ac238c4
commit 4d1ee3b01d
7 changed files with 296 additions and 84 deletions

View File

@@ -224,7 +224,7 @@ sign_repo(struct xbps_handle *xhp, const char *repodir,
_XBPS_RINDEX, strerror(errno));
goto out;
}
flush_failed = repodata_flush(xhp, repodir, repo->idx, meta);
flush_failed = repodata_flush(xhp, repodir, "repodata", repo->idx, meta);
xbps_repo_unlock(rlockfd, rlockfname);
if (!flush_failed) {
fprintf(stderr, "failed to write repodata: %s\n", strerror(errno));