[pacman-dev] [PATCH] makepkg: propagate E_REMOVE_BUILD_DEPS

Alad Wenter alad at archlinux.org
Sun Jan 20 22:14:14 UTC 2019


remove_deps is called once, at the end of clean_up() before makepkg
exit. If remove_deps returns >0 (e.g. when pressing "n" in the resulting
prompt), the error is caught by the ERR signal handler. This in turns
sends SIGUSR1 to the process group, with resulting exit code 138.

In case remove_deps fails, this patch exits makepkg with E_REMOVE_DEPS
if there was no previous error (that is, EXIT_CODE equals E_OK).
Otherwise, makepkg exits with EXIT_CODE.
---
 scripts/makepkg.sh.in | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
index c81dc801..fd459532 100644
--- a/scripts/makepkg.sh.in
+++ b/scripts/makepkg.sh.in
@@ -176,7 +176,11 @@ clean_up() {
 		fi
 	fi
 
-	remove_deps
+	if ! remove_deps && (( EXIT_CODE == E_OK )); then
+	    exit $E_REMOVE_DEPS_FAILED
+	else
+	    exit $EXIT_CODE
+	fi
 }
 
 enter_fakeroot() {
-- 
2.20.1


More information about the pacman-dev mailing list