So I figured out a patch that fixes the build of mp4parse that only touches two lines (based on what exists in the current version of mp4parse):
mp4parse_macro_mul.patch
--- a/output/icecat-102.12.0/third_party/rust/mp4parse/src/lib.rs
+++ b/output/icecat-102.12.0/third_party/rust/mp4parse/src/lib.rs
@@ -3184,8 +3184,8 @@
type Output = $output;
fn mul(self, rhs: $rhs) -> Self::Output {
- static_assertions::const_assert!(<$output>::MAX <= <$inner>::MAX as u64);
- static_assertions::const_assert!(<$lhs>::MAX * <$rhs>::MAX <= <$output>::MAX);
+ static_assertions::const_assert!(<$output as UpperBounded>::MAX <= <$inner>::MAX as u64);
+ static_assertions::const_assert!(<$lhs as UpperBounded>::MAX * <$rhs as UpperBounded>::MAX <= <$output as UpperBounded>::MAX);
let lhs: $inner = self.get().into();
let rhs: $inner = rhs.get().into();
I also needed to change the checksum for mp4parse/src/lib.rs
, as otherwise the build would fail complaining about the changed source. Thus, the entries in the PKGBUILD should look like:
...
# Produce IceCat sources
bash makeicecat
patch -p1 < "$srcdir/mp4parse_macro_mul.patch"
sed -e 's|src/lib.rs":"73114a5c28472e77082ad259113ffafb418ed602c1741f26da3e10278b0bf93e|src/lib.rs":"bded10689ddd8fd3fcb4ab01be1ecf3642691d68c3651fc4b00f3ccba67fc7cd|' -i output/icecat-102.12.0/third_party/rust/mp4parse/.cargo-checksum.json
cd output/icecat-${pkgver}
...
Naturally, one will need to add the patch to the array of SOURCES for the PKGBUILD.
Pinned Comments
xiota commented on 2024-02-26 07:32 (UTC) (edited on 2024-08-08 03:44 (UTC) by xiota)
PKGBUILD has been updated. Major changes:
Notes:
_build_pgo_xvfb=false
. This will usexwayland-run
for profiling._build_pgo=false
.mk_add_options MOZ_PARALLEL_BUILD=___
around line 300. Pick a value less than number of cores and free RAM in GB. For example, on a system with 8 cores, 64GB total RAM, but only 6 GB free, the value should be set to 4 or 5.libxul.so
. Leave a comment if you have a potential solution.Having problems? Please provide details: processor make and model, number of cores,
free -m
, full log in pastebin, whether using AUR helper/makepkg/clean chroot, etc.