Update build script to new tools
parent
4f4271a516
commit
4476f11494
|
@ -5,11 +5,9 @@
|
|||
|
||||
# This file is only used by the Ant script.
|
||||
|
||||
# The name of the source folder.
|
||||
source.dir=src
|
||||
|
||||
# The name of the output folder.
|
||||
out.dir=bin
|
||||
# You can use this to override default values such as
|
||||
# 'source.dir' for the location of your java source folder and
|
||||
# 'out.dir' for the location of your output folder.
|
||||
|
||||
# You can also use it define how the release builds are signed by declaring
|
||||
# the following properties:
|
||||
|
@ -17,3 +15,5 @@ out.dir=bin
|
|||
# 'key.alias' for the name of the key to use.
|
||||
# The password will be asked during the build when you use the 'release' target.
|
||||
|
||||
source.dir=src
|
||||
out.dir=bin
|
113
build.xml
113
build.xml
|
@ -1,15 +1,14 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project name="ConnectBot" default="help">
|
||||
|
||||
<!-- The local.properties file is created and updated by the 'android'
|
||||
tool.
|
||||
It contains the path to the SDK. It should *NOT* be checked into
|
||||
Version Control Systems. -->
|
||||
<property file="local.properties" />
|
||||
<!-- The local.properties file is created and updated by the 'android' tool.
|
||||
It contains the path to the SDK. It should *NOT* be checked into
|
||||
Version Control Systems. -->
|
||||
<loadproperties srcFile="local.properties" />
|
||||
|
||||
<!-- The build.properties file can be created by you and is never touched
|
||||
by the 'android' tool. This is the place to change some of the
|
||||
default property values used by the Ant rules.
|
||||
<!-- The ant.properties file can be created by you. It is only edited by the
|
||||
'android' tool to add properties to it.
|
||||
This is the place to change some Ant specific build properties.
|
||||
Here are some properties you may want to change/update:
|
||||
|
||||
source.dir
|
||||
|
@ -17,6 +16,9 @@
|
|||
out.dir
|
||||
The name of the output directory. Default is 'bin'.
|
||||
|
||||
For other overridable properties, look at the beginning of the rules
|
||||
files in the SDK, at tools/ant/build.xml
|
||||
|
||||
Properties related to the SDK location or the project target should
|
||||
be updated using the 'android' tool with the 'update' action.
|
||||
|
||||
|
@ -24,22 +26,13 @@
|
|||
application and should be checked into Version Control Systems.
|
||||
|
||||
-->
|
||||
<property file="build.properties" />
|
||||
<property file="ant.properties" />
|
||||
|
||||
<!-- The default.properties file is created and updated by the 'android'
|
||||
<!-- The project.properties file is created and updated by the 'android'
|
||||
tool, as well as ADT.
|
||||
This file is an integral part of the build system for your
|
||||
application and should be checked into Version Control Systems. -->
|
||||
<property file="default.properties" />
|
||||
|
||||
<!-- Custom Android task to deal with the project target, and import the
|
||||
proper rules.
|
||||
This requires ant 1.6.0 or above. -->
|
||||
<path id="android.antlibs">
|
||||
<pathelement path="${sdk.dir}/tools/lib/anttasks.jar" />
|
||||
<pathelement path="${sdk.dir}/tools/lib/sdklib.jar" />
|
||||
<pathelement path="${sdk.dir}/tools/lib/androidprefs.jar" />
|
||||
</path>
|
||||
<loadproperties srcFile="project.properties" />
|
||||
|
||||
<!-- Begin custom ConnectBot stuff -->
|
||||
|
||||
|
@ -71,10 +64,10 @@
|
|||
<echo> signatures must match.</echo>
|
||||
<echo> uninstall: Uninstalls the application from a running emulator or</echo>
|
||||
<echo> device.</echo>
|
||||
<echo> translations-import: Import translations from a Launchpad-style</echo>
|
||||
<echo> Rosetta translation.</echo>
|
||||
<echo> translations-export: Export translations to a Launchpad-style</echo>
|
||||
<echo> Rosetta translation.</echo>
|
||||
<echo> translations-import: Import translations from a Launchpad-style</echo>
|
||||
<echo> Rosetta translation.</echo>
|
||||
<echo> translations-export: Export translations to a Launchpad-style</echo>
|
||||
<echo> Rosetta translation.</echo>
|
||||
|
||||
</target>
|
||||
|
||||
|
@ -101,7 +94,6 @@
|
|||
|
||||
<replaceregexp file="${resource.absolute.dir}/values/notrans.xml" encoding="utf8" match='(\x3Cstring name="msg_version">)[^\x3C]*(\x3C/string>)'
|
||||
replace='\1${ant.project.name} ${manifest.version.name} (${git.revision} ${build.date})\2' />
|
||||
|
||||
<echo>Updated "msg_version" to: ${ant.project.name} ${manifest.version.name} (${git.revision} ${build.date})</echo>
|
||||
</target>
|
||||
|
||||
|
@ -109,30 +101,7 @@
|
|||
description="Clean up the result of the build process">
|
||||
<delete dir="${out.absolute.dir}"/>
|
||||
<delete dir="${gen.absolute.dir}"/>
|
||||
<ant dir="tests" target="clean" />
|
||||
</target>
|
||||
|
||||
<target name="tests" depends="install">
|
||||
<echo>Building and installing tests...</echo>
|
||||
<exec executable="ant" failonerror="true">
|
||||
<arg value="-f" />
|
||||
<arg value="tests/build.xml" />
|
||||
<arg value="install"/>
|
||||
</exec>
|
||||
<echo>Running test cases...</echo>
|
||||
<exec executable="${adb}">
|
||||
<arg value="shell" />
|
||||
<arg value="am" />
|
||||
<arg value="instrument" />
|
||||
<arg value="-w" />
|
||||
<arg value="${application-package}.tests/android.test.InstrumentationTestRunner" />
|
||||
<redirector outputproperty="test.results"/>
|
||||
</exec>
|
||||
<fail message="Some unit tests failed:${line.separator}${test.results}">
|
||||
<condition>
|
||||
<contains string="${test.results}" substring="FAILURES"/>
|
||||
</condition>
|
||||
</fail>
|
||||
<ant dir="tests" target="clean" />
|
||||
</target>
|
||||
|
||||
<!-- Translations come from launchpad.net and are placed in the
|
||||
|
@ -160,9 +129,47 @@
|
|||
|
||||
<!-- End custom ConnectBot stuff -->
|
||||
|
||||
<taskdef name="setup"
|
||||
classname="com.android.ant.SetupTask"
|
||||
classpathref="android.antlibs" />
|
||||
<!-- quick check on sdk.dir -->
|
||||
<fail
|
||||
message="sdk.dir is missing. Make sure to generate local.properties using 'android update project'"
|
||||
unless="sdk.dir"
|
||||
/>
|
||||
|
||||
|
||||
<!-- extension targets. Uncomment the ones where you want to do custom work
|
||||
in between standard targets -->
|
||||
<!--
|
||||
<target name="-pre-build">
|
||||
</target>
|
||||
<target name="-pre-compile">
|
||||
</target>
|
||||
|
||||
/* This is typically used for code obfuscation.
|
||||
Compiled code location: ${out.classes.absolute.dir}
|
||||
If this is not done in place, override ${out.dex.input.absolute.dir} */
|
||||
<target name="-post-compile">
|
||||
</target>
|
||||
-->
|
||||
|
||||
<!-- Import the actual build file.
|
||||
|
||||
To customize existing targets, there are two options:
|
||||
- Customize only one target:
|
||||
- copy/paste the target into this file, *before* the
|
||||
<import> task.
|
||||
- customize it to your needs.
|
||||
- Customize the whole content of build.xml
|
||||
- copy/paste the content of the rules files (minus the top node)
|
||||
into this file, replacing the <import> task.
|
||||
- customize to your needs.
|
||||
|
||||
***********************
|
||||
****** IMPORTANT ******
|
||||
***********************
|
||||
In all cases you must update the value of version-tag below to read 'custom' instead of an integer,
|
||||
in order to avoid having your file be overridden by tools such as "android update project"
|
||||
-->
|
||||
<!-- version-tag: custom -->
|
||||
<import file="${sdk.dir}/tools/ant/build.xml" />
|
||||
|
||||
<setup />
|
||||
</project>
|
||||
|
|
|
@ -4,14 +4,11 @@
|
|||
# This file must be checked in Version Control Systems.
|
||||
#
|
||||
# To customize properties used by the Ant build system use,
|
||||
# "build.properties", and override values to adapt the script to your
|
||||
# "ant.properties", and override values to adapt the script to your
|
||||
# project structure.
|
||||
|
||||
# Indicates whether an apk should be generated for each density.
|
||||
split.density=false
|
||||
|
||||
proguard.config=proguard.cfg
|
||||
# Project target.
|
||||
target=android-11
|
||||
|
||||
# Proguard config
|
||||
proguard.config=proguard.cfg
|
|
@ -0,0 +1,21 @@
|
|||
# This file is used to override default values used by the Ant build system.
|
||||
#
|
||||
# This file must be checked in Version Control Systems, as it is
|
||||
# integral to the build system of your project.
|
||||
|
||||
# This file is only used by the Ant script.
|
||||
|
||||
# You can use this to override default values such as
|
||||
# 'source.dir' for the location of your java source folder and
|
||||
# 'out.dir' for the location of your output folder.
|
||||
|
||||
# You can also use it define how the release builds are signed by declaring
|
||||
# the following properties:
|
||||
# 'key.store' for the location of your keystore and
|
||||
# 'key.alias' for the name of the key to use.
|
||||
# The password will be asked during the build when you use the 'release' target.
|
||||
|
||||
tested.project.dir=..
|
||||
source-folder=src
|
||||
application-package=org.connectbot
|
||||
out-folder=bin
|
|
@ -1,16 +0,0 @@
|
|||
# This file is used to override default values used by the Ant build system.
|
||||
#
|
||||
# This file must be checked in Version Control Systems, as it is
|
||||
# integral to the build system of your project.
|
||||
|
||||
# The name of your application package as defined in the manifest.
|
||||
# Used by the 'uninstall' rule.
|
||||
application-package=org.connectbot
|
||||
|
||||
# The name of the source folder.
|
||||
source-folder=src
|
||||
|
||||
# The name of the output folder.
|
||||
out-folder=bin
|
||||
|
||||
tested.project.dir=..
|
|
@ -1,15 +1,14 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project name="ConnectBotTests" default="help">
|
||||
<project name="tests" default="help">
|
||||
|
||||
<!-- The local.properties file is created and updated by the 'android'
|
||||
tool.
|
||||
It contains the path to the SDK. It should *NOT* be checked into
|
||||
Version Control Systems. -->
|
||||
<property file="local.properties" />
|
||||
<!-- The local.properties file is created and updated by the 'android' tool.
|
||||
It contains the path to the SDK. It should *NOT* be checked into
|
||||
Version Control Systems. -->
|
||||
<loadproperties srcFile="local.properties" />
|
||||
|
||||
<!-- The build.properties file can be created by you and is never touched
|
||||
by the 'android' tool. This is the place to change some of the
|
||||
default property values used by the Ant rules.
|
||||
<!-- The ant.properties file can be created by you. It is only edited by the
|
||||
'android' tool to add properties to it.
|
||||
This is the place to change some Ant specific build properties.
|
||||
Here are some properties you may want to change/update:
|
||||
|
||||
source.dir
|
||||
|
@ -17,6 +16,9 @@
|
|||
out.dir
|
||||
The name of the output directory. Default is 'bin'.
|
||||
|
||||
For other overridable properties, look at the beginning of the rules
|
||||
files in the SDK, at tools/ant/build.xml
|
||||
|
||||
Properties related to the SDK location or the project target should
|
||||
be updated using the 'android' tool with the 'update' action.
|
||||
|
||||
|
@ -24,17 +26,24 @@
|
|||
application and should be checked into Version Control Systems.
|
||||
|
||||
-->
|
||||
<property file="build.properties" />
|
||||
<property file="ant.properties" />
|
||||
|
||||
<!-- The default.properties file is created and updated by the 'android'
|
||||
<!-- The project.properties file is created and updated by the 'android'
|
||||
tool, as well as ADT.
|
||||
|
||||
This contains project specific properties such as project target, and library
|
||||
dependencies. Lower level build properties are stored in ant.properties
|
||||
(or in .classpath for Eclipse projects).
|
||||
|
||||
This file is an integral part of the build system for your
|
||||
application and should be checked into Version Control Systems. -->
|
||||
<property file="default.properties" />
|
||||
<loadproperties srcFile="project.properties" />
|
||||
|
||||
|
||||
<!-- Required pre-setup import -->
|
||||
<import file="${sdk.dir}/tools/ant/pre_setup.xml" />
|
||||
<!-- quick check on sdk.dir -->
|
||||
<fail
|
||||
message="sdk.dir is missing. Make sure to generate local.properties using 'android update project'"
|
||||
unless="sdk.dir"
|
||||
/>
|
||||
|
||||
|
||||
<!-- extension targets. Uncomment the ones where you want to do custom work
|
||||
|
@ -45,14 +54,26 @@
|
|||
<target name="-pre-compile">
|
||||
</target>
|
||||
|
||||
[This is typically used for code obfuscation.
|
||||
Compiled code location: ${out.classes.absolute.dir}
|
||||
If this is not done in place, override ${out.dex.input.absolute.dir}]
|
||||
/* This is typically used for code obfuscation.
|
||||
Compiled code location: ${out.classes.absolute.dir}
|
||||
If this is not done in place, override ${out.dex.input.absolute.dir} */
|
||||
<target name="-post-compile">
|
||||
</target>
|
||||
-->
|
||||
|
||||
<target name="coverage-xml" depends="-set-coverage-classpath, -install-instrumented, install">
|
||||
<target name="coverage-xml" depends="-test-project-check">
|
||||
|
||||
<property name="tested.project.absolute.dir" location="${tested.project.dir}" />
|
||||
|
||||
<property name="test.runner" value="android.test.InstrumentationTestRunner" />
|
||||
|
||||
<!-- Application package of the tested project extracted from its manifest file -->
|
||||
<xpath input="${tested.project.absolute.dir}/AndroidManifest.xml"
|
||||
expression="/manifest/@package" output="tested.manifest.package" />
|
||||
|
||||
<property name="emma.dump.file"
|
||||
value="/data/data/${tested.manifest.package}/coverage.ec" />
|
||||
|
||||
<run-tests-helper emma.enabled="true">
|
||||
<extra-instrument-args>
|
||||
<arg value="-e" />
|
||||
|
@ -85,28 +106,25 @@
|
|||
<echo>Saving the report file in ${basedir}/coverage/coverage.xml</echo>
|
||||
</target>
|
||||
|
||||
<!-- Execute the Android Setup task that will setup some properties
|
||||
specific to the target, and import the build rules files.
|
||||
|
||||
The rules file is imported from
|
||||
<SDK>/tools/ant/
|
||||
Depending on the project type it can be either:
|
||||
- main_rules.xml
|
||||
- lib_rules.xml
|
||||
- test_rules.xml
|
||||
<!-- Import the actual build file.
|
||||
|
||||
To customize existing targets, there are two options:
|
||||
- Customize only one target:
|
||||
- copy/paste the target into this file, *before* the
|
||||
<setup> task.
|
||||
<import> task.
|
||||
- customize it to your needs.
|
||||
- Customize the whole script.
|
||||
- Customize the whole content of build.xml
|
||||
- copy/paste the content of the rules files (minus the top node)
|
||||
into this file, *after* the <setup> task
|
||||
- disable the import of the rules by changing the setup task
|
||||
below to <setup import="false" />.
|
||||
into this file, replacing the <import> task.
|
||||
- customize to your needs.
|
||||
|
||||
***********************
|
||||
****** IMPORTANT ******
|
||||
***********************
|
||||
In all cases you must update the value of version-tag below to read 'custom' instead of an integer,
|
||||
in order to avoid having your file be overridden by tools such as "android update project"
|
||||
-->
|
||||
<setup />
|
||||
<!-- version-tag: 1 -->
|
||||
<import file="${sdk.dir}/tools/ant/build.xml" />
|
||||
|
||||
</project>
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
# This file must be checked in Version Control Systems.
|
||||
#
|
||||
# To customize properties used by the Ant build system use,
|
||||
# "build.properties", and override values to adapt the script to your
|
||||
# "ant.properties", and override values to adapt the script to your
|
||||
# project structure.
|
||||
|
||||
# Indicates whether an apk should be generated for each density.
|
Loading…
Reference in New Issue