From 9d4c0aa839c0e31225664ea76c6c858ea7d944f9 Mon Sep 17 00:00:00 2001
From: sponge <sponge@mail.i2p>
Date: Tue, 24 Jul 2012 05:16:21 +0000
Subject: [PATCH] Reorganize router to own sub-project to avoid build errors

---
 AndroidManifest.xml              |   4 +-
 ant.properties                   |   1 +
 custom_rules.xml                 | 120 ++-----------------------------
 jni/libjbigi.so                  | Bin 89516 -> 0 bytes
 routerjars/AndroidManifest.xml   |  11 +++
 routerjars/ant.properties        |  21 ++++++
 routerjars/build.xml             |  83 +++++++++++++++++++++
 routerjars/custom_rules.xml      |  89 +++++++++++++++++++++++
 {jni => routerjars/jni}/build.sh |   2 +-
 routerjars/proguard-project.txt  |  20 ++++++
 routerjars/project.properties    |  12 ++++
 routerjars/src/README.txt        |   1 +
 12 files changed, 246 insertions(+), 118 deletions(-)
 delete mode 100755 jni/libjbigi.so
 create mode 100644 routerjars/AndroidManifest.xml
 create mode 100644 routerjars/ant.properties
 create mode 100644 routerjars/build.xml
 create mode 100644 routerjars/custom_rules.xml
 rename {jni => routerjars/jni}/build.sh (99%)
 create mode 100644 routerjars/proguard-project.txt
 create mode 100644 routerjars/project.properties
 create mode 100644 routerjars/src/README.txt

diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 1cd395df9..62961158f 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -1,8 +1,8 @@
 <?xml version="1.0" encoding="utf-8"?>
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
       package="net.i2p.android.router"
-      android.versionCode="4719034"
-      android.versionName="0.9.0-27_b59-API8"
+      android.versionCode="4719040"
+      android.versionName="0.9.0-28_b1-API8"
       android:installLocation="preferExternal"
       >
     <uses-permission android:name="android.permission.INTERNET" />
diff --git a/ant.properties b/ant.properties
index eb3aeb5e7..0d53db126 100644
--- a/ant.properties
+++ b/ant.properties
@@ -1,4 +1,5 @@
 application-package=net.i2p.router
 key.store=${user.home}/.android/${application-package}.keystore
 key.alias=${application-package}
+android.library.reference.1=./routerjars
 key.store.password=android
diff --git a/custom_rules.xml b/custom_rules.xml
index 894d7773b..aaa3ee70d 100644
--- a/custom_rules.xml
+++ b/custom_rules.xml
@@ -37,7 +37,6 @@
     <property name="version.name" value="${my.version.name}" />
     <echo message="version.code '${version.code}', 'version.name '${version.name}', '${my.version.name}'" />
 
-
     <!--
          ================================================================================
          New I2P rules
@@ -60,81 +59,22 @@
         <delete dir="${out.absolute.dir}/classes/net" verbose="${verbose}" />
     </target>
 
-    <target name="-pre-compile" depends="buildrouter" />
-
-    <target name="-post-compile" depends="hackcleanup, jbigi" />
+<!--
+    <target name="-pre-compile" depends="jbigi, buildrouter" />
 
+    <target name="-post-compile" depends="hackcleanup" />
+-->
     <!-- 
          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="${external.libs.absolute.dir}" />
         <mkdir dir="${gen.absolute.dir}" />
         <mkdir dir="${out.absolute.dir}" />
         <mkdir dir="${out.classes.absolute.dir}" />
     </target>
 
-    <!-- new rules -->
-
-
-
-    <target name="buildrouter" depends="-dirs" >
-        <!-- build router and core -->
-        <ant dir="${i2pbase}" >
-            <target name="buildRouter" />
-            <target name="buildI2PTunnel" />
-            <target name="buildAddressbook" />
-        </ant>
-
-        <!-- router -->
-        <copy file="${i2pbase}/build/router.jar" todir="${jar.libs.dir}" />
-
-        <!-- core -->
-
-        <!-- org.bouncycastle.crypto already in android
-             but we need a little trickery because our HMac is incompatible...
-             and the libs aren't in the SDK to compile against??? -->
-        <jar destfile="${jar.libs.dir}/crypto.jar" >
-            <zipfileset src="${i2pbase}/build/i2p.jar" >
-                <include name="org/bouncycastle/crypto/Digest.class" />
-                <include name="org/bouncycastle/crypto/Mac.class" />
-                <include name="org/bouncycastle/crypto/digests/GeneralDigest.class" />
-                <include name="org/bouncycastle/crypto/digests/MD5Digest.class" />
-            </zipfileset >
-        </jar>
-
-        <!-- 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" />
-                <exclude name="org/bouncycastle/crypto/Digest.class" />
-                <exclude name="org/bouncycastle/crypto/Mac.class" />
-                <exclude name="org/bouncycastle/crypto/digests/GeneralDigest.class" />
-                <exclude name="org/bouncycastle/crypto/digests/MD5Digest.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 - make a jar, it's a war in the i2p distro -->
-        <jar destfile="${jar.libs.dir}/addressbook.jar"
-             basedir="${i2pbase}/apps/addressbook/build"
-             excludes="net/i2p/addressbook/Servlet.class" />
-
-    </target>
-
     <!-- some resources -->
     <target name="copy-i2p-resources" depends="-dirs" >
         <copy file="LICENSE.txt" tofile="res/raw/license_app_txt" />
@@ -157,7 +97,6 @@
         <copy file="${i2pbase}/licenses/LICENSE-GPLv3.txt" tofile="res/raw/license_gplv3_txt" />
         <copy file="${i2pbase}/licenses/LICENSE-LGPLv3.txt" tofile="res/raw/license_lgplv3_txt" />
         <copy file="${i2pbase}/licenses/LICENSE-Addressbook.txt" tofile="res/raw/license_addressbook_txt" />
-
         <delete file="res/raw/certificates_zip" />
         <zip update="true" destfile="res/raw/certificates_zip">
             <fileset dir="${i2pbase}/installer/resources/certificates/" />
@@ -165,20 +104,6 @@
 
     </target>
 
-    <target name="hackcleanup">
-        <delete file="${jar.libs.dir}/crypto.jar" />
-    </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="${native.libs.absolute.dir}/armeabi" />
-    </target>
-
-
-
     <!-- install now does both -->
     <target name="reinstall" depends="install" />
 
