mirror of
https://github.com/deneraraujo/OpenVPNAdapter.git
synced 2026-04-24 00:00:05 +08:00
Merge commit 'f65d76170b26155358c2fc27686f87e0475f6a94' as 'OpenVPN Adapter/Vendors/openvpn'
This commit is contained in:
+116
@@ -0,0 +1,116 @@
|
||||
#!/usr/bin/env bash
|
||||
# generate expire time in python: time.mktime((2012, 5, 1, 0, 0, 0, 0, 0, -1))
|
||||
# -DAPP_EXPIRE_TIME=1364796000 \
|
||||
set -e
|
||||
|
||||
if [ -z "$O3" ]; then
|
||||
echo O3 var must point to ovpn3 tree
|
||||
exit 1
|
||||
fi
|
||||
|
||||
cd $O3/core
|
||||
. vars/android-sdk-path
|
||||
cd javacli
|
||||
git clean -q -fXd .
|
||||
|
||||
if [ "$PKG" ]; then
|
||||
pkg=$PKG
|
||||
pkg_id_def="-DOPENVPN_PACKAGE_ID=${PKG//./_}"
|
||||
else
|
||||
pkg=net.openvpn.openvpn
|
||||
pkg_id_def="-DOPENVPN_PACKAGE_ID=net_openvpn_openvpn"
|
||||
fi
|
||||
echo PACKAGE $PKG
|
||||
|
||||
if [ "$PT_PROXY" = "1" ] && [ -d "$O3/common" ]; then
|
||||
common="-I$O3/common -DPRIVATE_TUNNEL_PROXY"
|
||||
else
|
||||
common=""
|
||||
fi
|
||||
|
||||
echo SWIG
|
||||
swig -c++ -java -package $pkg -I$O3/core/client -I$O3/core ovpncli.i
|
||||
|
||||
# fixme: removed "android" from TARGET list due to compile failures in Asio
|
||||
for TARGET in android-a8a android-a7a ; do
|
||||
|
||||
if [ "$DEBUG_BUILD" = "1" ]; then
|
||||
. ../vars/vars-${TARGET}-dbg
|
||||
vis1=""
|
||||
vis2=""
|
||||
opt2="$pkg_id_def $LIB_OPT_LEVEL"
|
||||
else
|
||||
. ../vars/vars-${TARGET}
|
||||
vis1="-fvisibility=hidden"
|
||||
vis2='-DSWIGEXPORT=__attribute__((visibility("default")))'
|
||||
opt2="$pkg_id_def -Os"
|
||||
fi
|
||||
|
||||
if [ "$OPENSSL" = "1" ]; then
|
||||
ssl_def="-DUSE_OPENSSL"
|
||||
ssl_inc="-I$DEP_DIR/openssl/openssl-$PLATFORM/include"
|
||||
ssl_lib="-lssl -lcrypto"
|
||||
ssl_libdir="-L$DEP_DIR/openssl/openssl-$PLATFORM/lib"
|
||||
else
|
||||
ssl_def="-DUSE_MBEDTLS"
|
||||
ssl_inc="-I$DEP_DIR/mbedtls/mbedtls-$PLATFORM/include"
|
||||
ssl_lib="-lmbedtls"
|
||||
ssl_libdir="-L$DEP_DIR/mbedtls/mbedtls-$PLATFORM/library"
|
||||
fi
|
||||
|
||||
echo CORE $ABI
|
||||
g++ \
|
||||
$CXX_COMPILER_FLAGS \
|
||||
$PLATFORM_FLAGS \
|
||||
$LIB_OPT_LEVEL $LIB_FPIC \
|
||||
-Wall -Wno-sign-compare -Wno-unused-parameter \
|
||||
-Wno-unused-local-typedefs \
|
||||
$vis1 \
|
||||
$ssl_def \
|
||||
-DUSE_ASIO \
|
||||
-DASIO_STANDALONE \
|
||||
-DASIO_NO_DEPRECATED \
|
||||
-DHAVE_LZ4 \
|
||||
-I$O3/core/client \
|
||||
-I$O3/core \
|
||||
$common \
|
||||
-I$DEP_DIR/asio/asio/include \
|
||||
$ssl_inc \
|
||||
-I$DEP_DIR/lz4/lz4-$PLATFORM/include \
|
||||
-c $O3/core/client/ovpncli.cpp
|
||||
|
||||
echo WRAP $ABI
|
||||
g++ \
|
||||
$CXX_COMPILER_FLAGS \
|
||||
$PLATFORM_FLAGS \
|
||||
$opt2 $LIB_FPIC \
|
||||
-fno-strict-aliasing \
|
||||
-Wall \
|
||||
$vis1 $vis2 \
|
||||
-I$O3/core/client \
|
||||
-I$O3/core \
|
||||
$common \
|
||||
$ssl_libdir \
|
||||
-L$DEP_DIR/lz4/lz4-$PLATFORM/lib \
|
||||
ovpncli_wrap.cxx \
|
||||
android/jellybean_hack.cpp \
|
||||
android/cpu.cpp \
|
||||
ovpncli.o \
|
||||
-o libovpncli.so \
|
||||
-shared -Wl,-soname,libovpncli.so \
|
||||
$ssl_lib \
|
||||
-llz4 \
|
||||
-llog
|
||||
|
||||
if [ "$DEBUG_BUILD" != "1" ]; then
|
||||
echo STRIP $ABI
|
||||
strip libovpncli.so
|
||||
fi
|
||||
|
||||
mkdir -p build/libs/$ABI
|
||||
mv libovpncli.so build/libs/$ABI/
|
||||
rm ovpncli.o
|
||||
done
|
||||
|
||||
mv ovpncli.java ovpncliJNI.java SWIGTYPE_*.java ClientAPI_*.java build/
|
||||
git clean -q -fX .
|
||||
Reference in New Issue
Block a user