1<project name="BTstack" basedir="." default="main"> 2 3 <property name="src.dir" value="src"/> 4 <property name="gen.dir" value="gen"/> 5 <property name="example.dir" value="example"/> 6 7 <property name="build.dir" value="build"/> 8 <property name="classes.dir" value="${build.dir}/classes"/> 9 <property name="jar.dir" value="${build.dir}/jar"/> 10 11 <property name="test-class" value="com.bluekitchen.GATTClientTest"/> 12 13 <target name="clean"> 14 <delete dir="${build.dir}"/> 15 <delete dir="${gen.dir}"/> 16 </target> 17 18 <target name="generate"> 19 <mkdir dir="${gen.dir}"/> 20 <exec executable="../../tool/java_binding.py"/> 21 </target> 22 23 <target name="compile" depends="generate"> 24 <mkdir dir="${classes.dir}"/> 25 <javac destdir="${classes.dir}"> 26 <src path="${src.dir}" /> 27 <src path="${gen.dir}" /> 28 <src path="${example.dir}" /> 29 </javac> 30 </target> 31 32 <target name="jar" depends="compile"> 33 <mkdir dir="${jar.dir}"/> 34 <jar destfile="${jar.dir}/${ant.project.name}.jar" basedir="${classes.dir}"> 35 <manifest> 36 <attribute name="test-class" value="${test-class}"/> 37 </manifest> 38 </jar> 39 </target> 40 41 <target name="run" depends="jar"> 42 <java fork="true" classname="${test-class}"> 43 <classpath> 44 <path location="${jar.dir}/${ant.project.name}.jar"/> 45 </classpath> 46 </java> 47 </target> 48 49 <target name="clean-build" depends="clean,jar"/> 50 51 <target name="main" depends="clean,run"/> 52 53</project>