| <?xml version="1.0" encoding="UTF-8"?> |
| <project name="AndroidMockGenerator" default="mockgen.build" basedir=".."> |
| <!-- Global Properties --> |
| <property file="../build.properties"/> |
| |
| <!-- Android Mock Generator Properties --> |
| <property name="mockgen.bin" value="bin"/> |
| <property name="mockgen.class-bin" value="bin/classes"/> |
| <property name="mockgen.deploy-jar" value="AndroidMockGenerator.jar"/> |
| <property name="mockgen.includes" value="${java-package}/GeneratedMockJar.readme"/> |
| <property name="mockgen.java-files" value="com/google/android/testing/mocking/*.java"/> |
| <property name="mockgen.nodeps-jar" value="AndroidMockGenerator-nodeps.jar"/> |
| <property name="meta-service-folder" value="META-INF/services"/> |
| <property name="annotations-meta-file" |
| value="${meta-service-folder}/javax.annotation.processing.Processor"/> |
| |
| <!-- Classpaths --> |
| <path id="generator.path"> |
| <pathelement location="${lib-folder}/${easymock-jar}"/> |
| <pathelement location="${lib-folder}/${javassist-jar}"/> |
| </path> |
| |
| <!-- Private Targets --> |
| <target name="-mockgen.dirs"> |
| <mkdir dir="${mockgen.bin}"/> |
| <mkdir dir="${mockgen.class-bin}"/> |
| <mkdir dir="${mockgen.class-bin}/${meta-service-folder}"/> |
| </target> |
| |
| <target name="-mockgen.clean-staging"> |
| <delete dir="${staging}"/> |
| </target> |
| |
| <!-- Public Targets --> |
| <target name="mockgen.clean" depends="-mockgen.clean-staging"> |
| <delete file="${mockgen.deploy-jar}"/> |
| <delete file="${mockgen.nodeps-jar}"/> |
| <delete dir="${mockgen.class-bin}"/> |
| </target> |
| |
| <target name="mockgen.build" depends="-mockgen.clean-staging,-mockgen.dirs" |
| description="Builds the Mock Generator jar file"> |
| <javac destdir="${mockgen.class-bin}" srcdir="${source-base}" |
| includes="${mockgen.java-files}" debug="true"> |
| <classpath refid="generator.path"/> |
| </javac> |
| <copy todir="${mockgen.class-bin}"> |
| <fileset dir="${source-base}" includes="${mockgen.includes}"/> |
| </copy> |
| <echo file="${mockgen.class-bin}/${annotations-meta-file}" |
| message="com.google.android.testing.mocking.UsesMocksProcessor"/> |
| <manifestclasspath property="frameworkjar.classpath" |
| jarfile="${mockgen.bin}/${mockgen.nodeps-jar}"> |
| <classpath location="${framework.mock-bin}/${framework.mock-jar}"/> |
| </manifestclasspath> |
| <tstamp> |
| <format property="build.time" pattern="dd-MMMM-yyyy hh:mm aa"/> |
| </tstamp> |
| <jar destfile="${mockgen.bin}/${mockgen.nodeps-jar}" basedir="${mockgen.class-bin}"> |
| <manifest> |
| <attribute name="Built-On" value="${build.time}"/> |
| </manifest> |
| </jar> |
| </target> |
| |
| <target name="mockgen.build-deploy" depends="mockgen.build" |
| description="Builds the Mock Generator jar file with dependencies included."> |
| <unjar dest="${staging}"> |
| <fileset dir="."> |
| <include name="${mockgen.bin}/${mockgen.nodeps-jar}"/> |
| <include name="${lib-folder}/${easymock-jar}"/> |
| <include name="${lib-folder}/${javassist-jar}"/> |
| </fileset> |
| </unjar> |
| <tstamp/> |
| <jar destfile="${mockgen.bin}/${mockgen.deploy-jar}" basedir="${staging}"> |
| <manifest> |
| <attribute name="Built-On" value="${build.time}"/> |
| </manifest> |
| </jar> |
| </target> |
| </project> |