diff --git a/README.md b/README.md index 2ae58b27d..656dd190f 100644 --- a/README.md +++ b/README.md @@ -88,7 +88,7 @@ It is recommended to use the official script, otherwise you may not find rustup. curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- --default-toolchain none -y echo "source \$HOME/.cargo/env" >> $HOME/.bashrc && source $HOME/.cargo/env -cd ss-rust/src/main/rust/shadowsocks-rust +rustup install $(cat ss-rust/src/main/rust/shadowsocks-rust/rust-toolchain) rustup target install armv7-linux-androideabi aarch64-linux-android i686-linux-android x86_64-linux-android ``` diff --git a/TMessagesProj/build.gradle b/TMessagesProj/build.gradle index b5ae6316f..28bbcfa73 100644 --- a/TMessagesProj/build.gradle +++ b/TMessagesProj/build.gradle @@ -75,8 +75,6 @@ if (!gradle.startParameter.taskNames.isEmpty()) { targetAbi = "arm" verCode -= 1 } - } else { - targetAbi = "~" } } @@ -167,8 +165,6 @@ android { exclude 'x86', 'x86_64', 'armeabi-v7a' } else if (targetAbi == "arm") { exclude 'x86', 'x86_64', 'arm64-v8a' - } else { - exclude 'x86', 'x86_64' } } } @@ -364,6 +360,18 @@ android { } } + fdroidArmRelease { + jni { + srcDirs = ['./jni/'] + } + } + + fdroidArm64Release { + jni { + srcDirs = ['./jni/'] + } + } + } flavorDimensions "version" diff --git a/TMessagesProj/src/main/assets/fonts/rmono.ttf b/TMessagesProj/src/main/assets/fonts/rmono.ttf old mode 100755 new mode 100644 diff --git a/bin/fdroid/build.sh b/bin/fdroid/build.sh index 00bffc8d5..77936e3bf 100755 --- a/bin/fdroid/build.sh +++ b/bin/fdroid/build.sh @@ -1,11 +1,15 @@ #!/usr/bin/env bash source $HOME/.bashrc - -env - source "bin/init/env.sh" +# Import golang +export PATH=$PATH:$HOME/.go/bin +export PATH=$PATH:$(go env GOPATH)/bin + +# Native dependencies bin/init/libs/ffmpeg.sh bin/init/libs/boringssl.sh + +# Build v2ray-core bin/libs/v2ray.sh \ No newline at end of file diff --git a/bin/fdroid/prebuild.sh b/bin/fdroid/prebuild.sh index 1017abe3f..50cfd999d 100755 --- a/bin/fdroid/prebuild.sh +++ b/bin/fdroid/prebuild.sh @@ -1,20 +1,24 @@ #!/usr/bin/env bash -env - -## Install Go 1.15+ -wget -q -O - https://raw.githubusercontent.com/canha/golang-tools-install-script/master/goinstall.sh | bash -s -- --version 1.15.8 - ## Install rust +curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- --default-toolchain none -y source $HOME/.cargo/env -pushd ss-rust/src/main/rust/shadowsocks-rust +rustup install $(cat ss-rust/src/main/rust/shadowsocks-rust/rust-toolchain) rustup target install armv7-linux-androideabi aarch64-linux-android i686-linux-android x86_64-linux-android -popd echo "rust.rustcCommand=$HOME/.cargo/bin/rustc" >> local.properties echo "rust.cargoCommand=$HOME/.cargo/bin/cargo" >> local.properties echo "rust.pythonCommand=/usr/bin/python3" >> local.properties +# Install Golang +curl -o golang.tar.gz https://storage.googleapis.com/golang/go1.15.8.linux-amd64.tar.gz +mkdir -p "$HOME/.go" +tar -C "$HOME/.go" --strip-components=1 -xzf golang.tar.gz +rm golang.tar.gz +export PATH=$PATH:$HOME/.go/bin +go version + +# Find Android NDK _NDK="$ANDROID_HOME/ndk/21.3.6528147" [ -f "$_NDK/source.properties" ] || _NDK="$ANDROID_NDK_HOME" [ -f "$_NDK/source.properties" ] || _NDK="$ANDROID_HOME/ndk-bundle" @@ -30,4 +34,16 @@ pushd TMessagesProj sed -i -e /play:core/d build.gradle sed -i -e /firebase/d build.gradle -sed -i -e /gms/d build.gradle \ No newline at end of file +sed -i -e /gms/d build.gradle + +rm -r jni/boringssl/fuzz +rm jni/libwebp/swig/libwebp.jar +rm jni/libwebp/gradle/wrapper/gradle-wrapper.jar +rm jni/boringssl/util/ar/testdata/mac/libsample.a +rm jni/boringssl/util/ar/testdata/linux/libsample.a + +popd + +rm -r ssr-libev/src/main/jni/pcre/dist/testdata +rm -r ssr-libev/src/main/jni/mbedtls/programs/fuzz/corpuses +rm -r ssr-libev/src/main/jni/mbedtls/tests/data_files \ No newline at end of file diff --git a/ss-rust/build.gradle.kts b/ss-rust/build.gradle.kts index 0e1ba7ed1..26baec1fd 100644 --- a/ss-rust/build.gradle.kts +++ b/ss-rust/build.gradle.kts @@ -14,8 +14,6 @@ if (gradle.startParameter.taskNames.isNotEmpty()) { } else if (targetTask.contains("arm")) { targetAbi = "arm" } - } else { - targetAbi = "~" } } @@ -38,13 +36,6 @@ android { }) } - productFlavors { - flavorDimensions.add("abi") - - create("arm") - create("arm64") - } - } cargo {