@@ -203,7 +128,7 @@
         <delete file="res/raw/license_gplv2_txt" />
         <delete file="res/raw/license_gplv3_txt" />
         <delete file="res/raw/license_lgplv3_txt" />
-        <delete dir="jni/build/" verbose="${verbose}" />
+        <delete file="res/raw/certificates_zip" />
         <delete file="scripts/build.number" verbose="${verbose}" />
         <delete file="scripts/version.properties" verbose="${verbose}" />
     </target>
@@ -302,40 +227,5 @@
         <echo message="Release file copied to I2PAndroid-${my.version.name}.apk" />
     </target>
 
-    <!--
-         override this because the ant task com.android.ant.AaptExecLoopTask has issues:
-             a) it uses version.code which main_rules sets to "" and
-             b) it can't set versionName via the aapt task, have to use the aapt command line
-         We can't use this in the newer SDK, and since properties are
-         immutable, we don't need to do this. The trick is to call the target earlier,
-         _BEFORE_ the template is loaded.
-    -->
 
-    <!--
-    
-    <target name="-package-resources">
-        <echo>Packaging resources</echo>
-        <property name="dash" value="-" />
-        <property name="dashdash" value="${dash}${dash}" />
-        <exec executable="${aapt}" failonerror="true" >
-            <arg value="package" />
-            <arg value="${dashdash}version-code" />
-            <arg value="${my.version.code}" />
-            <arg value="${dashdash}version-name" />
-            <arg value="${my.version.name}" />
-            <arg value="-f" />
-            <arg value="-m" />
-            <arg value="-M" />
-            <arg value="AndroidManifest.xml" />
-            <arg value="-I" />
-            <arg value="${android.jar}" />
-            <arg value="-S" />
-            <arg value="${resource.absolute.dir}" />
-            <arg value="-J" />
-            <arg value="${gen.absolute.dir}" />
-            <arg value="-F" />
-            <arg value="${out.absolute.dir}/${resource.package.file.name}" />
-        </exec>        
-    </target>
-    -->
 </project>
