git: 740013e2675e - 2023Q3 - www/firefox-esr: update to 115.3.0
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Mon, 18 Sep 2023 20:12:06 UTC
The branch 2023Q3 has been updated by cmt:
URL: https://cgit.FreeBSD.org/ports/commit/?id=740013e2675ed06f117cdb1bb56155d8b9cafbe4
commit 740013e2675ed06f117cdb1bb56155d8b9cafbe4
Author: Christoph Moench-Tegeder <cmt@FreeBSD.org>
AuthorDate: 2023-09-18 20:10:07 +0000
Commit: Christoph Moench-Tegeder <cmt@FreeBSD.org>
CommitDate: 2023-09-18 20:11:55 +0000
www/firefox-esr: update to 115.3.0
Release Notes (soon):
https://www.mozilla.org/en-US/firefox/115.3.0/releasenotes/
(cherry picked from commit 12434f9d5dfb6fca8fec491661f3ff2738cd167b)
---
www/firefox-esr/Makefile | 18 +-
www/firefox-esr/distinfo | 6 +-
www/firefox-esr/files/patch-addon-search | 34 +-
www/firefox-esr/files/patch-bug1427152 | 10 +
www/firefox-esr/files/patch-bug1504834_comment5 | 73 +-
www/firefox-esr/files/patch-bug1504834_comment9 | 49 -
www/firefox-esr/files/patch-bug1559213 | 39 +-
www/firefox-esr/files/patch-bug1640982 | 15 -
www/firefox-esr/files/patch-bug1659612 | 22 +-
www/firefox-esr/files/patch-bug1729459_comment12 | 93 -
www/firefox-esr/files/patch-bug847568 | 10 +-
.../files/patch-gfx_skia_skia_src_base_SkEndian.h | 11 +
...patch-gfx_skia_skia_src_core_SkRasterPipeline.h | 11 +
.../files/patch-i386-protobuf-alignment | 15 +
www/firefox-esr/files/patch-js_public_Utility.h | 35 +
www/firefox-esr/files/patch-libwebrtc-generated | 50556 ++++++++++++++-----
.../files/patch-modules_fdlibm_src_math__private.h | 27 +
www/firefox-esr/files/patch-pipewire_init | 67 +-
...patch-python_mozbuild_mozbuild_gn__processor.py | 48 +
...rd__party_libwebrtc_build_config_BUILDCONFIG.gn | 31 +-
...third__party_libwebrtc_rtc__base_ip__address.cc | 23 +
.../files/patch-toolkit_xre_glxtest.cpp | 17 +
22 files changed, 38460 insertions(+), 12750 deletions(-)
diff --git a/www/firefox-esr/Makefile b/www/firefox-esr/Makefile
index 415fa4fcf096..9f88f360f1d3 100644
--- a/www/firefox-esr/Makefile
+++ b/www/firefox-esr/Makefile
@@ -1,9 +1,9 @@
PORTNAME= firefox
-DISTVERSION= 102.15.1
+DISTVERSION= 115.3.0
PORTEPOCH= 1
CATEGORIES= www wayland
MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}esr/source \
- MOZILLA/${PORTNAME}/candidates/${DISTVERSION}esr-candidates/build2/source
+ MOZILLA/${PORTNAME}/candidates/${DISTVERSION}esr-candidates/build1/source
PKGNAMESUFFIX= -esr
DISTFILES= ${DISTNAME}esr.source${EXTRACT_SUFX}
@@ -12,14 +12,14 @@ COMMENT= Web browser based on the browser portion of Mozilla
WWW= https://www.mozilla.com/firefox
BUILD_DEPENDS= nspr>=4.32:devel/nspr \
- nss>=3.79.1:security/nss \
- icu>=71.1,1:devel/icu \
+ nss>=3.90:security/nss \
+ icu>=73.1,1:devel/icu \
libevent>=2.1.8:devel/libevent \
- harfbuzz>=4.1.0:print/harfbuzz \
+ harfbuzz>=7.3.0:print/harfbuzz \
graphite2>=1.3.14:graphics/graphite2 \
- png>=1.6.37:graphics/png \
+ png>=1.6.39:graphics/png \
dav1d>=1.0.0:multimedia/dav1d \
- libvpx>=1.11.0:multimedia/libvpx \
+ libvpx>=1.13.0:multimedia/libvpx \
${PYTHON_PKGNAMEPREFIX}sqlite3>0:databases/py-sqlite3@${PY_FLAVOR} \
v4l_compat>0:multimedia/v4l_compat \
autoconf2.13:devel/autoconf2.13 \
@@ -62,10 +62,6 @@ post-patch:
@${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \
${WRKSRC}/browser/app/nsBrowserApp.cpp
-pre-configure:
- (cd ${WRKSRC} && ${LOCALBASE}/bin/autoconf2.13)
- (cd ${WRKSRC}/js/src/ && ${LOCALBASE}/bin/autoconf2.13)
-
post-install:
${INSTALL_DATA} ${FIREFOX_DESKTOP} ${STAGEDIR}${PREFIX}/share/applications/
${MKDIR} ${STAGEDIR}${PREFIX}/share/pixmaps
diff --git a/www/firefox-esr/distinfo b/www/firefox-esr/distinfo
index 3ae1da28debd..835b06c68bc5 100644
--- a/www/firefox-esr/distinfo
+++ b/www/firefox-esr/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1694536278
-SHA256 (firefox-102.15.1esr.source.tar.xz) = 09194fb765953bc6979a35aa8834118c453b9d6060bf1ec4e134551bad740113
-SIZE (firefox-102.15.1esr.source.tar.xz) = 483198220
+TIMESTAMP = 1695064384
+SHA256 (firefox-115.3.0esr.source.tar.xz) = 8a1dc50b3d81df3b8ee8ef191551a355c9b139f09688a3fb61234b2f6d7670ca
+SIZE (firefox-115.3.0esr.source.tar.xz) = 510157064
diff --git a/www/firefox-esr/files/patch-addon-search b/www/firefox-esr/files/patch-addon-search
index f04e5599bbe7..b6dbf7924b43 100644
--- a/www/firefox-esr/files/patch-addon-search
+++ b/www/firefox-esr/files/patch-addon-search
@@ -2,10 +2,10 @@ https://github.com/mozilla/addons/issues/708
https://github.com/mozilla/addons-frontend/issues/4610
diff --git browser/app/profile/firefox.js browser/app/profile/firefox.js
-index 75c2c5e435e35..4d8c09c02759b 100644
---- browser/app/profile/firefox.js.orig 2021-11-02 16:33:38.105280000 +0100
-+++ browser/app/profile/firefox.js 2021-11-02 16:37:53.792644000 +0100
-@@ -39,7 +39,7 @@
+index 621900f90fc1..401ef9074bd0 100644
+--- browser/app/profile/firefox.js
++++ browser/app/profile/firefox.js
+@@ -38,7 +38,7 @@ pref("extensions.postDownloadThirdPartyPrompt", true);
// Preferences for AMO integration
pref("extensions.getAddons.cache.enabled", true);
pref("extensions.getAddons.get.url", "https://services.addons.mozilla.org/api/v4/addons/search/?guid=%IDS%&lang=%LOCALE%");
@@ -14,7 +14,7 @@ index 75c2c5e435e35..4d8c09c02759b 100644
pref("extensions.getAddons.link.url", "https://addons.mozilla.org/%LOCALE%/firefox/");
pref("extensions.getAddons.langpacks.url", "https://services.addons.mozilla.org/api/v4/addons/language-tools/?app=firefox&type=language&appversion=%VERSION%");
pref("extensions.getAddons.discovery.api_url", "https://services.addons.mozilla.org/api/v4/discovery/?lang=%LOCALE%&edition=%DISTRIBUTION%");
-@@ -206,8 +206,8 @@
+@@ -204,8 +204,8 @@ pref("app.update.langpack.enabled", true);
// .. etc ..
//
pref("extensions.update.enabled", true);
@@ -25,24 +25,24 @@ index 75c2c5e435e35..4d8c09c02759b 100644
pref("extensions.update.interval", 86400); // Check for updates to Extensions and
// Themes every day
-diff --git toolkit/mozapps/extensions/internal/AddonRepository.jsm toolkit/mozapps/extensions/internal/AddonRepository.jsm
-index f70fd8d7e3bd8..81e8cd7764fdf 100644
---- toolkit/mozapps/extensions/internal/AddonRepository.jsm.orig 2021-11-02 16:38:22.800491000 +0100
-+++ toolkit/mozapps/extensions/internal/AddonRepository.jsm 2021-11-02 16:39:24.255593000 +0100
-@@ -584,7 +584,7 @@
+diff --git toolkit/mozapps/extensions/internal/AddonRepository.sys.mjs toolkit/mozapps/extensions/internal/AddonRepository.sys.mjs
+index f906f244b658..7bb2eb6697c6 100644
+--- toolkit/mozapps/extensions/internal/AddonRepository.sys.mjs
++++ toolkit/mozapps/extensions/internal/AddonRepository.sys.mjs
+@@ -596,7 +596,7 @@ export var AddonRepository = {
addon.version = String(aEntry.current_version.version);
if (Array.isArray(aEntry.current_version.files)) {
for (let file of aEntry.current_version.files) {
-- if (file.platform == "all" || file.platform == PLATFORM) {
-+ if (file.platform == "all" || file.platform == "linux" || file.platform == PLATFORM) {
+- if (file.platform == "all" || file.platform == lazy.PLATFORM) {
++ if (file.platform == "all" || file.platform == "linux" || file.platform == lazy.PLATFORM) {
if (file.url) {
- addon.sourceURI = NetUtil.newURI(file.url);
+ addon.sourceURI = lazy.NetUtil.newURI(file.url);
}
diff --git toolkit/mozapps/extensions/internal/XPIDatabase.jsm toolkit/mozapps/extensions/internal/XPIDatabase.jsm
-index f70fd8d7e3bd8..81e8cd7764fdf 100644
---- toolkit/mozapps/extensions/internal/XPIDatabase.jsm.orig 2021-11-02 16:39:45.832056000 +0100
-+++ toolkit/mozapps/extensions/internal/XPIDatabase.jsm 2021-11-02 16:40:38.136056000 +0100
-@@ -483,7 +483,7 @@
+index 03186dad43a4..4053fc6f2702 100644
+--- toolkit/mozapps/extensions/internal/XPIDatabase.jsm
++++ toolkit/mozapps/extensions/internal/XPIDatabase.jsm
+@@ -634,7 +634,7 @@ class AddonInternal {
// Something is causing errors in here
try {
for (let platform of this.targetPlatforms) {
diff --git a/www/firefox-esr/files/patch-bug1427152 b/www/firefox-esr/files/patch-bug1427152
new file mode 100644
index 000000000000..49bd5a581ac8
--- /dev/null
+++ b/www/firefox-esr/files/patch-bug1427152
@@ -0,0 +1,10 @@
+--- modules/libpref/Preferences.cpp.orig 2023-05-11 21:42:41 UTC
++++ modules/libpref/Preferences.cpp
+@@ -6126,6 +6126,7 @@ static const PrefListEntry sDynamicPrefOverrideList[]{
+ PREF_LIST_ENTRY("logging.config.LOG_FILE"),
+ PREF_LIST_ENTRY("media.audio_loopback_dev"),
+ PREF_LIST_ENTRY("media.decoder-doctor."),
++ PREF_LIST_ENTRY("media.cubeb.backend"),
+ PREF_LIST_ENTRY("media.cubeb.output_device"),
+ PREF_LIST_ENTRY("media.getusermedia.fake-camera-name"),
+ PREF_LIST_ENTRY("media.hls.server.url"),
diff --git a/www/firefox-esr/files/patch-bug1504834_comment5 b/www/firefox-esr/files/patch-bug1504834_comment5
index db2663ccfb34..b9897e0b7f66 100644
--- a/www/firefox-esr/files/patch-bug1504834_comment5
+++ b/www/firefox-esr/files/patch-bug1504834_comment5
@@ -3,9 +3,42 @@ https://bugzilla.mozilla.org/attachment.cgi?id=9028600
Rough progress patch
-diff -r 53107afbc21e gfx/skia/skia/third_party/skcms/skcms.cc
---- gfx/skia/skia/third_party/skcms/skcms.cc Wed Nov 07 04:50:21 2018 +0000
-+++ gfx/skia/skia/third_party/skcms/skcms.cc Thu Nov 29 12:49:35 2018 +0000
+diff --git gfx/2d/DrawTargetSkia.cpp gfx/2d/DrawTargetSkia.cpp
+index 6bbef8d..82b04ba 100644
+--- gfx/2d/DrawTargetSkia.cpp
++++ gfx/2d/DrawTargetSkia.cpp
+@@ -154,8 +154,7 @@ static IntRect CalculateSurfaceBounds(const IntSize& aSize, const Rect* aBounds,
+ return surfaceBounds.Intersect(bounds);
+ }
+
+-static const int kARGBAlphaOffset =
+- SurfaceFormat::A8R8G8B8_UINT32 == SurfaceFormat::B8G8R8A8 ? 3 : 0;
++static const int kARGBAlphaOffset = 0;
+
+ static bool VerifyRGBXFormat(uint8_t* aData, const IntSize& aSize,
+ const int32_t aStride, SurfaceFormat aFormat) {
+diff --git gfx/2d/Types.h gfx/2d/Types.h
+index 6b3bdc7..7c6c342 100644
+--- gfx/2d/Types.h
++++ gfx/2d/Types.h
+@@ -90,15 +90,8 @@ enum class SurfaceFormat : int8_t {
+ // The following values are endian-independent synonyms. The _UINT32 suffix
+ // indicates that the name reflects the layout when viewed as a uint32_t
+ // value.
+-#if MOZ_LITTLE_ENDIAN()
+ A8R8G8B8_UINT32 = B8G8R8A8, // 0xAARRGGBB
+ X8R8G8B8_UINT32 = B8G8R8X8, // 0x00RRGGBB
+-#elif MOZ_BIG_ENDIAN()
+- A8R8G8B8_UINT32 = A8R8G8B8, // 0xAARRGGBB
+- X8R8G8B8_UINT32 = X8R8G8B8, // 0x00RRGGBB
+-#else
+-# error "bad endianness"
+-#endif
+
+ // The following values are OS and endian-independent synonyms.
+ //
+--- gfx/skia/skia/modules/skcms/skcms.cc.orig
++++ gfx/skia/skia/modules/skcms/skcms.cc
@@ -30,6 +30,8 @@
#include <avx512fintrin.h>
#include <avx512dqintrin.h>
@@ -14,8 +47,8 @@ diff -r 53107afbc21e gfx/skia/skia/third_party/skcms/skcms.cc
+ #define SKCMS_PORTABLE
#endif
- // sizeof(x) will return size_t, which is 32-bit on some machines and 64-bit on others.
-@@ -280,20 +282,28 @@ enum {
+ static bool runtime_cpu_detection = true;
+@@ -324,20 +326,28 @@
static uint16_t read_big_u16(const uint8_t* ptr) {
uint16_t be;
memcpy(&be, ptr, sizeof(be));
@@ -48,33 +81,3 @@ diff -r 53107afbc21e gfx/skia/skia/third_party/skcms/skcms.cc
#endif
}
---- gfx/2d/DrawTargetSkia.cpp.orig 2019-09-21 15:51:04.129603000 +0200
-+++ gfx/2d/DrawTargetSkia.cpp 2019-09-21 15:52:11.900316000 +0200
-@@ -138,8 +138,7 @@ static IntRect CalculateSurfaceBounds(const IntSize& a
- return surfaceBounds.Intersect(bounds);
- }
-
--static const int kARGBAlphaOffset =
-- SurfaceFormat::A8R8G8B8_UINT32 == SurfaceFormat::B8G8R8A8 ? 3 : 0;
-+static const int kARGBAlphaOffset = 0;
-
- static bool VerifyRGBXFormat(uint8_t* aData, const IntSize& aSize,
- const int32_t aStride, SurfaceFormat aFormat) {
---- gfx/2d/Types.h.orig 2019-09-21 15:52:47.044803000 +0200
-+++ gfx/2d/Types.h 2019-09-21 15:53:40.113641000 +0200
-@@ -87,15 +87,8 @@ enum class SurfaceFormat : int8_t {
- // The following values are endian-independent synonyms. The _UINT32 suffix
- // indicates that the name reflects the layout when viewed as a uint32_t
- // value.
--#if MOZ_LITTLE_ENDIAN()
- A8R8G8B8_UINT32 = B8G8R8A8, // 0xAARRGGBB
- X8R8G8B8_UINT32 = B8G8R8X8, // 0x00RRGGBB
--#elif MOZ_BIG_ENDIAN()
-- A8R8G8B8_UINT32 = A8R8G8B8, // 0xAARRGGBB
-- X8R8G8B8_UINT32 = X8R8G8B8, // 0x00RRGGBB
--#else
--# error "bad endianness"
--#endif
-
- // The following values are OS and endian-independent synonyms.
- //
diff --git a/www/firefox-esr/files/patch-bug1504834_comment9 b/www/firefox-esr/files/patch-bug1504834_comment9
deleted file mode 100644
index c3d149ffa37b..000000000000
--- a/www/firefox-esr/files/patch-bug1504834_comment9
+++ /dev/null
@@ -1,49 +0,0 @@
-https://bugzilla.mozilla.org/show_bug.cgi?id=1504834#c9
-https://bugzilla.mozilla.org/attachment.cgi?id=9111146
-mozilla-bmo1504834-part3.patch
-
-
-# HG changeset patch
-# Parent aecb4600e5da17443b224c79eee178c1d8e155e3
-For FF68, AntiAliasing of XULTexts seem to be broken on big endian (s390x). Text and icons of the sandwich-menu to the
-right of the address bar, as well as plugin-windows appears transparant, which usually means unreadable (white on white).
-
-diff -r aecb4600e5da gfx/skia/skia/include/private/SkNx.h
---- gfx/skia/skia/include/private/SkNx.h Tue Aug 20 09:46:55 2019 +0200
-+++ gfx/skia/skia/include/private/SkNx.h Mon Sep 09 10:04:06 2019 +0200
-@@ -238,7 +238,18 @@
- AI SkNx operator*(const SkNx& y) const { return fVal * y.fVal; }
- AI SkNx operator/(const SkNx& y) const { return fVal / y.fVal; }
-
-+ // On Big endian the commented out variant doesn't work,
-+ // and honestly, I have no idea why it exists in the first place.
-+ // The reason its broken is, I think, that it defaults to the double-variant of ToBits()
-+ // which gets a 64-bit integer, and FromBits returns 32-bit,
-+ // cutting off the wrong half again.
-+ // Overall, I see no reason to have ToBits and FromBits at all (even for floats/doubles).
-+ // Still we are only "fixing" this for big endian and leave little endian alone (never touch a running system)
-+#ifdef SK_CPU_BENDIAN
-+ AI SkNx operator&(const SkNx& y) const { return fVal & y.fVal; }
-+#else
- AI SkNx operator&(const SkNx& y) const { return FromBits(ToBits(fVal) & ToBits(y.fVal)); }
-+#endif
- AI SkNx operator|(const SkNx& y) const { return FromBits(ToBits(fVal) | ToBits(y.fVal)); }
- AI SkNx operator^(const SkNx& y) const { return FromBits(ToBits(fVal) ^ ToBits(y.fVal)); }
-
-diff -r aecb4600e5da gfx/skia/skia/src/opts/SkBlitMask_opts.h
---- gfx/skia/skia/src/opts/SkBlitMask_opts.h Tue Aug 20 09:46:55 2019 +0200
-+++ gfx/skia/skia/src/opts/SkBlitMask_opts.h Mon Sep 09 10:04:06 2019 +0200
-@@ -203,7 +203,13 @@
- // ~~~>
- // a = 1*aa + d(1-1*aa) = aa + d(1-aa)
- // c = 0*aa + d(1-1*aa) = d(1-aa)
-+
-+ // For big endian we have to swap the alpha-mask from 0,0,0,255 to 255,0,0,0
-+#ifdef SK_CPU_BENDIAN
-+ return Sk4px(Sk16b(aa) & Sk16b(255,0,0,0, 255,0,0,0, 255,0,0,0, 255,0,0,0))
-+#else
- return Sk4px(Sk16b(aa) & Sk16b(0,0,0,255, 0,0,0,255, 0,0,0,255, 0,0,0,255))
-+#endif
- + d.approxMulDiv255(aa.inv());
- };
- while (h --> 0) {
diff --git a/www/firefox-esr/files/patch-bug1559213 b/www/firefox-esr/files/patch-bug1559213
index 09b4dcc58e83..49bbb0fb05ff 100644
--- a/www/firefox-esr/files/patch-bug1559213
+++ b/www/firefox-esr/files/patch-bug1559213
@@ -63,26 +63,27 @@ index 8509aec..eb6f129 100644
EXPORTS += [
diff --git media/ffvpx/libavcodec/moz.build media/ffvpx/libavcodec/moz.build
index 0069865..e806fc8 100644
---- media/ffvpx/libavcodec/moz.build
+--- media/ffvpx/libavcodec/moz.build.orig
+++ media/ffvpx/libavcodec/moz.build
-@@ -112,9 +112,15 @@ if not CONFIG['MOZ_FFVPX_AUDIOONLY']:
- 'vaapi_vp8.c',
- 'vaapi_vp9.c',
- ]
-+ if CONFIG["MOZ_SYSTEM_AV1"]:
-+ CFLAGS += CONFIG['MOZ_SYSTEM_LIBDAV1D_CFLAGS']
-+ OS_LIBS += CONFIG['MOZ_SYSTEM_LIBDAV1D_LIBS']
-+ else:
-+ USE_LIBS += [
-+ 'dav1d',
-+ 'media_libdav1d_asm',
-+ ]
- USE_LIBS += [
-- 'dav1d',
-- 'media_libdav1d_asm',
- 'mozva'
- ]
-
+@@ -108,10 +108,14 @@
+ 'vp9prob.c',
+ 'vp9recon.c'
+ ]
+- USE_LIBS += [
+- 'dav1d',
+- 'media_libdav1d_asm',
+- ]
++ if CONFIG["MOZ_SYSTEM_AV1"]:
++ CFLAGS += CONFIG['MOZ_SYSTEM_LIBDAV1D_CFLAGS']
++ OS_LIBS += CONFIG['MOZ_SYSTEM_LIBDAV1D_LIBS']
++ else:
++ USE_LIBS += [
++ 'dav1d',
++ 'media_libdav1d_asm',
++ ]
+ if CONFIG['MOZ_WAYLAND']:
+ LOCAL_INCLUDES += ['/media/mozva']
+ SOURCES += [
diff --git toolkit/moz.configure toolkit/moz.configure
index 0069865..e806fc8 100644
--- toolkit/moz.configure
diff --git a/www/firefox-esr/files/patch-bug1640982 b/www/firefox-esr/files/patch-bug1640982
deleted file mode 100644
index dae6ca5fa7b5..000000000000
--- a/www/firefox-esr/files/patch-bug1640982
+++ /dev/null
@@ -1,15 +0,0 @@
-Unbreak build with Rust 1.45.0
-
-error: options `-C embed-bitcode=no` and `-C lto` are incompatible
-
---- config/makefiles/rust.mk.orig 2020-05-12 09:36:22 UTC
-+++ config/makefiles/rust.mk
-@@ -61,7 +61,7 @@ ifndef MOZ_DEBUG_RUST
- # Enable link-time optimization for release builds, but not when linking
- # gkrust_gtest.
- ifeq (,$(findstring gkrust_gtest,$(RUST_LIBRARY_FILE)))
--cargo_rustc_flags += -Clto
-+cargo_rustc_flags +=
- endif
- endif
- endif
diff --git a/www/firefox-esr/files/patch-bug1659612 b/www/firefox-esr/files/patch-bug1659612
index dce125b883d2..a7aea97734a0 100644
--- a/www/firefox-esr/files/patch-bug1659612
+++ b/www/firefox-esr/files/patch-bug1659612
@@ -20,16 +20,22 @@ media/libcubeb/src/cubeb_alsa.c:1168:3: note: include the header <stdlib.h> or e
^
2 errors generated.
---- media/libcubeb/src/cubeb_alsa.c.orig 2021-08-31 14:26:24.530548000 +0200
-+++ media/libcubeb/src/cubeb_alsa.c 2021-08-31 14:26:43.081470000 +0200
-@@ -5,9 +5,7 @@
+--- media/libcubeb/src/cubeb_alsa.c.orig 2023-03-29 20:51:00.139281000 +0200
++++ media/libcubeb/src/cubeb_alsa.c 2023-03-29 20:51:46.219013000 +0200
+@@ -5,12 +5,16 @@
* accompanying file LICENSE for details.
*/
#undef NDEBUG
--#define _DEFAULT_SOURCE
--#define _BSD_SOURCE
--#define _XOPEN_SOURCE 500
-+#define _GNU_SOURCE 1
++#if defined(__FreeBSD__)
++#define _GNU_SOURCE
++#else
+ #define _DEFAULT_SOURCE
+ #define _BSD_SOURCE
+ #if defined(__NetBSD__)
+ #define _NETBSD_SOURCE /* timersub() */
+ #endif
+ #define _XOPEN_SOURCE 500
++#endif
#include "cubeb-internal.h"
#include "cubeb/cubeb.h"
- #include <alsa/asoundlib.h>
+ #include "cubeb_tracing.h"
diff --git a/www/firefox-esr/files/patch-bug1729459_comment12 b/www/firefox-esr/files/patch-bug1729459_comment12
deleted file mode 100644
index dda42170f71b..000000000000
--- a/www/firefox-esr/files/patch-bug1729459_comment12
+++ /dev/null
@@ -1,93 +0,0 @@
---- modules/fdlibm/src/math_private.h.orig 2021-09-30 19:32:33.764224000 +0200
-+++ modules/fdlibm/src/math_private.h 2021-10-02 22:15:33.265122000 +0200
-@@ -30,7 +30,11 @@
- * Adapted from https://github.com/freebsd/freebsd-src/search?q=__double_t
- */
-
--typedef double __double_t;
-+#ifdef __LP64__
-+typedef double __double_t;
-+#else
-+typedef long double __double_t;
-+#endif
- typedef __double_t double_t;
-
- /*
-@@ -630,7 +634,37 @@
- return ((double)(x + 0x1.8p52) - 0x1.8p52);
- }
-
-+static inline float
-+rnintf(__float_t x)
-+{
-+ /*
-+ * As for rnint(), except we could just call that to handle the
-+ * extra precision case, usually without losing efficiency.
-+ */
-+ return ((float)(x + 0x1.8p23F) - 0x1.8p23F);
-+}
-+
-+#ifdef LDBL_MANT_DIG
- /*
-+ * The complications for extra precision are smaller for rnintl() since it
-+ * can safely assume that the rounding precision has been increased from
-+ * its default to FP_PE on x86. We don't exploit that here to get small
-+ * optimizations from limiting the rangle to double. We just need it for
-+ * the magic number to work with long doubles. ld128 callers should use
-+ * rnint() instead of this if possible. ld80 callers should prefer
-+ * rnintl() since for amd64 this avoids swapping the register set, while
-+ * for i386 it makes no difference (assuming FP_PE), and for other arches
-+ * it makes little difference.
-+ */
-+static inline long double
-+rnintl(long double x)
-+{
-+ return (x + __CONCAT(0x1.8p, LDBL_MANT_DIG) / 2 -
-+ __CONCAT(0x1.8p, LDBL_MANT_DIG) / 2);
-+}
-+#endif /* LDBL_MANT_DIG */
-+
-+/*
- * irint() and i64rint() give the same result as casting to their integer
- * return type provided their arg is a floating point integer. They can
- * sometimes be more efficient because no rounding is required.
-@@ -644,6 +678,39 @@
- sizeof(x) == sizeof(long double) ? irintl(x) : (int)(x))
- #else
- #define irint(x) ((int)(x))
-+#endif
-+
-+#define i64rint(x) ((int64_t)(x)) /* only needed for ld128 so not opt. */
-+
-+#if defined(__i386__) && defined(__GNUCLIKE_ASM)
-+static __inline int
-+irintf(float x)
-+{
-+ int n;
-+
-+ __asm("fistl %0" : "=m" (n) : "t" (x));
-+ return (n);
-+}
-+
-+static __inline int
-+irintd(double x)
-+{
-+ int n;
-+
-+ __asm("fistl %0" : "=m" (n) : "t" (x));
-+ return (n);
-+}
-+#endif
-+
-+#if (defined(__amd64__) || defined(__i386__)) && defined(__GNUCLIKE_ASM)
-+static __inline int
-+irintl(long double x)
-+{
-+ int n;
-+
-+ __asm("fistl %0" : "=m" (n) : "t" (x));
-+ return (n);
-+}
- #endif
-
- #ifdef DEBUG
diff --git a/www/firefox-esr/files/patch-bug847568 b/www/firefox-esr/files/patch-bug847568
index 3161dbb88d08..2b3c5e14e99e 100644
--- a/www/firefox-esr/files/patch-bug847568
+++ b/www/firefox-esr/files/patch-bug847568
@@ -97,13 +97,9 @@ index b91d9c1..a97e6eb 100755
echo If gfx/graphite2/src/files.mk has changed, please make corresponding
diff --git gfx/harfbuzz/README-mozilla gfx/harfbuzz/README-mozilla
index 3180257..4587a3b 100644
---- gfx/harfbuzz/README-mozilla
-+++ gfx/harfbuzz/README-mozilla
-@@ -21,3 +21,8 @@ from within the gfx/harfbuzz directory.
-
- If the collection of source files changes, manual updates to moz.build may be
- needed as we don't use the upstream makefiles.
-+
+--- /dev/null
++++ gfx/harfbuzz/README-mozilla.fbsd
+@@ -0,0 +1,4 @@
+The in-tree copy may be omitted during build by --with-system-harfbuzz.
+Make sure to keep pkg-config version check within toolkit/moz.configure in sync
+with checkout version or increment latest tag by one if it's not based
diff --git a/www/firefox-esr/files/patch-gfx_skia_skia_src_base_SkEndian.h b/www/firefox-esr/files/patch-gfx_skia_skia_src_base_SkEndian.h
new file mode 100644
index 000000000000..656127071a78
--- /dev/null
+++ b/www/firefox-esr/files/patch-gfx_skia_skia_src_base_SkEndian.h
@@ -0,0 +1,11 @@
+--- gfx/skia/skia/src/base/SkEndian.h.orig 2023-06-16 01:32:16.999830000 +0200
++++ gfx/skia/skia/src/base/SkEndian.h 2023-06-16 01:32:41.701673000 +0200
+@@ -131,7 +131,7 @@
+ #define SkTEndian_SwapLE64(n) (n)
+ #else // SK_CPU_BENDIAN
+ #define SkEndian_SwapBE16(n) (n)
+- #define SkEndian_SwapBE32(n) (n)
++ #define SkEndian_SwapBE32(n) uint32_t(n)
+ #define SkEndian_SwapBE64(n) (n)
+ #define SkEndian_SwapLE16(n) SkEndianSwap16(n)
+ #define SkEndian_SwapLE32(n) SkEndianSwap32(n)
diff --git a/www/firefox-esr/files/patch-gfx_skia_skia_src_core_SkRasterPipeline.h b/www/firefox-esr/files/patch-gfx_skia_skia_src_core_SkRasterPipeline.h
new file mode 100644
index 000000000000..64e279cf29f0
--- /dev/null
+++ b/www/firefox-esr/files/patch-gfx_skia_skia_src_core_SkRasterPipeline.h
@@ -0,0 +1,11 @@
+--- gfx/skia/skia/src/core/SkRasterPipeline.h.orig 2023-06-10 14:20:18.155477000 +0200
++++ gfx/skia/skia/src/core/SkRasterPipeline.h 2023-06-10 14:20:30.760915000 +0200
+@@ -24,7 +24,7 @@
+ struct SkImageInfo;
+ struct skcms_TransferFunction;
+
+-#if __has_cpp_attribute(clang::musttail) && !defined(__EMSCRIPTEN__) && !defined(SK_CPU_ARM32)
++#if __has_cpp_attribute(clang::musttail) && !defined(__EMSCRIPTEN__) && !defined(SK_CPU_ARM32) && !defined(__powerpc__)
+ #define SK_HAS_MUSTTAIL 1
+ #else
+ #define SK_HAS_MUSTTAIL 0
diff --git a/www/firefox-esr/files/patch-i386-protobuf-alignment b/www/firefox-esr/files/patch-i386-protobuf-alignment
new file mode 100644
index 000000000000..0d58c8644e79
--- /dev/null
+++ b/www/firefox-esr/files/patch-i386-protobuf-alignment
@@ -0,0 +1,15 @@
+# On FreeBSD/i386's LLVM, actual alignment for atomic types requires
+# stricter alignment rules, mostly on 8 byte boundaries instead of 4 byte
+# as indicated by max_align_t.
+
+--- ./toolkit/components/protobuf/src/google/protobuf/arena_impl.h.orig 2022-08-20 20:07:57.096818000 +0200
++++ ./toolkit/components/protobuf/src/google/protobuf/arena_impl.h 2022-08-20 21:40:47.821690000 +0200
+@@ -640,7 +640,7 @@
+ #ifdef _MSC_VER
+ #pragma warning(disable : 4324)
+ #endif
+- struct alignas(kCacheAlignment) CacheAlignedLifecycleIdGenerator {
++ struct alignas(alignof(std::atomic<LifecycleIdAtomic>)) CacheAlignedLifecycleIdGenerator {
+ std::atomic<LifecycleIdAtomic> id;
+ };
+ static CacheAlignedLifecycleIdGenerator lifecycle_id_generator_;
diff --git a/www/firefox-esr/files/patch-js_public_Utility.h b/www/firefox-esr/files/patch-js_public_Utility.h
new file mode 100644
index 000000000000..4c2e16bc932c
--- /dev/null
+++ b/www/firefox-esr/files/patch-js_public_Utility.h
@@ -0,0 +1,35 @@
+commit 57b30241311091b5a6a5a0bb1c19a8e073860fc3
+Author: Christoph Moench-Tegeder <cmt@burggraben.net>
+
+ do not assert on alignment when not having the bits
+
+ the underlying issue seemed to be win-only anyways?
+
+diff --git js/public/Utility.h js/public/Utility.h
+index 0d745e9df785..f0ca7ea37162 100644
+--- js/public/Utility.h
++++ js/public/Utility.h
+@@ -480,6 +480,7 @@ static inline void js_free(void* p) {
+ * Note: Do not add a ; at the end of a use of JS_DECLARE_NEW_METHODS,
+ * or the build will break.
+ */
++#if !defined(__i386__)
+ #define JS_DECLARE_NEW_METHODS(NEWNAME, ALLOCATOR, QUALIFIERS) \
+ template <class T, typename... Args> \
+ QUALIFIERS T* MOZ_HEAP_ALLOCATOR NEWNAME(Args&&... args) { \
+@@ -490,6 +491,15 @@ static inline void js_free(void* p) {
+ return MOZ_LIKELY(memory) ? new (memory) T(std::forward<Args>(args)...) \
+ : nullptr; \
+ }
++#else
++#define JS_DECLARE_NEW_METHODS(NEWNAME, ALLOCATOR, QUALIFIERS) \
++ template <class T, typename... Args> \
++ QUALIFIERS T* MOZ_HEAP_ALLOCATOR NEWNAME(Args&&... args) { \
++ void* memory = ALLOCATOR(sizeof(T)); \
++ return MOZ_LIKELY(memory) ? new (memory) T(std::forward<Args>(args)...) \
++ : nullptr; \
++ }
++#endif
+
+ /*
+ * Given a class which should provide a 'new' method that takes an arena as
diff --git a/www/firefox-esr/files/patch-libwebrtc-generated b/www/firefox-esr/files/patch-libwebrtc-generated
index d7f0fdecd9c8..9790b777a007 100644
--- a/www/firefox-esr/files/patch-libwebrtc-generated
+++ b/www/firefox-esr/files/patch-libwebrtc-generated
@@ -1,19 +1,25 @@
+commit c15a16ffc6046403213dc435ecb26962706a0da4
+Author: Christoph Moench-Tegeder <cmt@FreeBSD.org>
+
+ regenerate FreeBSD libwebrtc patch for Firefox 115esr
+
diff --git third_party/libwebrtc/api/adaptation/resource_adaptation_api_gn/moz.build third_party/libwebrtc/api/adaptation/resource_adaptation_api_gn/moz.build
-index 445f027e82b0..c286ec3735a7 100644
+index aa958f70420c..e6a2d969a1fd 100644
--- third_party/libwebrtc/api/adaptation/resource_adaptation_api_gn/moz.build
+++ third_party/libwebrtc/api/adaptation/resource_adaptation_api_gn/moz.build
-@@ -11,10 +11,19 @@ AllowCompilerWarnings()
-
+@@ -12,11 +12,20 @@ AllowCompilerWarnings()
DEFINES["ABSL_ALLOCATOR_NOTHROW"] = "1"
+ DEFINES["RTC_DAV1D_IN_INTERNAL_DECODER_FACTORY"] = True
DEFINES["RTC_ENABLE_VP9"] = True
+DEFINES["USE_GLIB"] = "1"
-+DEFINES["USE_X11"] = "1"
++DEFINES["USE_OZONE"] = "1"
+DEFINES["WEBRTC_BSD"] = True
DEFINES["WEBRTC_ENABLE_PROTOBUF"] = "0"
DEFINES["WEBRTC_LIBRARY_IMPL"] = True
DEFINES["WEBRTC_MOZILLA_BUILD"] = True
DEFINES["WEBRTC_NON_STATIC_TRACE_EVENT_HANDLERS"] = "0"
+DEFINES["WEBRTC_POSIX"] = True
+ DEFINES["WEBRTC_STRICT_FIELD_TRIALS"] = "0"
+DEFINES["_FILE_OFFSET_BITS"] = "64"
+DEFINES["_LARGEFILE64_SOURCE"] = True
+DEFINES["_LARGEFILE_SOURCE"] = True
@@ -22,7 +28,7 @@ index 445f027e82b0..c286ec3735a7 100644
FINAL_LIBRARY = "webrtc"
-@@ -40,164 +49,17 @@ if not CONFIG["MOZ_DEBUG"]:
+@@ -43,179 +52,32 @@ if not CONFIG["MOZ_DEBUG"]:
if CONFIG["MOZ_DEBUG"] == "1":
DEFINES["DYNAMIC_ANNOTATIONS_ENABLED"] = "1"
@@ -30,7 +36,7 @@ index 445f027e82b0..c286ec3735a7 100644
-if CONFIG["OS_TARGET"] == "Android":
-
- DEFINES["ANDROID"] = True
-- DEFINES["ANDROID_NDK_VERSION_ROLL"] = "r20_1"
+- DEFINES["ANDROID_NDK_VERSION_ROLL"] = "r22_1"
- DEFINES["HAVE_SYS_UIO_H"] = True
- DEFINES["WEBRTC_ANDROID"] = True
- DEFINES["WEBRTC_ANDROID_OPENSLES"] = True
@@ -71,6 +77,7 @@ index 445f027e82b0..c286ec3735a7 100644
-if CONFIG["OS_TARGET"] == "OpenBSD":
-
- DEFINES["USE_GLIB"] = "1"
+- DEFINES["USE_OZONE"] = "1"
- DEFINES["USE_X11"] = "1"
- DEFINES["WEBRTC_BSD"] = True
- DEFINES["WEBRTC_POSIX"] = True
@@ -105,10 +112,6 @@ index 445f027e82b0..c286ec3735a7 100644
- DEFINES["_WIN32_WINNT"] = "0x0A00"
- DEFINES["_WINDOWS"] = True
- DEFINES["__STD_C"] = True
--
-- OS_LIBS += [
-- "winmm"
-- ]
+ DEFINES["_DEBUG"] = True
if CONFIG["CPU_ARCH"] == "aarch64":
@@ -125,6 +128,24 @@ index 445f027e82b0..c286ec3735a7 100644
- DEFINES["WEBRTC_ARCH_ARM"] = True
- DEFINES["WEBRTC_ARCH_ARM_V7"] = True
- DEFINES["WEBRTC_HAS_NEON"] = True
+-
+ if CONFIG["CPU_ARCH"] == "mips32":
+
+ DEFINES["MIPS32_LE"] = True
+ DEFINES["MIPS_FPU_LE"] = True
+- DEFINES["_GNU_SOURCE"] = True
+-
+-if CONFIG["CPU_ARCH"] == "mips64":
+-
+- DEFINES["_GNU_SOURCE"] = True
+
+ if CONFIG["CPU_ARCH"] == "x86":
+
+- DEFINES["WEBRTC_ENABLE_AVX2"] = True
+-
+-if CONFIG["CPU_ARCH"] == "x86_64":
+-
+- DEFINES["WEBRTC_ENABLE_AVX2"] = True
-
-if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "Android":
-
@@ -159,10 +180,10 @@ index 445f027e82b0..c286ec3735a7 100644
-
-if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
-
-- CXXFLAGS += [
-- "-msse2"
-- ]
--
+ CXXFLAGS += [
+ "-msse2"
+ ]
+
- OS_LIBS += [
- "android_support"
- ]
@@ -176,35 +197,40 @@ index 445f027e82b0..c286ec3735a7 100644
- DEFINES["_GNU_SOURCE"] = True
-
-if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
-+if CONFIG["CPU_ARCH"] == "x86":
++ DEFINES["WEBRTC_ENABLE_AVX2"] = True
- CXXFLAGS += [
- "-msse2"
- ]
+- CXXFLAGS += [
+- "-msse2"
+- ]
++if CONFIG["CPU_ARCH"] == "x86_64":
- DEFINES["_GNU_SOURCE"] = True
--
++ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+
-if CONFIG["CPU_ARCH"] == "x86_64" and CONFIG["OS_TARGET"] == "Linux":
--
++if CONFIG["MOZ_X11"] == "1" and CONFIG["OS_TARGET"] == "FreeBSD":
+
- DEFINES["_GNU_SOURCE"] = True
--
++ DEFINES["USE_X11"] = "1"
+
Library("resource_adaptation_api_gn")
diff --git third_party/libwebrtc/api/array_view_gn/moz.build third_party/libwebrtc/api/array_view_gn/moz.build
-index 0ae35513c8c6..efaa7dd2f99c 100644
+index e453cb8585d0..552c7e77985a 100644
--- third_party/libwebrtc/api/array_view_gn/moz.build
+++ third_party/libwebrtc/api/array_view_gn/moz.build
-@@ -11,10 +11,19 @@ AllowCompilerWarnings()
-
+@@ -12,11 +12,20 @@ AllowCompilerWarnings()
DEFINES["ABSL_ALLOCATOR_NOTHROW"] = "1"
+ DEFINES["RTC_DAV1D_IN_INTERNAL_DECODER_FACTORY"] = True
DEFINES["RTC_ENABLE_VP9"] = True
+DEFINES["USE_GLIB"] = "1"
-+DEFINES["USE_X11"] = "1"
++DEFINES["USE_OZONE"] = "1"
+DEFINES["WEBRTC_BSD"] = True
DEFINES["WEBRTC_ENABLE_PROTOBUF"] = "0"
DEFINES["WEBRTC_LIBRARY_IMPL"] = True
DEFINES["WEBRTC_MOZILLA_BUILD"] = True
DEFINES["WEBRTC_NON_STATIC_TRACE_EVENT_HANDLERS"] = "0"
+DEFINES["WEBRTC_POSIX"] = True
+ DEFINES["WEBRTC_STRICT_FIELD_TRIALS"] = "0"
+DEFINES["_FILE_OFFSET_BITS"] = "64"
+DEFINES["_LARGEFILE64_SOURCE"] = True
+DEFINES["_LARGEFILE_SOURCE"] = True
@@ -213,7 +239,7 @@ index 0ae35513c8c6..efaa7dd2f99c 100644
FINAL_LIBRARY = "webrtc"
-@@ -36,148 +45,11 @@ if not CONFIG["MOZ_DEBUG"]:
+@@ -39,107 +48,17 @@ if not CONFIG["MOZ_DEBUG"]:
if CONFIG["MOZ_DEBUG"] == "1":
DEFINES["DYNAMIC_ANNOTATIONS_ENABLED"] = "1"
@@ -221,7 +247,7 @@ index 0ae35513c8c6..efaa7dd2f99c 100644
-if CONFIG["OS_TARGET"] == "Android":
-
- DEFINES["ANDROID"] = True
-- DEFINES["ANDROID_NDK_VERSION_ROLL"] = "r20_1"
+- DEFINES["ANDROID_NDK_VERSION_ROLL"] = "r22_1"
- DEFINES["HAVE_SYS_UIO_H"] = True
- DEFINES["WEBRTC_ANDROID"] = True
- DEFINES["WEBRTC_ANDROID_OPENSLES"] = True
@@ -262,6 +288,7 @@ index 0ae35513c8c6..efaa7dd2f99c 100644
-if CONFIG["OS_TARGET"] == "OpenBSD":
-
- DEFINES["USE_GLIB"] = "1"
+- DEFINES["USE_OZONE"] = "1"
- DEFINES["USE_X11"] = "1"
- DEFINES["WEBRTC_BSD"] = True
- DEFINES["WEBRTC_POSIX"] = True
@@ -309,6 +336,22 @@ index 0ae35513c8c6..efaa7dd2f99c 100644
- DEFINES["WEBRTC_ARCH_ARM_V7"] = True
- DEFINES["WEBRTC_HAS_NEON"] = True
-
+ if CONFIG["CPU_ARCH"] == "mips32":
+
+ DEFINES["MIPS32_LE"] = True
+ DEFINES["MIPS_FPU_LE"] = True
+- DEFINES["_GNU_SOURCE"] = True
+-
+-if CONFIG["CPU_ARCH"] == "mips64":
+-
+- DEFINES["_GNU_SOURCE"] = True
+
+ if CONFIG["CPU_ARCH"] == "x86":
+
+@@ -149,57 +68,8 @@ if CONFIG["CPU_ARCH"] == "x86_64":
+
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+
-if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "Android":
-
- DEFINES["_DEBUG"] = True
@@ -330,9 +373,10 @@ index 0ae35513c8c6..efaa7dd2f99c 100644
- DEFINES["_HAS_ITERATOR_DEBUGGING"] = "0"
-
-if CONFIG["MOZ_X11"] == "1" and CONFIG["OS_TARGET"] == "Linux":
--
-- DEFINES["USE_X11"] = "1"
--
++if CONFIG["MOZ_X11"] == "1" and CONFIG["OS_TARGET"] == "FreeBSD":
+
+ DEFINES["USE_X11"] = "1"
+
-if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
-
- OS_LIBS += [
@@ -364,21 +408,22 @@ index 0ae35513c8c6..efaa7dd2f99c 100644
-
Library("array_view_gn")
diff --git third_party/libwebrtc/api/audio/aec3_config_gn/moz.build third_party/libwebrtc/api/audio/aec3_config_gn/moz.build
-index fd8b99d9255f..682ad0f9d8bd 100644
+index c2d256488d9b..1b3eb3a6acb6 100644
--- third_party/libwebrtc/api/audio/aec3_config_gn/moz.build
+++ third_party/libwebrtc/api/audio/aec3_config_gn/moz.build
-@@ -11,10 +11,19 @@ AllowCompilerWarnings()
-
+@@ -12,11 +12,20 @@ AllowCompilerWarnings()
DEFINES["ABSL_ALLOCATOR_NOTHROW"] = "1"
+ DEFINES["RTC_DAV1D_IN_INTERNAL_DECODER_FACTORY"] = True
DEFINES["RTC_ENABLE_VP9"] = True
+DEFINES["USE_GLIB"] = "1"
-+DEFINES["USE_X11"] = "1"
++DEFINES["USE_OZONE"] = "1"
+DEFINES["WEBRTC_BSD"] = True
DEFINES["WEBRTC_ENABLE_PROTOBUF"] = "0"
DEFINES["WEBRTC_LIBRARY_IMPL"] = True
DEFINES["WEBRTC_MOZILLA_BUILD"] = True
DEFINES["WEBRTC_NON_STATIC_TRACE_EVENT_HANDLERS"] = "0"
+DEFINES["WEBRTC_POSIX"] = True
+ DEFINES["WEBRTC_STRICT_FIELD_TRIALS"] = "0"
+DEFINES["_FILE_OFFSET_BITS"] = "64"
+DEFINES["_LARGEFILE64_SOURCE"] = True
+DEFINES["_LARGEFILE_SOURCE"] = True
@@ -387,7 +432,7 @@ index fd8b99d9255f..682ad0f9d8bd 100644
FINAL_LIBRARY = "webrtc"
-@@ -40,164 +49,17 @@ if not CONFIG["MOZ_DEBUG"]:
+@@ -43,179 +52,32 @@ if not CONFIG["MOZ_DEBUG"]:
if CONFIG["MOZ_DEBUG"] == "1":
DEFINES["DYNAMIC_ANNOTATIONS_ENABLED"] = "1"
@@ -395,7 +440,7 @@ index fd8b99d9255f..682ad0f9d8bd 100644
-if CONFIG["OS_TARGET"] == "Android":
-
- DEFINES["ANDROID"] = True
-- DEFINES["ANDROID_NDK_VERSION_ROLL"] = "r20_1"
+- DEFINES["ANDROID_NDK_VERSION_ROLL"] = "r22_1"
- DEFINES["HAVE_SYS_UIO_H"] = True
- DEFINES["WEBRTC_ANDROID"] = True
- DEFINES["WEBRTC_ANDROID_OPENSLES"] = True
@@ -436,6 +481,7 @@ index fd8b99d9255f..682ad0f9d8bd 100644
-if CONFIG["OS_TARGET"] == "OpenBSD":
-
- DEFINES["USE_GLIB"] = "1"
+- DEFINES["USE_OZONE"] = "1"
- DEFINES["USE_X11"] = "1"
- DEFINES["WEBRTC_BSD"] = True
- DEFINES["WEBRTC_POSIX"] = True
@@ -470,10 +516,6 @@ index fd8b99d9255f..682ad0f9d8bd 100644
- DEFINES["_WIN32_WINNT"] = "0x0A00"
- DEFINES["_WINDOWS"] = True
- DEFINES["__STD_C"] = True
--
-- OS_LIBS += [
-- "winmm"
-- ]
+ DEFINES["_DEBUG"] = True
if CONFIG["CPU_ARCH"] == "aarch64":
@@ -490,6 +532,24 @@ index fd8b99d9255f..682ad0f9d8bd 100644
- DEFINES["WEBRTC_ARCH_ARM"] = True
- DEFINES["WEBRTC_ARCH_ARM_V7"] = True
- DEFINES["WEBRTC_HAS_NEON"] = True
+-
+ if CONFIG["CPU_ARCH"] == "mips32":
+
+ DEFINES["MIPS32_LE"] = True
+ DEFINES["MIPS_FPU_LE"] = True
+- DEFINES["_GNU_SOURCE"] = True
+-
+-if CONFIG["CPU_ARCH"] == "mips64":
+-
+- DEFINES["_GNU_SOURCE"] = True
+
+ if CONFIG["CPU_ARCH"] == "x86":
+
+- DEFINES["WEBRTC_ENABLE_AVX2"] = True
+-
+-if CONFIG["CPU_ARCH"] == "x86_64":
+-
+- DEFINES["WEBRTC_ENABLE_AVX2"] = True
-
-if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "Android":
-
@@ -524,10 +584,10 @@ index fd8b99d9255f..682ad0f9d8bd 100644
-
-if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
-
-- CXXFLAGS += [
-- "-msse2"
-- ]
--
+ CXXFLAGS += [
+ "-msse2"
+ ]
+
- OS_LIBS += [
- "android_support"
- ]
@@ -541,29 +601,33 @@ index fd8b99d9255f..682ad0f9d8bd 100644
- DEFINES["_GNU_SOURCE"] = True
-
*** 77171 LINES SKIPPED ***