revert a bad push on build.xml
authorNikita Kozlov <nikita@beem-project.com>
Mon, 14 Nov 2011 18:58:35 +0100
changeset 941 05909f132584
parent 940 21d4502baa67
child 942 998f3c1edac5
revert a bad push on build.xml
build.xml
--- a/build.xml	Sun Nov 06 02:17:27 2011 +0100
+++ b/build.xml	Mon Nov 14 18:58:35 2011 +0100
@@ -1,85 +1,102 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<project name="Login" default="help">
+<project name="Beem" 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" />
+         It contain the path to the SDK. It should *NOT* be checked in in Version
+         Control Systems. -->
+    <property file="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.
+    <!-- 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:
 
+         application.package
+             the name of your application package as defined in the manifest. Used by the
+             'uninstall' rule.
          source.dir
-             The name of the source directory. Default is 'src'.
+             the name of the source directory. Default is 'src'.
          out.dir
-             The name of the output directory. Default is 'bin'.
+             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.
 
-         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.
+         This file is an integral part of the build system for your application and
+         should be checked in in Version Control Systems.
 
          -->
-    <property file="ant.properties" />
+    <property file="build.properties" />
 
-    <!-- The project.properties file is created and updated by the 'android'
-         tool, as well as ADT.
+    <!-- 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 in in Version Control Systems. -->
+    <property file="default.properties" />
 
-         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).
+    <!-- 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" />
+        <pathelement path="${sdk.dir}/tools/lib/apkbuilder.jar" />
+        <pathelement path="${sdk.dir}/tools/lib/jarutils.jar" />
+    </path>
 
-         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" />
+    <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"
-    />
+    <!-- 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>/templates/android_rules.xml
+
+         To customize some build steps for your project:
+         - copy the content of the main node <project> from android_rules.xml
+         - paste it in this build.xml below the <setup /> task.
+         - disable the import by changing the setup task below to <setup import="false" />
 
-<!-- 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">
+         This will ensure that the properties are setup correctly but that your customized
+         build steps are used.
+    -->
+    <setup />
+
+    <property name="javadoc.output" value="doc/javadoc" />
+    <property name="external.libs.dir" value="libs" />
+
+    <target name="clean"
+	description="Delete old build and dist directories">
+	<delete verbose="false" dir="${out.dir}"/>
+	<delete verbose="false" dir="gen"/>
     </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.
+    <target name="all" depends="clean,debug,javadoc"/>
 
-         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: 1 -->
-    <import file="${sdk.dir}/tools/ant/build.xml" />
+    <target name="javadoc">
+	<javadoc author="true" destdir="${javadoc.output}" doctitle="Beem javadoc" source="1.6" sourcepath="${source.dir}" use="true" version="false" bootclasspathref="android.target.classpath">
+	    <classpath>
+		<fileset dir="${external.libs.dir}" includes="*.jar" />
+	    </classpath>
+	    <link href="http://developer.android.com/reference" offline="true" packageListLoc="doc/android"/>
+	    <link href="http://www.igniterealtime.org/builds/smack/docs/latest/javadoc" offline="true" packageListLoc="doc/smack"/>
+	    <doctitle><![CDATA[<h1>Beem-project.com</h1>]]></doctitle>
+	    <bottom><![CDATA[<i>Copyright &#169; 2009 Beem-project.com. All Rights Reserved.</i>]]></bottom>
+	    <doclet name="org.umlgraph.doclet.UmlGraphDoc" path="doc/UmlGraph.jar">
+		<param name="-inferrel"/>
+		<param name="-inferdep"/>
+		<param name="-hide" value="java.*"/>
+		<param name="-collpackages" value="java.util.*"/>
+		<param name="-qualify"/>
+		<param name="-types"/>
+		<param name="-visibility"/>
+		<param name="-postfixpackage"/>
+		<param name="-nodefontsize" value="9"/>
+		<param name="-nodefontpackagesize" value="7"/>
+	    </doclet>
+	</javadoc>
+    </target>
 
 </project>