diff --git a/jni/libjbigi.so b/jni/libjbigi.so
deleted file mode 100755
index c9282a25bbd610ab0c5dd5dc95e65f4c20e750ca..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 89516
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%0DaEcIb=-i!G&
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%0A%
zkne=QI?Ku3$UFEYk(K>830rHe@?zZyJs0oFf!nU5O&>MjNcXJ=IKtOua1@N~7U8F=
z560;Ck?kxGRv#JqXi*>d1nC35G<~e@W*qqu-ZhLvez0IZIWu5>2jkRp!<+b5ZE}X9
zV?C*H@V(TY>^AuOhj<9Ok&aoRnLgZ!mP9u#v=fZ$M!pCAUvJtccBiU+jbUHy?`v*?
z_E*u4#<A{*R<B3zSJqz}xO68m``FmXxpFv<?xVGr@-Q~9o#tP*4(~QVtMEWmJAPli
z*N|`X+BpXinZQ4}g9c@2BhglF$mhrblq<)umxDWrR}<@Uo#bQsGuY_g^5DZA3-kDK
z66xZaGd6lXFKJ9|-kC$m?-#pB_Ux&<2YHegg+_b=hu{+k?DFGBXrD=Y-Z{>u-rk$W
z&JQJD?af&^^sO0Qj^7S<v0Tsd@bUQHDNj`7o!!7b4t}CK{6tR0kFX2e?95o!bvrIx
zH39}TvZ|Zh>{;Ya2Doyx?~<FuUe;TG2EP;Yi<?iuH_^PjcM`HJ3SJ^Q<Hr8D#x@Ka
z?Ph4|)-LEt^qgobj5RjWgwiv_E+`HT-^{7L-(kX@@p<?iJhy%15Mnu>y9Yep-YdJ!
z&cDSOi936T&~88S3J&qmz0g$;{~dlx?7&f8XL-2FsH?IO{0<k$XGfhR-v?1g&!q#%
z-*tL{JreYo;XIQaIf`fU)tyjST2Ot})%`JvhNXo;d_TRho%~kvX|)%)ho-2y+Kbg*
z&O-7CY2Cw!KzHN36MG%QEc&62mC(In+}j9#LOhQ$FUUe;gIY<+!i66EvP*mBvPq<4
ztFCNE?T;w`E536t>~xrWfS3!dfrUvGpM>2&Zkb>%J$yo*JCs~Y=ue8T)|xm$w$?Ie
z89C*)V+Sk)hbx)OWka0KdE(nRbXebfC;GYkT-twFZ0s4q73{a!f~R8lM$sXWrR&29
z@au5bZc^tBFEaO;NQaP~qP-~b=pj%0de@LVKA7(IVuV~6G0uuKa3`|vXRhZScG1T`
zbV~<3CwMlf@=W?dKb~v<tDff(p4DS_s-Euiv3oe*f_)dEe#mY|m#5u)uAp<R;$b`A
zK0q>_IEC^X$fPCEpWQtdzcKqIz*bj*m36M9m=*1r{P_jxSLA4|_yO$h^Fx}`$IQN@
z{0F{$6ivH!v|=Bz-hRS9!cN&UcTTH^{~lJKR62+Gj}wO{`$TI1wmo(Lvfo9I&7luN
z57PU?&Yiu2oBNvj>=Qi;JMv8gxxyC(&*FQ-E4z~YY37uiGJNO$fbx}$J(9hnT$5gc
z{W7Tl|7;H@uYU#m_*cmL9VTa6;_RaBWQ(CB`MAKVZQo9R8Qsa(q`YsTR>~@VI~M4s
z8hEH5aM!1~OB!7E^V+@I3N1$}`+V}d#1ccwqGjoT@J5qt5b`*Cp*%JN_f7ms_qb;9
zMJC|6F7EbnrsJzy;3d1@Az-(A7I5aGvuL^aIC5@b7-hquiBZf~jr9fi!`;SQZi8R9
z*I+mDy$7HBmU?VUs~cZgwsXtd_}L;EVmd8&5}IF}%z3ev+sh9DUoHDQniHcBfD032
z*s{Q%j|4bGH<hiVISV@r0=yd=a2PN<j`BreOA`AQ15Yt>atQ9TX)~4_VB#DT=pMQ|
zQTGs83GO>^IO7ftLPsVaBsx&(kGextbAa5E43eC&8<AhgkwDg5_pvW)$gLRn=@&kN
z{-59+S_AYS$=`vG;SRG0Z*ts$r;q+YzCg-U&!RuQ_dV(ls?^sr`HX`4zo&kb-{NEW
z`MCSw0c`Qd_1;?EQ$0P?J8{OKvz1Trj@AjzdhOElh~DR!Z8=4a5xGPA-0?-7u*-L3
zl<t60ZnsexWJCV;LaYTJCi5XW;J&G1gtJv4#xGy7Z}Ti?4PYLKXAC*ZSeM6yl(#UF
zUbyAQ^lNvIDb_<<ldvspVk<%wUS(Np3bA(B+->H^EiJZq$AVVl=R&UymArwX&#}~P
zNF>UtdnVs?FL|gNm=n5ZUVEBnie8(bvqI<$@PjNDZ_*ym<kzDfzL^tc|L!9vA-elw
z(QF6vS1l{+!PPG|a}OxEBF`9m1gv@Z2$D(Y9~?}ltkweO3E!V1{p#sAeOmau^jh$M
zzJPy^v$Cu)fo>xoA9vOp8dk17jrmM)Z_c#I=7L@&Q@}O!*j_x1vH5iF$8%wKp@X}n
zF}wpm6?*hZ-_@|Yz^yv<BNz6DkuPl(8jvlIPQ`kbGjwd(%p>v*T$O8@bG<d}o1d?F
zqfGq&Prj>N+3Yd;5`T17#;83?!KE?EcM|E@GsX!0Hdx@Fc682OW4xcX%or)#dyH$@
zZ}sJ?e6Tr_e@*a5X-9Jzl|KgDkf&{z`f2dw8-UJv)*zWx<-f%rxX*b8hQ*>|!vo}n
zGW4H7Cvh29hPWxU&F7_j8oxxA95U${#Zayt`O6y6=&x(?nZ{THzXcw&hDL-xx1$*0
zxt<xG?gD4jnNJ<9kulcDxa9Y;w%+Qsv92q}+IR`EKkWl_x83j9V~wV{FB=#dU=pME
zjs48K_g>!SZ2>lNv#}=up0oT*2IizspfkC?PpHO0egT7GAa9afVsB1*0y2M><P3fQ
z<BzVcH>)DQ@H0VY>Vv(NdHy}X^7HH7vPizGJU)w@6b$f_WwXyrtbq+Ip`0&2lt*;}
zYx<zXN^}Wd)@TjV-s=o>g#_iwt2@Z@=RoCOq+IkRpOxnGTIEyhq8@9o@IuUV8J*Zx
z{)XD_nV$4QbdTt2$prYTA+d5heQj$<uG~Uj+mL<R`0RmRduXo*U2uzhnrG2Zg#EUL
zt`*+(yn8S*PVbY~X?wWq8c%J+Ds5E1ulDr5+R@!Cf-?@hf;A;rv)bpJQmV<gHvWO8
zNP3kgUBl39W`<XnTv@1Hws3ImgvEo|lNlgC<tO&q_#Lk3d13s!wX_}hn+K5-I7ENK
zq56|v+bBFzuCW+AR`8~0ah}NzG`SLaM?5QjUAxJbN!Zu$>&1nyR`}KUShVjJ_&P@}
zwy=F!d;PmjXT!7RE|rRY6LI|b1jSe<z@L2NVR$=;w-D{iPM*ivd)chgQ;_@YL3}|m
zu{&yrwFqQjjdEvX=Z9)~IwbR(v_{D93H`*Y?_DF0n(?n1JZF6WV<6{5!*%p|Wo3NW
z;jF(G7tW%uy2?7EeU3V0h~2d)#HZ;?x&^<B%-250C)`?HuJpC4aW3o|r~1@5&#xLM
zGLXK%V9s6FRgF`zMW*k*ar%9;7q!oEif+`u@^GF_|0bU=zt7@3FctLdLcUk<QMiKd
zl9RzZr&NAlUa2GB*(LhUdp2WA^Zk9~iDW^8w}LxqR<OTuf!V`}SzXv<E6V*6_*Wfb
z-N0|G1)j-5YrLQEpt~IZF85Qq#KW}^Gnef&_u4dg*mF7foEQu7c!YLzuB(Ceb$@dr
z!RG|-4V=EFcaX#P8<+J)v-1mK?r9<)34WVZtdD1ff;#(u&OMwxw1dqX#?Ea>%qx&z
zs9<yt)=IUZGh~K`Dl+We3){TSj92${=p2aAA2RS$j<ObCc1`VGTmCe3a~-sPwD^Pd
zT6v2?&P-4CAUbRLJ^V7F>1Z06Knx>v%f1*oD|nJjs7>N8igoT}U3^ct7LMl;!!~w;
zFRQgyV!u79_!RVA<RazNgBI3H?n-~Fb>Mf}u^KvehNQpIpY9xyEVLw7((>034^pu;
z1sA!ikn_f0!@Y6rrNF<~s#{erXisgc&ENkWnMM0`^y9;rDN3J^z7eL4UcM9OwQGKo
z{PN&4f((-kh8}5`wS{)1bI5k@qAkU&D*ia(tu1fL%QmE4<yPFd#Iq9kHmNK8nf<yv
zG{yh7!K0B6iA-@jHj!kB-q#(P!lm#i*`_$v2=!T)P5mIhst>o1b7H05+YG$2b^oS&
z>(k6<hCaK1quVVUhVPF#E}_emYFygRF$N1hO5l%xR##YIFPxd|S-C~g2r}Gqmqdra
zn_V&PXpHObc<NH$+|Ax{g?9w+tkgT{NuHHm6t!BGL=&oC8}hnp!d~3H!i(i*c*3FH
z)B6K>XKxtxZsQN&U2y%4n1%t&`2cIeCSqaoIV<<FWxGACd`7L@#>00X2Ywl2BR*{Q
zHtZI1aHbirhn<R!t2o(y*;cP#Mt)`VpzJ~ANanzD#QS_vJ_79}h4CdS=5Fvt(U)7&
z9);E!@%sSEK!Pbtq<wtqUT)2o^8L_eJWM^sjpJ{C?uL09XCn8rok4jNdn726&r0Wp
za~bZnq>UA6_9YA8o_V$1dBuKt;<T5M8%A?YdB5&Op5luX(`4t#`{i*4_r@h&nzCW0
zY-v$32lz?K;Ve07J?^H)M|*(s9l%raON>g$SA?xbJ#17H57p4Rz$5<XN#*m60>5Is
zYk^xj$Y^vlttq1_&ve(M%1@$vgvH((xY0XjaTZJ8weCfEU+eN#bO7aQ7XI}NeW4H~
zpKP>%-;sB32S+E<?r`cvc$NgFI^H9W$nbWC-<!dy_)*X6d8YecAERCQs&vn<<tWB?
zi8tIKrVhUAuom^op3_)(X7s&VXwUEtFz9aHNwljyx_fCyzjd#=@DnG#mN>BoxJUSL
z`00WAgu5Y3zOZ_H?C|L0!UKHw0P_9uzp}o`HrKt#+5>nSIAt#zof{iQ_^YKq^(%d9
zDlq7NW#zF07u)D-8*Ak@?4zCtx)^e;$Fwhf%EkVt{S56L?D@K@Y<B79rVeK*E~7o+
zLU&3FH=1|h?sUpEw@C|F;Fa$p7Zr0gf_gb?d9QG+@^4VCIncZYcsh=Et-NH%B;jHk
zIM_ZK9|iqvVf<SJ=P35N`QIWKrTa-{Jz81oDL3n)rEvq3U>9z&w|5>-+rlwpUdNa>
zU~4=8-K?X{4cHTkX<o<w2HJdp`j6jDn<vwrVvRIM$gEPxb-eJh`S{nEd&-4h@aEI%
zpw69#(1&EDo&&#uL39_$O6lOD%l_1pzf^Iq=wK%P&B`gy(bN+5bzF9SJ@uG>LwAFE
z$g@V7on`;V%ChEhKPh8Dr`oDI(2McC8h=ElvwQ=v>-(TQI0rv9z#^DxfmOJfOPRS#
z_`;v<{2jK;aOMC!aHj)x=$G-AFQX03wc;W5Y?N?7`Bcgs<Yygaf>AV}`6nj#J^2|k
z&f2o_s*m^JbH*$GP0m@=dkXKE`R2L!Q*gYUCq9;T$MBx$!_LD?jBlyc)~j<o={)7M
zFaCxH`ur{b1`Nb{nEPN2o_H=8i19V|B9X^p*LdC)?A6b$+?w(hazBr!zq+hwIR`G6
zmZg^~zEbdw;k{7~cNgdH?hW8njO!D;Cte!^ys8VGmax;kc57+xMZ7N>5wC@NR`>Cq
zX!9Z7lYAb=yO!scBs&{;FT|a1hw`3eu+D5Nb}W-#Tb|h>n$=x|nm^q^=-<gc0DtHJ
z>*7sWep?yVPvDo&OmV65b<OHpEBkJ1q<eu^k9`(tUF3zay)74-p^jjQf^+ex=JP)|
zA0%5sW0b6_rA+gEEOJ=&R7doneYH1PGepNKlkMGL`Q_WI$|Yl>ys!E%shscdnR&<P
z7nDCox!P7e;YxEl9sDTwy4u(81_wI8FW5kCVzqIJp3`<nKEe!oh&8`=SaxmsdDi3+
zfu5D-{Ga;defZjp#lT4U!<BO7gx44ijFdlEfe{&F%8?6Zy>Tf=@7X1}F$tWBho<r=
z{+Y(7d<q%f&+>gHW17{)J!pahUOEO|vYiP<^Z<LP_Lz~&C~xdfH_G;iH>PeVB#yfQ
zefTW&H+0JZZebvCsFs6%KwaBPJ7K4-c^%)^@%=u&H`|#)vz>N^HdD^`b$q{%?~<WI
zkMC}59^f|q5nP18mC--AYX`kypuRWK*AdPY#bn5T7V|!1Yyh5@V(+hgCyWm93bLps
z{j;6Rr8gzc@bsSidUoFN@V&98H~mbF=?HyiZ_-L;&(yv?cC;CnqjAyC!2UPz-kF}w
zScuCl3;@^aM|IKr9e9OtO)RYA`@MW`wkH;vN1o*zX;aSkb$q{<@3MQ3JaW&tv^QZ{
z*)x5(M$=~S-96!j{_I&;xp4JZRsRIW8`RU7k3z?*9y7Azzl=H5*o<F~SmTjHi%Ia(
znkJ?pBYGKC2w6$n%CBe)<ySUt-uiyy7XEKx-1nd779O~Cj>p-iNAMl&h^FUyA%``B
zTnUzSq-Q6F_WeEyA9^zPvxOnMv1A_v|32-Onh)w=&cUnIQnV6<V#pp?3ZLW_hMrU@
zcWx?L$x=};TueRuw?)VM3csx<2mFHjXro=|@#~5M`*nE}58S|>g0;)ZjHS-fqVlB;
zq)sT`F?1sJHXX6S3r(=`En1ga`CA$5`=(F3W<m*j<kS$KynpJtM0X);b(8A?81bFW
zJ%-QdO{K}`>LGht$<22Ia(6M(v=05dwZNEmcI2T8tDEtz^9X_~2~OWG8d*ZlQ{N4X
z_MK#Vs2-c&aV8eA&(=3M%Zu1tI|k+3iVe_dV*@!~;0elh4Z_dr<ga)|JdzyJx-AiM
zw@I&$G_|_)yN-Up8%cYGBhabwDXwowuMl3g4gzM!nORImI2#kn6-Ex4XJBmLoP;Td
zHX0*2qx%c?k<^n+(syq8E7>OvE!qb)hZuXv&Ws(PbEwRDL37T&PCTFom@E!W6xd6#
zLzZjn{jfDs>l#}<?m&JYeE-(&0`;15;L}ck|Hjs#s%MW~K_9Kh^ZjJa$!&w?mHHpl
z3Z1jB&U5ugyN$FfTC<TA%AwI{pWRgmPg!o$j~yD^sy=`@DIALjY|*WKzFRsT9I!^H
zyrkR>`>PY0kbn-dXR02$@UEQGUD$~2G97$``niSOqXrDv9XVlOzk$sIXdhGf_>z7H
zef7J5HBdCw*i&lfeVa4p!87$QdaN!BO=yHJp}z{f2e39j-(8p{+Xvb4a1S_h+6MG}
zHn(|B@`_?&6LX}w3p1zCL<nA!ucd`C@6NN&^+HFf`Me?C&`XCT8mv)`4c3W`H&|A^
zcru)A_Bxt+3LU3zD%evD4jaKgbKPDt_T<K;@UUB2R(!w<HP;loN)LEemfsT}gpWs;
zY;Wnn-OzNXVM-}HezSP!n5ABKA)0yItI0m-%|EcM@IX^*VP4cN{2-nyEG@f*kMom?
zwGGqS`{UOR*_V}EZx7$JFmIvhHAP|qkS#gpy4iae+HT0q$wS{gJbza3Nneo7I2F1+
z$(kejcs0~$zryp^b?(RE88m5VzdoS-%*<lqL~tegkLC)YW`BO}>)+*#9CR-`j&~RC
z>z}s;gW(C)A4Pp&7hlkRQFSF(s_QzcS7xuDx{W8c7sNNJJ2H}|J@lZecEv|A=sq;v
zF8Z|JCl^9GJ3t=uf@Pgp5>17shl_2{T{w9kvST1|Wn=w1$#%1zF_(p*mp0(vJFyXZ
zinnIF3hmkDjo9!_!kb_a-)KB~CSDXzst&m44BIHl*e3g`F7#FTrB5_G8NO<{>Nbkc
zkQ;q%-8QJTj~CUZexE+L)wKVwXl<IIwJ~1UYxdyLf@J*p^e=gCU*xh@&np}`y1ft@
z<`$YSnpbe9%_~?lg~NXMZYBfE6#L`!{l)Nj_Ftf{`&etQU=0mrr+8svm4e@P4LtV@
z{~qPub}y7Y+v%5ao6#wogF1UZd-z{G8^M~p-}iV{<E<<pU*pk>+`>_p%`4Pg!Mcck
zdGG1%g|=pV1sl5yZ!#B>`^-<1{C%2_P>)-Z9;I^17?K+fc;dX>yBCM^lf6)WidDUy
z2;ZSXzhd)2OA8ODSL~M`PNm%%Z(iYKK7HC4#lFXhHZsi2x8RVh{1$L&z86&VBj&oW
zn0Hjh8q=hCx{i0C1IgQhWLQ977w}GNx~p(ApY56Dg&BN)L(idA7VKj}M=dYvlXdLU
z(@*zG8;_ajLG$Oe!h4~S?Irir_JZ^fXx!jKpLR``p+(E`MEiZ^A!Hc3cj=HPxaSWX
zTzy^3sm={wz4E53X5a8N=bG!C>sr3<%(<oIN;>?X{2hAD#b^C!@ZIMGb)Ddg`Fuac
zWSGA}mCw(ec;f2YlkcRK9s0|chK-(b8a}hCKQD#6Gk?&5`J2-}dd;Y=H&ZLWym8#z
zqo!?asFdFmf9veyH@=>-5>K`MaND6D!Efg8@rQnK>LD+@mbzojn_qeU-r9qLVO-2v
z#mSSmr&uG+Ur_GD^UFSX>MGAazU7|Gz%j3;tgUyR*7kF6Ku|t$=C6C|a<8P0y>3ZI
z<n8gVFc0Q$M)r*M6LxGP+;iO_kKcJ;DkwjE<{N)oasIYcbK;)l<q!WY6O@1dwO9U`
zdg<kq)$`Yj4?k`0oS^)`)34jScKXYy*1I;Y-gs2_`$4(i%gZTf$^1bJ=5OxQhyT~(
znU_*Gj{VBPKl|bPpAX94d2sR5BOduhD)-ZG4qG?wANipCp)WQZTxkA9>Kj*`bK;qc
z+D{0|Pg;Fe^NVX=Oj+sk$A9nW+rA%^AMo{)ZXQ4E#nfTfU;3p3KR0@0Q2x2W4=;*7
z_ChLGczA{P&<j5b%8&llcfat)`7fldZvSBGyVw2xO!&k6z5KV;vwpSfdGIr{zP{h;
ztAp~J%=|u|ns8oczX7XnIV32*vHP>Bvrc<HmHxps16EDk`O~2M<FnU%<%ajRrp{e9
zc<@8vo-2a#-KX_??__r?^zh>$XMOI(!-Dd~osV9Tyku+Y+vDa8-SxY}ei4-4xANFc
ze>re#D*fFrAKSR4|1Cjz;hQhKm3-~F)ETG!c9eVNk4_BA@BFs@o=YLW&0kP{dv<Z|
zcb7kx>KXl?;~(AjgNK6hp%>PF;}651OQl~QIPK_-znKw~mufm*y7n*6rVe?0*>%Z3
z^glKz_v!iBK6(zyf7kT+IZex-O+DxRe)U6}7Cju4PfVWI^zn>mQ|Z&c_UJ#4A8}n!
z{>4MieDH~Xdp5Og^G~)tS9{CJLHVwKe*Dxi2hhGX>@W3Szo8)*$A(w_x$~5Fo=Khi
zYH!V?*5$*4^6S5R(b3QU^qG{K+*-T#ik&q<dCkyAo_TuJGpU~(yD8?r_2pNC@`uj(
zbp7C)o=I7=e_6Nk<_&I8-Wb{#`R?bRNqzkA?)U?Zv*rZl=@UPby?VqmDevcJH}uau
zctKFU;MOBf9aH~I>W}lkcR<^T_Z}ORukU%~@1K3|Y2Z)xUl@PnfS}yx_oq`Iocdbg
zooSuF4a(Qdx_-@v-+wygT<#87`|*oU1m$1+VBJrj=z2O;THiJ3gj1$24a#@F@y)@L
z=Ft9}hYs4c>DFt4@(;fBxeuS3`gH13!+(G9?5z)s3(9}}^3_v6_}tT}>;;z{deEB}
z^}+e%s$c&8?V(Sn?r7V6*n{&A)Ov6J7LA?!&)ed(pL^9g>Da^m9F+fI%eLt+e6S_;
z?ZLkuddPLZdNwFuaOA^Z{^=WAQtpXIeEPA&pT9RK|I?qw#?IZiB~@QobIhjGZ_Nee
z_pP5l<4fP$lCnl$^4X`J{a@3A@*7S$J9*g3EvXCUUVQw|XU`cMl%HPHe)H7Zwxqm)
zcb)X*d*dU5@?)>O;O@cKZb_x4fBLj&?4v<Jxi3Grqyl;h%8y-Fx3=MoEvYls4Ig`S
z?4>t?@{!*-<tHb9W=qN$^uT#%jQhtAgYxq1WB+aYAzM->oPA5?`ANw;g7V+~@v!Z`
zt^xir4^27$=ZAegD8KB|PcQ%cUpA+{a>^-RyzRx?E)U8d`u&&Op~cOq>`kAUId}FU
z=LF>syuNP6B`<GI^<KL8ODCT6STZO-sPN`>zx(-S@IUFxe|_MHAwl^$pIve58{glY
zdiPsh-#BkZvMwk;;PMZ?a@g9<DfiN|=8it^wm$~tm;ZbEs>eGvr@rvYjh(MtH2I~V
z{5M~Bzj^nqwBOKt$I@Hx-w>1^S$ge&*Jf`{txZi?clu+aRt4o#pU*73<cphA-m?ci
z{LR)^Zw<=V{bcN|M}2;C>RX?l^~Ch6Ctewp4`2TAic?dxZ)G+uox0@0pgd*P)6ISB
zS5Ut4r}xY}?#Rt4=bHa~tD3JL+T8kn{h-aM_K%<4)%{fS;Gq7p?K8)Hx`y@#o&Ayc
zJy>VX`VX)3w!dvkZJ0YGd~45;bA$5IkG}rb0q<=}CBAoN__Ws>PYud{J9x#`-~4)0
zs(Hk<;TPw4#|Gsae|7!LcV6Cve7il|8~Xa;LHU1vboy~eY~GYAT=ui@ulsFl49Y(o
zI{v|>PtbnzyWv?Q-iQX}xi_3iBfqyP^}%HaMIL$TfDeQ6R~J9MEqV{_H;;`RH1M9^
z1m(Sp4tP3#`=->k8@>{m``|^-2j$Q9^WHgq0qsxvPUMc$5BgD1zOenCKe*r6lxlr#
zN93A6z5YN@9-qGC-;ZmdeJc@tvHy}4L3#Ku$=&bHr2ZRcM-L1gJ~t@;<@KefesKxy
z&%Q0H^*t!R=*OqM{nqD!C;#K<^@ne`GAQ3|^bOiCd>9@2ht(Gc<!`<Hi-T@Fh4F4b
zq2{h1C(jGYfBV?Yr+oNX+JETFH7hQ-{&PY3vMYc2+}*>#=Zwc|x<55;WKjOmEoT&F
zHwphA)qM8y$3GR6uRZs7?qvz)>xt8ApMUuK#Qpex(YCLR{BjNL&zN6(@A*e3g7WX4
zvVP-3|Jaz?aM;VWfBl=&M<;KcedH4R&l^+L2ZzR_j|KIAa!35xTi)H6YV5rxcFZ?k
z{cTWw^#$91+URXeCE`!UuHQXvdr-b9`_UuMzP2%S#>|GgM?UlY%|Utj&PP95`y%aI
z)9YTE_v6Qc^3VPI)^gY8jj5jAC+hxq?9F}i_2Y3<wz)r{{i7P=$Nc&?tAhIJw-+Az
z;v*YV%eKsp*Ohx02IVh(>ek^0uBZKNTjQ?|T=<Qk9AE16o7ZhjjhuLF{mRFGbbV0%
z#UFp^_`j~E{fn2@zq#n9D}wTezj<T7rCl3S>w5oOU;EP^ObN<AEd2S})I!=%Olvsd
zt*g!t%6)xuV`}=FPdD86`igW=e%Z4hb^Y#Zv_E;&0T2Ag@h1i4Z=AU8lHMCOrfyt#
z{{ioBJ8eWzevdtG-A7l`e(T_VmtU~{$e?`u|8DO}qoO#ra1XmtS!5T5MivK@(E$ZT
zuo)2%5JdtQ1jS((md7kGGoUOgxPT@oAVl%82%<z07mTR5&Y-wFO%zvDBw~W1qCx^u
zqcOQPL(S=voOhCQ-k<j)b<VZBzy9j$>guXnx2t;alLLL@mbIwkD~wYmUN>Vu1N}a2
zgKoRs>gVhFd1U+XkQR!uD%ZecCsPmei|hlo*ax&wIL^cP)0X*LcXNQhCf6|Z{QN$Q
zpBT0!dxj_I8|oMZ&UQ!dK+2RzYCr0Bh4LKTWVG?igEuhF(4Dt**9264i&1NxkEoyf
z+QD7h((U1Xv+G6;UiChP`J<1uv7*O<ev^lBYuTK7jQbBVE{B;xeR^Cqc6xKE661~u
zXGShFK=mJIGWp+Ui!pxh-mSWodhoo0ely8m;gE;%GF?BP{S455Q)yaoc`y^>cidPT
zUj3q=*fu_9@IMWuVEpcy(=5(_0@_cvS>w0o)cx93YwVL<FBMd=Wudu-X>%0jcP8*+
zEuShVLme**yI$Q;j2{hO7g_a4K`Cl`Ei5Y<=3-p+egXPJ?-v;NF0k6(ep5kln31DL
zZG5I~C$&7kh)v&szO$*74?By6`P?mEE?;<2K^Ym}wi>=J+!5mwH8M}yD?q=$Y|Qhm
zX=?wRBze)Lb5cPywk;bwa%a04=J%}UHoQ3k`sXHE=YPyHz<4<4;=`X0C@9;TAFQ|7
zFHyIj!a=d8)?UyzY_l2Io58^Rxy2(k*wiYhuKc~^i<~O8Kc637vuSQ6=m+H4K1e*)
zgZbN^W*M*Erl9({3FB_xncji%dvd4mTZ%!yYo1+OtL=3)-Y2?fT%e%ZZn@igEKOFo
zD^qvxg48_FpXcCE@zbbg%s1li`}iP7LFI;9IF@Rd9>BQen3uhwS*ZRE$2YP>wHQy9
z2RhzK1ODO>%u*k#?HJ#qu*~A8fWB;`leN8NA;!;>O{a)tC{L8J^RXv!>oNY)BmMMO
ze9*VGo^Yh;z1sf><@-YxFN6EN;WF`3$9)OrXPQ(7T10_<?ktzG^S>owJfU8k(-jW&
z=^4!m>rdcf{KkbTmzqLQ{bx-QF^nQHPAcC|;du?cpJKdh-ni$h=74_CB{qHBSMcj(
zQVz6->p#1;J7#e(U*UW?RpJHujm}f(@c<FlbTZ2W+S>=-)NxNbT`|9`evwO|E9kfE
zbf?D&yR;YYY;b}0Z2Z*Yvy&$3ajHjb{pKbU)jxYWJ$~3IJE5m-5B;Sq$MgDbeG9BV
zwfM&)lnv;=x;=v)SNL9?dVlR`=#PeM@6E^04#)h5!tIONOhMmh%S?K_k$C^s2&NJA
zcj6s2Ph$*$`I(!%@8^#I{nvaBJr23zcCNZlS3%XhYM)j6dh&D3U;O<GPOK)X|Ipd=
z_#{5%`i_o|a*7+*=66{ht{w-4ofefbzsM=WUnBhKaSOZm?U)yXaw_%3<GD5)N)%ZC
zaPvgX)%|jc;G_l8<C!`6gKkzY<<vq0{dxAs+STpZe3Mz}*&fhO+#gJjbGo0k=?Q+2
zQ;a2_E~wNrRr}AZJ>AR6N1zW2cJ%ni;K7EA9S?xd`#N-N@bm&)o~kQ}oz-_izf2fL
zkBi!U>S_fyp*)SOh_~xJvN2yZ9|HPA^C1`?NP2a5^cA?@d##a6$~1%+&)phl{_6$M
zA6XGakE0y@KdF1t0`)1%SP~b#c`4?fiLeshJp=lNOJnHq6?4|Kh-)Y0RE<_3w=?Tn
z2<H1g=LLOx6!c@fdGxreoX_yMby!ZZU8nI+$Dj1YeBG`#&8`EWU+kGckH=;g{#Y?k
zFQ<w(&rW(ZYpw_83+nE_)c*?fXGSE`<Fvr!$j6gv<&@&ESeVu+P{+@G0j2SacA)w%
z7SrRmS?{$H)|bmE&h!(htvg8)>vtSoe!Y1c=u2Km>2V!1by(3riJUSzW1nubG0GJ4
z$2d5aOf3R^cKix@yvK9OznEPhry4sCW<E18Q}-8P5!>oN8$ka7V<kNfj46?2k6kaP
zY(1k_zn&bR_VcE?J@?XcQT?mt>+p4#Kls<UJ1gZ>SBmqxi-$U1WBjvSwth1*K|i%B
zj~+L+Pe^0erOT;)d#jCs%^x3PzLvhxT{9`@*HnK&k0)K1Ja*V5mQ!u-Serv$_Flz&
zrv+yE!vvr|`$7>t&ivv>i=59B<y3BIe961Cic^@M*;^to;-mUE+)9r>jg|9tz#p2g
z!~6=P3o9lq1^w(*<@C68T;aRS3yYyVM}4dIrkYn_e)#e7Q?ZLcpF66C9<L?`t(c@0
z2KQU|yp|JvT|JIGZYXZ84*~tit9A4^_Rd|K)QDiH&$eTGE7Kg-VExvxLVMjnRR8-M
z=<)3t_naH2=D_oEYB>1rs(u>gr(3rQm-~XgThn2B+$;8tedg{1?ZNj_lijm*iI{(F
zO~JJHUZ9`aeViT-e<$5D|NL}lZ*3z^Wyy1*F~2uAz-Eg(=x5G6OOKP+4`)}!xj}ng
zli5<<_+H%~@8t!boiQ2JzoL~MKU?f;PB(Xf{xWRT<?QU&epp{#b@KQdC(u7Cyh@L&
z%bd?=bT~qP9GZW|{OEq+fmS=vU+8y}9&h*T%MSXQg#Ip6+&Q<*S^Yk>FR8<C_gK)+
zpL?Gkhv(g{-cmjq{7KXOhko_(<FS6zDy{Kb%~AcY=%UBx*BlbxmYRUS+D~?S+3Bd`
zuG*2IAGR5R{_a~nXkHZSScM3gJM_UH>X-JqjnPu~-x~LglKSDG&xq-x$MXxfmR)bw
z1AkjObs%7T^a!j|F{yFdH`<{8$owrm&d)U(Uh{(n`123iAM8v%(ZYOH^e$J=Ys=!2
z(qmF3EFPRlT_Ga9y~)XlBXUiNN);_3XL^&o3|E4XC{M+~Pb~<-LF!33#Ceiv-+z8M
z85}}#rBc2`mLwLD@!TW<A5J<*l~ePo^PZ$HS0ob4NC}@S5QuqP8J`sLg<?qt$rKCX
zVx&o#d~XLq8Y$v0S06Ybfj{K`Q*N9Sk(C94JPZv@O)W^;LrLckN%t?3-v5{w`@T6g
zy|(przm@k_PR3Ke>-u8<Hp{iUueH4&n?LL))3b`?P0Qc$)*ozq@N2@en}a)Qf`p6i
z`SJ^kPd@a&{PpeCxf6mtn(h3=spY4~?=5MH;SP5(->&JfU}09J?nddC6z9drHyPh+
zPhv-{e46xWnvLz1mv<x2bsHGXSaLDIE&R74Sgfgr1(F=}k_UgBjF<*i4fZz^T6I?D
zN0WpoKNGAP>~AJvnjj`VUZ!kQB7v$&F-4>!$qaHOT}ZZ*lL`~1NRotnSJI0V5iv2a
zf+a%PVnqBEGG!wmnJI#aWU`W-0zY0+@qrEpDFQdr%Ny+x1dpfEn~V@RaCAif!akcI
zT-bjG6L@jx5(0jrkdInEHzjH^v~*>|kEQLSHLp&nL$rMYTlnUM2!e$iyw-*K)DbW=
z_qGcbx=?iu0EpV{BH*F5EW|}?RR!@30<DRmM}gMR;KK+4{w@d+XQtZ!06!u?Rh<Y1
zAA=B(oq%<3F<vKw!@o=&d{k0ZssP>pW<5}r(oY#gFKmAR>i~NMhSDDR0<8$nnS?P2
zt$czwlt&N^V1&P~uP4cb?&w5LVNGGV{e%2d8~?O~|GQqmVM1T!^0~1|1OvXeB($f7
z`4Ku=dW=z8CJa-Cxuylfk}+DtT8Cgs6QweVj2la^61mbuf)$q`l4b~1TbYDlN%#VU
zsdiEXGJ+)ow+V;hIIfJV<Z*>bJc5-V22_Q`N~HvgCl(6%BEUGI!7Q#!CP|7-lkufc
zn!lHj-$XtY`Ag(qk@<jM#orVlzl#j{P{c(z^1H|mf#XE}78&9o|7$sPjCjaTBSZcf
zC+szC0YKjeARh9^$P$N+VWZST*_^>J5BYCo$giV(XbeEtMLZT5(nc8e#Yhh)#6t$Y
zRL#?aK>=Bg9WIqh3*~{|H!6APIvc=GBMXCxZJf|GQR0B1Yoa<pV?swbgE%yF3>$U%
z0%0Fr1&>b!5%5JZA`B&5z6EfMd1$QY03Ll@LOhh<dr#$kBRw?6^Z*Z+37yA0_?S<r
phcJ{7Zx6~el<=MN;27W(j2A6t5Kj02wwQ;@hEFvEkKWoa?{@*ZUhMz?

diff --git a/routerjars/AndroidManifest.xml b/routerjars/AndroidManifest.xml
new file mode 100644
index 000000000..c0c558d68
--- /dev/null
+++ b/routerjars/AndroidManifest.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8"?>
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+      package="net.i2p.android.router.guts"
+      android.versionCode=""
+      android.versionName=""
+      android:installLocation="preferExternal"
+      >
+
+    <uses-sdk android:minSdkVersion="8" />
+
+</manifest> 
diff --git a/routerjars/ant.properties b/routerjars/ant.properties
new file mode 100644
index 000000000..a6b2a81d5
--- /dev/null
+++ b/routerjars/ant.properties
@@ -0,0 +1,21 @@
+# This file is used to override default values used by the Ant build system.
+#
+# This file must be checked into Version Control Systems, as it is
+# integral to the build system of your project.
+
+# This file is only used by the Ant script.
+
+# You can use this to override default values such as
+#  'source.dir' for the location of your java source folder and
+#  'out.dir' for the location of your output folder.
+
+# You can also use it define how the release builds are signed by declaring
+# the following properties:
+#  'key.store' for the location of your keystore and
+#  'key.alias' for the name of the key to use.
+# The password will be asked during the build when you use the 'release' target.
+
+key.alias=${application-package}
+application-package=net.i2p.router.guts
+key.store.password=android
+key.store=${user.home}/.android/${application-package}.keystore
diff --git a/routerjars/build.xml b/routerjars/build.xml
new file mode 100644
index 000000000..b8b474b47
--- /dev/null
+++ b/routerjars/build.xml
@@ -0,0 +1,83 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project name="I2PAndroid" 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 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.
+         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'.
+
+         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.
+
+         This file is an integral part of the build system for your
+         application and should be checked into Version Control Systems.
+
+         -->
+    <property file="ant.properties" />
+
+    <!-- The project.properties file is created and updated by the 'android'
+         tool, as well as ADT.
+
+         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).
+
+         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" />
+
+    <!-- quick check on sdk.dir -->
+    <fail
+            message="sdk.dir is missing. Make sure to generate local.properties using 'android update project' or to inject it through an env var"
+            unless="sdk.dir"
+    />
+
+    <!--
+        Import per project custom build rules if present at the root of the project.
+        This is the place to put custom intermediary targets such as:
+            -pre-build
+            -pre-compile
+            -post-compile (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})
+            -post-package
+            -post-build
+            -pre-clean
+    -->
+    <import file="custom_rules.xml" optional="true" />
+
+    <!-- Import the actual build file.
+
+         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" />
+
+</project>
diff --git a/routerjars/custom_rules.xml b/routerjars/custom_rules.xml
new file mode 100644
index 000000000..f62ef8c33
--- /dev/null
+++ b/routerjars/custom_rules.xml
@@ -0,0 +1,89 @@
+<?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="${i2psrc}" property="i2p.present" />
+    <fail message="I2P source directory ${i2psrc} 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}" />
+
+    <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>
+
+    <!-- new rules -->
+
+    <target name="buildrouter" depends="-dirs" >
+        <!-- build router and core -->
+        <ant dir="${i2pbase}" >
+            <target name="buildRouter" />
+            <target name="buildI2PTunnel" />
+            <target name="buildAddressbook" />
+        </ant>
+
+        <!-- router -->
+        <copy file="${i2pbase}/build/router.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" />
+                <exclude name="org/bouncycastle/crypto/Digest.class" />
+                <exclude name="org/bouncycastle/crypto/Mac.class" />
+                <exclude name="org/bouncycastle/crypto/digests/GeneralDigest.class" />
+                <exclude name="org/bouncycastle/crypto/digests/MD5Digest.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 - make a jar, it's a war in the i2p distro -->
+        <jar destfile="${jar.libs.dir}/addressbook.jar"
+             basedir="${i2pbase}/apps/addressbook/build"
+             excludes="net/i2p/addressbook/Servlet.class" />
+
+    </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}" />
+    </target>
+
+</project>
diff --git a/jni/build.sh b/routerjars/jni/build.sh
similarity index 99%
rename from jni/build.sh
rename to routerjars/jni/build.sh
index 3c2cf654b..8319fc0ec 100755
--- a/jni/build.sh
+++ b/routerjars/jni/build.sh
@@ -25,7 +25,7 @@ then
 	exit 0
 fi
 
-I2PBASE=${1:-../../i2p.i2p}
+I2PBASE=${1:-../../../i2p.i2p}
 #
 # Wrong again. We want to be able to not have to update this script
 # every time a new NDK comes out. We solve this by using readlink with
diff --git a/routerjars/proguard-project.txt b/routerjars/proguard-project.txt
new file mode 100644
index 000000000..f2fe1559a
--- /dev/null
+++ b/routerjars/proguard-project.txt
@@ -0,0 +1,20 @@
+# To enable ProGuard in your project, edit project.properties
+# to define the proguard.config property as described in that file.
+#
+# Add project specific ProGuard rules here.
+# By default, the flags in this file are appended to flags specified
+# in ${sdk.dir}/tools/proguard/proguard-android.txt
+# You can edit the include path and order by changing the ProGuard
+# include property in project.properties.
+#
+# For more details, see
+#   http://developer.android.com/guide/developing/tools/proguard.html
+
+# Add any project specific keep options here:
+
+# If your project uses WebView with JS, uncomment the following
+# and specify the fully qualified class name to the JavaScript interface
+# class:
+#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
+#   public *;
+#}
diff --git a/routerjars/project.properties b/routerjars/project.properties
new file mode 100644
index 000000000..c006f0a1c
--- /dev/null
+++ b/routerjars/project.properties
@@ -0,0 +1,12 @@
+# This file is automatically generated by Android Tools.
+# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
+# 
+# This file must be checked in Version Control Systems.
+# 
+# To customize properties used by the Ant build system use,
+# "build.properties", and override values to adapt the script to your
+# project structure.
+
+# Project target.
+target=android-8
+android.library=true
diff --git a/routerjars/src/README.txt b/routerjars/src/README.txt
new file mode 100644
index 000000000..3852f5431
--- /dev/null
+++ b/routerjars/src/README.txt
@@ -0,0 +1 @@
+This directory is intentionally blank.
-- 
GitLab