| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| Copyright (C) 2014 The Android Open Source Project |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| |
| <project name="jack" default="dist"> |
| |
| <target name="dist" depends="dexcomparator-lib,jack,jackunittests,jack-tests,dx-lib, |
| sched-lib,schedtests-lib"/> |
| |
| <target name="clean" depends="jack-clean, |
| jackunittests-lib-clean, |
| jackunittests-clean, |
| jack-tests-clean, |
| antlr-clean, |
| args4j-lib-clean, |
| dx-lib-clean, |
| ecj-clean, |
| freemarker-lib-clean, |
| guava-lib-clean, |
| jsr305-lib-clean, |
| maths-lib-clean, |
| sched-lib-clean, |
| sched-build-lib-clean, |
| sched-build-clean, |
| schedtests-lib-clean, |
| watchmaker-lib-clean, |
| antlr-rt-lib-clean, |
| allocation-lib-clean, |
| junit4-lib-clean, |
| junit4-clean, |
| hamcrest-core-lib-clean, |
| dexcomparator-clean, |
| dex-lib-clean, |
| ddm-lib-clean, |
| dx-ref-lib-clean, |
| core-stubs-mini-clean" /> |
| |
| <dirname property="jack-project.dir" file="${ant.file.jack}"/> |
| |
| <property name="jack.dir" value="${jack-project.dir}/jack" /> |
| <property name="jack-tests.dir" value="${jack-project.dir}/jack-tests" /> |
| <property name="antlr.dir" value="${jack-project.dir}/antlr"/> |
| <property name="args4j.dir" value="${jack-project.dir}/args4j"/> |
| <property name="ddm-lib.dir" value="${jack-project.dir}/ddmlib"/> |
| <property name="dx.dir" value="${jack-project.dir}/dx"/> |
| <property name="ecj.dir" value="${jack-project.dir}/ecj"/> |
| <property name="freemarker.dir" value="${jack-project.dir}/freemarker"/> |
| <property name="guava.dir" value="${jack-project.dir}/guava"/> |
| <property name="jsr305.dir" value="${jack-project.dir}/jsr305"/> |
| <property name="maths.dir" value="${jack-project.dir}/maths"/> |
| <property name="sched.dir" value="${jack-project.dir}/sched"/> |
| <property name="watchmaker.dir" value="${jack-project.dir}/watchmaker"/> |
| <property name="antlr-rt.dir" value="${jack-project.dir}/antlr-runtime"/> |
| <property name="allocation.dir" value="${jack-project.dir}/java-allocation-instrumenter"/> |
| <property name="junit4.dir" value="${jack-project.dir}/junit4"/> |
| <property name="hamcrest-core.dir" value="${jack-project.dir}/hamcrest-core"/> |
| <property name="dexcomparator.dir" value="${jack-project.dir}/dexcomparator"/> |
| <property name="dexlib.dir" value="${jack-project.dir}/dexlib"/> |
| <property name="tools.dir" value="${jack-project.dir}/tools"/> |
| <property name="dx-ref.dir" value="${jack-project.dir}/dx-ref"/> |
| <property name="core-stubs-mini.dir" value="${jack-project.dir}/core-stubs-mini"/> |
| |
| <!-- ******************* --> |
| <!-- Jack-lib --> |
| <!-- ******************* --> |
| |
| <property name="jack.build.dir" value="${jack.dir}/build/jack-lib" /> |
| <property name="jack.libs.dir" value="${jack.dir}/libs" /> |
| <property name="jack.build.outdir" value="${jack.build.dir}/classes" /> |
| <property name="jack.tools.dir" value="${jack.dir}/tools" /> |
| <property name="jack.dist.dir" value="${jack.dir}/dist" /> |
| <property name="jack.libname" value="jack-lib.jar" /> |
| |
| <target name="jack-lib-clean"> |
| <delete dir="${jack.build.dir}"/> |
| <delete file="${jack.dist.dir}/${jack.libname}"/> |
| <delete dir="${jack.libs.dir}"/> |
| <delete dir="${jack.tools.dir}"/> |
| </target> |
| |
| <target name="jack-copy-libs" depends="ecj,guava-lib,dx-lib,args4j-lib,antlr-rt-lib,jsr305-lib, |
| junit4,dex-lib,dx-ref-lib"> |
| <copy todir="${jack.libs.dir}" flatten="true"> |
| <filelist dir="/" > |
| <file name="${ecj.dist.dir}/${ecj.libname}"/> |
| <file name="${guava.dist.dir}/${guava.libname}"/> |
| <file name="${dx.dist.dir}/${dx.libname}"/> |
| <file name="${args4j.dist.dir}/${args4j.libname}"/> |
| <file name="${antlr-rt.dist.dir}/${antlr-rt.libname}"/> |
| <file name="${jsr305.dist.dir}/${jsr305.libname}"/> |
| <file name="${junit4.dist.dir}/${junit4.execname}"/> |
| <file name="${dexlib.dist.dir}/${dexlib.libname}"/> |
| <file name="${dx-ref.dist.dir}/${dx-ref.libname}"/> |
| </filelist> |
| </copy> |
| </target> |
| |
| <target name="jack-lib-compile" |
| depends="jack-copy-libs,sched-build,antlr,sched-build-lib,allocation-lib,antlr-rt-lib, |
| args4j-lib,dx-lib,ecj,freemarker-lib,guava-lib,jsr305-lib,maths-lib,sched-lib,watchmaker-lib"> |
| <!-- project layout --> |
| <!-- avoid incremental compilation with annotation processor --> |
| <delete dir="${jack.build.outdir}"/> |
| <mkdir dir="${jack.build.outdir}"/> |
| <mkdir dir="${jack.libs.dir}"/> |
| <mkdir dir="${jack.dist.dir}"/> |
| <mkdir dir="${jack.tools.dir}"/> |
| <!-- fetch dependencies --> |
| <filelist id="jack.link.libs.fileset" dir="/"> |
| <file name="${sched-build.dist.dir}/${sched-build.libname}" /> |
| <file name="${allocation.dist.dir}/${allocation.libname}" /> |
| </filelist> |
| <filelist id="jack.static.libs.fileset" dir="/"> |
| <file name="${ecj.dist.dir}/${ecj.libname}" /> |
| <file name="${guava.dist.dir}/${guava.libname}" /> |
| <file name="${jsr305.dist.dir}/${jsr305.libname}" /> |
| <file name="${dx.dist.dir}/${dx.libname}" /> |
| <file name="${args4j.dist.dir}/${args4j.libname}" /> |
| <file name="${antlr-rt.dist.dir}/${antlr-rt.libname}" /> |
| <file name="${schedlib.dist.dir}/${schedlib.libname}" /> |
| <file name="${freemarker.dist.dir}/${freemarker.libname}" /> |
| <file name="${watchmaker.dist.dir}/${watchmaker.libname}" /> |
| <file name="${maths.dist.dir}/${maths.libname}" /> |
| </filelist> |
| <copy todir="${jack.tools.dir}" flatten="true"> |
| <filelist dir="/" > |
| <file name="${sched-build.dist.dir}/${sched-build.execname}" /> |
| <file name="${antlr.dist.dir}/${antlr.execname}" /> |
| </filelist> |
| </copy> |
| <!-- generate ProGuard parser --> |
| <java jar="${jack.tools.dir}/${antlr.execname}" fork="true" failonerror="true"> |
| <arg line="-fo" /> |
| <arg line="${jack.dir}/src/com/android/jack/shrob/proguard"/> |
| <arg line="${jack.dir}/src/com/android/jack/shrob/proguard/Proguard.g"/> |
| </java> |
| <!-- generate PreProcessor parser --> |
| <java jar="${jack.tools.dir}/${antlr.execname}" fork="true" failonerror="true"> |
| <arg line="-fo" /> |
| <arg line="${jack.dir}/src/com/android/jack/preprocessor"/> |
| <arg line="${jack.dir}/src/com/android/jack/preprocessor/PreProcessor.g"/> |
| </java> |
| <!-- compile --> |
| <javac srcdir="${jack.dir}/src" |
| destdir="${jack.build.outdir}" |
| source="1.5" target="1.5" |
| debug="true" includeantruntime="false" includeDestClasses="false"> |
| <classpath> |
| <filelist refid="jack.link.libs.fileset" /> |
| <filelist refid="jack.static.libs.fileset" /> |
| </classpath> |
| <compilerarg line="-processor com.android.sched.build.SchedAnnotationProcessor" /> |
| </javac> |
| </target> |
| |
| <target name="jack-lib" depends="jack-lib-compile"> |
| <!-- package --> |
| <copy todir="${jack.build.outdir}"> |
| <fileset dir="${jack.dir}/rsc" includes="**"/> |
| </copy> |
| <jar destfile="${jack.dist.dir}/${jack.libname}" |
| basedir="${jack.build.outdir}" includes="**"/> |
| </target> |
| |
| |
| <!-- ******************* --> |
| <!-- jack --> |
| <!-- ******************* --> |
| <property name="jack.exec.build.dir" value="${jack.dir}/build/jack"/> |
| <property name="jack.exec.build.outdir" value="${jack.exec.build.dir}/classes"/> |
| <property name="jack.execname" value="jack.jar"/> |
| |
| <target name="jack-clean" depends="jack-lib-clean"> |
| <delete dir="${jack.exec.build.dir}"/> |
| <delete file="${jack.dist.dir}/${jack.execname}"/> |
| </target> |
| |
| <target name="jack" depends="jack-lib-compile"> |
| <copy todir="${jack.exec.build.outdir}"> |
| <fileset dir="${jack.build.outdir}"/> |
| </copy> |
| <!-- package --> |
| <copy todir="${jack.exec.build.outdir}"> |
| <fileset dir="${jack.dir}/rsc" includes="**"/> |
| </copy> |
| <jar destfile="${jack.exec.build.dir}/${jack.execname}" |
| manifest="${jack.dir}/etc/manifest.txt" basedir="${jack.exec.build.outdir}" includes="**"/> |
| <pathconvert property="jack.static.libs.list" pathsep=" " refid="jack.static.libs.fileset" /> |
| <!-- add sched support --> |
| <java jar="${jack.tools.dir}/${sched-build.execname}" fork="true" failonerror="true"> |
| <arg value="${jack.exec.build.dir}/${jack.execname}" /> |
| <arg line="${jack.static.libs.list}" /> |
| <arg value="${jack.dist.dir}/${jack.execname}" /> |
| </java> |
| </target> |
| |
| |
| <!-- ******************* --> |
| <!-- jackunittests-lib --> |
| <!-- ******************* --> |
| <property name="jackunittests.build.dir" value="${jack.dir}/build/jackunittests-lib" /> |
| <property name="jackunittests.libs.dir" value="${jack.dir}/libs" /> |
| <property name="jackunittests.build.outdir" value="${jackunittests.build.dir}/classes" /> |
| <property name="jackunittests.dist.dir" value="${jack.dir}/dist" /> |
| <property name="jackunittests.tools.dir" value="${jack.dir}/tools" /> |
| <property name="jackunittests.libname" value="jackunittests-lib.jar" /> |
| |
| <target name="jackunittests-lib-clean"> |
| <delete dir="${jackunittests.build.dir}" /> |
| <delete dir="${jackunittests.libs.dir}" /> |
| <delete file="${jackunittests.dist.dir}/${jackunittests.libname}" /> |
| </target> |
| |
| <target name="jackunittests-lib" depends="jack-copy-libs,jack-lib,junit4-lib,dex-lib,dx-ref-lib,dexcomparator-lib, |
| sched-build,sched-build-lib"> |
| <!-- project layout --> |
| <mkdir dir="${jackunittests.build.outdir}" /> |
| <mkdir dir="${jackunittests.libs.dir}" /> |
| <mkdir dir="${jackunittests.dist.dir}" /> |
| <!-- fetch dependencies --> |
| <copy file="${sched-build.dist.dir}/${sched-build.execname}" todir="${jackunittests.tools.dir}" /> |
| <filelist id="jackunittests.link.libs.fileset" dir="/"> |
| <file name="${sched-build.dist.dir}/${sched-build.libname}" /> |
| </filelist> |
| <filelist id="jackunittests.static.libs.fileset" dir="/"> |
| <file name="${jack.dist.dir}/${jack.libname}" /> |
| <file name="${junit4.dist.dir}/${junit4.libname}" /> |
| <file name="${dexlib.dist.dir}/${dexlib.libname}" /> |
| <file name="${dx-ref.dist.dir}/${dx-ref.libname}" /> |
| <file name="${dexcomparator.dist.dir}/${dexcomparator.libname}" /> |
| </filelist> |
| <!-- compile --> |
| <javac srcdir="${jack.dir}/tests" destdir="${jackunittests.build.outdir}" |
| source="1.5" target="1.5" debug="true" |
| includeantruntime="false" includeDestClasses="false"> |
| <classpath> |
| <filelist refid="jackunittests.link.libs.fileset"/> |
| <filelist refid="jack.static.libs.fileset"/> |
| <filelist refid="jackunittests.static.libs.fileset"/> |
| </classpath> |
| <compilerarg line="-processor com.android.sched.build.SchedAnnotationProcessor" /> |
| </javac> |
| <!-- package --> |
| <jar destfile="${jackunittests.dist.dir}/${jackunittests.libname}" |
| basedir="${jackunittests.build.outdir}" includes="**" /> |
| </target> |
| |
| |
| <!-- ******************* --> |
| <!-- jackunittests --> |
| <!-- ******************* --> |
| <property name="jackunittests.execname" value="jackunittests.jar"/> |
| |
| <target name="jackunittests-clean"> |
| <delete file="${jackunittests.dist.dir}/${jackunittests.execname}" /> |
| </target> |
| |
| <target name="jackunittests" depends="jackunittests-lib"> |
| <!-- add sched support --> |
| <pathconvert property="jackunittests.static.libs.list" pathsep=" " refid="jackunittests.static.libs.fileset" /> |
| <pathconvert property="jack.static.libs.list" pathsep=" " refid="jack.static.libs.fileset" /> |
| <java jar="${jackunittests.tools.dir}/${sched-build.execname}" fork="true" failonerror="true"> |
| <arg value="${jackunittests.dist.dir}/${jackunittests.libname}" /> |
| <arg line="${jackunittests.static.libs.list}" /> |
| <arg line="${jack.static.libs.list}" /> |
| <arg value="${jackunittests.dist.dir}/${jackunittests.execname}" /> |
| </java> |
| </target> |
| |
| |
| <!-- ******************* --> |
| <!-- jack-tests --> |
| <!-- ******************* --> |
| <property name="jack-tests.libs.dir" value="${jack-tests.dir}/libs" /> |
| <property name="jack-tests.build.dir" value="${jack-tests.dir}/build" /> |
| <property name="jack-tests.build.outdir" value="${jack-tests.build.dir}/classes" /> |
| <property name="jack-tests.dist.dir" value="${jack-tests.dir}/dist" /> |
| <property name="jack-tests.libname" value="jack-tests-lib.jar" /> |
| |
| <target name="jack-tests-clean"> |
| <delete dir="${jack-tests.libs.dir}" /> |
| <delete dir="${jack-tests.build.outdir}" /> |
| <delete file="${jack-tests.dist.dir}/${jack-tests.libname}" /> |
| </target> |
| |
| <target name="jack-tests-copy-libs" depends="core-stubs-mini,junit4,dx-ref-lib,ddm-lib,ecj, |
| antlr-rt-lib,guava-lib,dex-lib,jsr305-lib,dexcomparator-lib"> |
| <copy todir="${jack-tests.libs.dir}" flatten="true"> |
| <filelist dir="/" > |
| <file name="${junit4.dist.dir}/${junit4.execname}"/> |
| <file name="${core-stubs-mini.dist.dir}/${core-stubs-mini.libname}"/> |
| <file name="${dx-ref.dist.dir}/${dx-ref.libname}"/> |
| <file name="${ddm-lib.dist.dir}/${ddm-lib.libname}"/> |
| <file name="${ecj.dist.dir}/${ecj.libname}"/> |
| <file name="${antlr-rt.dist.dir}/${antlr-rt.libname}"/> |
| <file name="${guava.dist.dir}/${guava.libname}"/> |
| <file name="${dexlib.dist.dir}/${dexlib.libname}"/> |
| <file name="${jsr305.dist.dir}/${jsr305.libname}"/> |
| <file name="${dexcomparator.dist.dir}/${dexcomparator.libname}"/> |
| </filelist> |
| </copy> |
| </target> |
| |
| <target name="jack-tests" depends="jack-tests-copy-libs, jack-lib, jackunittests-lib"> |
| <!-- project layout --> |
| <mkdir dir="${jack-tests.build.outdir}"/> |
| <mkdir dir="${jack-tests.dist.dir}"/> |
| <!-- compile --> |
| <javac |
| destdir="${jack-tests.build.outdir}" |
| source="1.5" target="1.5" |
| debug="true" includeantruntime="false"> |
| <src path="${jack-tests.dir}/src"/> |
| <src path="${jack-tests.dir}/tests"/> |
| <exclude name="com/android/jack/classpath/test002/lib1override/**"/> |
| <exclude name="com/android/jack/enums/test003/link/Other.java"/> |
| <exclude name="com/android/jack/enums/test003/link/Values.java"/> |
| <exclude name="com/android/jack/error/test001/jack/A.java"/> |
| <exclude name="com/android/jack/error/test002/jack/A.java"/> |
| <exclude name="com/android/jack/nopackage/jack/**"/> |
| <exclude name="com/android/jack/java7/boxing/**"/> |
| <exclude name="com/android/jack/java7/switches/**"/> |
| <exclude name="com/android/jack/java7/exceptions/**"/> |
| <exclude name="com/android/jack/java7/trywithresources/**"/> |
| <exclude name="com/android/jack/java7/parser/**"/> |
| <exclude name="com/android/jack/jarjar/test003/dontcompile/**"/> |
| <exclude name="com/android/jack/lookup/test001/liboverride/**"/> |
| <classpath> |
| <filelist dir="/"> |
| <file name="${jackunittests.dist.dir}/${jackunittests.execname}" /> |
| <file name="${ddm-lib.dist.dir}/${ddm-lib.libname}" /> |
| </filelist> |
| </classpath> |
| </javac> |
| <!-- package --> |
| <jar destfile="${jack-tests.dist.dir}/${jack-tests.libname}" |
| basedir="${jack-tests.build.outdir}" |
| includes="**"/> |
| </target> |
| |
| |
| <!-- ******************* --> |
| <!-- antlr --> |
| <!-- ******************* --> |
| <property name="antlr.dist.dir" value="${antlr.dir}/dist" /> |
| <property name="antlr.execname" value="antlr.jar"/> |
| |
| <target name="antlr-clean"> |
| <delete dir="${antlr.dist.dir}"/> |
| </target> |
| |
| <target name="antlr"> |
| <mkdir dir="${antlr.dist.dir}"/> |
| <copy file="${antlr.dir}/antlr-3.4-complete.jar" tofile="${antlr.dist.dir}/${antlr.execname}"/> |
| </target> |
| |
| |
| <!-- ******************* --> |
| <!-- args4j-lib --> |
| <!-- ******************* --> |
| <property name="args4j.build.dir" value="${args4j.dir}/build"/> |
| <property name="args4j.build.outdir" value="${args4j.build.dir}/classes"/> |
| <property name="args4j.dist.dir" value="${args4j.dir}/dist"/> |
| <property name="args4j.libname" value="args4j-lib.jar"/> |
| |
| <target name="args4j-lib-clean"> |
| <delete dir="${args4j.build.dir}"/> |
| <delete dir="${args4j.dist.dir}"/> |
| </target> |
| |
| <target name="args4j-lib"> |
| <!-- project layout --> |
| <mkdir dir="${args4j.build.outdir}"/> |
| <mkdir dir="${args4j.dist.dir}"/> |
| <!-- compile --> |
| <javac srcdir="${args4j.dir}/args4j/src" |
| destdir="${args4j.build.outdir}" |
| source="1.5" target="1.5" |
| debug="true" includeantruntime="false" includeDestClasses="false"/> |
| <!-- package --> |
| <copy todir="${args4j.build.outdir}"> |
| <fileset dir="${args4j.dir}/args4j/src"> |
| <include name="**/*.properties"/> |
| </fileset> |
| </copy> |
| <jar destfile="${args4j.dist.dir}/${args4j.libname}" |
| basedir="${args4j.build.outdir}" |
| includes="**"/> |
| </target> |
| |
| |
| <!-- ******************* --> |
| <!-- ddmlib --> |
| <!-- ******************* --> |
| <property name="ddm-lib.libname" value="ddmlib.jar"/> |
| <property name="ddm-lib.dist.dir" value="${ddm-lib.dir}/dist"/> |
| |
| <target name="ddm-lib-clean"> |
| <delete file="${ddm-lib.dist.dir}/${ddm-lib.libname}"/> |
| </target> |
| |
| <target name="ddm-lib"> |
| <mkdir dir="${ddm-lib.dist.dir}"/> |
| <copy file="${ddm-lib.dir}/ddmlib.jar" tofile="${ddm-lib.dist.dir}/${ddm-lib.libname}"/> |
| </target> |
| |
| |
| <!-- ******************* --> |
| <!-- dx-lib --> |
| <!-- ******************* --> |
| <property name="dx.build.dir" value="${dx.dir}/build"/> |
| <property name="dx.libs.dir" value="${dx.dir}/libs"/> |
| <property name="dx.build.outdir" value="${dx.build.dir}/classes"/> |
| <property name="dx.dist.dir" value="${dx.dir}/dist"/> |
| <property name="dx.libname" value="dx-lib.jar"/> |
| |
| <target name="dx-lib-clean"> |
| <delete dir="${dx.build.dir}" /> |
| <delete dir="${dx.libs.dir}" /> |
| <delete dir="${dx.dist.dir}" /> |
| </target> |
| |
| <target name="dx-lib" depends="jsr305-lib"> |
| <!-- project layout --> |
| <mkdir dir="${dx.build.outdir}"/> |
| <mkdir dir="${dx.dist.dir}"/> |
| <!-- fetch dependencies --> |
| <copy file="${jsr305.dist.dir}/${jsr305.libname}" todir="${dx.libs.dir}"/> |
| <!-- compile --> |
| <javac srcdir="${dx.dir}/src" |
| destdir="${dx.build.outdir}" |
| source="1.5" target="1.5" |
| debug="true" includeantruntime="false" includeDestClasses="false"> |
| <classpath> |
| <filelist> |
| <file name="${jsr305.dist.dir}/${jsr305.libname}"/> |
| </filelist> |
| </classpath> |
| </javac> |
| <!-- package --> |
| <jar destfile="${dx.dist.dir}/${dx.libname}" |
| basedir="${dx.build.outdir}" |
| includes="**"/> |
| </target> |
| |
| |
| <!-- ******************* --> |
| <!-- ecj --> |
| <!-- ******************* --> |
| <property name="ecj.libname" value="ecj.jar"/> |
| <property name="ecj.dist.dir" value="${ecj.dir}/dist"/> |
| |
| <target name="ecj-clean"> |
| <delete dir="${ecj.dist.dir}"/> |
| </target> |
| |
| <target name="ecj"> |
| <mkdir dir="${ecj.dist.dir}"/> |
| <copy file="${ecj.dir}/ecj-4.5M1.jar" tofile="${ecj.dist.dir}/${ecj.libname}"/> |
| </target> |
| |
| |
| <!-- ******************* --> |
| <!-- dx-ref-lib --> |
| <!-- ******************* --> |
| <property name="dx-ref.libname" value="dx-ref.jar" /> |
| <property name="dx-ref.dist.dir" value="${dx-ref.dir}/dist" /> |
| |
| <target name="dx-ref-lib-clean"> |
| <delete dir="${dx-ref.dist.dir}" /> |
| </target> |
| |
| <target name="dx-ref-lib"> |
| <mkdir dir="${dx-ref.dist.dir}" /> |
| <copy file="${dx-ref.dir}/dx.jar" tofile="${dx-ref.dist.dir}/${dx-ref.libname}" /> |
| </target> |
| |
| |
| <!-- ******************* --> |
| <!-- freemarker-lib --> |
| <!-- ******************* --> |
| <property name="freemarker.libname" value="freemarker-lib.jar"/> |
| <property name="freemarker.dist.dir" value="${freemarker.dir}/dist"/> |
| |
| <target name="freemarker-lib-clean"> |
| <delete dir="${freemarker.dist.dir}"/> |
| </target> |
| |
| <target name="freemarker-lib"> |
| <mkdir dir="${freemarker.dist.dir}"/> |
| <copy file="${freemarker.dir}/freemarker-2.3.19.jar" tofile="${freemarker.dist.dir}/${freemarker.libname}"/> |
| </target> |
| |
| |
| <!-- ******************* --> |
| <!-- guava-lib --> |
| <!-- ******************* --> |
| <property name="guava.build.dir" value="${guava.dir}/build"/> |
| <property name="guava.build.outdir" value="${guava.build.dir}/classes"/> |
| <property name="guava.dist.dir" value="${guava.dir}/dist"/> |
| <property name="guava.libname" value="guava-lib.jar"/> |
| |
| <target name="guava-lib-clean"> |
| <delete dir="${guava.build.dir}"/> |
| <delete dir="${guava.dist.dir}"/> |
| </target> |
| |
| <target name="guava-lib" depends="jsr305-lib"> |
| <!-- project layout --> |
| <mkdir dir="${guava.build.outdir}"/> |
| <mkdir dir="${guava.dist.dir}"/> |
| <javac source="1.5" target="1.5" |
| srcdir="${guava.dir}/src" |
| destdir="${guava.build.outdir}" |
| debug="true" includeantruntime="false" includeDestClasses="false"> |
| <classpath> |
| <filelist dir="/"> |
| <file name="${jsr305.dist.dir}/${jsr305.libname}" /> |
| </filelist> |
| </classpath> |
| </javac> |
| <!-- package --> |
| <jar destfile="${guava.dist.dir}/${guava.libname}" |
| basedir="${guava.build.outdir}" |
| includes="**"/> |
| </target> |
| |
| |
| <!-- ******************* --> |
| <!-- jsr305-lib --> |
| <!-- ******************* --> |
| <property name="jsr305.build.dir" value="${jsr305.dir}/build"/> |
| <property name="jsr305.build.outdir" value="${jsr305.build.dir}/classes"/> |
| <property name="jsr305.dist.dir" value="${jsr305.dir}/dist"/> |
| <property name="jsr305.libname" value="jsr305-lib.jar"/> |
| |
| <target name="jsr305-lib-clean"> |
| <delete dir="${jsr305.build.dir}"/> |
| <delete dir="${jsr305.dist.dir}"/> |
| </target> |
| |
| <target name="jsr305-lib"> |
| <!-- project layout --> |
| <mkdir dir="${jsr305.build.outdir}"/> |
| <mkdir dir="${jsr305.dist.dir}"/> |
| <!-- compile --> |
| <javac srcdir="${jsr305.dir}/ri/src/main/java" |
| destdir="${jsr305.build.outdir}" |
| source="1.5" target="1.5" |
| debug="true" includeantruntime="false" includeDestClasses="false"/> |
| <!-- package --> |
| <jar destfile="${jsr305.dist.dir}/${jsr305.libname}" |
| basedir="${jsr305.build.outdir}" |
| includes="**"/> |
| </target> |
| |
| |
| <!-- ******************* --> |
| <!-- maths-lib --> |
| <!-- ******************* --> |
| <property name="maths.build.dir" value="${maths.dir}/build" /> |
| <property name="maths.build.outdir" value="${maths.build.dir}/classes" /> |
| <property name="maths.dist.dir" value="${maths.dir}/dist" /> |
| <property name="maths.libname" value="maths-lib.jar" /> |
| |
| <target name="maths-lib-clean"> |
| <delete dir="${maths.build.dir}"/> |
| <delete dir="${maths.dist.dir}"/> |
| </target> |
| |
| <target name="maths-lib"> |
| <!-- project layout --> |
| <mkdir dir="${maths.build.outdir}"/> |
| <mkdir dir="${maths.dist.dir}"/> |
| <!-- compile --> |
| <javac srcdir="${maths.dir}/core/src/java/main" |
| destdir="${maths.build.outdir}" |
| source="1.5" target="1.5" |
| debug="true" includeantruntime="false" includeDestClasses="false"/> |
| <!-- package --> |
| <jar destfile="${maths.dist.dir}/${maths.libname}" |
| basedir="${maths.build.outdir}" |
| includes="**"/> |
| </target> |
| |
| |
| <!-- ******************* --> |
| <!-- sched-lib --> |
| <!-- ******************* --> |
| <property name="schedlib.build.dir" value="${sched.dir}/build/sched-lib" /> |
| <property name="schedlib.libs.dir" value="${sched.dir}/libs" /> |
| <property name="schedlib.build.outdir" value="${schedlib.build.dir}/classes" /> |
| <property name="schedlib.dist.dir" value="${sched.dir}/dist" /> |
| <property name="schedlib.libname" value="sched-lib.jar" /> |
| |
| <target name="sched-lib-clean"> |
| <delete dir="${schedlib.build.dir}" /> |
| <delete dir="${schedlib.libs.dir}" /> |
| <delete file="${schedlib.dist.dir}/${schedlib.libname}" /> |
| </target> |
| |
| <target name="sched-copy-libs" depends="guava-lib,jsr305-lib,allocation-lib,freemarker-lib, |
| watchmaker-lib,maths-lib,junit4"> |
| <copy todir="${schedlib.libs.dir}" flatten="true"> |
| <filelist dir="/"> |
| <file name="${guava.dist.dir}/${guava.libname}" /> |
| <file name="${jsr305.dist.dir}/${jsr305.libname}" /> |
| <file name="${allocation.dist.dir}/${allocation.libname}" /> |
| <file name="${freemarker.dist.dir}/${freemarker.libname}" /> |
| <file name="${watchmaker.dist.dir}/${watchmaker.libname}" /> |
| <file name="${maths.dist.dir}/${maths.libname}" /> |
| <file name="${junit4.dist.dir}/${junit4.execname}" /> |
| </filelist> |
| </copy> |
| </target> |
| |
| <target name="sched-lib" depends="sched-copy-libs,sched-build-lib,guava-lib,jsr305-lib, |
| allocation-lib,freemarker-lib,watchmaker-lib,maths-lib"> |
| <!-- project layout --> |
| <!-- avoid incremental compilation with annotation processor --> |
| <delete dir="${schedlib.build.outdir}"/> |
| <mkdir dir="${schedlib.build.outdir}"/> |
| <mkdir dir="${schedlib.libs.dir}"/> |
| <mkdir dir="${schedlib.dist.dir}"/> |
| <filelist id="schedlib.link.libs.fileset" dir="/"> |
| <file name="${sched-build.dist.dir}/${sched-build.libname}" /> |
| <file name="${guava.dist.dir}/${guava.libname}" /> |
| <file name="${jsr305.dist.dir}/${jsr305.libname}" /> |
| <file name="${allocation.dist.dir}/${allocation.libname}" /> |
| <file name="${freemarker.dist.dir}/${freemarker.libname}" /> |
| <file name="${watchmaker.dist.dir}/${watchmaker.libname}" /> |
| <file name="${maths.dist.dir}/${maths.libname}" /> |
| </filelist> |
| |
| <!-- compile --> |
| <javac srcdir="${sched.dir}/src" destdir="${schedlib.build.outdir}" |
| source="1.5" target="1.5" debug="true" includeantruntime="false" includeDestClasses="false"> |
| <classpath> |
| <filelist refid="schedlib.link.libs.fileset"/> |
| </classpath> |
| <compilerarg line="-processor com.android.sched.build.SchedAnnotationProcessor" /> |
| </javac> |
| <!-- package --> |
| <copy todir="${schedlib.build.outdir}" > |
| <fileset dir="${sched.dir}/rsc"> |
| <include name="**"/> |
| </fileset> |
| </copy> |
| <jar destfile="${schedlib.dist.dir}/${schedlib.libname}" |
| basedir="${schedlib.build.outdir}" |
| includes="**"/> |
| </target> |
| |
| |
| <!-- ******************* --> |
| <!-- sched-build-lib --> |
| <!-- ******************* --> |
| <property name="sched-build.build.dir" value="${sched.dir}/build/sched-build-lib" /> |
| <property name="sched-build.build.outdir" value="${sched-build.build.dir}/classes" /> |
| <property name="sched-build.dist.dir" value="${sched.dir}/dist" /> |
| <property name="sched-build.libname" value="sched-build-lib.jar" /> |
| |
| <target name="sched-build-lib-clean"> |
| <delete dir="${sched-build.build.dir}" /> |
| <delete file="${sched-build.dist.dir}/${sched-build.libname}" /> |
| </target> |
| |
| <target name="sched-build-lib-compile" depends="sched-copy-libs"> |
| <!-- project layout --> |
| <mkdir dir="${sched-build.build.outdir}"/> |
| <mkdir dir="${sched-build.dist.dir}"/> |
| <!-- compile --> |
| <javac |
| srcdir="${sched.dir}/src" |
| destdir="${sched-build.build.outdir}" |
| source="1.5" target="1.5" |
| debug="true" includeantruntime="false" includeDestClasses="false"> |
| <classpath> |
| <fileset file="${jsr305.dist.dir}/${jsr305.libname}"/> |
| </classpath> |
| <include name="com/android/sched/build/SchedAnnotationProcessor.java" /> |
| <include name="com/android/sched/build/JarMerger.java"/> |
| </javac> |
| </target> |
| |
| <target name="sched-build-lib" depends="sched-build-lib-compile"> |
| <!-- package --> |
| <copy todir="${sched-build.build.outdir}"> |
| <fileset dir="${sched.dir}/rsc-ap"> |
| <include name="**" /> |
| </fileset> |
| </copy> |
| <jar destfile="${sched-build.dist.dir}/${sched-build.libname}" |
| basedir="${sched-build.build.outdir}" includes="**"/> |
| </target> |
| |
| |
| <!-- ******************* --> |
| <!-- sched-build --> |
| <!-- ******************* --> |
| <property name="sched-build.execname" value="sched-build.jar" /> |
| <property name="sched-build.exec.build.dir" value="${sched.dir}/build/sched-build" /> |
| <property name="sched-build.exec.build.outdir" value="${sched-build.exec.build.dir}/classes" /> |
| |
| <target name="sched-build-clean" depends="sched-build-lib-clean"> |
| <delete dir="${sched-build.exec.build.dir}" /> |
| <delete file="${sched.dir}/tools/${sched-build.execname}" /> |
| <delete file="${sched-build.dist.dir}/${sched-build.execname}" /> |
| </target> |
| |
| <target name="sched-build" depends="sched-build-lib-compile"> |
| <!-- package --> |
| <copy todir="${sched-build.exec.build.outdir}"> |
| <fileset dir="${sched-build.build.outdir}" includes="**/*.class" /> |
| </copy> |
| <copy todir="${sched-build.exec.build.outdir}"> |
| <fileset dir="${sched.dir}/rsc-ap"> |
| <include name="**" /> |
| </fileset> |
| </copy> |
| <jar destfile="${sched-build.dist.dir}/${sched-build.execname}" |
| basedir="${sched-build.exec.build.outdir}" includes="**" manifest="${sched.dir}/etc/manifest.txt" /> |
| <copy file="${sched-build.dist.dir}/${sched-build.execname}" todir="${sched.dir}/tools"/> |
| </target> |
| |
| |
| <!-- ******************* --> |
| <!-- schedtests-lib --> |
| <!-- ******************* --> |
| <property name="schedtests.build.dir" value="${sched.dir}/build/schedtests" /> |
| <property name="schedtests.build.outdir" value="${schedtests.build.dir}/classes" /> |
| <property name="schedtests.dist.dir" value="${sched.dir}/dist" /> |
| <property name="schedtests.libname" value="schedtests-lib.jar" /> |
| |
| <target name="schedtests-lib-clean"> |
| <delete dir="${schedtests.build.dir}" /> |
| <delete dir="${schedtests.dist.dir}" /> |
| </target> |
| |
| <target name="schedtests-lib" depends="jack,sched-copy-libs,sched-lib,guava-lib,jsr305-lib,junit4-lib"> |
| <!-- project layout --> |
| <mkdir dir="${schedtests.build.outdir}" /> |
| <mkdir dir="${schedtests.dist.dir}" /> |
| <filelist id="schedtests.link.libs.fileset" dir="/"> |
| <file name="${schedlib.dist.dir}/${schedlib.libname}" /> |
| <file name="${guava.dist.dir}/${guava.libname}" /> |
| <file name="${jsr305.dist.dir}/${jsr305.libname}" /> |
| <file name="${junit4.dist.dir}/${junit4.libname}" /> |
| </filelist> |
| <!-- compile --> |
| <javac srcdir="${sched.dir}/tests" |
| destdir="${schedtests.build.outdir}" |
| source="1.5" target="1.5" |
| debug="true" includeantruntime="false" includeDestClasses="false"> |
| <classpath> |
| <filelist refid="schedtests.link.libs.fileset"/> |
| </classpath> |
| </javac> |
| <!-- package --> |
| <jar destfile="${schedtests.dist.dir}/${schedtests.libname}" |
| basedir="${schedtests.build.outdir}" includes="**" /> |
| </target> |
| |
| |
| |
| <!-- ******************* --> |
| <!-- watchmaker-lib --> |
| <!-- ******************* --> |
| <property name="watchmaker.build.dir" value="${watchmaker.dir}/build"/> |
| <property name="watchmaker.libs.dir" value="${watchmaker.dir}/libs"/> |
| <property name="watchmaker.build.outdir" value="${watchmaker.build.dir}/classes"/> |
| <property name="watchmaker.dist.dir" value="${watchmaker.dir}/dist" /> |
| <property name="watchmaker.libname" value="watchmaker-lib.jar"/> |
| |
| <target name="watchmaker-lib-clean"> |
| <delete dir="${watchmaker.build.dir}"/> |
| <delete dir="${watchmaker.dist.dir}"/> |
| </target> |
| |
| <target name="watchmaker-lib" depends="maths-lib,guava-lib"> |
| <!-- project layout --> |
| <mkdir dir="${watchmaker.build.outdir}"/> |
| <mkdir dir="${watchmaker.dist.dir}"/> |
| <!-- compile --> |
| <javac srcdir="${watchmaker.dir}/framework/src/java/main" |
| destdir="${watchmaker.build.outdir}" |
| source="1.5" target="1.5" |
| debug="true" includeantruntime="false" includeDestClasses="false"> |
| <classpath> |
| <filelist dir="/"> |
| <file name="${maths.dist.dir}/${maths.libname}" /> |
| <file name="${guava.dist.dir}/${guava.libname}" /> |
| </filelist> |
| </classpath> |
| </javac> |
| <!-- package --> |
| <jar destfile="${watchmaker.dist.dir}/${watchmaker.libname}" |
| basedir="${watchmaker.build.outdir}" |
| includes="**"/> |
| </target> |
| |
| |
| <!-- ******************* --> |
| <!-- antlr-runtime-lib --> |
| <!-- ******************* --> |
| <property name="antlr-rt.build.dir" value="${antlr-rt.dir}/build" /> |
| <property name="antlr-rt.build.outdir" value="${antlr-rt.build.dir}/classes" /> |
| <property name="antlr-rt.dist.dir" value="${antlr-rt.dir}/dist" /> |
| <property name="antlr-rt.libname" value="antlr-runtime-lib.jar" /> |
| |
| <target name="antlr-rt-lib-clean"> |
| <delete dir="${antlr-rt.build.dir}" /> |
| <delete dir="${antlr-rt.dist.dir}" /> |
| </target> |
| |
| <target name="antlr-rt-lib"> |
| <!-- project layout --> |
| <mkdir dir="${antlr-rt.build.outdir}"/> |
| <mkdir dir="${antlr-rt.dist.dir}"/> |
| <!-- compile --> |
| <javac srcdir="${antlr-rt.dir}/antlr-3.4/runtime/Java/src/main/java" |
| destdir="${antlr-rt.build.outdir}" |
| source="1.5" target="1.5" |
| debug="true" includeantruntime="false" includeDestClasses="false"> |
| <exclude name="org/antlr/runtime/tree/DOTTreeGenerator.java" /> |
| </javac> |
| <!-- package --> |
| <jar destfile="${antlr-rt.dist.dir}/${antlr-rt.libname}" |
| basedir="${antlr-rt.build.outdir}" |
| includes="**"/> |
| </target> |
| |
| |
| <!-- ******************* --> |
| <!-- allocation-lib --> |
| <!-- ******************* --> |
| <property name="allocation.build.dir" value="${allocation.dir}/build" /> |
| <property name="allocation.build.outdir" value="${allocation.build.dir}/classes" /> |
| <property name="allocation.dist.dir" value="${allocation.dir}/dist" /> |
| <property name="allocation.libname" value="allocation-lib.jar" /> |
| |
| <target name="allocation-lib-clean"> |
| <delete dir="${allocation.build.dir}" /> |
| <delete dir="${allocation.dist.dir}" /> |
| </target> |
| |
| <target name="allocation-lib" depends="guava-lib"> |
| <!-- project layout --> |
| <mkdir dir="${allocation.build.outdir}"/> |
| <mkdir dir="${allocation.dist.dir}"/> |
| <!-- compile --> |
| <javac srcdir="${allocation.dir}/src/main/java" |
| destdir="${allocation.build.outdir}" |
| source="1.5" target="1.5" |
| debug="true" includeantruntime="false" includeDestClasses="false"> |
| <classpath> |
| <filelist dir="/"> |
| <file name="${guava.dist.dir}/${guava.libname}" /> |
| </filelist> |
| </classpath> |
| </javac> |
| <!-- package --> |
| <jar destfile="${allocation.dist.dir}/${allocation.libname}" |
| basedir="${allocation.build.outdir}" |
| includes="**"/> |
| </target> |
| |
| |
| <!-- ******************* --> |
| <!-- junit4-lib --> |
| <!-- ******************* --> |
| <property name="junit4.build.dir" value="${junit4.dir}/build/junit4-lib" /> |
| <property name="junit4.build.outdir" value="${junit4.build.dir}/classes" /> |
| <property name="junit4.dist.dir" value="${junit4.dir}/dist" /> |
| <property name="junit4.libname" value="junit4-lib.jar" /> |
| |
| <target name="junit4-lib-clean"> |
| <delete dir="${junit4.build.dir}" /> |
| <delete file="${junit4.dist.dir}/${junit4.libname}" /> |
| </target> |
| |
| <target name="junit4-lib-compile" depends="hamcrest-core-lib"> |
| <!-- project layout --> |
| <mkdir dir="${junit4.build.outdir}"/> |
| <mkdir dir="${junit4.dist.dir}"/> |
| <!-- compile --> |
| <javac srcdir="${junit4.dir}/src/main/java" |
| destdir="${junit4.build.outdir}" |
| source="1.5" target="1.5" |
| debug="true" includeantruntime="false" includeDestClasses="false"> |
| <classpath> |
| <filelist dir="/"> |
| <file name="${hamcrest-core.dist.dir}/${hamcrest-core.libname}" /> |
| </filelist> |
| </classpath> |
| </javac> |
| </target> |
| |
| <target name="junit4-lib" depends="junit4-lib-compile"> |
| <!-- package --> |
| <jar destfile="${junit4.dist.dir}/${junit4.libname}" |
| basedir="${junit4.build.outdir}" |
| includes="**"/> |
| </target> |
| |
| <!-- ******************* --> |
| <!-- junit4 --> |
| <!-- ******************* --> |
| <property name="junit4.execname" value="junit4.jar" /> |
| <property name="junit4.exec.build.dir" value="${junit4.dir}/build/junit4" /> |
| <property name="junit4.exec.build.outdir" value="${junit4.exec.build.dir}/classes" /> |
| |
| <target name="junit4-clean" depends="junit4-lib-clean"> |
| <delete file="${junit4.dist.dir}/${junit4.execname}" /> |
| <delete dir="${junit4.exec.build.dir}"/> |
| </target> |
| |
| <target name="junit4" depends="junit4-lib-compile"> |
| <!-- package --> |
| <copy todir="${junit4.exec.build.outdir}"> |
| <fileset dir="${junit4.build.outdir}" includes="**/*.class" /> |
| </copy> |
| <unzip dest="${junit4.exec.build.outdir}"> |
| <filelist dir="/"> |
| <file name="${hamcrest-core.dist.dir}/${hamcrest-core.libname}" /> |
| </filelist> |
| </unzip> |
| <jar destfile="${junit4.dist.dir}/${junit4.execname}" |
| basedir="${junit4.exec.build.outdir}" |
| includes="**"/> |
| </target> |
| |
| |
| <!-- ******************* --> |
| <!-- hamcrest-core-lib --> |
| <!-- ******************* --> |
| <property name="hamcrest-core.build.dir" value="${hamcrest-core.dir}/build" /> |
| <property name="hamcrest-core.build.outdir" value="${hamcrest-core.build.dir}/classes" /> |
| <property name="hamcrest-core.dist.dir" value="${hamcrest-core.dir}/dist" /> |
| <property name="hamcrest-core.libname" value="hamcrest-core-lib.jar" /> |
| |
| <target name="hamcrest-core-lib-clean"> |
| <delete dir="${hamcrest-core.build.dir}" /> |
| <delete dir="${hamcrest-core.dist.dir}" /> |
| </target> |
| |
| <target name="hamcrest-core-lib"> |
| <!-- project layout --> |
| <mkdir dir="${hamcrest-core.build.outdir}"/> |
| <mkdir dir="${hamcrest-core.dist.dir}"/> |
| <!-- compile --> |
| <javac srcdir="${hamcrest-core.dir}/src" |
| destdir="${hamcrest-core.build.outdir}" |
| source="1.5" target="1.5" |
| debug="true" includeantruntime="false" includeDestClasses="false"/> |
| <!-- package --> |
| <jar destfile="${hamcrest-core.dist.dir}/${hamcrest-core.libname}" |
| basedir="${hamcrest-core.build.outdir}" |
| includes="**"/> |
| </target> |
| |
| |
| <!-- *************** --> |
| <!-- dexcomparator --> |
| <!-- *************** --> |
| <property name="dexcomparator.execname" value="dexcomparator.jar" /> |
| <property name="dexcomparator.build.dir" value="${dexcomparator.dir}/build" /> |
| <property name="dexcomparator.libs.dir" value="${dexcomparator.dir}/libs" /> |
| <property name="dexcomparator.build.outdir" value="${dexcomparator.build.dir}/classes" /> |
| <property name="dexcomparator.dist.dir" value="${dexcomparator.dir}/dist" /> |
| |
| <target name="dexcomparator-clean"> |
| <delete dir="${dexcomparator.build.dir}" /> |
| <delete dir="${dexcomparator.libs.dir}" /> |
| <delete dir="${dexcomparator.dist.dir}" /> |
| </target> |
| |
| <target name="dexcomparator-compile" depends="dx-lib,dex-lib,jsr305-lib,guava-lib,args4j-lib"> |
| <!-- project layout --> |
| <mkdir dir="${dexcomparator.build.outdir}"/> |
| <mkdir dir="${dexcomparator.libs.dir}"/> |
| <mkdir dir="${dexcomparator.dist.dir}"/> |
| <!-- fetch dependencies --> |
| <copy todir="${dexcomparator.libs.dir}" flatten="true"> |
| <filelist dir="/"> |
| <file name="${dx.dist.dir}/${dx.libname}" /> |
| <file name="${dexlib.dist.dir}/${dexlib.libname}" /> |
| <file name="${jsr305.dist.dir}/${jsr305.libname}" /> |
| <file name="${guava.dist.dir}/${guava.libname}" /> |
| <file name="${args4j.dist.dir}/${args4j.libname}" /> |
| </filelist> |
| </copy> |
| <!-- compile --> |
| <javac srcdir="${dexcomparator.dir}/src" |
| destdir="${dexcomparator.build.outdir}" |
| source="1.5" target="1.5" |
| debug="true" includeantruntime="false" includeDestClasses="false"> |
| <classpath> |
| <fileset dir="${dexcomparator.libs.dir}"> |
| <include name="**/*.jar"/> |
| </fileset> |
| </classpath> |
| </javac> |
| </target> |
| |
| <target name="dexcomparator" depends="dexcomparator-compile"> |
| <jar destfile="${dexcomparator.dist.dir}/${dexcomparator.execname}" |
| manifest="${dexcomparator.dir}/etc/manifest.txt" |
| basedir="${dexcomparator.build.outdir}" includes="**"> |
| <zipgroupfileset dir="${dexcomparator.dir}/libs" includes="**/*.jar" /> |
| </jar> |
| </target> |
| |
| <!-- ******************* --> |
| <!-- dexcomparator-lib --> |
| <!-- ******************* --> |
| <property name="dexcomparator.libname" value="dexcomparator-lib.jar" /> |
| |
| <target name="dexcomparator-lib" depends="dexcomparator-compile"> |
| <!-- package --> |
| <jar destfile="${dexcomparator.dist.dir}/${dexcomparator.libname}" |
| basedir="${dexcomparator.build.outdir}" |
| includes="**"/> |
| </target> |
| |
| |
| <!-- ******************* --> |
| <!-- dex-lib --> |
| <!-- ******************* --> |
| <property name="dexlib.build.dir" value="${dexlib.dir}/build" /> |
| <property name="dexlib.build.outdir" value="${dexlib.build.dir}/classes" /> |
| <property name="dexlib.dist.dir" value="${dexlib.dir}/dist" /> |
| <property name="dexlib.libname" value="dex-lib.jar" /> |
| <property name="dexlib.version" value="1.4.2" /> |
| |
| <target name="dex-lib-clean"> |
| <delete dir="${dexlib.build.dir}" /> |
| <delete dir="${dexlib.dist.dir}" /> |
| </target> |
| |
| <target name="dex-lib" depends="guava-lib,jsr305-lib"> |
| <!-- project layout --> |
| <mkdir dir="${dexlib.build.outdir}"/> |
| <mkdir dir="${dexlib.dist.dir}"/> |
| <!-- compile --> |
| <javac srcdir="${dexlib.dir}/src/main/java" |
| destdir="${dexlib.build.outdir}" |
| source="1.5" target="1.5" |
| debug="true" includeantruntime="false" includeDestClasses="false"> |
| <classpath> |
| <filelist dir="/"> |
| <file name="${guava.dist.dir}/${guava.libname}"/> |
| <file name="${jsr305.dist.dir}/${jsr305.libname}"/> |
| </filelist> |
| </classpath> |
| </javac> |
| <!-- generate dexlib.properties --> |
| <echo message="application.version=${dexlib.version}" |
| file="${dexlib.build.outdir}/dexlib.properties"/> |
| <!-- package --> |
| <jar destfile="${dexlib.dist.dir}/${dexlib.libname}" |
| basedir="${dexlib.build.outdir}" |
| includes="**"/> |
| </target> |
| |
| |
| <!-- ******************* --> |
| <!-- core-stubs-mini --> |
| <!-- ******************* --> |
| <property name="core-stubs-mini.dist.dir" value="${core-stubs-mini.dir}/dist"/> |
| <property name="core-stubs-mini.build.dir" value="${core-stubs-mini.dir}/build"/> |
| <property name="core-stubs-mini.build.outdir" value="${core-stubs-mini.build.dir}/classes"/> |
| <property name="core-stubs-mini.libname" value="core-stubs-mini.jar"/> |
| |
| <target name="core-stubs-mini-clean"> |
| <delete dir="${core-stubs-mini.build.dir}" /> |
| <delete dir="${core-stubs-mini.dist.dir}" /> |
| </target> |
| |
| <target name="core-stubs-mini" depends="jack"> |
| <mkdir dir="${core-stubs-mini.dist.dir}"/> |
| <mkdir dir="${core-stubs-mini.build.outdir}"/> |
| <fileset dir="${core-stubs-mini.dir}/src"> |
| <include name="**/*.java"/> |
| </fileset> |
| <java jar="${jack.dist.dir}/${jack.execname}" fork="true" failonerror="true"> |
| <arg value="--output-jack"/> |
| <arg value="${core-stubs-mini.build.dir}/${core-stubs-mini.libname}"/> |
| <arg value="${core-stubs-mini.dir}/src"/> |
| </java> |
| <unzip src = "${core-stubs-mini.build.dir}/${core-stubs-mini.libname}" |
| dest = "${core-stubs-mini.build.outdir}" /> |
| <javac srcdir="${core-stubs-mini.dir}/src" |
| destdir="${core-stubs-mini.build.outdir}" |
| source="1.5" target="1.5" debug="true" includeantruntime="false" includeDestClasses="false"/> |
| <jar destfile="${core-stubs-mini.dist.dir}/${core-stubs-mini.libname}" |
| basedir="${core-stubs-mini.build.outdir}" |
| includes="**"/> |
| <copy todir="${jack.libs.dir}" flatten="true"> |
| <filelist dir="/"> |
| <file name="${core-stubs-mini.dist.dir}/${core-stubs-mini.libname}"/> |
| </filelist> |
| </copy> |
| </target> |
| </project> |
| |
| |