- Install the Android NDK, revision 10e
export ANDROID_NDK_HOME=/path/to/ndk
git clone https://git.torproject.org/orbot.git
cd orbot
git submodule update --init external/libevent external/openssl external/tor
cd external/libevent
-
git checkout release-2.0.22-stable
(or latest stable release) cd ../openssl
-
git checkout OpenSSL_1_0_2g
(or latest stable release) cd ../tor
-
git checkout tor-0.2.7.6
(or latest stable release) patch -p1 < /path/to/briar/patches/tor.patch
git commit -a -m 'Applied hidden service performance patch'
cd ../..
ARM binary with PIE (Android API version 16+):
unset APP_ABI
unset NDK_PLATFORM_LEVEL
unset PIEFLAGS
make -C external clean tor
mv external/bin/tor .
-
strip tor
(requires binutils-multiarch) zip tor-arm-pie.zip tor
ARM binary without PIE (Android API version 9-15):
unset APP_ABI
export NDK_PLATFORM_LEVEL=9
export PIEFLAGS=
make -C external clean tor
mv external/bin/tor .
-
strip tor
(requires binutils-multiarch) zip tor-arm.zip tor
x86 binary with PIE (Android API version 16+):
export APP_ABI=x86
unset NDK_PLATFORM_LEVEL
unset PIEFLAGS
make -C external clean tor
mv external/bin/tor .
-
strip tor
(requires binutils-multiarch) zip tor-x86-pie.zip tor
x86 binary without PIE (Android API version 9-15):
export APP_ABI=x86
export NDK_PLATFORM_LEVEL=9
export PIEFLAGS=
make -C external clean tor
mv external/bin/tor .
-
strip tor
(requires binutils-multiarch) zip tor-x86.zip tor