summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorA. Wilcox <AWilcox@Wilcox-Tech.com>2019-08-10 13:18:18 +0000
committerA. Wilcox <AWilcox@Wilcox-Tech.com>2019-08-10 13:18:18 +0000
commit46f9ac5ef34bf589dd512d69283f34bd0c2a5bc9 (patch)
treecbdcacb524bf54265cd1d1d58b72a73c9add8ff2
parent45164bf255a7029d77218f1515249a4c7d1dff5d (diff)
downloadpackages-46f9ac5ef34bf589dd512d69283f34bd0c2a5bc9.tar.gz
packages-46f9ac5ef34bf589dd512d69283f34bd0c2a5bc9.tar.bz2
packages-46f9ac5ef34bf589dd512d69283f34bd0c2a5bc9.tar.xz
packages-46f9ac5ef34bf589dd512d69283f34bd0c2a5bc9.zip
experimental/firefox: add two big endian patches
-rw-r--r--experimental/firefox/APKBUILD12
-rw-r--r--experimental/firefox/mozconfig4
-rw-r--r--experimental/firefox/shut-up-warning.patch11
-rw-r--r--experimental/firefox/yuv-be.patch48
4 files changed, 69 insertions, 6 deletions
diff --git a/experimental/firefox/APKBUILD b/experimental/firefox/APKBUILD
index 4a258a2f9..a06dc6ca1 100644
--- a/experimental/firefox/APKBUILD
+++ b/experimental/firefox/APKBUILD
@@ -37,8 +37,10 @@ source="https://ftp.mozilla.org/pub/firefox/releases/$pkgver/source/firefox-$pkg
fix-seccomp-bpf.patch
mozilla-build-arm.patch
rust-config.patch
+ shut-up-warning.patch
stackwalk-x86-ppc.patch
webrtc-broken.patch
+ yuv-be.patch
firefox.desktop
firefox-safe.desktop
@@ -82,13 +84,13 @@ prepare() {
echo "ac_add_options --host=\"$CHOST\"" >> "$builddir"/mozconfig
echo "ac_add_options --target=\"$CTARGET\"" >> "$builddir"/mozconfig
# too much memory
- if [ -z "$JOBS" ] || [ $JOBS -ge 32 ]; then
- JOBS=32
+ if [ -z "$JOBS" ] || [ $JOBS -ge 16 ]; then
+ JOBS=16
fi
echo "mk_add_options MOZ_MAKE_FLAGS=\"-j$JOBS\"" >> "$builddir"/mozconfig
case "$CARCH" in
- pmmx|x86_64)
+ pmmx|x86*)
echo "ac_add_options --disable-elf-hack" >> "$builddir"/mozconfig
;;
esac
@@ -168,14 +170,16 @@ package() {
sha512sums="96b45135cf0b2368013afccb8c375de54d591a4e11016e8b65fc83904cedc362096dd15814cd02be23f6e52e392c605817b86a59ee2300d3e7a754d345399c81 firefox-68.0.1.source.tar.xz
16e814e8dcffc707b595ca2919bd2fa3db0d15794c63d977364652c4a5b92e90e72b8c9e1cc83b5020398bd90a1b397dbdd7cb931c49f1aa4af6ef95414b43e0 Python-2.7.16.tar.xz
-1b84e737ce9931872e0eba11d2dd1c9e66ee28f03a4d881ab8df2f7c41b6bcfc74d3dfc7dd03c0b000718ecd71492392538b8615a773e9aca62d52ceff756cbc mozconfig
+6aab9eebfa086f5bb5252b26b2b1e1da412575de69ab2c3e11d5a6fa17a4681747a98521f248ac8c66302677908a6f2de4e808ce649776f45e69a9b3a3422aee mozconfig
ace7492f4fb0523c7340fdc09c831906f74fddad93822aff367135538dacd3f56288b907f5a04f53f94c76e722ba0bab73e28d83ec12d3e672554712e6b08613 bad-google-code.patch
9c14041f0295682b8dbeb6d5b58a2f9dc0a2dc8bef995a0f7e30fa0b17c51aa0f6748f80fb8584169db7687e2eeb404dff68a09158ae56a5f24eef30685dd2b3 disable-gecko-profiler.patch
c0b2bf43206c2a5154e560ef30189a1062ae856861b39f52ce69002390ff9972d43e387bfd2bf8d2ab3cac621987bc042c8c0a8b4cf90ae05717ca7705271880 fix-mutex-build.patch
70863b985427b9653ce5e28d6064f078fb6d4ccf43dd1b68e72f97f44868fc0ce063161c39a4e77a0a1a207b7365d5dc7a7ca5e68c726825eba814f2b93e2f5d fix-seccomp-bpf.patch
e61664bc93eadce5016a06a4d0684b34a05074f1815e88ef2613380d7b369c6fd305fb34f83b5eb18b9e3138273ea8ddcfdcb1084fdcaa922a1e5b30146a3b18 mozilla-build-arm.patch
45613d476e85fe333ef8091acce4806803953c1a99de4f03ff577cf20c5a1a3d635d0589e1490da104ef80721f4f1b1d35045af3c6892c1a468fa84095f27ad8 rust-config.patch
+39ddb15d1453a8412275c36fc8db3befc69dffd4a362e932d280fb7fd1190db595a2af9b468ee49e0714f5e9df6e48eb5794122a64fa9f30d689de8693acbb15 shut-up-warning.patch
452b47b825294779f98ed46bc1065dad76b79ff453521ef049934a120f349c84a1c863b16af1828fe053059823da9690ec917c055ae02dcc5c80c54cad732448 stackwalk-x86-ppc.patch
be68f1387aa6677875a67106e2d6a9db470c934c943056d3b53391a63034235108e41945c53957db427d9cdc59f0aa2f9e6f2f8cd862e090e512a3ab9cbcc9a8 webrtc-broken.patch
+2dfb986089c9afcd6a895302c8a5a1d299cffa4cc3c73fce784c29d348f362c1e7570109c4f09d328275d8549a96531736dd976411c15956b385d7fb211b8af2 yuv-be.patch
f3b7c3e804ce04731012a46cb9e9a6b0769e3772aef9c0a4a8c7520b030fdf6cd703d5e9ff49275f14b7d738fe82a0a4fde3bc3219dff7225d5db0e274987454 firefox.desktop
5dcb6288d0444a8a471d669bbaf61cdb1433663eff38b72ee5e980843f5fc07d0d60c91627a2c1159215d0ad77ae3f115dcc5fdfe87e64ca704b641aceaa44ed firefox-safe.desktop"
diff --git a/experimental/firefox/mozconfig b/experimental/firefox/mozconfig
index 0ce38dcf6..67b1469d7 100644
--- a/experimental/firefox/mozconfig
+++ b/experimental/firefox/mozconfig
@@ -21,6 +21,6 @@ ac_add_options --with-system-icu
ac_add_options --with-system-libevent
ac_add_options --with-system-nspr
ac_add_options --with-system-nss
-ac_add_options --with-system-pixman
-ac_add_options --with-system-png
+#ac_add_options --with-system-pixman
+#ac_add_options --with-system-png
ac_add_options --with-system-zlib
diff --git a/experimental/firefox/shut-up-warning.patch b/experimental/firefox/shut-up-warning.patch
new file mode 100644
index 000000000..8df045af1
--- /dev/null
+++ b/experimental/firefox/shut-up-warning.patch
@@ -0,0 +1,11 @@
+--- firefox-68.0.1/gfx/2d/HelpersCairo.h.old 2019-07-17 20:51:26.000000000 +0000
++++ firefox-68.0.1/gfx/2d/HelpersCairo.h 2019-08-10 11:38:36.047380153 +0000
+@@ -147,7 +147,7 @@
+ case SurfaceFormat::R5G6B5_UINT16:
+ return CAIRO_FORMAT_RGB16_565;
+ default:
+- gfxCriticalError() << "Unknown image format " << (int)format;
++ //gfxCriticalError() << "Unknown image format " << (int)format;
+ return CAIRO_FORMAT_ARGB32;
+ }
+ }
diff --git a/experimental/firefox/yuv-be.patch b/experimental/firefox/yuv-be.patch
new file mode 100644
index 000000000..ccb0c2fd8
--- /dev/null
+++ b/experimental/firefox/yuv-be.patch
@@ -0,0 +1,48 @@
+# HG changeset patch
+# User A. Wilcox <AWilcox@Wilcox-Tech.com>
+# Date 1543674229 0
+# Sat Dec 01 14:23:49 2018 +0000
+# Node ID 0309ff19e46b126c527e633518d7de8570442114
+# Parent 53107afbc21ec78e7ac46d37af212505f2032d5d
+Bug 1511604 - Swizzle YCbCr->RGB data on big-endian machines
+
+diff -r 53107afbc21e -r 0309ff19e46b gfx/ycbcr/YCbCrUtils.cpp
+--- a/gfx/ycbcr/YCbCrUtils.cpp Wed Nov 07 04:50:21 2018 +0000
++++ b/gfx/ycbcr/YCbCrUtils.cpp Sat Dec 01 14:23:49 2018 +0000
+@@ -3,7 +3,9 @@
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
++#include "mozilla/EndianUtils.h"
+ #include "gfx2DGlue.h"
++#include "mozilla/gfx/Swizzle.h"
+
+ #include "YCbCrUtils.h"
+ #include "yuv_convert.h"
+@@ -236,6 +238,13 @@
+ yuvtype,
+ srcData.mYUVColorSpace);
+ }
++#if MOZ_BIG_ENDIAN
++ // libyuv makes endian-correct result, which needs to be swapped to BGRX
++ if (aDestFormat != SurfaceFormat::R5G6B5_UINT16)
++ gfx::SwizzleData(aDestBuffer, aStride, gfx::SurfaceFormat::X8R8G8B8,
++ aDestBuffer, aStride, gfx::SurfaceFormat::B8G8R8X8,
++ srcData.mPicSize);
++#endif
+ }
+
+ void
+@@ -257,6 +266,12 @@
+ aSrcStrideYA,
+ aSrcStrideUV,
+ aDstStrideARGB);
++#if MOZ_BIG_ENDIAN
++ // libyuv makes endian-correct result, which needs to be swapped to BGRA
++ gfx::SwizzleData(aDstARGB, aDstStrideARGB, gfx::SurfaceFormat::A8R8G8B8,
++ aDstARGB, aDstStrideARGB, gfx::SurfaceFormat::B8G8R8A8,
++ IntSize(aWidth, aHeight));
++#endif
+ }
+
+ } // namespace gfx