build: generate_package_index: use 'sha256sum' in favor of 'openssl sha256'
openssl is not available on all systems (or maybe not the implementation of sha256), but maybe sha256sum. use openssl if 'sha256sum' is not installed. Signed-off-by: Bastian Bittorf <bitt...@bluebottle.com> --- scripts/ipkg-make-index.sh | 14 +++++++++++++- 1 files changed, 13 insertions(+), 1 deletions(-) diff --git a/scripts/ipkg-make-index.sh b/scripts/ipkg-make-index.sh index a2f3dea..07c97f0 100755 --- a/scripts/ipkg-make-index.sh +++ b/scripts/ipkg-make-index.sh @@ -10,6 +10,18 @@ fi which md5sum >/dev/null 2>&1 || alias md5sum=md5 +if which sha256sum >/dev/null; then + get_hash_sha256() + { + sha256sum "$1" | cut -d' ' -f1 + } +else + get_hash_sha256() + { + openssl sha256 "$1" | cut -d' ' -f2 + } +fi + for pkg in `find $pkg_dir -name '*.ipk' | sort`; do name="${pkg##*/}" name="${name%%_*}" @@ -18,7 +30,7 @@ for pkg in `find $pkg_dir -name '*.ipk' | sort`; do echo "Generating index for package $pkg" >&2 file_size=$(ls -l $pkg | awk '{print $5}') md5sum=$(md5sum $pkg | awk '{print $1}') - sha256sum=$(openssl sha256 $pkg | awk '{print $2}') + sha256sum=$(get_hash_sha256 $pkg) # Take pains to make variable value sed-safe sed_safe_pkg=`echo $pkg | sed -e 's/^\.\///g' -e 's/\\//\\\\\\//g'` tar -xzOf $pkg ./control.tar.gz | tar xzOf - ./control | sed -e "s/^Description:/Filename: $sed_safe_pkg\\ -- 1.7.2.5 _______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel