Order files
This commit is contained in:
260
android/tools/android-osx/tools/ant/uibuild.xml
Executable file
260
android/tools/android-osx/tools/ant/uibuild.xml
Executable file
@@ -0,0 +1,260 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project name="android_rules" default="debug">
|
||||
|
||||
<!--
|
||||
This build file is imported by the project build file. It contains
|
||||
all the targets and tasks necessary to build Android projects, be they
|
||||
regular projects, library projects, or test projects.
|
||||
|
||||
At the beginning of the file is a list of properties that can be overridden
|
||||
by adding them to your ant.properties (properties are immutable, so their
|
||||
first definition sticks and is never changed).
|
||||
|
||||
Follows:
|
||||
- custom task definitions,
|
||||
- more properties (do not override those unless the whole build system is modified).
|
||||
- macros used throughout the build,
|
||||
- base build targets,
|
||||
- debug-specific build targets,
|
||||
- release-specific build targets,
|
||||
- instrument-specific build targets,
|
||||
- test project-specific build targets,
|
||||
- install targets,
|
||||
- help target
|
||||
-->
|
||||
|
||||
<!-- ******************************************************* -->
|
||||
<!-- **************** Overridable Properties *************** -->
|
||||
<!-- ******************************************************* -->
|
||||
|
||||
<!-- You can override these values in your build.xml or ant.properties.
|
||||
Overriding any other properties may result in broken build. -->
|
||||
|
||||
<!-- Tells adb which device to target. You can change this from the command line
|
||||
by invoking "ant -Dadb.device.arg=-d" for device "ant -Dadb.device.arg=-e" for
|
||||
the emulator. -->
|
||||
<property name="adb.device.arg" value="" />
|
||||
|
||||
<!-- filename only of the output file. Cannot be a path -->
|
||||
<property name="out.filename" value="${ant.project.name}.jar" />
|
||||
|
||||
<!-- compilation options -->
|
||||
<property name="java.encoding" value="UTF-8" />
|
||||
<property name="java.target" value="1.5" />
|
||||
<property name="java.source" value="1.5" />
|
||||
<property name="java.compilerargs" value="" />
|
||||
|
||||
<!-- Verbosity -->
|
||||
<property name="verbose" value="false" />
|
||||
|
||||
<!-- ******************************************************* -->
|
||||
<!-- ********************* Custom Tasks ******************** -->
|
||||
<!-- ******************************************************* -->
|
||||
|
||||
<!-- jar file from where the tasks are loaded -->
|
||||
<path id="android.antlibs">
|
||||
<pathelement path="${sdk.dir}/tools/lib/ant-tasks.jar" />
|
||||
</path>
|
||||
|
||||
<!-- Custom tasks -->
|
||||
<taskdef resource="anttasks.properties" classpathref="android.antlibs" />
|
||||
|
||||
<!-- Emma configuration -->
|
||||
<property name="emma.dir" value="${sdk.dir}/tools/lib" />
|
||||
<path id="emma.lib">
|
||||
<pathelement location="${emma.dir}/emma.jar" />
|
||||
<pathelement location="${emma.dir}/emma_ant.jar" />
|
||||
</path>
|
||||
<taskdef resource="emma_ant.properties" classpathref="emma.lib" />
|
||||
<!-- End of emma configuration -->
|
||||
|
||||
|
||||
<!-- ******************************************************* -->
|
||||
<!-- ******************* Other Properties ****************** -->
|
||||
<!-- ******************************************************* -->
|
||||
<!-- overriding these properties may break the build
|
||||
unless the whole file is updated -->
|
||||
|
||||
<!-- Input directories -->
|
||||
<property name="source.dir" value="src" />
|
||||
<property name="source.absolute.dir" location="${source.dir}" />
|
||||
<property name="jar.libs.dir" value="libs" />
|
||||
<property name="jar.libs.absolute.dir" location="${jar.libs.dir}" />
|
||||
|
||||
<!-- Output directories -->
|
||||
<property name="out.dir" value="bin" />
|
||||
<property name="out.absolute.dir" location="${out.dir}" />
|
||||
<property name="out.classes.absolute.dir" location="${out.dir}/classes" />
|
||||
|
||||
<property name="out.file" value="${out.absolute.dir}/${out.filename}" />
|
||||
|
||||
<!-- tools location -->
|
||||
<property name="android.tools.dir" location="${sdk.dir}/tools" />
|
||||
<property name="android.platform.tools.dir" location="${sdk.dir}/platform-tools" />
|
||||
<condition property="exe" value=".exe" else=""><os family="windows" /></condition>
|
||||
<condition property="bat" value=".bat" else=""><os family="windows" /></condition>
|
||||
<property name="adb" location="${android.platform.tools.dir}/adb${exe}" />
|
||||
|
||||
<!-- Intermediate files -->
|
||||
<property name="dex.file.name" value="classes.dex" />
|
||||
<property name="intermediate.dex.file" location="${out.absolute.dir}/${dex.file.name}" />
|
||||
<property name="resource.package.file.name" value="${ant.project.name}.ap_" />
|
||||
|
||||
<!-- whether we need to fork javac.
|
||||
This is only needed on Windows when running Java < 7 -->
|
||||
<condition else="false" property="need.javac.fork">
|
||||
<and>
|
||||
<matches pattern="1\.[56]" string="${java.specification.version}"/>
|
||||
<not>
|
||||
<os family="unix"/>
|
||||
</not>
|
||||
</and>
|
||||
</condition>
|
||||
|
||||
<macrodef name="run-tests-helper">
|
||||
<attribute name="emma.enabled" default="false" />
|
||||
<element name="extra-instrument-args" optional="yes" />
|
||||
<sequential>
|
||||
<echo level="info">Running tests ...</echo>
|
||||
<exec executable="${adb}" failonerror="true">
|
||||
<arg line="${adb.device.arg}" />
|
||||
<arg value="shell" />
|
||||
<arg value="am" />
|
||||
<arg value="instrument" />
|
||||
<arg value="-w" />
|
||||
<arg value="-e" />
|
||||
<arg value="coverage" />
|
||||
<arg value="@{emma.enabled}" />
|
||||
<extra-instrument-args />
|
||||
<arg value="${project.app.package}/${test.runner}" />
|
||||
</exec>
|
||||
</sequential>
|
||||
</macrodef>
|
||||
|
||||
<!-- ******************************************************* -->
|
||||
<!-- ******************** Build Targets ******************** -->
|
||||
<!-- ******************************************************* -->
|
||||
|
||||
<!-- Basic Ant + SDK check -->
|
||||
<target name="-check-env">
|
||||
<checkenv />
|
||||
</target>
|
||||
|
||||
<!-- empty default pre-clean target. Create a similar target in
|
||||
your build.xml and it'll be called instead of this one. -->
|
||||
<target name="-pre-clean"/>
|
||||
|
||||
<!-- clean target -->
|
||||
<target name="clean" depends="-check-env, -pre-clean"
|
||||
description="Removes output files created by other targets.">
|
||||
<delete dir="${out.absolute.dir}" verbose="${verbose}" />
|
||||
</target>
|
||||
|
||||
<!-- Pre build setup -->
|
||||
<target name="-build-setup" depends="-check-env">
|
||||
<getbuildtools name="android.build.tools.dir" />
|
||||
<property name="dx" location="${android.build.tools.dir}/dx${bat}" />
|
||||
|
||||
<echo level="info">Resolving Build Target for ${ant.project.name}...</echo>
|
||||
<!-- load project properties, resolve Android target, library dependencies
|
||||
and set some properties with the results.
|
||||
All property names are passed as parameters ending in -Out -->
|
||||
<getuitarget compileClassPathOut="project.target.class.path" />
|
||||
|
||||
<echo level="info">----------</echo>
|
||||
<echo level="info">Creating output directories if needed...</echo>
|
||||
<mkdir dir="${out.absolute.dir}" />
|
||||
<mkdir dir="${out.classes.absolute.dir}" />
|
||||
|
||||
</target>
|
||||
|
||||
<!-- empty default pre-compile target. Create a similar target in
|
||||
your build.xml and it'll be called instead of this one. -->
|
||||
<target name="-pre-compile"/>
|
||||
|
||||
<!-- Compiles this project's .java files into .class files. -->
|
||||
<target name="compile" depends="-build-setup, -pre-compile">
|
||||
<javac encoding="${java.encoding}"
|
||||
source="${java.source}" target="${java.target}"
|
||||
debug="true" extdirs="" includeantruntime="false"
|
||||
destdir="${out.classes.absolute.dir}"
|
||||
bootclasspathref="project.target.class.path"
|
||||
verbose="${verbose}"
|
||||
fork="${need.javac.fork}">
|
||||
<src path="${source.absolute.dir}" />
|
||||
<compilerarg line="${java.compilerargs}" />
|
||||
</javac>
|
||||
</target>
|
||||
|
||||
<!-- empty default post-compile target. Create a similar target in
|
||||
your build.xml and it'll be called instead of this one. -->
|
||||
<target name="-post-compile"/>
|
||||
|
||||
<!-- Converts this project's .class files into .dex files -->
|
||||
<target name="-dex" depends="compile, -post-compile">
|
||||
<dex executable="${dx}"
|
||||
output="${intermediate.dex.file}"
|
||||
nolocals="@{nolocals}"
|
||||
verbose="${verbose}">
|
||||
<path path="${out.classes.absolute.dir}"/>
|
||||
</dex>
|
||||
</target>
|
||||
|
||||
<!-- empty default post-dex target. Create a similar target in
|
||||
your build.xml and it'll be called instead of this one. -->
|
||||
<target name="-post-dex"/>
|
||||
|
||||
<target name="-jar" depends="-dex, -post-dex" >
|
||||
<jar destfile="${out.file}">
|
||||
<fileset file="${intermediate.dex.file}" />
|
||||
</jar>
|
||||
</target>
|
||||
|
||||
<!-- empty default post-jar target. Create a similar target in
|
||||
your build.xml and it'll be called instead of this one. -->
|
||||
<target name="-post-jar"/>
|
||||
|
||||
<target name="build" depends="-jar, -post-jar" />
|
||||
|
||||
<target name="install" description="Install the test package">
|
||||
<exec executable="${adb}" failonerror="true">
|
||||
<arg line="${adb.device.arg}" />
|
||||
<arg value="push" />
|
||||
<arg value="${out.file}" />
|
||||
<arg value="/data/local/tmp" />
|
||||
</exec>
|
||||
</target>
|
||||
|
||||
<target name="test" description="Runs tests">
|
||||
<!-- todo: fix this -->
|
||||
<fail message="Launching tests from Ant not supported yet" />
|
||||
|
||||
<exec executable="${adb}" failonerror="true">
|
||||
<arg line="${adb.device.arg}" />
|
||||
<arg value="shell" />
|
||||
<arg value="uiautomator" />
|
||||
<arg value="runtest" />
|
||||
<arg value="${out.filename}" />
|
||||
<arg value="-e" />
|
||||
<arg value="class" />
|
||||
<arg value="com.android.uiautomator.samples.skeleton.DemoTestCase" />
|
||||
</exec>
|
||||
</target>
|
||||
|
||||
<target name="help">
|
||||
<!-- displays starts at col 13
|
||||
|13 80| -->
|
||||
<echo>Android Ant Build. Available targets:</echo>
|
||||
<echo> help: Displays this help.</echo>
|
||||
<echo> clean: Removes output files created by other targets.</echo>
|
||||
<echo> build: Builds the test library.</echo>
|
||||
<echo> install: Installs the library on a connected device or</echo>
|
||||
<echo> emulator.</echo>
|
||||
<echo> test: Runs the tests.</echo>
|
||||
<echo></echo>
|
||||
<echo>It is possible to mix targets. For instance:</echo>
|
||||
<echo> ant build install test</echo>
|
||||
<echo>This will build, install and run the test in a single command.</echo>
|
||||
</target>
|
||||
|
||||
</project>
|
Reference in New Issue
Block a user