]> git.ipfire.org Git - people/ric9/pakfire.git/commitdiff
stripper: Show progress bar when stripping files
authorMichael Tremer <michael.tremer@ipfire.org>
Sun, 29 Dec 2024 18:42:16 +0000 (18:42 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Sun, 29 Dec 2024 18:42:16 +0000 (18:42 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/libpakfire/build.c
src/libpakfire/compress.c
src/libpakfire/filelist.c
src/libpakfire/include/pakfire/filelist.h
src/libpakfire/linter.c
src/libpakfire/package.c
src/libpakfire/packager.c
src/libpakfire/stripper.c

index 169b7627e18dbfea78f992349eecb10b97e57091..95d199f51c7ed05ab4533fd965c94251ebd746e4 100644 (file)
@@ -639,7 +639,7 @@ static int pakfire_build_package_mark_config_files(struct pakfire_build* build,
                goto ERROR;
 
        // Walk through the filelist
-       r = pakfire_filelist_walk(filelist, __pakfire_build_package_mark_config_files, configfiles, 0);
+       r = pakfire_filelist_walk(filelist, __pakfire_build_package_mark_config_files, configfiles, 0, NULL);
        if (r < 0)
                goto ERROR;
 
@@ -1102,7 +1102,7 @@ static int pakfire_build_post_process_files(struct pakfire_build* build,
 
        // Find all files that need to be removed
        r = pakfire_filelist_walk(filelist, callback, removees,
-               (flags & PAKFIRE_BUILD_SHOW_PROGRESS) ? PAKFIRE_FILELIST_SHOW_PROGRESS : 0);
+               (flags & PAKFIRE_BUILD_SHOW_PROGRESS) ? PAKFIRE_FILELIST_SHOW_PROGRESS : 0, NULL);
        if (r)
                goto ERROR;
 
@@ -1892,7 +1892,7 @@ static int pakfire_build_check_unpackaged_files(struct pakfire_build* build) {
        if (!pakfire_filelist_is_empty(filelist)) {
                ERROR(build->ctx, "Unpackaged files found:\n");
 
-               r = pakfire_filelist_walk(filelist, __pakfire_build_unpackaged_file, NULL, 0);
+               r = pakfire_filelist_walk(filelist, __pakfire_build_unpackaged_file, NULL, 0, NULL);
                if (r)
                        goto ERROR;
 
index 22f6144b6109efc41950ca37636faea76357e08c..7900a027129814bac7527cf183340c3ae4efee62 100644 (file)
@@ -755,7 +755,7 @@ int pakfire_compress(struct pakfire* pakfire, struct archive* archive,
        archive_entry_linkresolver_set_strategy(data.linkresolver, archive_format(archive));
 
        // Walk through the entire filelist
-       r = pakfire_filelist_walk(filelist, __pakfire_compress, &data, 0);
+       r = pakfire_filelist_walk(filelist, __pakfire_compress, &data, 0, NULL);
        if (r)
                goto ERROR;
 
index 6a5df68c68628f1f56e2492283ac49ebf32f8dfd..6b97d8109caa05474f724507a68c714e7453b4b7 100644 (file)
@@ -223,7 +223,7 @@ static int __pakfire_filelist_remove_one(
 
 int pakfire_filelist_remove_all(
                struct pakfire_filelist* list, struct pakfire_filelist* removees) {
-       return pakfire_filelist_walk(removees, __pakfire_filelist_remove_one, list, 0);
+       return pakfire_filelist_walk(removees, __pakfire_filelist_remove_one, list, 0, NULL);
 }
 
 static int pakfire_filelist_match_patterns(const char* path,
@@ -434,7 +434,7 @@ int pakfire_filelist_contains(struct pakfire_filelist* list, const char* pattern
 }
 
 int pakfire_filelist_walk(struct pakfire_filelist* list,
-               pakfire_filelist_walk_callback callback, void* data, int flags) {
+               pakfire_filelist_walk_callback callback, void* data, int flags, const char* title) {
        struct pakfire_progress* progress = NULL;
        int r = 0;
 
@@ -445,8 +445,12 @@ int pakfire_filelist_walk(struct pakfire_filelist* list,
                if (r)
                        goto ERROR;
 
+               // Set a default title
+               if (!title)
+                       title = _("Processing Files...");
+
                // Set title
-               r = pakfire_progress_set_title(progress, "%s", _("Processing Files..."));
+               r = pakfire_progress_set_title(progress, "%s", title);
                if (r)
                        goto ERROR;
 
@@ -499,7 +503,7 @@ static int __pakfire_filelist_dump(
 }
 
 int pakfire_filelist_dump(struct pakfire_filelist* list, int flags) {
-       return pakfire_filelist_walk(list, __pakfire_filelist_dump, &flags, 0);
+       return pakfire_filelist_walk(list, __pakfire_filelist_dump, &flags, 0, NULL);
 }
 
 /*
@@ -591,5 +595,5 @@ static int __pakfire_filelist_matches_class(
        Returns true if any file on the list matches class
 */
 int pakfire_filelist_matches_class(struct pakfire_filelist* list, int class) {
-       return pakfire_filelist_walk(list, __pakfire_filelist_matches_class, &class, 0);
+       return pakfire_filelist_walk(list, __pakfire_filelist_matches_class, &class, 0, NULL);
 }
index 4f1d933011edbc55e138128c5773e7752abe8576..8d47a20e2f27e5c005ef53b9f7c51131fc83e97b 100644 (file)
@@ -68,7 +68,7 @@ enum pakfire_filelist_walk_flags {
 };
 
 int pakfire_filelist_walk(struct pakfire_filelist* list,
-       pakfire_filelist_walk_callback callback, void* data, int flags);
+       pakfire_filelist_walk_callback callback, void* data, int flags, const char* title);
 int pakfire_filelist_dump(struct pakfire_filelist* list, int flags);
 
 int pakfire_filelist_verify(struct pakfire_filelist* list, struct pakfire_filelist* errors);
index 5bc14ac4b4d35407966d4c8c9dedd8fc2daa648f..8606b2a9911b0c1170763fef59764b65c65fbc55 100644 (file)
@@ -583,7 +583,7 @@ static int pakfire_linter_dump(struct pakfire_linter* linter) {
                return r;
 
        // Show package results
-       r = pakfire_filelist_walk(linter->filelist, __pakfire_linter_dump_file, linter, 0);
+       r = pakfire_filelist_walk(linter->filelist, __pakfire_linter_dump_file, linter, 0, NULL);
        if (r < 0)
                return r;
 
index 09f40002c2ffb9febf2fa4c14a5e4b41b1cd5272..05eda8f8871400ab2f188fb9eb5436e192f07c7f 100644 (file)
@@ -1991,7 +1991,7 @@ static int __pakfire_package_set_filelist(
 
 PAKFIRE_EXPORT int pakfire_package_set_filelist(
                struct pakfire_package* pkg, struct pakfire_filelist* filelist) {
-       return pakfire_filelist_walk(filelist, __pakfire_package_set_filelist, pkg, 0);
+       return pakfire_filelist_walk(filelist, __pakfire_package_set_filelist, pkg, 0, NULL);
 }
 
 int pakfire_package_set_filelist_from_string(struct pakfire_package* pkg, const char* files) {
@@ -2168,7 +2168,7 @@ static int pakfire_package_add_json_filelist(
        }
 
        // Walk through the filelist
-       r = pakfire_filelist_walk(filelist, __pakfire_package_add_json_filelist, object, 0);
+       r = pakfire_filelist_walk(filelist, __pakfire_package_add_json_filelist, object, 0, NULL);
        if (r)
                goto ERROR;
 
index e910000af26f928dddaa6969c7e50ff7cac5c858..f86410b45c23e81d910c665b331c8a63b07a1b70 100644 (file)
@@ -686,7 +686,7 @@ static int __pakfire_packager_add_files(
 int pakfire_packager_add_files(
                struct pakfire_packager* packager, struct pakfire_filelist* filelist) {
        // Add all files on the filelist
-       return pakfire_filelist_walk(filelist, __pakfire_packager_add_files, packager, 0);
+       return pakfire_filelist_walk(filelist, __pakfire_packager_add_files, packager, 0, NULL);
 }
 
 int pakfire_packager_add_scriptlet(struct pakfire_packager* packager,
index 7e6ec1af41856379305263405bd48254a112a9bb..a9e31376fd1df494ca5af0b93a78aee0362bc268 100644 (file)
@@ -27,6 +27,7 @@
 #include <elfutils/libdw.h>
 
 #include <pakfire/filelist.h>
+#include <pakfire/i18n.h>
 #include <pakfire/pakfire.h>
 #include <pakfire/path.h>
 #include <pakfire/string.h>
@@ -151,7 +152,7 @@ static int pakfire_stripper_scan(struct pakfire_stripper* stripper) {
                goto ERROR;
 
        // Walk through all files to find ELF files
-       r = pakfire_filelist_walk(filelist, pakfire_stripper_find_elf, stripper, 0);
+       r = pakfire_filelist_walk(filelist, pakfire_stripper_find_elf, stripper, 0, NULL);
        if (r < 0)
                goto ERROR;
 
@@ -364,7 +365,8 @@ static int __pakfire_stripper_run(struct pakfire_ctx* ctx, void* data) {
        int r;
 
        // Copy sources
-       r = pakfire_filelist_walk(stripper->filelist, pakfire_stripper_copy_sources, stripper, 0);
+       r = pakfire_filelist_walk(stripper->filelist, pakfire_stripper_copy_sources,
+                       stripper, PAKFIRE_FILELIST_SHOW_PROGRESS, _("Stripping Files..."));
        if (r < 0)
                return r;