summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorStefan Zeiger <szeiger@novocode.com>2016-07-22 18:19:45 +0200
committerStefan Zeiger <szeiger@novocode.com>2016-08-23 16:05:06 +0200
commite2b6c7b608b82fca5343f6d09236c2b48b5d824d (patch)
tree3f3b8b6b0261bf5170143147047a2fa791bf1312 /scripts
parent74702078b14ccba1710dd714c1723bef879c46a0 (diff)
downloadscala-e2b6c7b608b82fca5343f6d09236c2b48b5d824d.tar.gz
scala-e2b6c7b608b82fca5343f6d09236c2b48b5d824d.tar.bz2
scala-e2b6c7b608b82fca5343f6d09236c2b48b5d824d.zip
Switch remaining uses of ant over to sbt
- Modify `tools/scaladoc-diff` to use sbt instead of ant. - Move `stability-test.sh` from `tools` to `scripts`. With the new build process without separate `locker` and `strap` stages, it doesn’t make sense to call this script without first setting up the proper test environment in a CI build. - Replace the use of `build.number` in `bootstrap` with a new `SHA-NIGHTLY` mode for `baseVersionSuffix`. - Make `partest` call sbt instead of ant for initializing the classpath and use the new classpath location (`quick` instead of `pack`).
Diffstat (limited to 'scripts')
-rw-r--r--scripts/jobs/integrate/bootstrap9
-rw-r--r--scripts/stability-test.sh29
2 files changed, 34 insertions, 4 deletions
diff --git a/scripts/jobs/integrate/bootstrap b/scripts/jobs/integrate/bootstrap
index 86ba67bd8b..bd509061b7 100644
--- a/scripts/jobs/integrate/bootstrap
+++ b/scripts/jobs/integrate/bootstrap
@@ -327,9 +327,10 @@ determineScalaVersion() {
if [ -z "$scalaTag" ]
then
echo "No tag found, building nightly snapshot."
- parseScalaProperties "build.number"
- SCALA_VER_BASE="$version_major.$version_minor.$version_patch"
- SCALA_VER_SUFFIX="-$(git rev-parse --short HEAD)-nightly"
+ $SBT_CMD $sbtArgs 'set baseVersionSuffix in Global := "SHA-NIGHTLY"' generateBuildCharacterPropertiesFile
+ parseScalaProperties "buildcharacter.properties"
+ SCALA_VER_BASE="$maven_version_base"
+ SCALA_VER_SUFFIX="$maven_version_suffix"
SCALADOC_SOURCE_LINKS_VER=$(git rev-parse HEAD)
# TODO: publish nightly snapshot using this script - currently it's a separate jenkins job still running at EPFL.
@@ -540,7 +541,7 @@ bootstrap() {
dist/mkQuick
mv build/quick build/strap
mv quick1 build/quick
- tools/stability-test.sh
+ $scriptsDir/stability-test.sh
# TODO: create PR with following commit (note that release will have been tagged already)
# git commit versions.properties -m"Bump versions.properties for $SCALA_VER."
diff --git a/scripts/stability-test.sh b/scripts/stability-test.sh
new file mode 100644
index 0000000000..f017ac0842
--- /dev/null
+++ b/scripts/stability-test.sh
@@ -0,0 +1,29 @@
+#!/usr/bin/env bash
+#
+
+declare failed
+
+echo "Comparing build/quick/classes and build/strap/classes"
+for dir in library reflect compiler; do
+ # feel free to replace by a more elegant approach -- don't know how
+ if diff -rw -x '*.css' \
+ -x '*.custom' \
+ -x '*.gif' \
+ -x '*.js' \
+ -x '*.layout' \
+ -x '*.png' \
+ -x '*.properties' \
+ -x '*.tmpl' \
+ -x '*.tooltip' \
+ -x '*.txt' \
+ -x '*.xml' \
+ build/{quick,strap}/classes/$dir
+ then
+ classes=$(find build/quick/classes/$dir -name '*.class' | wc -l)
+ printf "%8s: %5d classfiles verified identical\n" $dir $classes
+ else
+ failed=true
+ fi
+done
+
+[[ -z $failed ]] || exit 127