proc gethgversion { make clean make local || make local PURE=--pure setglobal HG = ""$PWD/hg"" $HG version > /dev/null || do { echo 'abort: hg version failed!'; exit 1 ; } setglobal hgversion = $[$HG version | sed -ne 's/.*(version \(.*\))$/\1/p] if echo $hgversion | grep -- '-' > /dev/null !2 > !1 { # nightly build case, version is like 1.3.1+250-20b91f91f9ca setglobal version = $[echo $hgversion | cut -d- -f1] setglobal release = $[echo $hgversion | cut -d- -f2 | sed -e 's/+.*//] } else { # official tag, version is like 1.3.1 setglobal version = $[echo $hgversion | sed -e 's/+.*//] setglobal release = ''0'' } }