mirror of
https://github.com/deneraraujo/OpenVPNAdapter.git
synced 2026-04-24 00:00:05 +08:00
Merge commit '82fea30fcce1d169de7ec42be84d079e0899519c' into feature/update-dependenies
This commit is contained in:
@@ -1,12 +1,36 @@
|
||||
#!/usr/bin/env bash
|
||||
# Build Android dependencies (run after build-toolchain)
|
||||
# Build the entire core package as required by Android App
|
||||
set -e
|
||||
if [ -z "$O3" ]; then
|
||||
echo O3 var must point to ovpn3 tree ; exit 1
|
||||
echo O3 var must point to ovpn3 tree
|
||||
exit 1
|
||||
fi
|
||||
export DEP_DIR=${DEP_DIR:-$HOME/src/android}
|
||||
|
||||
[ -z "$ECHO" ] && ECHO=0
|
||||
|
||||
if [ "$ECHO" -eq 0 ]; then
|
||||
exec > $O3/android_build.log
|
||||
exec 2>&1
|
||||
fi
|
||||
|
||||
[ -z "$DEP_DIR" ] && export DEP_DIR=${O3}/deps
|
||||
[ -z "$DL" ] && export DL=~/dl
|
||||
|
||||
mkdir -p $DEP_DIR
|
||||
mkdir -p $DL
|
||||
|
||||
export NO_MOD_PATH=1
|
||||
. $O3/core/vars/android-sdk-path
|
||||
|
||||
echo BUILD ANDROID SDK
|
||||
$O3/core/scripts/android/build-sdk
|
||||
|
||||
echo BUILD TOOLCHAIN
|
||||
$O3/core/scripts/android/build-toolchain
|
||||
|
||||
echo BUILD DEPS
|
||||
cd $DEP_DIR
|
||||
rm -rf asio* boost* lz4* lzo* minicrypto openssl* polarssl* snappy* mbedtls*
|
||||
rm -rf asio* lz4* mbedtls* #lzo* boost* minicrypto openssl* polarssl* snappy*
|
||||
echo "******* ASIO"
|
||||
$O3/core/deps/asio/build-asio
|
||||
echo "******* MBEDTLS"
|
||||
@@ -24,3 +48,8 @@ $O3/core/scripts/android/build-lz4
|
||||
#$O3/core/scripts/android/build-lzo
|
||||
#echo "******* SNAPPY"
|
||||
#$O3/core/scripts/android/build-snappy
|
||||
|
||||
echo BUILD CORE LIBRARY
|
||||
$O3/core/javacli/build-android
|
||||
|
||||
echo DONE.
|
||||
|
||||
@@ -2,20 +2,23 @@
|
||||
|
||||
set -e
|
||||
if [ -z "$O3" ]; then
|
||||
echo O3 var must point to ovpn3 tree ; exit 1
|
||||
fi
|
||||
if [ -z "$DEP_DIR" ]; then
|
||||
echo DEP_DIR var must point to ovpn3 dependency tree
|
||||
echo O3 var must point to ovpn3 tree
|
||||
exit 1
|
||||
fi
|
||||
if [ -z "$DEP_DIR" ]; then
|
||||
echo DEP_DIR var must point to the dependency build directory
|
||||
exit 1
|
||||
fi
|
||||
cd $DEP_DIR
|
||||
|
||||
. $O3/core/vars/android-sdk-path
|
||||
|
||||
cd $DEP_DIR
|
||||
rm -rf lz4
|
||||
mkdir lz4
|
||||
|
||||
for target in android-a8a android-a8a-dbg android-a7a android-a7a-dbg android android-dbg ; do
|
||||
TARGETS=${TARGETS:-android-a7a android-a8a android-x86}
|
||||
|
||||
for target in $TARGETS; do
|
||||
echo '***************' TARGET $target
|
||||
TARGET=$target $O3/core/deps/lz4/build-lz4
|
||||
done
|
||||
|
||||
@@ -2,22 +2,27 @@
|
||||
|
||||
set -e
|
||||
if [ -z "$O3" ]; then
|
||||
echo O3 var must point to ovpn3 tree ; exit 1
|
||||
fi
|
||||
if [ -z "$DEP_DIR" ]; then
|
||||
echo DEP_DIR var must point to ovpn3 dependency tree
|
||||
echo O3 var must point to ovpn3 tree
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -z "$DEP_DIR" ]; then
|
||||
echo DEP_DIR var must point to the dependency build directory
|
||||
exit 1
|
||||
fi
|
||||
cd $DEP_DIR
|
||||
|
||||
. $O3/core/vars/android-sdk-path
|
||||
|
||||
cd $DEP_DIR
|
||||
rm -rf mbedtls
|
||||
mkdir -p mbedtls
|
||||
|
||||
# disable minicrypto for now
|
||||
mini=0
|
||||
|
||||
rm -rf mbedtls
|
||||
TARGETS=${TARGETS:-android-a7a android-a8a android-x86}
|
||||
|
||||
for target in android-a8a android-a8a-dbg android-a7a android-a7a-dbg android android-dbg ; do
|
||||
for target in $TARGETS; do
|
||||
echo '***************' TARGET $target
|
||||
VERBOSE=1 TARGET=$target CMAKE_TARGET=android USE_MINICRYPTO=$mini MINICRYPTO_DIR=$(pwd)/minicrypto/minicrypto-$target $O3/core/deps/mbedtls/build-mbedtls
|
||||
[ "$ANDROID_DBG_ONLY" = "1" ] && exit
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -e
|
||||
if [ -z "$O3" ]; then
|
||||
echo O3 var must point to ovpn3 tree
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -z "$DEP_DIR" ]; then
|
||||
echo DEP_DIR var must point to the dependency build directory
|
||||
exit 1
|
||||
fi
|
||||
|
||||
[ -z "$SDK" ] && export SDK=$DEP_DIR/android-sdk
|
||||
|
||||
if [ -d "$SDK" ]; then
|
||||
echo "Android SDK already exists at $SDK. Doing only update"
|
||||
yes | $SDK/tools/bin/sdkmanager --licenses
|
||||
$SDK/tools/bin/sdkmanager --update
|
||||
exit 0
|
||||
fi
|
||||
|
||||
. $O3/core/deps/functions.sh
|
||||
|
||||
FNAME=sdk-tools-linux-3859397.zip
|
||||
URL=https://dl.google.com/android/repository/${FNAME}
|
||||
CSUM=444e22ce8ca0f67353bda4b85175ed3731cae3ffa695ca18119cbacef1c1bea0
|
||||
|
||||
download
|
||||
|
||||
cd $DEP_DIR
|
||||
rm -rf android-sdk
|
||||
mkdir android-sdk
|
||||
|
||||
. $O3/core/vars/android-sdk-path
|
||||
|
||||
cd $SDK
|
||||
unzip $DL/$FNAME
|
||||
|
||||
yes | $SDK/tools/bin/sdkmanager --licenses
|
||||
$SDK/tools/bin/sdkmanager --update
|
||||
$SDK/tools/bin/sdkmanager 'build-tools;26.0.2' \
|
||||
'ndk-bundle' \
|
||||
'extras;android;m2repository' \
|
||||
'patcher;v4' \
|
||||
'platform-tools' \
|
||||
'platforms;android-26' \
|
||||
'tools'
|
||||
|
||||
exit 0
|
||||
@@ -13,10 +13,10 @@ cd $DEP_DIR
|
||||
DEST=$(pwd)/tc-arm64
|
||||
rm -rf $DEST
|
||||
ABI=aarch64-linux-android
|
||||
ABI_VER=4.9
|
||||
$NDK/build/tools/make-standalone-toolchain.sh \
|
||||
--verbose \
|
||||
--ndk-dir=$NDK \
|
||||
--toolchain=$ABI-4.9 \
|
||||
--toolchain=$ABI-$ABI_VER \
|
||||
--stl=gnustl \
|
||||
--arch=arm64 \
|
||||
--platform=android-21 \
|
||||
@@ -25,19 +25,42 @@ cd $DEST/$ABI/bin
|
||||
ln -s ../../bin/$ABI-gcc cc
|
||||
ln -s ../../bin/$ABI-gcc gcc
|
||||
ln -s ../../bin/$ABI-g++ g++
|
||||
ln -s ../../libexec/gcc/$ABI/$ABI_VER.x/cc1 cc1
|
||||
ln -s ../../libexec/gcc/$ABI/$ABI_VER.x/cc1plus cc1plus
|
||||
|
||||
# 32 bit
|
||||
cd $DEP_DIR
|
||||
DEST=$(pwd)/tc-arm
|
||||
rm -rf $DEST
|
||||
ABI=arm-linux-androideabi
|
||||
ABI_VER=4.9
|
||||
$NDK/build/tools/make-standalone-toolchain.sh \
|
||||
--verbose \
|
||||
--ndk-dir=$NDK \
|
||||
--toolchain=$ABI-4.8 \
|
||||
--toolchain=$ABI-$ABI_VER \
|
||||
--stl=gnustl \
|
||||
--arch=arm \
|
||||
--platform=android-14 \
|
||||
--install-dir=$DEST
|
||||
cd $DEST/$ABI/bin
|
||||
ln -s ../../bin/$ABI-gcc cc
|
||||
ln -s ../../libexec/gcc/$ABI/$ABI_VER.x/cc1 cc1
|
||||
ln -s ../../libexec/gcc/$ABI/$ABI_VER.x/cc1plus cc1plus
|
||||
|
||||
# 32 bit x86 for Android emulator
|
||||
cd $DEP_DIR
|
||||
DEST=$(pwd)/tc-x86
|
||||
rm -rf $DEST
|
||||
ABI=x86-linux-android
|
||||
SUB=i686-linux-android
|
||||
ABI_VER=4.9
|
||||
$NDK/build/tools/make-standalone-toolchain.sh \
|
||||
--verbose \
|
||||
--toolchain=$ABI-$ABI_VER \
|
||||
--stl=gnustl \
|
||||
--arch=x86 \
|
||||
--platform=android-14 \
|
||||
--install-dir=$DEST
|
||||
cd $DEST/$SUB/bin
|
||||
ln -s ../../bin/$SUB-gcc cc
|
||||
ln -s ../../libexec/gcc/$SUB/$ABI_VER.x/cc1 cc1
|
||||
ln -s ../../libexec/gcc/$SUB/$ABI_VER.x/cc1plus cc1plus
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -e
|
||||
|
||||
if [ -z "$O3" ]; then
|
||||
echo O3 var must point to ovpn3 tree
|
||||
exit 1
|
||||
@@ -14,6 +16,7 @@ if [ -z "$1" ]; then
|
||||
echo "usage: ./build target"
|
||||
echo "options:"
|
||||
echo " PROF=<platform> -- source vars/vars-<platform> before running"
|
||||
echo " DPROF=1 -- when PROF is specified, use the debugging variant"
|
||||
echo " CLANG=1 -- use clang instead of gcc"
|
||||
echo " DEBUG=1 -- enable debug symbols"
|
||||
echo " CO=1 -- compile only"
|
||||
@@ -30,6 +33,8 @@ if [ -z "$1" ]; then
|
||||
echo " ASIO_DIR=<dir> -- specify ASIO tree"
|
||||
echo " MTLS=1 -- include mbedTLS"
|
||||
echo " MTLS_SYS=1 -- use system mbedTLS"
|
||||
echo " MTLS_PATH=path -- use user specified mbedTLS source folder"
|
||||
echo " MTLS_LIBS=ldflags -- user specific mbedTLS LDFLAGS"
|
||||
echo " MA_HYBRID=1 -- use mbedTLS/AppleCrypto hybrid"
|
||||
echo " NOSSL=1 -- don't include OpenSSL"
|
||||
echo " OPENSSL_SYS=1 -- include system OpenSSL"
|
||||
@@ -42,8 +47,11 @@ if [ -z "$1" ]; then
|
||||
echo " LZ4=1 -- build with LZ4 compression library"
|
||||
echo " LZ4_SYS=1 -- build with system LZ4 compression library"
|
||||
echo " SNAP=1 -- build with Snappy compression library"
|
||||
echo " CITY=1 -- build with Cityhash hash library"
|
||||
echo " VAL=1 -- build with valgrind run-time extensions"
|
||||
echo " JAVA=1 -- build with JVM"
|
||||
echo ' EXTRA_CPP="foo1.cpp foo2.cpp" -- add extra .cpp files'
|
||||
echo " GTEST_DIR=<dir> -- specify googletest tree, required for building unit tests"
|
||||
for s in $(enum_build_extras) ; do
|
||||
. $s args
|
||||
done
|
||||
@@ -52,7 +60,9 @@ fi
|
||||
|
||||
# source vars file
|
||||
if [ "$PROF" ]; then
|
||||
pfn="$O3/core/vars/vars-$PROF"
|
||||
suffix=""
|
||||
[ "$DPROF" = "1" ] && suffix="-dbg"
|
||||
pfn="$O3/core/vars/vars-$PROF$suffix"
|
||||
if ! [ -f "$pfn" ]; then
|
||||
pfn="$PROF"
|
||||
fi
|
||||
@@ -111,14 +121,19 @@ if [ "$MTLS_SYS" = "1" ]; then
|
||||
CPPFLAGS="$CPPFLAGS -DUSE_MBEDTLS"
|
||||
LIBS="$LIBS -lmbedtls -lmbedx509 -lmbedcrypto"
|
||||
elif [ "$MTLS" = "1" ]; then
|
||||
LIBS="$LIBS -lmbedtls"
|
||||
LIBS="$LIBS -lmbedtls $MTLS_LIBS"
|
||||
if [ "$MA_HYBRID" = "1" ]; then
|
||||
CPPFLAGS="$CPPFLAGS -DUSE_MBEDTLS_APPLE_HYBRID"
|
||||
else
|
||||
CPPFLAGS="$CPPFLAGS -DUSE_MBEDTLS"
|
||||
fi
|
||||
CPPFLAGS="$CPPFLAGS -I$DEP_DIR/mbedtls/mbedtls-$PLATFORM/include"
|
||||
LIBDIRS="$LIBDIRS -L$DEP_DIR/mbedtls/mbedtls-$PLATFORM/library"
|
||||
if [ -n "$MTLS_PATH" ]; then
|
||||
CPPFLAGS="$CPPFLAGS -I$MTLS_PATH/include"
|
||||
LIBDIRS="$LIBDIRS -L$MTLS_PATH/library"
|
||||
else
|
||||
CPPFLAGS="$CPPFLAGS -I$DEP_DIR/mbedtls/mbedtls-$PLATFORM/include"
|
||||
LIBDIRS="$LIBDIRS -L$DEP_DIR/mbedtls/mbedtls-$PLATFORM/library"
|
||||
fi
|
||||
if [ "$MINI" = "1" ]; then
|
||||
LIBS="$LIBS -lminicrypto"
|
||||
LIBDIRS="$LIBDIRS -L$DEP_DIR/minicrypto/minicrypto-$PLATFORM"
|
||||
@@ -188,6 +203,13 @@ if [ "$ASIO" = "1" ] || [ "$ASIO_DIR" ]; then
|
||||
CPPFLAGS="$CPPFLAGS -DUSE_ASIO -DASIO_STANDALONE -DASIO_NO_DEPRECATED -I$ASIO_DIR/asio/include"
|
||||
fi
|
||||
|
||||
# gtest
|
||||
if [ "$GTEST_DIR" ]; then
|
||||
CPPFLAGS="$CPPFLAGS -I$GTEST_DIR/googletest/include"
|
||||
LIBDIRS="$LIBDIRS -L$GTEST_DIR/googlemock/gtest"
|
||||
LIBS="$LIBS -lgtest"
|
||||
fi
|
||||
|
||||
# LZO compression
|
||||
if [ "$LZO" = "1" ]; then
|
||||
LIBDIRS="$LIBDIRS -L$DEP_DIR/lzo/lzo-$PLATFORM/lib"
|
||||
@@ -213,6 +235,17 @@ if [ "$SNAP" = "1" ]; then
|
||||
CPPFLAGS="$CPPFLAGS -DHAVE_SNAPPY"
|
||||
fi
|
||||
|
||||
# Cityhash
|
||||
if [ "$CITY" = "1" ]; then
|
||||
LIBS="$LIBS -lcityhash"
|
||||
CPPFLAGS="$CPPFLAGS -DHAVE_CITYHASH"
|
||||
fi
|
||||
|
||||
# Valgrind
|
||||
if [ "$VAL" = "1" ]; then
|
||||
CPPFLAGS="$CPPFLAGS -DHAVE_VALGRIND"
|
||||
fi
|
||||
|
||||
# JVM
|
||||
if [ "$JAVA" = "1" ]; then
|
||||
if [ -z "$JAVA_HOME" ]; then
|
||||
|
||||
Reference in New Issue
Block a user