Verify desktop Gecko source build

This commit is contained in:
jwinterm
2026-07-07 19:33:56 -04:00
parent e77b08b97b
commit b1db4e9390
4 changed files with 45 additions and 13 deletions
+19 -5
View File
@@ -4,9 +4,10 @@ set -eu
root="${AMPB_BROWSER_BUILD_ROOT:-/tmp/ampb-browser-build}"
gecko_dir="$root/src/gecko-dev"
mode="${AMPB_DESKTOP_BUILD_PROBE_MODE:-help}"
log="$root/logs/gecko-desktop-mach-${mode}.log"
mozconfig="$root/mozconfigs/desktop-debug.mozconfig"
objdir="$root/obj/gecko-desktop-debug"
flavor="${AMPB_DESKTOP_BUILD_FLAVOR:-source}"
log="$root/logs/gecko-desktop-${flavor}-mach-${mode}.log"
mozconfig="$root/mozconfigs/desktop-${flavor}.mozconfig"
objdir="$root/obj/gecko-desktop-${flavor}"
if [ ! -d "$gecko_dir" ]; then
printf 'missing gecko checkout: %s\n' "$gecko_dir" >&2
@@ -26,9 +27,17 @@ mk_add_options MOZ_OBJDIR=$objdir
ac_add_options --enable-application=browser
ac_add_options --disable-crashreporter
ac_add_options --disable-debug
ac_add_options --enable-optimize
EOF
if [ "$flavor" = "artifact" ]; then
printf '%s\n' 'ac_add_options --enable-artifact-builds' >>"$mozconfig"
elif [ "$flavor" != "source" ]; then
printf 'unsupported AMPB_DESKTOP_BUILD_FLAVOR: %s\n' "$flavor" >&2
exit 2
else
printf '%s\n' 'ac_add_options --enable-optimize' >>"$mozconfig"
fi
cd "$gecko_dir"
mach_env() {
@@ -59,10 +68,15 @@ case "$mode" in
ensure_zstandard
mach_env ./mach configure >"$log" 2>&1
;;
build)
mach_env ./mach build --help >/dev/null 2>&1
ensure_zstandard
mach_env ./mach build >"$log" 2>&1
;;
*)
printf 'unsupported AMPB_DESKTOP_BUILD_PROBE_MODE: %s\n' "$mode" >&2
exit 2
;;
esac
printf 'AMPB_DESKTOP_BUILD_PROBE status=ok mode=%s mozconfig=%s objdir=%s log=%s\n' "$mode" "$mozconfig" "$objdir" "$log"
printf 'AMPB_DESKTOP_BUILD_PROBE status=ok mode=%s flavor=%s mozconfig=%s objdir=%s log=%s\n' "$mode" "$flavor" "$mozconfig" "$objdir" "$log"
+1 -1
View File
@@ -16,5 +16,5 @@ printf 'AMPB_TOR_BROWSER_BUILD_REPO=%s\n' "$tor_build_repo"
printf 'AMPB_TOR_BROWSER_BUILD_DIR=%s\n' "$root/src/tor-browser-build"
printf 'AMPB_GRADLE_USER_HOME=%s\n' "$root/cache/gradle"
printf 'AMPB_MOZBUILD_STATE_PATH=%s\n' "$root/cache/mozbuild"
printf 'AMPB_DESKTOP_BUILD_LOG=%s\n' "$root/logs/gecko-desktop-mach-help.log"
printf 'AMPB_DESKTOP_BUILD_LOG=%s\n' "$root/logs/gecko-desktop-source-mach-build.log"
printf 'AMPB_ANDROID_BUILD_LOG=%s\n' "$root/logs/gecko-android-mach-probe.log"