
clairehurst pushed to branch tor-browser-140.1.0esr-15.0-1 at The Tor Project / Applications / Tor Browser Commits: a672bc1c by clairehurst at 2025-07-23T13:51:52-06:00 fixup! TB 41089: Add tor-browser build scripts + Makefile to tor-browser Bug 43984: Update android build scripts and docs for ESR 140 - - - - - 4 changed files: - tools/geckoview/Makefile - tools/geckoview/android-env-linux-template.sh - tools/geckoview/android-env-macos-template.sh - tools/geckoview/install-fenix.sh Changes: ===================================== tools/geckoview/Makefile ===================================== @@ -41,11 +41,13 @@ env: test -e android-env.sh || { echo "copy android-env-...-template.sh to android-env.sh and edit appropriatly"; exit 1; } install-release: - ./install-fenix.sh $(DEV_ROOT) $(ANDROID_ARCH) release + ./install-fenix.sh $(DEV_ROOT) $(ARCH) $(ANDROID_ARCH) release install-beta: - ./install-fenix.sh $(DEV_ROOT) $(ANDROID_ARCH) beta + ./install-fenix.sh $(DEV_ROOT) $(ARCH) $(ANDROID_ARCH) beta install-nightly: - ./install-fenix.sh $(DEV_ROOT) $(ANDROID_ARCH) nightly + ./install-fenix.sh $(DEV_ROOT) $(ARCH) $(ANDROID_ARCH) nightly +install-debug: + ./install-fenix.sh $(DEV_ROOT) $(ARCH) $(ANDROID_ARCH) debug all: env geckoview fenix-nightly install-nightly all-release: env geckoview fenix-release install-release @@ -56,4 +58,3 @@ jslint: clean: rm -rf $(BUILD_OUTPUT) - ===================================== tools/geckoview/android-env-linux-template.sh ===================================== @@ -1,6 +1,6 @@ -export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64 +export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64 export ANDROID_HOME=$HOME/.mozbuild/android-sdk-linux/ # or $HOME/Android/Sdk/ # Or .../android-toolchain/android-sdk-linux if you extract android-toolchain from tor-browser-build -export ANDROID_NDK_HOME=$ANDROID_HOME/ndk/r26c/ # for 128esr -export GRADLE_HOME=/FULL/PATH/TO/tor-browser-build/out/gradle/gradle-8.8 # Or the version that we currently use +export ANDROID_NDK_HOME=$HOME/.mozbuild/android-ndk-r28b/ # for 140esr +export GRADLE_HOME=$HOME/.mozbuild/gradle-8.14.3 # not included by default, need to download from https://gradle.org/releases/ and put the extracted directory "gradle-8.14.3" into ~/.mozbuild/ export LOCAL_DEV_BUILD=1 export PATH=/FULL/PATH/TO/tor-browser-build/out/clang/clang-16.x.y-arm/bin/:$PATH # prepend our newly built and assembled clang to the path so it gets used to build geckoview ===================================== tools/geckoview/android-env-macos-template.sh ===================================== @@ -1,8 +1,6 @@ -export JAVA_HOME=/opt/homebrew/opt/openjdk@17/libexec/openjdk.jdk/Contents/Home/ # for arm64. Or JAVA_HOME=/usr/local/opt/openjdk@17/libexec/openjdk.jdk/Contents/Home/ for x86_64. -export ANDROID_HOME=$HOME/Library/Android/sdk # or $HOME/.mozbuild/android-sdk-macosx/ -export ANDROID_NDK_HOME=$ANDROID_HOME/ndk/26.2.11394342 # will need to download the relevant NDK via android studio (e.g. 26.2.11394342) -GRADLE_DIR=/opt/homebrew/Cellar/gradle # for arm64, or /usr/local/Cellar/gradle for x86_64. Download via homebrew. -GRADLE_VERSION=`ls -1 "$GRADLE_DIR" | sort -hr | head -n 1` # Finds the latest gradle version in the specified GRADLE_DIR -export GRADLE_HOME=$GRADLE_DIR/$GRADLE_VERSION +export JAVA_HOME=/opt/homebrew/opt/openjdk@17/libexec/openjdk.jdk/Contents/Home # for arm64. Or JAVA_HOME=/usr/local/opt/openjdk@17/libexec/openjdk.jdk/Contents/Home for x86_64. +export ANDROID_HOME=$HOME/.mozbuild/android-sdk-macosx +export ANDROID_NDK_HOME=$HOME/.mozbuild/android-ndk-r28b # for ESR140 +export GRADLE_HOME=$HOME/.mozbuild/gradle-8.14.3 # not included by default, need to download from https://gradle.org/releases/ and put the extracted directory "gradle-8.14.3" into ~/.mozbuild/ export LOCAL_DEV_BUILD=1 -export PATH=$ANDROID_HOME/ndk/26.2.11394342/toolchains/llvm/prebuilt/darwin-x86_64/bin/:$PATH # prepend android studios latest ndk to the path so it's clang gets used to build geckoview. Note that it doesn't need to be the same version as above +export PATH=$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/darwin-x86_64/bin:$PATH # prepend mozbuilds NDK to the PATH so it's clang gets used to build geckoview ===================================== tools/geckoview/install-fenix.sh ===================================== @@ -1,9 +1,16 @@ #!/bin/bash set -e DEV_ROOT=$1 -ANDROID_ARCH=$2 -VARIANT=$3 +ARCH=$2 +ANDROID_ARCH=$3 +VARIANT=$4 cd $DEV_ROOT OBJ_DIR=$(MOZCONFIG=mozconfig-android-$ARCH ./mach environment --format json --verbose | jq -r .topobjdir) -adb install "$OBJ_DIR/gradle/build/mobile/android/fenix/app/outputs/apk/fenix/$VARIANT/app-fenix-$ANDROID_ARCH-nightly-signed.apk" + +if [ $VARIANT == "debug" ] +then + adb install "$OBJ_DIR/gradle/build/mobile/android/fenix/app/outputs/apk/fenix/$VARIANT/app-fenix-$ANDROID_ARCH-$VARIANT.apk" +else + adb install "$OBJ_DIR/gradle/build/mobile/android/fenix/app/outputs/apk/fenix/$VARIANT/app-fenix-$ANDROID_ARCH-$VARIANT-signed.apk" +fi View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/a672bc1c... -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/a672bc1c... You're receiving this email because of your account on gitlab.torproject.org.
participants (1)
-
clairehurst (@clairehurst)