[pacman-dev] [PATCH 1/2] makepkg: move pacman calls to a function
Cedric Staniewski
cedric at gmx.ca
Fri Nov 6 15:20:12 EST 2009
Signed-off-by: Cedric Staniewski <cedric at gmx.ca>
---
scripts/makepkg.sh.in | 37 ++++++++++++++-----------------------
1 files changed, 14 insertions(+), 23 deletions(-)
diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
index fbcdc70..125b4e0 100644
--- a/scripts/makepkg.sh.in
+++ b/scripts/makepkg.sh.in
@@ -328,9 +328,20 @@ download_file() {
fi
}
+run_pacman() {
+ local ret=0
+ if (( ! ASROOT )); then
+ sudo pacman $PACMAN_OPTS "$@" || ret=$?
+ else
+ pacman $PACMAN_OPTS "$@" || ret=$?
+ fi
+ return $ret
+}
+
check_deps() {
[ $# -gt 0 ] || return
+ local ret=0
pmout=$(pacman $PACMAN_OPTS -T "$@")
ret=$?
if [ $ret -eq 127 ]; then #unresolved deps
@@ -356,15 +367,8 @@ handle_deps() {
if [ "$DEP_BIN" -eq 1 ]; then
# install missing deps from binary packages (using pacman -S)
msg "$(gettext "Installing missing dependencies...")"
- local ret=0
-
- if [ "$ASROOT" -eq 0 ]; then
- sudo pacman $PACMAN_OPTS -S --asdeps $deplist || ret=$?
- else
- pacman $PACMAN_OPTS -S --asdeps $deplist || ret=$?
- fi
- if [ $ret -ne 0 ]; then
+ if ! run_pacman -S --asdeps $deplist; then
error "$(gettext "Pacman failed to install missing dependencies.")"
exit 1 # TODO: error code
fi
@@ -422,15 +426,9 @@ remove_deps() {
done
msg "Removing installed dependencies..."
- local ret=0
- if [ "$ASROOT" -eq 0 ]; then
- sudo pacman $PACMAN_OPTS -Rns $deplist || ret=$?
- else
- pacman $PACMAN_OPTS -Rns $deplist || ret=$?
- fi
# Fixes FS#10039 - exit cleanly as package has built successfully
- if [ $ret -ne 0 ]; then
+ if ! run_pacman -Rns $deplist; then
warning "$(gettext "Failed to remove installed dependencies.")"
return 0
fi
@@ -1113,14 +1111,7 @@ install_package() {
fi
done
- local ret=0
- if [ "$ASROOT" -eq 0 ]; then
- sudo pacman $PACMAN_OPTS -U ${pkglist} || ret=$?
- else
- pacman $PACMAN_OPTS -U ${pkglist} || ret=$?
- fi
-
- if [ $ret -ne 0 ]; then
+ if ! run_pacman -U $pkglist; then
warning "$(gettext "Failed to install built package(s).")"
return 0
fi
--
1.6.5.2
More information about the pacman-dev
mailing list