From 17e8d0c4a848f1364a5e9cd9c7e061f277bbc644 Mon Sep 17 00:00:00 2001 From: malc Date: Mon, 9 Apr 2018 20:09:55 +0300 Subject: [PATCH] Digest better --- build.sh | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/build.sh b/build.sh index 7d7b67b..bd35a86 100755 --- a/build.sh +++ b/build.sh @@ -18,9 +18,8 @@ fi tstart=$(now) vecho=${vecho-:} -command -v md5sum >/dev/null || { - alias sum='sum 2>/dev/null' -} && alias sum='md5sum 2>/dev/null' +command -v md5sum >/dev/null || true && alias sum=md5sum +digest() { sum "$@" 2>/dev/null | while read h _; do printf $h; done; } partmsg() { test $? -eq 0 && msg="ok" || msg="ko" @@ -77,7 +76,7 @@ bocaml1() { done } cmd="ocamlc $(oflags $o) -c -o $o $s" - keycmd="sum $o $s" + keycmd="digest $o $s" grep -q "$o" $outd/ordered || { echo "$o" >>$outd/ordered isfresh "$o" "$cmd$(eval $keycmd)" || { @@ -108,7 +107,7 @@ bocamlc() { s=$srcd/${1%.o}.c cmd="ocamlc -ccopt \"$(cflags $o) -MMD -MF $o.dep -MT_ -o $o\" $s" test -r $o.dep && read _ d <$o.dep || d= - keycmd='sum $o $d' + keycmd='digest $o $d' isfresh "$o" "$cmd$(eval $keycmd)" || { printf "%s -> %s\n" "${s#$srcd/}" "$o" eval "$cmd" @@ -122,7 +121,7 @@ bobjc() { s=$srcd/${1%.o}.m cmd="$mcomp $(mflags $o) -MMD -MF $o.dep -MT_ -c -o $o $s" test -r $o.dep && read _ d <$o.dep || d= - keycmd='sum $o $d' + keycmd='digest $o $d' isfresh "$o" "$cmd$(eval $keycmd)" || { printf "%s -> %s\n" "${s#$srcd/}" "$o" eval "$cmd" @@ -153,7 +152,7 @@ EOF ver=$(cd $srcd && git describe --tags --dirty) || echo unknown cmd="mkhelp >$outd/help.ml" -keycmd="sum $srcd/KEYS; echo $ver" +keycmd="digest $srcd/KEYS; echo $ver" isfresh "$outd/help.ml" '$cmd$(eval keycmd)$ver' || { eval $cmd echo "k='$cmd$(eval $keycmd)$ver'" >$outd/help.ml.past @@ -188,7 +187,7 @@ done ord=$(echo $(eval grep -v \.cmi $outd/ordered)) cmd="ocamlc -custom $libs -o $outd/llpp $cobjs $ord" cmd="$cmd $globjs -cclib \"$clibs\"" -keycmd="sum $outd/llpp $outd/link.o $ord" +keycmd="digest $outd/llpp $outd/link.o $ord" isfresh "$outd/llpp" "$cmd$(eval $keycmd)" || { echo linking $outd/llpp eval $cmd || echo "$cmd failed" -- 2.11.4.GIT