summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--scripts/libmakepkg/integrity/generate_signature.sh.in34
-rw-r--r--scripts/makepkg.sh.in9
2 files changed, 36 insertions, 7 deletions
diff --git a/scripts/libmakepkg/integrity/generate_signature.sh.in b/scripts/libmakepkg/integrity/generate_signature.sh.in
index 060ae344..6d65d82d 100644
--- a/scripts/libmakepkg/integrity/generate_signature.sh.in
+++ b/scripts/libmakepkg/integrity/generate_signature.sh.in
@@ -27,11 +27,10 @@ source "$LIBRARY/util/message.sh"
create_signature() {
if [[ $SIGNPKG != 'y' ]]; then
- return
+ return 0
fi
local ret=0
local filename="$1"
- msg "$(gettext "Signing package...")"
local SIGNWITHKEY=""
if [[ -n $GPGKEY ]]; then
@@ -42,8 +41,37 @@ create_signature() {
if (( ! ret )); then
- msg2 "$(gettext "Created signature file %s.")" "$filename.sig"
+ msg2 "$(gettext "Created signature file %s.")" "${filename##*/}.sig"
else
warning "$(gettext "Failed to sign package file.")"
fi
+
+ return $ret
+}
+
+create_package_signatures() {
+ local pkgarch pkg_file
+ local pkgname_backup=("${pkgname[@]}")
+ local fullver=$(get_full_version)
+
+ msg "$(gettext "Signing package(s)...")"
+
+ for pkgname in ${pkgname_backup[@]}; do
+ pkgarch=$(get_pkg_arch $pkgname)
+ pkg_file="$PKGDEST/${pkgname}-${fullver}-${pkgarch}${PKGEXT}"
+
+ create_signature "$pkg_file"
+ done
+
+ # check if debug package needs a signature
+ if ! check_option "debug" "y" || ! check_option "strip" "y"; then
+ return
+ fi
+
+ pkgname=$pkgbase-@DEBUGSUFFIX@
+ pkgarch=$(get_pkg_arch)
+ pkg_file="$PKGDEST/${pkgname}-${fullver}-${pkgarch}${PKGEXT}"
+ create_signature "$pkg_file"
+
+ pkgname=("${pkgname_backup[@]}")
}
diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
index be0ea72e..43c7e328 100644
--- a/scripts/makepkg.sh.in
+++ b/scripts/makepkg.sh.in
@@ -769,8 +769,6 @@ create_package() {
error "$(gettext "Failed to create package file.")"
exit 1 # TODO: error code
fi
-
- create_signature "$pkg_file"
}
create_debug_package() {
@@ -868,8 +866,6 @@ create_srcpackage() {
exit 1 # TODO: error code
fi
- create_signature "$pkg_file"
-
cd_safe "${startdir}"
rm -rf "${srclinks}"
}
@@ -1625,6 +1621,9 @@ if (( SOURCEONLY )); then
enter_fakeroot
+ msg "$(gettext "Signing package...")"
+ create_signature "$SRCPKGDEST/${pkgbase}-${fullver}${SRCEXT}"
+
msg "$(gettext "Source package created: %s")" "$pkgbase ($(date))"
exit 0
fi
@@ -1716,6 +1715,8 @@ else
fi
enter_fakeroot
+
+ create_package_signatures
fi
# if inhibiting archive creation, go no further