skip expensive hash-object calls where not needed

This commit is contained in:
Rudolf Polzer 2010-09-06 09:11:34 +02:00
parent d1f465f3ec
commit fc00291a3c
2 changed files with 12 additions and 3 deletions

1
all
View File

@ -1177,6 +1177,7 @@ case "$cmd" in
fi
done
fi
verbose export git_src_repo="$d0/$src" # skip hash-object
verbose "$SELF" release-buildpk3-transform-$transform "Xonotic/temp"
verbose zip -9yr "../../$dst" .
verbose cd ../..

View File

@ -12,6 +12,7 @@ set -e
: ${do_ogg:=false}
: ${ogg_qual:=1}
: ${del_src:=false}
: ${git_src_repo:=}
me=$0
case "$me" in
@ -47,9 +48,16 @@ cached()
if [ x"$infile1/../$infile2" = x"$lastinfiles" ]; then
sum=$lastinfileshash
else
sum=`git hash-object "$infile1"`
if [ -n "$infile2" ]; then
sum=$sum`git hash-object "$infile2"`
if [ -n "$git_src_repo" ]; then
sum=`( cd "$git_src_repo"; git rev-parse HEAD:"$infile1" )`
if [ -n "$infile2" ]; then
sum=`( cd "$git_src_repo"; git rev-parse HEAD:"$infile2" )`
fi
else
sum=`git hash-object "$infile1"`
if [ -n "$infile2" ]; then
sum=$sum`git hash-object "$infile2"`
fi
fi
lastinfileshash=$sum
fi