94 lines
2.5 KiB
Bash
Executable File
94 lines
2.5 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
V2RAY_CORE_VERSION="4.33.0"
|
|
|
|
if [ ! -x "$(command -v go)" ]; then
|
|
|
|
# if [ ! -x "$(command -v gvm)" ]; then
|
|
#
|
|
# apt install -y bison gcc make
|
|
# bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)
|
|
# source "$HOME/.bashrc"
|
|
#
|
|
# fi
|
|
#
|
|
# gvm install go1.15.5 -B
|
|
# gvm use go1.15.5 --default
|
|
|
|
echo "install golang please!"
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
if [ ! -x "$(command -v rustc)" ]; then
|
|
|
|
# curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
|
|
# echo "source \$HOME/.cargo/env" >> $HOME/.bashrc && source $HOME/.cargo/env
|
|
# rustup target install armv7-linux-androideabi aarch64-linux-android i686-linux-android x86_64-linux-android
|
|
|
|
echo "install rust please!"
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
if [ -z "$ANDROID_HOME" ]; then
|
|
if [ -d "$HOME/Android/Sdk" ]; then
|
|
export ANDROID_HOME="$HOME/Android/Sdk"
|
|
fi
|
|
fi
|
|
|
|
if [ ! -f "$ANDROID_HOME/ndk-bundle/source.properties" ]; then
|
|
|
|
export ANDROID_NDK_HOME=$ANDROID_HOME/ndk/21.3.6528147
|
|
|
|
fi
|
|
|
|
rm -rf TMessagesProj/libs/*.aar
|
|
./gradlew ss-rust:assembleRelease --stacktrace &&
|
|
cp ss-rust/build/outputs/aar/* TMessagesProj/libs &&
|
|
./gradlew ssr-libev:assembleRelease &&
|
|
cp ssr-libev/build/outputs/aar/* TMessagesProj/libs &&
|
|
cd TMessagesProj/libs &&
|
|
go get -v golang.org/x/mobile/cmd/...
|
|
|
|
v2rayCore="$(go env GOPATH)/src/v2ray.com/core"
|
|
|
|
if [ ! -d "$v2rayCore" ]; then
|
|
|
|
mkdir -p "$v2rayCore"
|
|
git clone https://github.com/v2fly/v2ray-core.git "$v2rayCore" -b "v$V2RAY_CORE_VERSION"
|
|
cd "$v2rayCore"
|
|
|
|
else
|
|
|
|
cd "$v2rayCore"
|
|
git fetch origin "v$V2RAY_CORE_VERSION" && git reset "v$V2RAY_CORE_VERSION" --hard || git clone https://github.com/v2fly/v2ray-core.git "$v2rayCore" -b "v$V2RAY_CORE_VERSION"
|
|
|
|
fi
|
|
|
|
go mod download
|
|
cd "$OLDPWD"
|
|
|
|
go get -d github.com/2dust/AndroidLibV2rayLite &&
|
|
gomobile init &&
|
|
gomobile bind -v -ldflags='-s -w' github.com/2dust/AndroidLibV2rayLite &&
|
|
rm *-sources.jar &&
|
|
cd ../.. &&
|
|
./gradlew TMessagesProj:stripFullFossDebugSymbols &&
|
|
OUT=TMessagesProj/build/intermediates/stripped_native_libs/fullFoss/out/lib &&
|
|
DIR=TMessagesProj/src/main/libs &&
|
|
rm -rf $DIR/armeabi-v7a &&
|
|
mkdir -p $DIR/armeabi-v7a &&
|
|
cp $OUT/armeabi-v7a/libtmessages*.so $DIR/armeabi-v7a &&
|
|
rm -rf $DIR/arm64-v8a &&
|
|
mkdir -p $DIR/arm64-v8a &&
|
|
cp $OUT/arm64-v8a/libtmessages*.so $DIR/arm64-v8a &&
|
|
rm -rf $DIR/x86 &&
|
|
mkdir -p $DIR/x86 &&
|
|
cp $OUT/x86/libtmessages*.so $DIR/x86 &&
|
|
rm -rf $DIR/x86_64 &&
|
|
mkdir -p $DIR/x86_64 &&
|
|
cp $OUT/x86_64/libtmessages*.so $DIR/x86_64
|