From: Michael Tremer Date: Tue, 28 Jan 2025 15:04:11 +0000 (+0000) Subject: build: Drop old code that copies the packages after build X-Git-Tag: 0.9.30~320 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=dde05861132dae901da3acc4c31f99513ac1c77a;p=pakfire.git build: Drop old code that copies the packages after build This is broken and needs to be replaced by something more custom. Signed-off-by: Michael Tremer --- diff --git a/src/pakfire/build.c b/src/pakfire/build.c index 46146e5b..33fd64fe 100644 --- a/src/pakfire/build.c +++ b/src/pakfire/build.c @@ -2304,86 +2304,6 @@ static int pakfire_build_post_check(struct pakfire_build* build) { return 0; } -static int pakfire_build_copy_package(struct pakfire_ctx* ctx, - struct pakfire_package* pkg, void* data) { - struct pakfire_archive* archive = NULL; - const char* target = data; - char path[PATH_MAX]; - int r; - - // Check inputs - if (!target) - return -EINVAL; - - // Fetch NEVRA - const char* nevra = pakfire_package_get_string(pkg, PAKFIRE_PKG_NEVRA); - - // Fetch the package filename - const char* filename = pakfire_package_get_string(pkg, PAKFIRE_PKG_FILENAME); - if (!filename) - return -EINVAL; - - // Format the destination path - r = pakfire_string_format(path, "%s/%s", target, filename); - if (r < 0) - goto ERROR; - - // Open the archive - archive = pakfire_package_get_archive(pkg); - if (!archive) { - r = 1; - goto ERROR; - } - - // Copy it to its destination - r = pakfire_archive_link_or_copy(archive, path); - if (r < 0) { - ERROR(ctx, "Could not write %s to %s: %s\n", nevra, path, strerror(-r)); - goto ERROR; - } - -ERROR: - if (archive) - pakfire_archive_unref(archive); - - return r; -} - -static int pakfire_build_copy_packages(struct pakfire_build* build) { - struct pakfire_repo* local = NULL; - int r = 0; - - DEBUG(build->ctx, "Copying built packages\n"); - - // Fetch local repository - local = pakfire_get_repo(build->pakfire, PAKFIRE_REPO_LOCAL); - - // Copy all packages to the target path - if (*build->target) { - r = pakfire_repo_walk_packages(build->repo, - pakfire_build_copy_package, build->target, 0); - if (r < 0) - goto ERROR; - } - - // If we have a local repository, we copy all packages to it - if (local) { - const char* path = pakfire_repo_get_path(local); - if (path) { - r = pakfire_repo_walk_packages(build->repo, - pakfire_build_copy_package, (char*)path, 0); - if (r < 0) - goto ERROR; - } - } - -ERROR: - if (local) - pakfire_repo_unref(local); - - return r; -} - static int pakfire_build_init(struct pakfire_build* build, struct pakfire_package* package, const char** packages) { struct pakfire_transaction* transaction = NULL;