custom_rules.xml 4.46 KiB
<?xml version="1.0" encoding="UTF-8"?>
<project name="routerjars">
<!-- override with i2psrc=path/to/source in local.properties -->
<property name="i2psrc" value="../../i2p.i2p" />
<property name="i2pbase" location="${i2psrc}" />
<available file="${i2pbase}" property="i2p.present" />
<fail message="I2P source directory ${i2pbase} was not found. Install it there or set i2psrc=/path/to/source in local.properties" >
<condition>
<not>
<isset property="i2p.present" />
</not>
</condition>
</fail>
<echo message="Using I2P source at ${i2pbase}" />
<!-- this loads my.version.code and my.version.name -->
<property file="../scripts/version.properties" />
<property name="version.code" value="${my.version.code}" />
<property name="version.name" value="${my.version.name}" />
<echo message="version.code '${version.code}', 'version.name '${version.name}', '${my.version.name}'" />
<target name="-pre-compile" depends="jbigi, buildrouter" />
<!--
Creates the output directories if they don't exist yet.
-->
<target name="-dirs">
<echo>Creating output directories if needed...</echo>
<mkdir dir="${resource.absolute.dir}" />
<mkdir dir="${gen.absolute.dir}" />
<mkdir dir="${out.absolute.dir}" />
<mkdir dir="${out.classes.absolute.dir}" />
</target>
<target name="-pre-clean">
</target>
<!-- new rules -->
<available property="have.router" file="${i2pbase}/build/router.jar" />
<available property="have.bob" file="${i2pbase}/apps/BOB/dist/BOB.jar" />
<available property="have.i2ptunnel" file="${i2pbase}/apps/i2ptunnel/java/build/i2ptunnel.jar" />
<available property="have.addressbook" file="${i2pbase}/apps/addressbook/dist/addressbook.jar" />
<target name="buildRouter" unless="have.router">
<ant dir="${i2pbase}" inheritall="false" useNativeBasedir="true" target="buildRouter" />
</target>
<target name="buildI2PTunnelJar" unless="have.i2ptunnel">
<ant dir="${i2pbase}" inheritall="false" useNativeBasedir="true" target="buildI2PTunnelJar" />
</target>
<target name="buildAddressbook" unless="have.addressbook">
<ant dir="${i2pbase}" inheritall="false" useNativeBasedir="true" target="buildAddressbookJar" />
</target>
<target name="buildBOB" unless="have.bob">
<ant dir="${i2pbase}" inheritall="false" useNativeBasedir="true" target="buildBOB" />
</target>
<target name="buildrouter" depends="-dirs, buildRouter, buildI2PTunnelJar, buildAddressbook, buildBOB">
<!-- router -->
<copy file="${i2pbase}/build/router.jar" todir="${jar.libs.dir}" />
<!-- bob -->
<copy file="${i2pbase}/apps/BOB/dist/BOB.jar" todir="${jar.libs.dir}" />
<!-- core -->
<!-- lots of unneeded stuff could be deleted here -->
<jar destfile="${jar.libs.dir}/i2p.jar" >
<zipfileset src="${i2pbase}/build/i2p.jar" >
<exclude name="net/i2p/util/LogWriter.class" />
<exclude name="net/i2p/util/SecureDirectory.class" />
<exclude name="net/i2p/util/SecureFile.class" />
<exclude name="net/i2p/util/SecureFileOutputStream.class" />
</zipfileset>
</jar>
<!-- i2ptunnel -->
<copy file="${i2pbase}/apps/ministreaming/java/build/mstreaming.jar" todir="${jar.libs.dir}" />
<copy file="${i2pbase}/apps/streaming/java/build/streaming.jar" todir="${jar.libs.dir}" />
<jar destfile="${jar.libs.dir}/i2ptunnel.jar" >
<zipfileset src="${i2pbase}/apps/i2ptunnel/java/build/i2ptunnel.jar" >
<exclude name="net/i2p/i2ptunnel/I2PTunnelGUI.class" />
</zipfileset>
</jar>
<!-- addressbook -->
<copy file="${i2pbase}/apps/addressbook/dist/addressbook.jar" todir="${jar.libs.dir}" />
</target>
<target name="jbigi" >
<exec executable="sh" osfamily="unix" failonerror="true">
<arg value="-c" />
<arg value="jni/build.sh ${i2pbase}" />
</exec>
<copy file="jni/libjbigi.so" todir="${jar.libs.dir}/armeabi" />
</target>
<target name="distclean" depends="clean">
<delete dir="${jar.libs.dir}" verbose="${verbose}" />
<delete dir="jni/build/" verbose="${verbose}" />
<delete file="AndroidManifest.xml" verbose="${verbose}" />
<ant dir="${i2pbase}" target="distclean" />
</target>
</project>