diff options
author | bill-auger <mr.j.spam.me@gmail.com> | 2022-10-25 22:14:43 -0400 |
---|---|---|
committer | bill-auger <mr.j.spam.me@gmail.com> | 2022-10-26 00:57:17 -0400 |
commit | 61a58d1c70ea5d6fb627bf8e9271e1801cfddc20 (patch) | |
tree | c3bb27b579d1d8fd11f4681910c72651d1795f5c /libre/iceweasel | |
parent | 3ee464494a1c2c604821f6003edae2e2bb010f77 (diff) |
[iceweasel]: merge arch32 changes for v106
Diffstat (limited to 'libre/iceweasel')
-rw-r--r-- | libre/iceweasel/PKGBUILD | 25 | ||||
-rw-r--r-- | libre/iceweasel/firefox-106.0.1-fdlibm.patch | 19 | ||||
-rw-r--r-- | libre/iceweasel/firefox-99.0.1-fdlibm-double.patch | 15 | ||||
-rw-r--r-- | libre/iceweasel/fix-i686-build-moz-1792159.patch | 18 | ||||
-rw-r--r-- | libre/iceweasel/simd_avx2.patch | 11 |
5 files changed, 67 insertions, 21 deletions
diff --git a/libre/iceweasel/PKGBUILD b/libre/iceweasel/PKGBUILD index 4a808df6e..bb2a7bf77 100644 --- a/libre/iceweasel/PKGBUILD +++ b/libre/iceweasel/PKGBUILD @@ -92,8 +92,6 @@ makedepends+=( python-pydantic=1.9.2 ) # configure error: "pydantic 1.10.2 has r [[ "${CARCH}" == 'i686' ]] && makedepends=( ${makedepends[*]/wasi-libc++*/} ) [[ "${CARCH}" == 'i686' ]] && makedepends+=( wasi-libc++=13.0.1-1.0 wasi-libc++abi=13.0.1-1.0 ) # dustbin [[ "${CARCH}" == 'i686' ]] && makedepends+=( llvm13 ) # rustup: error while loading shared libraries: libLLVM-13.so: cannot open shared object file: No such file or directory -# i686 FTBS - mozglue/misc/SIMD_avx2.cpp:66:10: error: ‘_mm_cvtsi64_si128’ was not declared in this scope; did you mean ‘_mm_cvtsi64_si32’? -# https://bugs.archlinux32.org/index.php?do=details&task_id=281 optdepends=('networkmanager: Location detection via available WiFi networks' 'libnotify: Notification integration' 'pulseaudio: Audio support' @@ -117,7 +115,9 @@ source+=(https://repo.parabola.nu/other/iceweasel/${pkgname}_${_brandingver}.bra source_armv7h=(build-arm-libopus.patch) source_i686=('avoid-libxul-OOM-python-check.patch' 'rust-static-disable-network-test-on-static-libraries.patch' - 'firefox-99.0.1-fdlibm-double.patch') + 'firefox-106.0.1-fdlibm.patch' + 'simd_avx2.patch' + 'fix-i686-build-moz-1792159.patch') sha256sums=('fb1ed65cd9e6698122885fe38984cfd00018c7a837109f511762b2986b391e25' 'SKIP' '9cdc2602661717712092d28bb494e5b48e518cb930898aca85eaf21f91f7ef58') @@ -133,7 +133,9 @@ sha256sums+=('d29c194ed7b3b4fa0f511866723118938c2be40077b4e9aadf8b3e6bfff91049' sha256sums_armv7h=('2d4d91f7e35d0860225084e37ec320ca6cae669f6c9c8fe7735cdbd542e3a7c9') sha256sums_i686=('2f0c81a38c4578f68f5456b618fe84a78974072821488173eb55e0e72287e353' '10c5276eab2e87f400a6ec15d7ffbef3b0407ee888dea36f1128927ca55b9041' - '62695e56daf8c0b8bb921980d475b3fd169b9134188ad9ffaeb9cd660589c23d') + 'ddc0945f2414828668dd922b6b8203f7fb54d7b1f0aac3e18299bccb5c2facab' + 'e68f8a9858f14a75813df608510e1f8143fd6eb1fcf233df8239d16d935e80f8' + '2fb39374fd3d80eea9e346032a2a4b2bc2e357dee7380855b24bcf19b1335d06') validpgpkeys=('14F26682D0916CDD81E37B6D61B7B526D98F0353') # Mozilla Software Releases <release@mozilla.com> validpgpkeys+=('BFA8008A8265677063B11BF47171986E4B745536') # Andreas Grapentin validpgpkeys+=('3954A7AB837D0EA9CFA9798925DB7D9B5A8D4B40') # bill-auger @@ -355,6 +357,7 @@ EOF ;; i686) export MOZ_SOURCE_CHANGESET="DEVEDITION_${pkgver//./_}_RELEASE" +# export MOZ_MAKE_FLAGS=-j2 # disable LTO as it has little benefit and uses too many resources # don't compile with clang, use gcc toolchain (clang has issues on IA32) @@ -390,8 +393,17 @@ END # /build/iceweasel/src/firefox-96.0.1/modules/fdlibm/src/math_private.h:34:21: # error: conflicting declaration ‘typedef __double_t double_t’ # /usr/include/math.h:156:21: note: previous declaration as ‘typedef long double double_t’ - echo "applying firefox-99.0.1-fdlibm-double.patch" - patch -p1 -i "$srcdir/firefox-99.0.1-fdlibm-double.patch" + echo "applying firefox-106.0.1-fdlibm.patch" + patch -p1 -i "$srcdir/firefox-106.0.1-fdlibm.patch" + + # disable AVX2 the brutal way + # mozglue/misc/SIMD_avx2.cpp:66:10: error: ‘_mm_cvtsi64_si128’ was not declared in this scope; did you mean ‘_mm_cvtsi64_si32’? + echo "applying simd_avx2.patch" + patch -p1 -i "$srcdir/simd_avx2.patch" + + # js/src/jit/shared/AtomicOperations-shared-jit.cpp:88:9: error: ‘AtomicCopyByteUnsynchronized’ was not declared in this scope; did you mean ‘AtomicMemcpyUpUnsynchronized’? + echo "applying fix-i686-build-moz-1792159.patch" + patch -p1 -i "$srcdir/fix-i686-build-moz-1792159.patch" ;; x86_64) ;; @@ -579,6 +591,7 @@ build() { # try hard to tell ld and rust not to use too much memory (no lto, no debug info, etc.) export RUSTFLAGS+=" -Cdebuginfo=0 -Clto=off" export LDFLAGS+=" -Wl,--no-keep-memory -Wl,--reduce-memory-overheads" +# export LDFLAGS+=" -Wl,--no-keep-memory -Wl,--reduce-memory-overheads -Wl,--max-cache-size=16384000 " # libvpx has some hard-coded compiler flags for MMX, SSE, SSE2, use the correct one # per CARCH (75.0 uses an intrisic _mm_empty now, which required the corresponding diff --git a/libre/iceweasel/firefox-106.0.1-fdlibm.patch b/libre/iceweasel/firefox-106.0.1-fdlibm.patch new file mode 100644 index 000000000..5a15d2b3b --- /dev/null +++ b/libre/iceweasel/firefox-106.0.1-fdlibm.patch @@ -0,0 +1,19 @@ +diff -rauN firefox-106.0.1/modules/fdlibm/src/math_private.h firefox-106.0.1-fdlibm-patches/modules/fdlibm/src/math_private.h +--- firefox-106.0.1/modules/fdlibm/src/math_private.h 2022-10-19 21:20:25.000000000 +0200 ++++ firefox-106.0.1-fdlibm-patches/modules/fdlibm/src/math_private.h 2022-10-24 20:43:41.469291933 +0200 +@@ -30,10 +30,14 @@ + * Adapted from https://github.com/freebsd/freebsd-src/search?q=__double_t + */ + ++#if defined __FLT_EVAL_METHOD__ && (__FLT_EVAL_METHOD__ == 2) ++typedef long double __double_t; ++#else + typedef double __double_t; ++#endif + typedef __double_t double_t; + typedef float __float_t; +-typedef __float_t float_t; ++/*typedef __float_t float_t;*/ + + /* + * The original fdlibm code used statements like: diff --git a/libre/iceweasel/firefox-99.0.1-fdlibm-double.patch b/libre/iceweasel/firefox-99.0.1-fdlibm-double.patch deleted file mode 100644 index ffd4b1d7e..000000000 --- a/libre/iceweasel/firefox-99.0.1-fdlibm-double.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -rauN firefox-99.0.1/modules/fdlibm/src/math_private.h firefox-99.0.1-fdlibm-double-patch/modules/fdlibm/src/math_private.h ---- firefox-99.0.1/modules/fdlibm/src/math_private.h 2022-04-12 00:00:09.000000000 +0200 -+++ firefox-99.0.1-fdlibm-double-patch/modules/fdlibm/src/math_private.h 2022-04-25 16:47:00.697715429 +0200 -@@ -30,7 +30,11 @@ - * Adapted from https://github.com/freebsd/freebsd-src/search?q=__double_t - */ - -+#if defined __FLT_EVAL_METHOD__ && (__FLT_EVAL_METHOD__ == 2) -+typedef long double __double_t; -+#else - typedef double __double_t; -+#endif - typedef __double_t double_t; - - /* diff --git a/libre/iceweasel/fix-i686-build-moz-1792159.patch b/libre/iceweasel/fix-i686-build-moz-1792159.patch new file mode 100644 index 000000000..592dcad93 --- /dev/null +++ b/libre/iceweasel/fix-i686-build-moz-1792159.patch @@ -0,0 +1,18 @@ +--- a/js/src/jit/shared/AtomicOperations-shared-jit.cpp ++++ b/js/src/jit/shared/AtomicOperations-shared-jit.cpp +@@ -5,4 +5,9 @@ + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + ++// bug 1792159 ++#if defined(__i386__) && defined(__GNUC__) && !defined(__clang__) ++# include "../../../mfbt/Attributes.h" ++#endif ++ + #include "jit/AtomicOperations.h" + +--- a/config/check_spidermonkey_style.py ++++ b/config/check_spidermonkey_style.py +@@ -68,2 +68,3 @@ + "jit/AtomicOperationsGenerated.h", # generated in $OBJDIR ++ "../../../mfbt/Attributes.h", # unrecognized path + "jit/CacheIROpsGenerated.h", # generated in $OBJDIR diff --git a/libre/iceweasel/simd_avx2.patch b/libre/iceweasel/simd_avx2.patch new file mode 100644 index 000000000..ee94a0340 --- /dev/null +++ b/libre/iceweasel/simd_avx2.patch @@ -0,0 +1,11 @@ +diff -rauN a/mozglue/misc/SIMD_avx2.cpp b/mozglue/misc/SIMD_avx2.cpp +--- a/mozglue/misc/SIMD_avx2.cpp 2022-10-24 18:34:51.028779452 +0200 ++++ b/mozglue/misc/SIMD_avx2.cpp 2022-10-24 18:35:07.818868490 +0200 +@@ -8,6 +8,7 @@ + #include "mozilla/SSE.h" + #include "mozilla/Assertions.h" + ++#undef MOZILLA_MAY_SUPPORT_AVX2 + #ifdef MOZILLA_MAY_SUPPORT_AVX2 + + # include <cstring> |