]> git.ipfire.org Git - pakfire.git/commitdiff
build: Add function to call post-build scripts
authorMichael Tremer <michael.tremer@ipfire.org>
Tue, 25 May 2021 19:49:03 +0000 (19:49 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Tue, 25 May 2021 19:49:03 +0000 (19:49 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/libpakfire/build.c

index a6b1e728356335975f1c5be5125801e9db7caf63..420ec4466165c6f5b76304351961edcc30dc205c 100644 (file)
@@ -337,6 +337,29 @@ ERROR:
        return r;
 }
 
+static const char* post_build_scripts[] = {
+       "remove-static-libs",
+       "compress-man-pages",
+       NULL,
+};
+
+static int pakfire_build_run_post_build_scripts(Pakfire pakfire, const char* buildroot,
+               pakfire_execute_logging_callback logging_callback, void* data) {
+       // Set default arguments for build scripts
+       const char* args[] = {
+               buildroot, NULL
+       };
+
+       // Run them one by one
+       for (const char** script = post_build_scripts; *script; script++) {
+               int r = pakfire_build_run_script(pakfire, *script, args, logging_callback, data);
+               if (r)
+                       return r;
+       }
+
+       return 0;
+}
+
 PAKFIRE_EXPORT int pakfire_build(Pakfire pakfire, const char* path,
                const char* target, int flags,
                pakfire_execute_logging_callback logging_callback, void* data) {
@@ -405,13 +428,8 @@ PAKFIRE_EXPORT int pakfire_build(Pakfire pakfire, const char* path,
                }
        }
 
-       // Set default arguments for build scripts
-       const char* args[] = {
-               buildroot_rel, NULL
-       };
-
-       // Remove static libraries
-       r = pakfire_build_run_script(pakfire, "compress-man-pages", args, logging_callback, data);
+       // Run post build scripts
+       r = pakfire_build_run_post_build_scripts(pakfire, buildroot_rel, logging_callback, data);
        if (r)
                goto ERROR;