md5sum, sha1sum, etc, do not exist on BSD systems by default. Openssl is a good portable alternative. This also brings in a dependency for openssl. Closes FS#10530. Signed-off-by: Sebastian Nowicki <sebnow@gmail.com> --- scripts/makepkg.sh.in | 12 ++++++------ 1 files changed, 6 insertions(+), 6 deletions(-) diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in index 6e2f1ad..cb55dea 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -480,8 +480,8 @@ generate_checksums() { exit 1;; # $E_CONFIG_ERROR esac - if [ ! $(type -p "${integ}sum") ]; then - error "$(gettext "Cannot find the '%s' program.")" "${integ}sum" + if [ ! $(type -p "openssl") ]; then + error "$(gettext "Cannot find openssl.")" exit 1 # $E_MISSING_PROGRAM fi @@ -510,7 +510,7 @@ generate_checksums() { fi fi - local sum="$(${integ}sum "$file" | cut -d ' ' -f 1)" + local sum="$(openssl dgst -${integ} "$file" | awk '{print $2}')" [ $ct -gt 0 ] && echo -n "$indent" echo -n "'$sum'" ct=$(($ct+1)) @@ -532,8 +532,8 @@ check_checksums() { exit 1;; # $E_CONFIG_ERROR esac - if [ ! $(type -p "${integ}sum") ]; then - error "$(gettext "Cannot find the '%s' program.")" "${integ}sum" + if [ ! $(type -p "openssl") ]; then + error "$(gettext "Cannot find openssl.")" exit 1 # $E_MISSING_PROGRAM fi @@ -557,7 +557,7 @@ check_checksums() { fi fi - if echo "${integrity_sums[$idx]} $file" | ${integ}sum --status -c - &>/dev/null; then + if [ "${integrity_sums[$idx]}" = "$(openssl dgst -${integ} "$file" | awk '{print $2}')" ]; then echo "$(gettext "Passed")" >&2 else echo "$(gettext "FAILED")" >&2 -- 1.5.5.1