mirror of
https://codeberg.org/libreboot/lbmk.git
synced 2026-03-25 13:29:03 +02:00
xbmk: use sbase sha512sum, not host sha512sum
the --status flag seems to be a GNUism as stated in the previous commit, i import sbase suckless now, so as to have a consistent implementation of sha512sum. this ensures that its output is reliable, when i'm using the output of this command within backticks. Signed-off-by: Leah Rowe <leah@libreboot.org>
This commit is contained in:
@@ -313,7 +313,8 @@ bad_checksum()
|
||||
return 0
|
||||
fi
|
||||
|
||||
csum="$(x_ sha512sum "$2" | awk '{print $1}')" || \
|
||||
build_sbase
|
||||
csum="$(x_ "$sha512sum" "$2" | awk '{print $1}')" || \
|
||||
err "!sha512 '$2' $1" bad_checksum "$@"
|
||||
|
||||
if [ "$csum" = "$1" ]; then
|
||||
|
||||
@@ -35,11 +35,14 @@ checkvarschk=""
|
||||
is_child=""
|
||||
basetmp=""
|
||||
|
||||
sha512sum="util/sbase/sha512sum"
|
||||
|
||||
xbmk_init()
|
||||
{
|
||||
xbmkpwd="`pwd || err "Cannot generate PWD"`" || err "!" xbmk_init "$@"
|
||||
xbmklock="$xbmkpwd/lock"
|
||||
basetmp="$xbmkpwd/xbmkwd"
|
||||
sha512sum="$xbmkpwd/util/sbase/sha512sum"
|
||||
|
||||
if [ $# -gt 0 ] && [ "$1" = "dependencies" ]; then
|
||||
x_ xbmkpkg "$@"
|
||||
|
||||
@@ -162,6 +162,13 @@ unpad_one_byte()
|
||||
x_ mv "$unpaddedfile" "$1"
|
||||
}
|
||||
|
||||
build_sbase()
|
||||
{
|
||||
if [ ! -f "$sha512sum" ]; then
|
||||
x_ make -C "$xbmkpwd/util/sbase"
|
||||
fi
|
||||
}
|
||||
|
||||
fx_()
|
||||
{
|
||||
xchk fx_ "$@"
|
||||
|
||||
@@ -442,11 +442,13 @@ project_up_to_date()
|
||||
"$@"
|
||||
fi
|
||||
|
||||
fx_ "x_ sha512sum" find "$@" -type f -not -path "*/.git*/*" | awk \
|
||||
'{print $1}' > "$xbtmp/tmp.hash" || err "!h $project $hashdir" \
|
||||
build_sbase
|
||||
fx_ "x_ util/sbase/sha512sum" find "$@" -type f -not -path \
|
||||
"*/.git*/*" | awk '{print $1}' > "$xbtmp/tmp.hash" || \
|
||||
err "!h $project $hashdir" \
|
||||
"project_up_to_date" "$hashdir" "$hashname" "$badhashvar" "$@"
|
||||
|
||||
hash="$(x_ sha512sum "$xbtmp/tmp.hash" | awk '{print $1}' || \
|
||||
hash="$(x_ "$sha512sum" "$xbtmp/tmp.hash" | awk '{print $1}' || \
|
||||
err)" || err "$hashname: Can't read sha512 of '$xbtmp/tmp.hash'" \
|
||||
"project_up_to_date" "$hashdir" "$hashname" "$badhashvar" "$@"
|
||||
|
||||
|
||||
@@ -602,11 +602,13 @@ prep()
|
||||
|
||||
mksha512()
|
||||
{
|
||||
build_sbase
|
||||
|
||||
if [ "${1%/*}" != "$1" ]; then
|
||||
x_ cd "${1%/*}"
|
||||
fi
|
||||
|
||||
x_ sha512sum ./"${1##*/}" >> "$2" || \
|
||||
x_ "$sha512sum" ./"${1##*/}" >> "$2" || \
|
||||
err "!sha512sum \"$1\" > \"$2\"" "mksha512" "$@"
|
||||
}
|
||||
|
||||
@@ -711,11 +713,13 @@ vfile()
|
||||
# must be called from a subshell
|
||||
check_vendor_hashes()
|
||||
{
|
||||
build_sbase
|
||||
|
||||
x_ cd "$tmpromdir"
|
||||
|
||||
if [ "$has_hashes" != "n" ] && [ "$nuke" != "nuke" ]; then
|
||||
sha512sum --status -c "$hashfile" || x_ sha1sum --status \
|
||||
-c "$hashfile"
|
||||
( x_ "$sha512sum" -c "$hashfile" ) || \
|
||||
x_ sha1sum -c "$hashfile"
|
||||
fi
|
||||
|
||||
x_ rm -f "$hashfile"
|
||||
|
||||
Reference in New Issue
Block a user