kopia lustrzana https://github.com/ge0rg/aprsdroid
159 wiersze
6.2 KiB
XML
159 wiersze
6.2 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<project name="APRSdroid" 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 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.
|
|
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'.
|
|
|
|
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="build.properties" />
|
|
|
|
<!-- The default.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>
|
|
|
|
<taskdef name="setup"
|
|
classname="com.android.ant.SetupTask"
|
|
classpathref="android.antlibs" />
|
|
|
|
<!-- extension targets. Uncomment the ones where you want to do custom work
|
|
in between standard targets -->
|
|
<property name="mapviewxml" value="res/layout/mapview.xml" />
|
|
<target name="-pre-build">
|
|
<fail unless="mapsApiKey">You need to add mapsApiKey=... to local.properties</fail>
|
|
<copy file="mapview.xml.tpl" tofile="${mapviewxml}" overwrite="true">
|
|
<filterchain>
|
|
<replacetokens>
|
|
<token key="apiKey" value="${mapsApiKey}"/>
|
|
</replacetokens>
|
|
</filterchain>
|
|
|
|
</copy>
|
|
</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" depends="scalac, proguard">
|
|
</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>/platforms/<target_platform>/ant/ant_rules_r#.xml
|
|
|
|
To customize existing targets, there are two options:
|
|
- Customize only one target:
|
|
- copy/paste the target into this file, *before* the
|
|
<setup> task.
|
|
- customize it to your needs.
|
|
- Customize the whole script.
|
|
- 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" />.
|
|
- customize to your needs.
|
|
-->
|
|
<setup />
|
|
|
|
<target name="check-scalalib">
|
|
<available file="tools/scala-library.jar" property="have.scalalib"/>
|
|
<fail unless="have.scalalib">You have to place scala-compiler.jar and scala-library.jar to tools/</fail>
|
|
</target>
|
|
<target name="check-scalac">
|
|
<available file="tools/scala-compiler.jar" property="have.scalac"/>
|
|
<fail unless="have.scalac">You have to place scala-compiler.jar and scala-library.jar to tools/</fail>
|
|
</target>
|
|
|
|
<target name="scalac" depends="compile, check-scalalib, check-scalac">
|
|
<taskdef resource="scala/tools/ant/antlib.xml"
|
|
classpath="tools/scala-compiler.jar:tools/scala-library.jar" />
|
|
<scalac force="changed" deprecation="on"
|
|
srcdir="${source.absolute.dir}" includes="**/*.scala"
|
|
bootclasspathref="android.target.classpath"
|
|
destdir="${out.classes.absolute.dir}">
|
|
<classpath>
|
|
<pathelement location="${out.classes.absolute.dir}"/>
|
|
<fileset dir="tools" includes="*.jar"/>
|
|
<fileset dir="${external.libs.dir}" includes="*.jar"/>
|
|
</classpath>
|
|
</scalac>
|
|
</target>
|
|
|
|
<target name="check-proguard">
|
|
<available file="tools/proguard.jar" property="have.proguard"/>
|
|
<fail unless="have.proguard">ProGuard is required to build! Copy proguard.jar to tools/</fail>
|
|
</target>
|
|
|
|
<property name="optimized.dir" value="${out.absolute.dir}/optimized" />
|
|
<target name="proguard" depends="compile, scalac, check-proguard">
|
|
<taskdef resource="proguard/ant/task.properties"
|
|
classpath="tools/proguard.jar" />
|
|
<mkdir dir="${optimized.dir}" />
|
|
<proguard>
|
|
-injars ${out.classes.absolute.dir}:${external.libs.dir}:tools/scala-library.jar(!META-INF/MANIFEST.MF,!library.properties)
|
|
-outjars ${out.absolute.dir}/classes.min.jar
|
|
-libraryjars ${toString:android.target.classpath}
|
|
-dontwarn scala.**
|
|
-dontnote scala.**
|
|
-dontobfuscate
|
|
-dontpreverify
|
|
-repackageclasses ''
|
|
-allowaccessmodification
|
|
-optimizations !code/simplification/arithmetic,!code/allocation/variable
|
|
-keepattributes *Annotation*
|
|
-printusage ${optimized.dir}/proguard.usage
|
|
-keep public class * extends android.app.Activity
|
|
-keep public class * extends android.app.Service
|
|
-keep public interface scala.ScalaObject
|
|
-dontskipnonpubliclibraryclasses
|
|
-dontskipnonpubliclibraryclassmembers
|
|
-allowaccessmodification
|
|
</proguard>
|
|
</target>
|
|
|
|
<target name="-dex" depends="-post-compile">
|
|
<echo>Converting compiled files and external libraries into ${intermediate.dex.file}...</echo>
|
|
<apply executable="${dx}" failonerror="true" parallel="true">
|
|
<arg value="--dex" />
|
|
<arg value="--output=${intermediate.dex.file}" />
|
|
<fileset dir="${out.absolute.dir}" includes="*.min.jar"/>
|
|
</apply>
|
|
</target>
|
|
</project>
|