diff options
Diffstat (limited to 'src/build/four.xml')
-rw-r--r-- | src/build/four.xml | 32 |
1 files changed, 26 insertions, 6 deletions
diff --git a/src/build/four.xml b/src/build/four.xml index 6e31124203..6dd92f34f4 100644 --- a/src/build/four.xml +++ b/src/build/four.xml @@ -21,17 +21,37 @@ PROPERTIES <!-- =========================================================================== JAVA 1.4 LIBRARY AND COMPILER BUILD (FOUR) ============================================================================ --> - + <target name="four.start"/> - + <target name="four.src" depends="four.start"> + <!-- simple sync & copy overwrite is not very nice, because overwritten files + will then have a new timestamp, and be recompiled --> <mkdir dir="${build-four-src.dir}"/> - <sync todir="${build-four-src.dir}"> - <fileset dir="${src.dir}/library"/> - </sync> <copy todir="${build-four-src.dir}" overwrite="true"> - <fileset dir="${src.dir}/jvm14-library"/> + <fileset dir="${src.dir}/library"> + <and> + <present present="srconly" targetdir="${src.dir}/jvm14-library"/> + <different targetdir="${build-four-src.dir}" ignoreFileTimes="true"/> + </and> + </fileset> + <fileset dir="${src.dir}/jvm14-library"> + <different targetdir="${build-four-src.dir}" ignoreFileTimes="true"/> + </fileset> </copy> + <delete verbose="true"> + <difference> + <fileset dir="${build-four-src.dir}"/> + <union> + <fileset dir="${build-four-src.dir}"> + <present targetdir="${src.dir}/jvm14-library"/> + </fileset> + <fileset dir="${build-four-src.dir}"> + <present targetdir="${src.dir}/library"/> + </fileset> + </union> + </difference> + </delete> </target> <target name="four.lib" depends="four.src"> |