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/a672bc1c2c68126bff8cd6aa918a305c777e1ec9

-- 
View it on GitLab: 
https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/a672bc1c2c68126bff8cd6aa918a305c777e1ec9
You're receiving this email because of your account on gitlab.torproject.org.


_______________________________________________
tor-commits mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to