]> git.ipfire.org Git - pakfire.git/commitdiff
Revert "package: Drop installing self-provides"
authorMichael Tremer <michael.tremer@ipfire.org>
Mon, 31 Oct 2022 11:28:37 +0000 (11:28 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Mon, 31 Oct 2022 11:28:37 +0000 (11:28 +0000)
This reverts commit 9a9d2e5897c780cc9fd3c2fdeb821fd5b7e6eed9.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/libpakfire/package.c

index cd108f79f6da1a985fc038bfdf243a3565dec529..c6b53d148963e730f1586b5c2b50d3d87ad9a2fe 100644 (file)
@@ -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);