summaryrefslogtreecommitdiff
path: root/build.xml
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2012-01-30 13:40:54 -0800
committerPaul Phillips <paulp@improving.org>2012-01-30 13:45:18 -0800
commit263aa2ead1f599f48b218027eb9550745fef43f1 (patch)
treeabc26dbd8aa290d589bb21745887987f70160c4d /build.xml
parent366fae9741283efc08edb32378f56a08417ff35a (diff)
downloadscala-263aa2ead1f599f48b218027eb9550745fef43f1.tar.gz
scala-263aa2ead1f599f48b218027eb9550745fef43f1.tar.bz2
scala-263aa2ead1f599f48b218027eb9550745fef43f1.zip
Have ant notice starr out of date.
If your compiler .desired.sha1 is newer than the jar, it will go download it.
Diffstat (limited to 'build.xml')
-rw-r--r--build.xml15
1 files changed, 13 insertions, 2 deletions
diff --git a/build.xml b/build.xml
index 39e47471c6..0cb728c35f 100644
--- a/build.xml
+++ b/build.xml
@@ -213,11 +213,22 @@ INITIALISATION
<condition property="starr.absent">
<not><available file="${lib.dir}/scala-library.jar"/></not>
</condition>
+
+ <!-- It's such a PITA to perform the amazing && in ant, forget it.
+ I'll just check the compiler jar. -->
+ <target name="init.starr.check">
+ <uptodate property="starr.compiler.uptodate"
+ srcfile="${lib.dir}/scala-compiler.jar.desired.sha1"
+ targetfile="${lib.dir}/scala-compiler.jar" />
+ </target>
- <target name="init.starr" if="starr.absent">
- <echo level="warn" message="Downloading bootstrap libs. (To do this by hand, run ./pull-binary-libs.sh)"/>
+ <target name="init.starr" depends="init.starr.check" unless="starr.compiler.uptodate">
+ <echo level="warn" message="Updating bootstrap libs. (To do this by hand, run ./pull-binary-libs.sh)"/>
<exec osfamily="unix" vmlauncher="false" executable="./pull-binary-libs.sh" failifexecutionfails="true" />
<exec osfamily="windows" vmlauncher="false" executable="pull-binary-libs.sh" failifexecutionfails="true" />
+ <!-- uptodate task needs to know these are what's in the sha. -->
+ <touch file="${lib.dir}/scala-library.jar" />
+ <touch file="${lib.dir}/scala-compiler.jar" />
</target>
<target name="init" depends="init.starr">