CPP: libphonenumber 4.7.
[platform/upstream/libphonenumber.git] / java / build.xml
1 <?xml version="1.0" ?>
2
3 <project name="libphonenumber" default="compile">
4   <property name="libphonenumber.src.dir" value="libphonenumber/src"/>
5   <property name="libphonenumber.test.dir" value="libphonenumber/test"/>
6   <property name="geocoder.src.dir" value="geocoder/src"/>
7   <property name="geocoder.test.dir" value="geocoder/test"/>
8   <property name="build.dir" value="build"/>
9   <property name="classes.dir" value="${build.dir}/classes"/>
10   <property name="jar.dir" value="${build.dir}/jar"/>
11   <property name="lib.dir" value="lib"/>
12   <property name="report.dir" value="${build.dir}/junitreport"/>
13   <property name="resources.dir" value="../resources/"/>
14   <property name="javascript.dir" value="../javascript/"/>
15   <property name="build.tools.jar"
16       value="../tools/java/java-build/target/java-build-1.0-SNAPSHOT-jar-with-dependencies.jar"/>
17
18   <path id="classpath">
19     <fileset dir="${lib.dir}" includes="**/*.jar"/>
20   </path>
21   <path id="test.classpath">
22     <pathelement location="${classes.dir}"/>
23     <pathelement location="${lib.dir}/junit/junit-4.8.1.jar"/>
24     <pathelement location="${jar.dir}/${ant.project.name}-test.jar"/>
25     <fileset dir="${lib.dir}">
26       <include name="**/*.jar"/>
27     </fileset>
28   </path>
29
30   <target name="build-metadata">
31     <exec executable="java">
32       <arg value="-jar" />
33       <arg value="${build.tools.jar}"/>
34       <arg value="BuildMetadataProtoFromXml"/>
35       <arg value="${resources.dir}/PhoneNumberMetaData.xml"/>
36       <arg value="libphonenumber/src"/>
37       <arg value="false"/> <!-- Not for testing. -->
38       <arg value="false"/> <!-- No lite metadata. -->
39     </exec>
40   </target>
41
42   <target name="build-test-metadata">
43     <exec executable="java">
44       <arg value="-jar" />
45       <arg value="${build.tools.jar}"/>
46       <arg value="BuildMetadataProtoFromXml"/>
47       <arg value="${resources.dir}/PhoneNumberMetaDataForTesting.xml"/>
48       <arg value="libphonenumber/test"/>
49       <arg value="true"/> <!-- For testing. -->
50       <arg value="false"/> <!-- No lite metadata. -->
51     </exec>
52   </target>
53
54   <target name="build-geo-data">
55     <exec executable="java">
56       <arg value="-jar" />
57       <arg value="${build.tools.jar}"/>
58       <arg value="GenerateAreaCodeData"/>
59       <arg value="${resources.dir}/geocoding/"/>
60       <arg value="geocoder/src/com/google/i18n/phonenumbers/geocoding/data"/>
61     </exec>
62   </target>
63
64   <target name="build-geo-test-data">
65     <exec executable="java">
66       <arg value="-jar" />
67       <arg value="${build.tools.jar}"/>
68       <arg value="GenerateAreaCodeData"/>
69       <arg value="${resources.dir}/test/geocoding/"/>
70       <arg value="geocoder/test/com/google/i18n/phonenumbers/geocoding/testing_data"/>
71     </exec>
72   </target>
73
74   <target name="build-js-metadata">
75     <exec executable="java">
76       <arg value="-jar" />
77       <arg value="${build.tools.jar}"/>
78       <arg value="BuildMetadataJsonFromXml"/>
79       <arg value="${resources.dir}/PhoneNumberMetaData.xml"/>
80       <arg value="${javascript.dir}/i18n/phonenumbers/metadata.js"/>
81     </exec>
82     <exec executable="java">
83       <arg value="-jar" />
84       <arg value="${build.tools.jar}"/>
85       <arg value="BuildMetadataJsonFromXml"/>
86       <arg value="${resources.dir}/PhoneNumberMetaData.xml"/>
87       <arg value="${javascript.dir}/i18n/phonenumbers/metadatalite.js"/>
88       <arg value="true"/> <!-- Lite metadata. -->
89     </exec>
90     <exec executable="java">
91       <arg value="-jar" />
92       <arg value="${build.tools.jar}"/>
93       <arg value="BuildMetadataJsonFromXml"/>
94       <arg value="${resources.dir}/PhoneNumberMetaDataForTesting.xml"/>
95       <arg value="${javascript.dir}/i18n/phonenumbers/metadatafortesting.js"/>
96     </exec>
97   </target>
98
99   <target name="compile" description="Compile Java source."
100           depends="build-metadata,build-geo-data">
101     <mkdir dir="${classes.dir}"/>
102     <javac srcdir="${libphonenumber.src.dir};${geocoder.src.dir}"
103            destdir="${classes.dir}" classpathref="classpath" includeAntRuntime="false"/>
104     <javac srcdir="${libphonenumber.test.dir};${geocoder.test.dir}"
105            destdir="${classes.dir}" classpathref="classpath" debug="on"
106            includeAntRuntime="false"/>
107   </target>
108
109   <target name="jar" depends="compile">
110     <mkdir dir="${jar.dir}"/>
111     <jar destfile="${jar.dir}/${ant.project.name}.jar">
112       <fileset dir="${classes.dir}">
113         <include name="**/*.class"/>
114         <exclude name="**/*Test*"/>
115         <exclude name="**/BuildMetadata*"/>
116         <exclude name="**/geocoding/*"/>
117       </fileset>
118       <fileset dir="${libphonenumber.src.dir}">
119         <include name="**/PhoneNumberMetadataProto*"/>
120       </fileset>
121     </jar>
122     <jar destfile="${jar.dir}/offline-geocoder.jar">
123       <fileset dir="${classes.dir}">
124         <include name="**/geocoding/*.class"/>
125         <exclude name="**/*Test*"/>
126         <exclude name="**/geocoding/GenerateAreaCodeData*"/>
127       </fileset>
128       <fileset dir="${geocoder.src.dir}">
129         <include name="**/geocoding/data/*"/>
130       </fileset>
131     </jar>
132   </target>
133
134   <target name="test-jar"
135           depends="compile,build-test-metadata,build-geo-test-data">
136     <mkdir dir="${jar.dir}"/>
137     <jar destfile="${jar.dir}/${ant.project.name}-test.jar">
138       <fileset dir="${classes.dir}">
139         <include name="**/*.class"/>
140         <exclude name="**/*Test*"/>
141       </fileset>
142       <fileset dir="${libphonenumber.src.dir}">
143         <include name="**/PhoneNumberMetadataProto*"/>
144       </fileset>
145       <fileset dir="${libphonenumber.test.dir}">
146         <include name="**/PhoneNumberMetadataProtoForTesting*"/>
147       </fileset>
148       <fileset dir="${geocoder.test.dir}">
149         <include name="**/geocoding/testing_data/*"/>
150       </fileset>
151     </jar>
152   </target>
153
154   <target name="junit" depends="test-jar">
155     <mkdir dir="${report.dir}"/>
156     <junit printsummary="yes">
157       <classpath refid="test.classpath"/>
158       <formatter type="xml"/>
159       <batchtest fork="no" todir="${report.dir}">
160         <fileset dir="${libphonenumber.test.dir}" includes="**/*Test.java"/>
161       </batchtest>
162       <batchtest fork="no" todir="${report.dir}">
163         <fileset dir="${geocoder.test.dir}" includes="**/*Test.java"/>
164       </batchtest>
165     </junit>
166   </target>
167
168   <target name="junitreport">
169     <junitreport todir="${report.dir}">
170       <fileset dir="${report.dir}" includes="TEST-*.xml"/>
171         <report todir="${report.dir}"/>
172     </junitreport>
173   </target>
174
175   <target name="clean" description="Remove generated files.">
176     <delete dir="${build.dir}"/>
177   </target>
178
179   <target name="clean-build" depends="clean,jar"/>
180 </project>
181