210 lines
8.3 KiB
XML
210 lines
8.3 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!-- vim: set ts=4 sw=4 et: -->
|
|
<project name="VX 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. -->
|
|
<loadproperties srcFile="local.properties" />
|
|
|
|
<!-- 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
|
|
The name of the source directory. Default is 'src'.
|
|
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.
|
|
|
|
This file is an integral part of the build system for your
|
|
application and should be checked into Version Control Systems.
|
|
|
|
-->
|
|
<property file="ant.properties" />
|
|
|
|
<!-- 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. -->
|
|
<loadproperties srcFile="project.properties" />
|
|
|
|
<!-- 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" />
|
|
|
|
<!-- Begin custom ConnectBot stuff -->
|
|
|
|
<!-- Output directory for .po files. -->
|
|
<property name="locale.dir" value="locale" />
|
|
|
|
<!-- Default args to pass to a2po for .po generation. -->
|
|
<property name="a2po.args" value="--groups strings --template fortune/fortune.pot --layout 'fortune/fortune-%(locale)s.po'"/>
|
|
|
|
<!-- File names for launchpad translations. -->
|
|
<property name="launchpad.export.file" value="launchpad-export.tar.gz"/>
|
|
<property name="launchpad.import.file" value="launchpad-import.tar.gz"/>
|
|
|
|
<target name="-pre-build" depends="update-version"/>
|
|
|
|
<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> compile: Compiles project's .java files into .class files.</echo>
|
|
<echo> debug: Builds the application and signs it with a debug key.</echo>
|
|
<echo> release: Builds the application. The generated apk file must be</echo>
|
|
<echo> signed before it is published.</echo>
|
|
<echo> install: Installs/reinstalls the debug package onto a running</echo>
|
|
<echo> emulator or device.</echo>
|
|
<echo> If the application was previously installed, the</echo>
|
|
<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>
|
|
|
|
</target>
|
|
|
|
<target name="update-version" description="Updates the Version.java file with current Git revision">
|
|
<echo>Updating resources with Git revision and build date...</echo>
|
|
|
|
<tstamp>
|
|
<format property="build.date" pattern="yyyy.MM.dd" />
|
|
</tstamp>
|
|
|
|
<!-- Get the version name from the android manifest, will en up in property ${manifest.android:versionName} -->
|
|
<xpath input="AndroidManifest.xml" expression="/manifest/@android:versionName"
|
|
output="manifest.version.name" />
|
|
|
|
<!-- tell git to ignore changes to the version xml -->
|
|
<exec executable="git">
|
|
<arg line="update-index --assume-unchanged res/values/version.xml"/>
|
|
</exec>
|
|
|
|
<!-- find out the description of the current Git commit -->
|
|
<exec executable="git" outputproperty="git.revision">
|
|
<arg line="describe --match 'v[0-9]*' --dirty"/>
|
|
</exec>
|
|
|
|
<!-- write out to res/values/version.xml -->
|
|
<echo file="${resource.absolute.dir}/values/version.xml" encoding="utf8"><![CDATA[<?xml version="1.0" encoding="utf-8"?>
|
|
<resources>
|
|
<string name="msg_version" translatable="false">${ant.project.name} ${manifest.version.name} (${git.revision} ${build.date})</string>
|
|
</resources>
|
|
]]></echo>
|
|
|
|
<echo>Updated "msg_version" to: ${ant.project.name} ${manifest.version.name} (${git.revision} ${build.date})</echo>
|
|
</target>
|
|
|
|
<!-- Translations come from launchpad.net and are placed in the
|
|
locale/ subdirectory. -->
|
|
<target name="translations-import">
|
|
<untar src="${launchpad.export.file}" dest="${locale.dir}" compression="gzip"/>
|
|
<exec executable="a2po" failonerror="true">
|
|
<arg value="import"/>
|
|
<arg line="${a2po.args}"/>
|
|
</exec>
|
|
</target>
|
|
|
|
<!-- Translations are to be uploaded to launchpad.net as a tar ball
|
|
created from the locale/ subdirectory. -->
|
|
<target name="translations-export">
|
|
<exec executable="a2po" failonerror="true">
|
|
<arg value="export"/>
|
|
<arg line="${a2po.args}"/>
|
|
</exec>
|
|
<tar destfile="${launchpad.import.file}"
|
|
compression="gzip"
|
|
basedir="${locale.dir}"
|
|
includes="**/*.pot **/*.po" />
|
|
</target>
|
|
|
|
<target name="-check-ndk">
|
|
<fail
|
|
message="ndk.dir is missing. Make sure to put it in local.properties"
|
|
unless="ndk.dir"
|
|
/>
|
|
</target>
|
|
|
|
<target name="native-build" depends="-check-ndk">
|
|
<exec executable="${ndk.dir}/ndk-build" failonerror="true" />
|
|
</target>
|
|
|
|
<target name="native-clean" depends="-check-ndk">
|
|
<exec executable="${ndk.dir}/ndk-build" failonerror="true">
|
|
<arg value="clean" />
|
|
</exec>
|
|
</target>
|
|
|
|
<property name="lint" location="${android.tools.dir}/lint${bat}" />
|
|
|
|
<target name="lint-xml">
|
|
<exec executable="${lint}">
|
|
<arg value="--xml" />
|
|
<arg value="lint-results.xml" />
|
|
<arg path="${basedir}" />
|
|
</exec>
|
|
</target>
|
|
|
|
<target name="lint-html">
|
|
<exec executable="${lint}">
|
|
<arg value="--html" />
|
|
<arg value="lint-results.html" />
|
|
<arg path="${basedir}" />
|
|
</exec>
|
|
</target>
|
|
|
|
<!-- End custom ConnectBot stuff -->
|
|
|
|
</project>
|