]> git.ipfire.org Git - pakfire.git/commitdiff
packages: Truncate dependencies correctly at the markers
authorMichael Tremer <michael.tremer@ipfire.org>
Thu, 11 Feb 2021 15:22:29 +0000 (15:22 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Thu, 11 Feb 2021 15:22:29 +0000 (15:22 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/libpakfire/package.c

index d4ab636380e569870ec37147ebfdfb3fb29a763c..470c46f9ea34c3def4aced5af4b049eca7e83c56 100644 (file)
@@ -569,36 +569,35 @@ static void pakfire_package_add_relation(PakfirePackage pkg, Id type,
 }
 
 PAKFIRE_EXPORT PakfireRelationList pakfire_package_get_provides(PakfirePackage pkg) {
-       return pakfire_package_get_relationlist(pkg, SOLVABLE_PROVIDES, 0);
+       return pakfire_package_get_relationlist(pkg, SOLVABLE_PROVIDES, -SOLVABLE_FILEMARKER);
 }
 
 PAKFIRE_EXPORT void pakfire_package_set_provides(PakfirePackage pkg, PakfireRelationList relationlist) {
-       pakfire_package_set_relationlist(pkg, SOLVABLE_PROVIDES, relationlist, 0);
+       pakfire_package_set_relationlist(pkg, SOLVABLE_PROVIDES, relationlist, -SOLVABLE_FILEMARKER);
 }
 
 PAKFIRE_EXPORT void pakfire_package_add_provides(PakfirePackage pkg, PakfireRelation relation) {
-       pakfire_package_add_relation(pkg, SOLVABLE_PROVIDES, relation, 0);
+       pakfire_package_add_relation(pkg, SOLVABLE_PROVIDES, relation, -SOLVABLE_FILEMARKER);
 }
 
 PAKFIRE_EXPORT PakfireRelationList pakfire_package_get_prerequires(PakfirePackage pkg) {
-       #warning TODO
-       return NULL;
+       return pakfire_package_get_relationlist(pkg, SOLVABLE_REQUIRES, SOLVABLE_PREREQMARKER);
 }
 
 PAKFIRE_EXPORT void pakfire_package_set_prerequires(PakfirePackage pkg, PakfireRelationList relationlist) {
-       #warning TODO
+       pakfire_package_set_relationlist(pkg, SOLVABLE_REQUIRES, relationlist, SOLVABLE_PREREQMARKER);
 }
 
 PAKFIRE_EXPORT PakfireRelationList pakfire_package_get_requires(PakfirePackage pkg) {
-       return pakfire_package_get_relationlist(pkg, SOLVABLE_REQUIRES, 0);
+       return pakfire_package_get_relationlist(pkg, SOLVABLE_REQUIRES, -SOLVABLE_PREREQMARKER);
 }
 
 PAKFIRE_EXPORT void pakfire_package_set_requires(PakfirePackage pkg, PakfireRelationList relationlist) {
-       pakfire_package_set_relationlist(pkg, SOLVABLE_REQUIRES, relationlist, 0);
+       pakfire_package_set_relationlist(pkg, SOLVABLE_REQUIRES, relationlist, -SOLVABLE_PREREQMARKER);
 }
 
 PAKFIRE_EXPORT void pakfire_package_add_requires(PakfirePackage pkg, PakfireRelation relation) {
-       pakfire_package_add_relation(pkg, SOLVABLE_REQUIRES, relation, 0);
+       pakfire_package_add_relation(pkg, SOLVABLE_REQUIRES, relation, -SOLVABLE_PREREQMARKER);
 }
 
 PAKFIRE_EXPORT PakfireRelationList pakfire_package_get_conflicts(PakfirePackage pkg) {
@@ -727,10 +726,6 @@ static void pakfire_package_dump_add_line_relations(char** str, const char* key,
                        char* dep = pakfire_relation_str(relation);
                        pakfire_relation_unref(relation);
 
-                       // Stop here and don't list any files.
-                       if (strcmp(PAKFIRE_SOLVABLE_FILEMARKER, dep) == 0)
-                               break;
-
                        if (dep) {
                                pakfire_package_dump_add_line(str, (i == 0) ? key : "", dep);
                                free(dep);