[pacman-dev] [PATCH] makepkg: Create a single-package packaging function

Allan McRae allan at archlinux.org
Fri Jan 4 03:11:43 UTC 2019


From: "Jan Alexander Steffens (heftig)" <jan.steffens at gmail.com>

Merge the similar code handling unsplit PKGBUILDs and individual
packages in a split PKGBUILD and make it a new function.

Signed-off-by: Allan McRae <allan at archlinux.org>
---

FYI: rebase of https://patchwork.archlinux.org/patch/639/ .FYI

Changed run_solo_packaging -> run_single_packaging because it seemed right.

 scripts/makepkg.sh.in | 31 +++++++++++++++----------------
 1 file changed, 15 insertions(+), 16 deletions(-)

diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
index 33b3a70e..e3a392d4 100644
--- a/scripts/makepkg.sh.in
+++ b/scripts/makepkg.sh.in
@@ -922,20 +922,25 @@ restore_package_variables() {
 	done
 }
 
+run_single_packaging() {
+	pkgdir="$pkgdirbase/$pkgname"
+	mkdir "$pkgdir"
+	if [[ -n $1 ]] || (( PKGFUNC )); then
+		run_package $1
+	fi
+	tidy_install
+	lint_package || exit $E_PACKAGE_FAILED
+	create_package
+}
+
 run_split_packaging() {
 	local pkgname_backup=("${pkgname[@]}")
 	backup_package_variables
 	for pkgname in ${pkgname_backup[@]}; do
-		pkgdir="$pkgdirbase/$pkgname"
-		mkdir "$pkgdir"
-		run_package $pkgname
-		tidy_install
-		lint_package || exit $E_PACKAGE_FAILED
-		create_package
+		run_single_packaging $pkgname
 		restore_package_variables
 	done
 	pkgname=("${pkgname_backup[@]}")
-	create_debug_package
 }
 
 usage() {
@@ -1337,18 +1342,12 @@ if (( INFAKEROOT )); then
 
 	chmod 755 "$pkgdirbase"
 	if (( ! SPLITPKG )); then
-		pkgdir="$pkgdirbase/$pkgname"
-		mkdir "$pkgdir"
-		if (( PKGFUNC )); then
-			run_package
-		fi
-		tidy_install
-		lint_package || exit $E_PACKAGE_FAILED
-		create_package
-		create_debug_package
+		run_single_packaging
 	else
 		run_split_packaging
 	fi
+	
+	create_debug_package
 
 	msg "$(gettext "Leaving %s environment.")" "fakeroot"
 	exit $E_OK
-- 
2.20.0


More information about the pacman-dev mailing list