| <!-- build JAR libraty --> |
| <project name="OsmAnd-core" default="build" basedir="."> |
| |
| <property file="local.properties" /> |
| |
| <property name="src.dir" value="src" /> |
| <property name="src.absolute.dir" location="${src.dir}" /> |
| <property name="protobuf.src" location="protobuf-src" /> |
| <property name="bin.dir" value="bin" /> |
| <property name="bin.absolute.dir" location="${bin.dir}" /> |
| <property name="lib.dir" value="libs" /> |
| <property name="lib.absolute.dir" location="${lib.dir}" /> |
| <property name="java.encoding" value="UTF-8" /> |
| |
| <path id="build.path"> |
| <fileset dir="${lib.absolute.dir}"> |
| <include name="*.jar" /> |
| </fileset> |
| </path> |
| |
| <target name="-dirs"> |
| <mkdir dir="${bin.absolute.dir}" /> |
| </target> |
| |
| <target name="clean"> |
| <delete dir="${bin.absolute.dir}" /> |
| <delete file="OsmAnd-core.jar" /> |
| </target> |
| |
| |
| <target name="copy_resources"> |
| <copy todir="${src.absolute.dir}/net/osmand/router/"> |
| <fileset dir="../../resources/routing/"> |
| <include name="*.xml" /> |
| </fileset> |
| </copy> |
| <copy todir="${src.absolute.dir}/net/osmand/render/"> |
| <fileset dir="../../resources/rendering_styles/"> |
| <include name="*.xml" /> |
| </fileset> |
| </copy> |
| <copy todir="${src.absolute.dir}/net/osmand/osm/"> |
| <fileset dir="../../resources/obf_creation/"> |
| <include name="rendering_types.xml" /> |
| </fileset> |
| <fileset dir="../../resources/poi/"> |
| <include name="poi_types.xml" /> |
| </fileset> |
| </copy> |
| <copy todir="${src.absolute.dir}/net/osmand/map/"> |
| <fileset dir="../../resources/countries-info/"> |
| <include name="countries.reginfo" /> |
| <include name="regions.ocbf" /> |
| </fileset> |
| </copy> |
| </target> |
| |
| |
| <target name="patch-protobuf"> |
| <copy file="${protobuf.src}/com/google/protobuf/CodedInputStream.java" |
| tofile="${protobuf.src}/com/google/protobuf/CodedInputStreamRAF.java" overwrite="yes"> |
| </copy> |
| <copy todir="${src.absolute.dir}"> |
| <fileset dir="${protobuf.src}"/> |
| </copy> |
| <patch patchfile="protobuf.patch" dir=".."/> |
| </target> |
| <target name="compile" depends="-dirs,copy_resources"> |
| <copy todir="${bin.absolute.dir}"> |
| <fileset dir="${src.absolute.dir}"> |
| <exclude name="**/*.java" /> |
| </fileset> |
| </copy> |
| <javac srcdir="${src.absolute.dir}" destdir="${bin.absolute.dir}" encoding="${java.encoding}" classpathref="build.path" debug="on" source="1.6"> |
| <include name="**/*.java" /> |
| <exclude name="net/osmand/plus/**" /> |
| </javac> |
| |
| </target> |
| |
| <target name="native-libs-jar" depends="compile"> |
| <exec command="bash collect_libs.sh" failonerror="true"> |
| </exec> |
| <antcall target="jar" /> |
| </target> |
| |
| <target name="native-legacy-libs-jar" depends="compile"> |
| <exec command="bash collect_legacy_libs.sh" failonerror="true"> |
| </exec> |
| <antcall target="jar" /> |
| </target> |
| |
| <target name="jar" depends="compile"> |
| <manifestclasspath property="lib.list" jarfile="OsmAnd-core.jar"> |
| <classpath refid="build.path" /> |
| </manifestclasspath> |
| <echo>list is ${lib.list}</echo> |
| |
| <delete file="OsmAnd-core.jar" /> |
| <delete file="MANIFEST.MF" /> |
| <manifest file="MANIFEST.MF"> |
| <attribute name="Built-By" value="${user.name}" /> |
| <attribute name="Main-Class" value="net.osmand.swing.OsmExtractionUI" /> |
| <attribute name="Class-Path" value="${lib.list}" /> |
| </manifest> |
| |
| <jar destfile="OsmAnd-core.jar" manifest="MANIFEST.MF"> |
| <fileset dir="${bin.absolute.dir}"> |
| <include name="**/*" /> |
| </fileset> |
| <fileset dir="${src.absolute.dir}"> |
| <include name="**/*.java" /> |
| </fileset> |
| </jar> |
| <jar destfile="OsmAnd-core-android.jar" manifest="MANIFEST.MF"> |
| <fileset dir="${bin.absolute.dir}"> |
| <include name="**/*.class" /> |
| <exclude name="**/PlatformUtil*"/> |
| </fileset> |
| <fileset dir="${src.absolute.dir}"> |
| <include name="**/*.java" /> |
| <exclude name="**/PlatformUtil*"/> |
| </fileset> |
| </jar> |
| |
| |
| <delete file="MANIFEST.MF" /> |
| </target> |
| |
| <target name="build" depends="jar"> |
| </target> |
| </project> |