FC wrote:
>From ae3dd41af891f059b0aa1cc888eed873684b5580 Mon Sep 17 00:00:00 2001
From: Francois Charette <[email protected]>
Date: Tue, 18 Aug 2009 22:10:56 +0200
Subject: [PATCH] makepkg -R: allow unpacking when pkgdir is empty

Also fixed some typos :)

When you "additional" part of your patch is as large as the patch itself, just make two patches. I have not reviewed the typo fixes.

 create_package() {
     if [ ! -d "$pkgdir" ]; then
-        error "$(gettext "Missing pkg/ directory.")"
-        plain "$(gettext "Aborting...")"
-        exit 1 # $E_MISSING_PKGDIR
+        if [ "$REPKG" -eq 1 -a -f
$PKGDEST/${pkg}-${pkgver}-${pkgrel}-${CARCH}${PKGEXT} ]; then
+            mkdir "$pkgdir" && cd "$pkgdir"
+            if ! bsdtar -xf
$PKGDEST/${pkg}-${pkgver}-${pkgrel}-${CARCH}${PKGEXT} ; then

Please keep test style consistent with the rest of the code base.

+                error "$(gettext "Failed to extract package for
repackaging")"
+                exit 1 # TODO: error code
+            fi
+            cd ..

Do not "cd .." as $startdir and $pkgdir are not always related like that. Especially with split packages.

+        else
+            error "$(gettext "Missing pkg/ directory.")"
+            plain "$(gettext "Aborting...")"
+            exit 1 # $E_MISSING_PKGDIR
+        fi
     fi

     cd "$pkgdir"

General comment:
Have you tested this with PKGBUILDs that define a package() function (including split packages)? These PKGBUILDs run the package() function when using the -R option. Without actually testing, I think this will fail.

Allan



Reply via email to