summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbill-auger <mr.j.spam.me@gmail.com>2021-01-28 03:09:25 -0500
committerbill-auger <mr.j.spam.me@gmail.com>2021-01-28 03:09:25 -0500
commit4c113a73c2033b4cea8ac4692322dd932b9ca227 (patch)
treed25cf2e5f66c9246a44cad29be27c6d8c6f5daa0
parent0922194d592c338c315921f4970710e22b1a4d94 (diff)
sq mksums
-rwxr-xr-xscripts/makepkg.installed-wip32
1 files changed, 17 insertions, 15 deletions
diff --git a/scripts/makepkg.installed-wip b/scripts/makepkg.installed-wip
index f6724d2d..680a0a68 100755
--- a/scripts/makepkg.installed-wip
+++ b/scripts/makepkg.installed-wip
@@ -1017,27 +1017,29 @@ There is NO WARRANTY, to the extent permitted by law.\n")"
update_mksums() {
declare -r PKGBUILD="$(dirname $BUILDFILE)"/PKGBUILD
local padding
- local mksums
- local mksums_ind
+ local sums
+ local sums_ind
if [[ -f "$BUILDFILE" && -w "$BUILDFILE" ]] && # temporary mksource PKGBUILD
[[ -f "$PKGBUILD" && -w "$PKGBUILD" ]]; then # the real PKGBUILD
updpkgsums "$BUILDFILE"
source_safe "$BUILDFILE"
- for algo in ${known_hash_algos[*]}; do
- for array in mk${algo}sums{,_armv7h,_i686,_x86_64}; do
- if grep "^[[:blank:]]*$array=(" "$PKGBUILD" > /dev/null; then
- padding=$(printf "%${#array}s ")
- mksums_ind="${array}[@]"
- mksums="'$(sed "s| |'\n$padding'|g" <<<${!mksums_ind})'"
-
- awk -v array=$array \
- -v array_rx="^[ ]*${array}=" \
- -v mksums="$mksums" \
- '$0 ~ array_rx , /^[^#]*\)/ { m=NR } \
- NR == m + 1 && !!m { print array"=("mksums")" } \
- NR != m { print } ' \
+ # parse existing checksums arrays var-names
+ for algorithm in ${known_hash_algos[*]}; do
+ for array_var in mk${algorithm}sums{,_armv7h,_i686,_x86_64}; do
+ if grep "^[[:blank:]]*$array_var=(" "$PKGBUILD" > /dev/null; then
+ padding=$(printf "%${#array_var}s ")
+ sums_ind="${array_var}[@]"
+ sums="'$(sed "s| |'\n$padding'|g" <<<${!sums_ind})'"
+
+ # repalce each checksums array
+ awk -v array_var=$array_var \
+ -v array_rx="^[ ]*$array_var=" \
+ -v sums="$sums" \
+ '$0 ~ array_rx , /^[^#]*\)/ { m=NR } \
+ NR != m { print } \
+ NR == m + 1 && !!m { print array_var"=("sums")" } ' \
"$PKGBUILD" > "$PKGBUILD".tmp
cat -- "$PKGBUILD".tmp > "$PKGBUILD" ; rm "$PKGBUILD".tmp ;
fi