summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2012-02-04 21:35:41 -0800
committerPaul Phillips <paulp@improving.org>2012-02-04 21:35:41 -0800
commit3b69e08867428171abf9ead416fe32b7bc77f603 (patch)
tree5821e8967dfa97d82443d2bc5f57e586fc42a110 /tools
parentaf944bafa9751273e53114ce423e1e2c306c9286 (diff)
parent69c2eb5ad21848ab6b326c71c157288432e6a9f5 (diff)
downloadscala-3b69e08867428171abf9ead416fe32b7bc77f603.tar.gz
scala-3b69e08867428171abf9ead416fe32b7bc77f603.tar.bz2
scala-3b69e08867428171abf9ead416fe32b7bc77f603.zip
Merge branch 'fix-script'
Conflicts: tools/get-scala-revision
Diffstat (limited to 'tools')
-rwxr-xr-xtools/get-scala-revision31
1 files changed, 18 insertions, 13 deletions
diff --git a/tools/get-scala-revision b/tools/get-scala-revision
index 8441b29070..8747fdc3fb 100755
--- a/tools/get-scala-revision
+++ b/tools/get-scala-revision
@@ -11,26 +11,31 @@
[[ $# -eq 0 ]] || cd "$1"
ensure_tag () {
- # v2.10.0-M1
- fallback=58cb15c40d
- [[ -n $(git tag -l v2.10.0-M1) ]] || {
- git tag -a -m "generated by get-scala-revision" v2.10.0-M1 $fallback
+ sha=$1
+ rev=$2
+
+ [[ -n $(git tag -l $rev) ]] || {
+ git tag -a -m "generated by get-scala-revision" $rev $sha
}
}
-ensure_tag
+
+# Ensure some baseline tags are present so if this repository's
+# tags are screwed up or stale, we should still have a reference
+# point for a build string.
+ensure_tag 58cb15c40d v2.10.0-M1
+ensure_tag 29f3eace1e v2.9.1
+ensure_tag b0d78f6b9c v2.8.2
# the closest tag, obtained separately because we have to
# reconstruct the string around the padded distance.
-tag=$(git describe --match 'v2*' --abbrev=0)
+tag=$(git describe --tags --match 'v2*' --abbrev=0)
-# the full string - padding correctness depends on abbrev=10.
-described=$(git describe --match 'v2*' --abbrev=10)
+# printf %016s is not portable for 0-padding, has to be a digit.
+# so we're stuck disassembling it.
+described=$(git describe --tags --match 'v2*' --abbrev=10)
suffix="${described##${tag}-}"
counter=$(echo $suffix | cut -d - -f 1)
hash=$(echo $suffix | cut -d - -f 2)
-# 016 is rocket-surgically-calibrated to pad the distance from the
-# tag to the current commit into a 4-digit number - since maven
-# will be treating this as a string, the ide depends on
-# 10 being greater than 9 (thus 0010 and 00009.)
-printf "%s-%04d-%10s-%s\n" "$tag" "$counter" "$hash" $(date "+%Y-%m-%d")
+# v2.10.0-M1-0098-g6f1c486d0b-2012-02-01
+printf "%s-%04d-%s-%s\n" "$tag" "$counter" "$hash" $(date "+%Y-%m-%d")