Skip to content

Commit eaabbff

Browse files
committed
Enhance build scripts to check for up-to-date artifacts before creation
Don't rebuild jars if nothing changed! See eclipse-pde/eclipse.pde#2233
1 parent 908b572 commit eaabbff

File tree

2 files changed

+22
-8
lines changed

2 files changed

+22
-8
lines changed

org.eclipse.jdt.debug.ui/scripts/buildExtraJAR.xml

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515

1616
<project name="Build Snippet support JAR" default="build" basedir="..">
1717

18-
<target name="build" description="Cleans, builds and refreshes the impacted resources" depends="clean, snippetsupport.jar"/>
18+
<target name="build" description="Builds and refreshes the impacted resources" depends="snippetsupport.jar"/>
1919

2020
<!-- Empty target for "After a Clean" task (we don't want to rebuild the Jar here, e.g. on checkout). -->
2121
<target name="dummy_clean"/>
@@ -29,14 +29,21 @@
2929
<property name="build.compiler" value="org.eclipse.jdt.core.JDTCompilerAdapter"/>
3030
</target>
3131

32-
<target name="snippetsupport.jar" depends="init" description="Creates the snippetsupport.jar">
32+
<target name="checkSourceUpToDate" depends="init" description="Checks if the JAR is up to date with the source">
33+
<uptodate property="jarUpToDate" targetfile="${build.result.folder}/snippetsupport.jar">
34+
<srcfiles dir="Snippet Support/" includes="**/*"/>
35+
</uptodate>
36+
</target>
37+
38+
<target name="snippetsupport.jar" depends="init, checkSourceUpToDate" unless="jarUpToDate" description="Creates the snippetsupport.jar">
3339
<property name="destdir" value="${temp.folder}/snippetsupport.jar.bin"/>
40+
<delete dir="${temp.folder}"/>
3441
<delete dir="${destdir}"/>
3542
<mkdir dir="${destdir}"/>
3643
<!-- Keep target level as low as possible!
3744
snippetsupport.jar is used on the classpath of a separate VM that
3845
uses the JRE that's on the build path of the scrapbook file's project. -->
39-
<javac target="1.7" source="1.7" destdir="${destdir}"
46+
<javac target="1.8" source="1.8" destdir="${destdir}"
4047
failonerror="true"
4148
verbose="false"
4249
debug="on"
@@ -53,4 +60,4 @@
5360
<delete file="${build.result.folder}/snippetsupport.jar"/>
5461
<delete dir="${temp.folder}"/>
5562
</target>
56-
</project>
63+
</project>

org.eclipse.jdt.launching/scripts/buildLaunchingSupportJAR.xml

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515

1616
<project name="Build Launching Support JAR" default="build" basedir="..">
1717

18-
<target name="build" description="Cleans, builds and refreshes" depends="clean, lib/launchingsupport.jar"/>
18+
<target name="build" description="Builds and refreshes" depends="lib/launchingsupport.jar"/>
1919

2020
<target name="init" depends="properties">
2121
<property name="temp.folder" value="${basedir}/temp.folder"/>
@@ -26,12 +26,13 @@
2626
<property name="build.compiler" value="org.eclipse.jdt.core.JDTCompilerAdapter"/>
2727
</target>
2828

29-
<target name="lib/launchingsupport.jar" description= "Creates the launchingsupport.jar" depends="init">
29+
<target name="lib/launchingsupport.jar" description= "Creates the launchingsupport.jar" depends="init,checkSourceUpToDate" unless="jarUpToDate">
3030
<property name="destdir" value="${temp.folder}/lib/launchingsupport.jar.bin"/>
31+
<delete dir="${temp.folder}"/>
3132
<delete dir="${destdir}"/>
3233
<mkdir dir="${destdir}"/>
3334
<!-- compile the source code -->
34-
<javac target="1.1" source="1.3" destdir="${destdir}" failonerror="false" verbose="false" debug="on" includeJavaRuntime= "yes" includeAntRuntime="no"
35+
<javac target="1.8" source="1.8" destdir="${destdir}" failonerror="false" verbose="false" debug="on" includeJavaRuntime= "yes" includeAntRuntime="no"
3536
classpath="">
3637
<src path="support/"/>
3738
</javac>
@@ -47,4 +48,10 @@
4748
<delete file="${build.result.folder}/lib/launchingsupport.jar"/>
4849
<delete dir="${temp.folder}"/>
4950
</target>
50-
</project>
51+
52+
<target name="checkSourceUpToDate">
53+
<uptodate property="jarUpToDate" targetfile="${build.result.folder}/lib/launchingsupport.jar">
54+
<srcfiles dir="support" includes="**/*"/>
55+
</uptodate>
56+
</target>
57+
</project>

0 commit comments

Comments
 (0)