From 6a648bd4d027c16ccac4983affbc629b6cc9eadb Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Mon, 31 Oct 2022 11:28:37 +0000 Subject: [PATCH] Revert "package: Drop installing self-provides" This reverts commit 9a9d2e5897c780cc9fd3c2fdeb821fd5b7e6eed9. Signed-off-by: Michael Tremer --- src/libpakfire/package.c | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/src/libpakfire/package.c b/src/libpakfire/package.c index cd108f79f..c6b53d148 100644 --- a/src/libpakfire/package.c +++ b/src/libpakfire/package.c @@ -62,6 +62,24 @@ struct pakfire_package { char path[PATH_MAX]; }; +static int pakfire_package_add_self_provides(struct pakfire* pakfire, + struct pakfire_package* pkg, const char* name, const char* evr) { + char* buffer = NULL; + int r; + + // Format the relation + r = asprintf(&buffer, "%s = %s", name, evr); + if (r < 0) + return r; + + // Add it to the package + r = pakfire_package_add_dep(pkg, PAKFIRE_PKG_PROVIDES, buffer); + + free(buffer); + + return r; +} + int pakfire_package_create_from_solvable(struct pakfire_package** package, struct pakfire* pakfire, Id id) { struct pakfire_package* pkg = calloc(1, sizeof(*pkg)); @@ -139,6 +157,13 @@ PAKFIRE_EXPORT int pakfire_package_create(struct pakfire_package** package, goto ERROR; } + // Add self-provides + r = pakfire_package_add_self_provides(pakfire, *package, name, evr); + if (r) { + ERROR(pakfire, "Could not create self-provides: %m\n"); + goto ERROR; + } + ERROR: if (dummy) pakfire_repo_unref(dummy); -- 2.39.5