f41e9a117b
The PKGBUILD has been structurally broken since at least the 150.0.1
import: source array referenced patches at top level ('0001-...patch')
but the actual files live in patches/ — makepkg searched for them in
the package root and failed before doing any work. The arch-0002/3/4
upstream toolchain patches (clang 22, glibc 2.43, Rust 1.95) weren't
shipped in the repo at all.
Caught when boltzmann tried to build 150.0.1-2 (PR #9 follow-up); fails
at the source-staging phase with:
==> ERROR: arch-0002-Bug-2033279-Make-enable-rust-simd-work-with-Rust-1.9.patch
was not found in the build directory and is not a URL.
Why nobody noticed: firefox-fourier has no Gitea Actions job (too heavy
for the runner pool). The shipped 150.0.1-1 .pkg.tar.zst was produced
by hand-staging files; the PKGBUILD itself never reproduced from a
clean checkout.
This commit:
- Moves all source-array patch references under patches/ to match the
on-disk layout (same convention as chromium-fourier).
- Updates prepare() paths accordingly.
- Adds arch-0002/3/4 patches fetched verbatim from
https://gitlab.archlinux.org/archlinux/packaging/packages/firefox
(raw/main/{0002,0003,0004}-...patch). Renamed with arch- prefix in
the repo to avoid namespace collision with the local 0001..0005.
- Adds the previously-omitted 0005-rdd-sandbox-v4l2-media-ctl.patch
to the source array + prepare(); this is the patch that broadens
the RDD sandbox so /dev/media* and /dev/video* ioctls reach the
decoder child (README §1 enumerates it as load-bearing for the HW
path). It was present in patches/ but not wired up.
Dry-run verified all 8 patches apply cleanly against firefox-150.0.1
source (some hunks offset by ≤3 lines, no conflicts).
pkgrel 2 -> 3.
29 lines
1.3 KiB
Diff
29 lines
1.3 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Alex Hochheiden <ahochheiden@mozilla.com>
|
|
Date: Wed, 1 Apr 2026 18:11:37 +0000
|
|
Subject: [PATCH] Bug 2023597 - Use `wasm32-wasip1` target for clang >= 22.1
|
|
r=firefox-build-system-reviewers,sergesanspaille
|
|
|
|
https://github.com/llvm/llvm-project/pull/165345
|
|
https://releases.llvm.org/22.1.0/tools/clang/docs/ReleaseNotes.html
|
|
|
|
Differential Revision: https://phabricator.services.mozilla.com/D291023
|
|
---
|
|
build/moz.configure/toolchain.configure | 3 +++
|
|
1 file changed, 3 insertions(+)
|
|
|
|
diff --git a/build/moz.configure/toolchain.configure b/build/moz.configure/toolchain.configure
|
|
index a37ed610cc43..c7d0c8bdf75c 100644
|
|
--- a/build/moz.configure/toolchain.configure
|
|
+++ b/build/moz.configure/toolchain.configure
|
|
@@ -695,6 +695,9 @@ def check_compiler(configure_cache, compiler, language, target, android_version)
|
|
# This makes clang define __ANDROID_API__ and use versioned library
|
|
# directories from the NDK.
|
|
toolchain = "%s%d" % (target.toolchain, android_version)
|
|
+ elif target.kernel == "WASI" and info.type == "clang" and info.version >= Version("22.1"):
|
|
+ # The wasm32-wasi target was renamed to wasm32-wasip1 in LLVM 22.1.
|
|
+ toolchain = "wasm32-wasip1"
|
|
else:
|
|
toolchain = target.toolchain
|
|
|