git: 648e891ea0b4 - main - www/firefox: update to 158.0 (rc1)
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 08 Oct 2026 20:09:17 UTC
The branch main has been updated by cmt:
URL: https://cgit.FreeBSD.org/ports/commit/?id=648e891ea0b42090f1a6ed112b7e7805ae624d1c
commit 648e891ea0b42090f1a6ed112b7e7805ae624d1c
Author: Christoph Moench-Tegeder <cmt@FreeBSD.org>
AuthorDate: 2026-10-08 20:07:07 +0000
Commit: Christoph Moench-Tegeder <cmt@FreeBSD.org>
CommitDate: 2026-10-08 20:07:07 +0000
www/firefox: update to 158.0 (rc1)
Release Notes (soon):
https://www.firefox.com/en-US/firefox/158.0/releasenotes/
Includes fix for DEBUG-enabled builds
PR: 298373
Submitted By: Bartosz
---
www/firefox/Makefile | 6 +-
www/firefox/distinfo | 6 +-
www/firefox/files/patch-bug847568 | 241 -------------------
.../files/patch-languageid-de-constexpr-ify | 34 +--
www/firefox/files/patch-libwebrtc-generated | 258 ++-------------------
www/firefox/files/patch-python_sites_mach.txt | 10 +-
..._moz.build => patch-third__party_angle-freebsd} | 88 ++++++-
...-third__party_angle_angle__common__gn_moz.build | 36 ---
8 files changed, 140 insertions(+), 539 deletions(-)
diff --git a/www/firefox/Makefile b/www/firefox/Makefile
index e78aa9b1bc9c..2f572fd5753d 100644
--- a/www/firefox/Makefile
+++ b/www/firefox/Makefile
@@ -1,5 +1,5 @@
PORTNAME= firefox
-DISTVERSION= 157.0.1
+DISTVERSION= 158.0
PORTEPOCH= 2
CATEGORIES= www wayland
MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}${DISTVERSIONSUFFIX}/source \
@@ -14,10 +14,8 @@ NOT_FOR_ARCHS= i386
NOT_FOR_ARCHS_REASON= fails to build: rust needs more address space than platform can provide
BUILD_DEPENDS= nspr>=4.32:devel/nspr \
- nss>=3.129:security/nss \
+ nss>=3.130:security/nss \
libevent>=2.1.8:devel/libevent \
- harfbuzz>=10.1.0:print/harfbuzz \
- graphite2>=1.3.14:graphics/graphite2 \
png>=1.6.45:graphics/png \
dav1d>=1.0.0:multimedia/dav1d \
libvpx>=1.15.0:multimedia/libvpx \
diff --git a/www/firefox/distinfo b/www/firefox/distinfo
index 90ab5a339db5..24de6e0718a4 100644
--- a/www/firefox/distinfo
+++ b/www/firefox/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1791223226
-SHA256 (firefox-157.0.1.source.tar.xz) = 483bedee9059df2479e4531c443b1073c6ebaed3570bda0c164eb562ee241c4c
-SIZE (firefox-157.0.1.source.tar.xz) = 811383348
+TIMESTAMP = 1791478748
+SHA256 (firefox-158.0.source.tar.xz) = ec28901709028d8125df4248668df3f86362fc5c02986c038443f4ce6a383912
+SIZE (firefox-158.0.source.tar.xz) = 813786428
diff --git a/www/firefox/files/patch-bug847568 b/www/firefox/files/patch-bug847568
deleted file mode 100644
index 5b557e0e5a86..000000000000
--- a/www/firefox/files/patch-bug847568
+++ /dev/null
@@ -1,241 +0,0 @@
-Allow building against system-wide graphite2/harfbuzz
-
-diff --git config/system-headers.mozbuild config/system-headers.mozbuild
-index af44c89057fc..c0ac271917fb 100644
---- config/system-headers.mozbuild
-+++ config/system-headers.mozbuild
-@@ -1304,6 +1304,19 @@ if CONFIG["MOZ_ENABLE_LIBPROXY"]:
- "proxy.h",
- ]
-
-+if CONFIG['MOZ_SYSTEM_GRAPHITE2']:
-+ system_headers += [
-+ 'graphite2/Font.h',
-+ 'graphite2/Segment.h',
-+ ]
-+
-+if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
-+ system_headers += [
-+ 'harfbuzz/hb-glib.h',
-+ 'harfbuzz/hb-ot.h',
-+ 'harfbuzz/hb.h',
-+ ]
-+
- if CONFIG["MOZ_SYSTEM_ICU"]:
- system_headers += [
- "unicode/calendar.h",
-diff --git dom/base/moz.build dom/base/moz.build
-index 170d19f09aa9..a47fc8b1193c 100644
---- dom/base/moz.build
-+++ dom/base/moz.build
-@@ -620,6 +620,9 @@ FINAL_LIBRARY = "xul"
- if CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk":
- CXXFLAGS += CONFIG["MOZ_GTK3_CFLAGS"]
-
-+if CONFIG["MOZ_SYSTEM_HARFBUZZ"]:
-+ CXXFLAGS += CONFIG["MOZ_HARFBUZZ_CFLAGS"]
-+
- GeneratedFile(
- "UseCounterList.h",
- script="gen-usecounters.py",
-diff --git gfx/graphite2/geckoextra/moz.build gfx/graphite2/geckoextra/moz.build
-new file mode 100644
-index 000000000000..ed0323eba9d5
---- /dev/null
-+++ gfx/graphite2/geckoextra/moz.build
-@@ -0,0 +1,21 @@
-+# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
-+# vim: set filetype=python:
-+# This Source Code Form is subject to the terms of the Mozilla Public
-+# 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/.
-+
-+EXPORTS.graphite2 += [
-+ 'include/GraphiteExtra.h',
-+ 'include/GraphiteStructsForRLBox.h',
-+]
-+
-+UNIFIED_SOURCES += [
-+ '../geckoextra/src/GraphiteExtra.cpp',
-+]
-+
-+CXXFLAGS += CONFIG['MOZ_GRAPHITE2_CFLAGS']
-+
-+# Match bundled graphite2 configuration
-+AllowCompilerWarnings()
-+
-+FINAL_LIBRARY = 'xul'
-diff --git gfx/harfbuzz/README-mozilla.fbsd gfx/harfbuzz/README-mozilla.fbsd
-new file mode 100644
-index 000000000000..2a10eb1e2b42
---- /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
-+on upstream release.
-diff --git gfx/moz.build gfx/moz.build
-index 56ea317bedfc..07dd7f66f1bc 100644
---- gfx/moz.build
-+++ gfx/moz.build
-@@ -10,6 +10,14 @@ with Files("**"):
- with Files("wr/**"):
- BUG_COMPONENT = ("Core", "Graphics: WebRender")
-
-+if CONFIG["MOZ_SYSTEM_GRAPHITE2"]:
-+ DIRS += ["graphite2/geckoextra"]
-+else:
-+ DIRS += ["graphite2/src" ]
-+
-+if not CONFIG["MOZ_SYSTEM_HARFBUZZ"]:
-+ DIRS += ["harfbuzz/src"]
-+
- DIRS += [
- "cairo",
- "2d",
-@@ -19,8 +27,6 @@ DIRS += [
- "qcms",
- "gl",
- "layers",
-- "graphite2/src",
-- "harfbuzz/src",
- "ots/src",
- "thebes",
- "ipc",
-diff --git gfx/skia/generate_mozbuild.py gfx/skia/generate_mozbuild.py
-index b589efde1c5c..47f49e10df70 100755
---- gfx/skia/generate_mozbuild.py
-+++ gfx/skia/generate_mozbuild.py
-@@ -95,6 +95,9 @@ if CONFIG['CC_TYPE'] in ('clang', 'clang-cl'):
- '-Wno-unused-private-field',
- ]
-
-+if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
-+ CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS']
-+
- if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk', 'android'):
- LOCAL_INCLUDES += [
- "/gfx/cairo/cairo/src",
-diff --git gfx/skia/moz.build gfx/skia/moz.build
-index 7fee54534878..ba1a4038e4a0 100644
---- gfx/skia/moz.build
-+++ gfx/skia/moz.build
-@@ -623,6 +623,9 @@ if CONFIG['CC_TYPE'] in ('clang', 'clang-cl'):
- '-Wno-unused-private-field',
- ]
-
-+if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
-+ CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS']
-+
- if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk', 'android'):
- LOCAL_INCLUDES += [
- "/gfx/cairo/cairo/src",
-diff --git gfx/thebes/moz.build gfx/thebes/moz.build
-index 48f2849e2025..7d0a161a91b4 100644
---- gfx/thebes/moz.build
-+++ gfx/thebes/moz.build
-@@ -295,7 +295,13 @@ if CONFIG["MOZ_WAYLAND"]:
-
- LOCAL_INCLUDES += CONFIG["SKIA_INCLUDES"]
-
--DEFINES["GRAPHITE2_STATIC"] = True
-+if CONFIG["MOZ_SYSTEM_GRAPHITE2"]:
-+ CXXFLAGS += CONFIG["MOZ_GRAPHITE2_CFLAGS"]
-+else:
-+ DEFINES["GRAPHITE2_STATIC"] = True
-+
-+if CONFIG["MOZ_SYSTEM_HARFBUZZ"]:
-+ CXXFLAGS += CONFIG["MOZ_HARFBUZZ_CFLAGS"]
-
- CXXFLAGS += ["-Werror=switch"]
-
-diff --git intl/unicharutil/util/moz.build intl/unicharutil/util/moz.build
-index 2396210428ee..092baac6f79c 100644
---- intl/unicharutil/util/moz.build
-+++ intl/unicharutil/util/moz.build
-@@ -24,6 +24,9 @@ UNIFIED_SOURCES += [
- "nsUnicodeProperties.cpp",
- ]
-
-+if CONFIG["MOZ_SYSTEM_HARFBUZZ"]:
-+ CXXFLAGS += CONFIG["MOZ_HARFBUZZ_CFLAGS"]
-+
- include("/ipc/chromium/chromium-config.mozbuild")
-
- GeneratedFile(
-diff --git netwerk/dns/moz.build netwerk/dns/moz.build
-index 1bb0430f01aa..0360e0f468c0 100644
---- netwerk/dns/moz.build
-+++ netwerk/dns/moz.build
-@@ -111,6 +111,9 @@ GeneratedFile(
- "etld_data.inc", script="prepare_tlds.py", inputs=["effective_tld_names.dat"]
- )
-
-+if CONFIG["MOZ_SYSTEM_HARFBUZZ"]:
-+ CXXFLAGS += CONFIG["MOZ_HARFBUZZ_CFLAGS"]
-+
- # need to include etld_data.inc
- LOCAL_INCLUDES += [
- "/netwerk/base",
-diff --git security/rlbox/moz.build security/rlbox/moz.build
-index 7ad8d076f0f1..835b9d905e03 100644
---- security/rlbox/moz.build
-+++ security/rlbox/moz.build
-@@ -47,6 +47,8 @@ if CONFIG["MOZ_WASM_SANDBOXING_GRAPHITE"]:
- for k, v in graphite_defines:
- WASM_DEFINES[k] = v
- LOCAL_INCLUDES += ["/gfx/graphite2/src"]
-+ if CONFIG["MOZ_SYSTEM_GRAPHITE2"]:
-+ WASM_CXXFLAGS += CONFIG["MOZ_GRAPHITE2_CFLAGS"]
-
- if CONFIG["MOZ_WASM_SANDBOXING_OGG"]:
- include("/media/libogg/sources.mozbuild")
-diff --git toolkit/library/moz.build toolkit/library/moz.build
-index ee6051567c8e..c24a5a513bbc 100644
---- toolkit/library/moz.build
-+++ toolkit/library/moz.build
-@@ -298,6 +298,12 @@ if CONFIG["MOZ_SYSTEM_PNG"]:
- if CONFIG["MOZ_SYSTEM_WEBP"]:
- OS_LIBS += CONFIG["MOZ_WEBP_LIBS"]
-
-+if CONFIG["MOZ_SYSTEM_GRAPHITE2"]:
-+ OS_LIBS += CONFIG["MOZ_GRAPHITE2_LIBS"]
-+
-+if CONFIG["MOZ_SYSTEM_HARFBUZZ"]:
-+ OS_LIBS += CONFIG["MOZ_HARFBUZZ_LIBS"]
-+
- if CONFIG["MOZ_SYSTEM_LIBEVENT"]:
- OS_LIBS += CONFIG["MOZ_LIBEVENT_LIBS"]
-
-diff --git toolkit/moz.configure toolkit/moz.configure
-index 1f85d2831f2f..04ce56e2cc0b 100644
---- toolkit/moz.configure
-+++ toolkit/moz.configure
-@@ -1397,6 +1397,26 @@ def enable_cairo_ft(target, tree_freetype, freetype2_info):
- set_config("MOZ_ENABLE_CAIRO_FT", True, when=enable_cairo_ft)
- set_config("CAIRO_FT_CFLAGS", ft2_info.cflags, when=enable_cairo_ft)
-
-+# Graphite2
-+# ==============================================================
-+option("--with-system-graphite2",
-+ help="Use system graphite2 (located with pkgconfig)")
-+
-+system_graphite2 = pkg_check_modules("MOZ_GRAPHITE2", "graphite2",
-+ when="--with-system-graphite2")
-+
-+set_config("MOZ_SYSTEM_GRAPHITE2", depends_if(system_graphite2)(lambda _: True))
-+
-+# HarfBuzz
-+# ==============================================================
-+option("--with-system-harfbuzz",
-+ help="Use system harfbuzz (located with pkgconfig)")
-+
-+system_harfbuzz = pkg_check_modules("MOZ_HARFBUZZ", "harfbuzz >= 2.7.4",
-+ when="--with-system-harfbuzz")
-+
-+set_config("MOZ_SYSTEM_HARFBUZZ", depends_if(system_harfbuzz)(lambda _: True))
-+
-
- # WebDriver (HTTP / BiDi)
- # ==============================================================
diff --git a/www/firefox/files/patch-languageid-de-constexpr-ify b/www/firefox/files/patch-languageid-de-constexpr-ify
index 1c2a522f5bf5..a7a17cb9c1c9 100644
--- a/www/firefox/files/patch-languageid-de-constexpr-ify
+++ b/www/firefox/files/patch-languageid-de-constexpr-ify
@@ -1,4 +1,4 @@
-commit 87f49da7a84ed9bbce4b8ef263d85b9bd5c42eac
+commit 386dedafa65ac0f9cf726c63fd83d47b971b459d
Author: Christoph Moench-Tegeder <cmt@FreeBSD.org>
Partially de-constexpr'ify LanguageId code
@@ -14,16 +14,16 @@ Author: Christoph Moench-Tegeder <cmt@FreeBSD.org>
/wrkdirs/usr/ports/www/firefox/work/firefox-151.0/js/src/util/LanguageId.h:234:66: error: constexpr function's return type 'mozilla::Maybe<std::pair<LanguageId>
234 | static constexpr mozilla::Maybe<std::pair<LanguageId, size_t>> from(
- | ^
+ |
/wrkdirs/usr/ports/www/firefox/work/.build/dist/include/mozilla/Maybe.h:367:7: note: 'Maybe<std::pair<js::LanguageId, unsigned long>>' is not literal because i>
367 | : private detail::MaybeStorage<T>,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
diff --git js/src/builtin/intl/LocaleNegotiation.cpp js/src/builtin/intl/LocaleNegotiation.cpp
-index 0aff7274eda1..5c25e53b8ea1 100644
+index d6c6a9c7760b..c23315ede19c 100644
--- js/src/builtin/intl/LocaleNegotiation.cpp
+++ js/src/builtin/intl/LocaleNegotiation.cpp
-@@ -1124,13 +1124,13 @@ struct OldStyleLanguageTagMapping {
+@@ -1163,13 +1163,13 @@ struct OldStyleLanguageTagMapping {
LanguageId oldStyle;
LanguageId modernStyle;
@@ -40,10 +40,10 @@ index 0aff7274eda1..5c25e53b8ea1 100644
{"zh-SG", "zh-Hans-SG"}, {"zh-TW", "zh-Hant-TW"},
};
diff --git js/src/builtin/intl/SharedIntlData.cpp js/src/builtin/intl/SharedIntlData.cpp
-index 581c9d1e6ebd..9dd3a50acb1c 100644
+index 5ab01896f32f..c5834175f80d 100644
--- js/src/builtin/intl/SharedIntlData.cpp
+++ js/src/builtin/intl/SharedIntlData.cpp
-@@ -431,11 +431,11 @@ bool js::intl::SharedIntlData::getAvailableLocales(
+@@ -431,12 +431,12 @@ bool js::intl::SharedIntlData::getAvailableLocales(
// directly support it (but does support it through fallback, e.g. supporting
// "en-GB" indirectly using "en" support).
{
@@ -54,15 +54,17 @@ index 581c9d1e6ebd..9dd3a50acb1c 100644
#ifdef DEBUG
- static constexpr auto lastDitchParent = lastDitch.parentLocale();
+- static_assert(std::string_view{lastDitchParent.toString()} == "en");
+ static auto lastDitchParent = lastDitch.parentLocale();
- static_assert(std::string_view{lastDitchParent.toString()} == "en");
++ // static_assert(std::string_view{lastDitchParent.toString()} == "en");
MOZ_ASSERT(locales.has(lastDitchParent),
+ "shouldn't be a need to add every locale implied by the "
diff --git js/src/util/LanguageId.h js/src/util/LanguageId.h
-index 7c193c3e2e07..bf391ef39717 100644
+index cb8561f952d0..f8fd1766987d 100644
--- js/src/util/LanguageId.h
+++ js/src/util/LanguageId.h
-@@ -231,7 +231,7 @@ class LanguageId final {
+@@ -230,7 +230,7 @@ class LanguageId final {
private:
template <char... separators, typename CharT>
@@ -71,7 +73,7 @@ index 7c193c3e2e07..bf391ef39717 100644
std::basic_string_view<CharT> localeId) {
// Return true iff |sv| starts with a subtag of length |len|.
auto hasSubtag = [](std::basic_string_view<CharT> sv, size_t len) {
-@@ -313,7 +313,7 @@ class LanguageId final {
+@@ -312,7 +312,7 @@ class LanguageId final {
*
* Subtags in ICU and Unicode locale identifiers are separated by "-" or "_".
*/
@@ -80,7 +82,7 @@ index 7c193c3e2e07..bf391ef39717 100644
return from<'-', '_'>(localeId);
}
-@@ -327,7 +327,7 @@ class LanguageId final {
+@@ -326,7 +326,7 @@ class LanguageId final {
*
* Subtags in ICU and Unicode locale identifiers are separated by "-" or "_".
*/
@@ -89,7 +91,7 @@ index 7c193c3e2e07..bf391ef39717 100644
return fromId(std::string_view{localeId.data(), localeId.size()});
}
-@@ -341,7 +341,7 @@ class LanguageId final {
+@@ -340,7 +340,7 @@ class LanguageId final {
*
* Subtags in BCP 47 locale identifiers are separated by "-".
*/
@@ -98,7 +100,7 @@ index 7c193c3e2e07..bf391ef39717 100644
return from<'-'>(localeId);
}
-@@ -355,7 +355,7 @@ class LanguageId final {
+@@ -354,7 +354,7 @@ class LanguageId final {
*
* Subtags in BCP 47 locale identifiers are separated by "-".
*/
@@ -107,7 +109,7 @@ index 7c193c3e2e07..bf391ef39717 100644
return from<u'-'>(localeId);
}
-@@ -370,7 +370,7 @@ class LanguageId final {
+@@ -369,7 +369,7 @@ class LanguageId final {
* Subtags in BCP 47 locale identifiers are separated by "-".
*/
template <typename CharT>
@@ -116,7 +118,7 @@ index 7c193c3e2e07..bf391ef39717 100644
return fromBcp49(std::basic_string_view{localeId.data(), localeId.size()});
}
-@@ -381,7 +381,7 @@ class LanguageId final {
+@@ -380,7 +380,7 @@ class LanguageId final {
*
* Subtags in BCP 47 locale identifiers are separated by "-".
*/
@@ -125,7 +127,7 @@ index 7c193c3e2e07..bf391ef39717 100644
return fromBcp49(localeId)->first;
}
-@@ -408,8 +408,8 @@ class LanguageId final {
+@@ -407,8 +407,8 @@ class LanguageId final {
/**
* Return the language identifier for the undetermined locale "und".
*/
diff --git a/www/firefox/files/patch-libwebrtc-generated b/www/firefox/files/patch-libwebrtc-generated
index 3c92a8583a31..1ac5b0383419 100644
--- a/www/firefox/files/patch-libwebrtc-generated
+++ b/www/firefox/files/patch-libwebrtc-generated
@@ -1,7 +1,7 @@
-commit a104382524fcd2d357b6c2f7d6df3a91f55ccbdf
+commit df59974d59c002a16edc9ee3708b17ca47641965
Author: Christoph Moench-Tegeder <cmt@FreeBSD.org>
- regenerate FreeBSD libwebrtc patch for gecko 157
+ regenerate FreeBSD libwebrtc patch for gecko 158
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 2060d5597a7c..643ec6ab666e 100644
@@ -73364,7 +73364,7 @@ index eaa549f616ff..de7abe9355ce 100644
Library("webrtc_vp9_helpers_gn")
diff --git third_party/libwebrtc/moz.build third_party/libwebrtc/moz.build
-index ccba3ea3d575..ae8d467930ef 100644
+index b15446cea44e..01020f3fffbb 100644
--- third_party/libwebrtc/moz.build
+++ third_party/libwebrtc/moz.build
@@ -305,6 +305,8 @@ DIRS += [
@@ -73376,7 +73376,7 @@ index ccba3ea3d575..ae8d467930ef 100644
"/third_party/libwebrtc/modules/module_api_gn",
"/third_party/libwebrtc/modules/module_api_public_gn",
"/third_party/libwebrtc/modules/module_fec_api_gn",
-@@ -540,143 +542,31 @@ DIRS += [
+@@ -539,143 +541,31 @@ DIRS += [
"/third_party/libwebrtc/webrtc_gn"
]
@@ -73474,6 +73474,18 @@ index ccba3ea3d575..ae8d467930ef 100644
- ]
-
-if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "aarch64":
+-
+- DIRS += [
+- "/third_party/libwebrtc/common_audio/common_audio_neon_c_gn",
+- "/third_party/libwebrtc/common_audio/common_audio_neon_gn",
+- "/third_party/libwebrtc/common_audio/fir_filter_gn",
+- "/third_party/libwebrtc/modules/desktop_capture/desktop_capture_gn",
+- "/third_party/libwebrtc/modules/desktop_capture/primitives_gn",
+- "/third_party/libwebrtc/modules/portal/portal_gn",
+- "/third_party/libwebrtc/third_party/libepoxy/libepoxy_gn"
+- ]
+-
+-if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "arm":
+if CONFIG["OS_TARGET"] == "FreeBSD" and CONFIG["TARGET_CPU"] == "aarch64":
DIRS += [
@@ -73483,24 +73495,21 @@ index ccba3ea3d575..ae8d467930ef 100644
- "/third_party/libwebrtc/modules/desktop_capture/desktop_capture_gn",
- "/third_party/libwebrtc/modules/desktop_capture/primitives_gn",
"/third_party/libwebrtc/modules/portal/portal_gn",
+- "/third_party/libwebrtc/rtc_base/system/asm_defines_gn",
"/third_party/libwebrtc/third_party/libepoxy/libepoxy_gn"
]
--if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "arm":
+-if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "mips32":
+if CONFIG["OS_TARGET"] == "FreeBSD" and CONFIG["TARGET_CPU"] == "mips32":
DIRS += [
-- "/third_party/libwebrtc/common_audio/common_audio_neon_c_gn",
-- "/third_party/libwebrtc/common_audio/common_audio_neon_gn",
-- "/third_party/libwebrtc/common_audio/fir_filter_gn",
- "/third_party/libwebrtc/modules/desktop_capture/desktop_capture_gn",
- "/third_party/libwebrtc/modules/desktop_capture/primitives_gn",
"/third_party/libwebrtc/modules/portal/portal_gn",
-- "/third_party/libwebrtc/rtc_base/system/asm_defines_gn",
"/third_party/libwebrtc/third_party/libepoxy/libepoxy_gn"
]
--if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "mips32":
+-if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "mips64":
+if CONFIG["OS_TARGET"] == "FreeBSD" and CONFIG["TARGET_CPU"] == "mips64":
DIRS += [
@@ -73510,21 +73519,12 @@ index ccba3ea3d575..ae8d467930ef 100644
"/third_party/libwebrtc/third_party/libepoxy/libepoxy_gn"
]
--if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "mips64":
--
-- DIRS += [
-- "/third_party/libwebrtc/modules/desktop_capture/desktop_capture_gn",
-- "/third_party/libwebrtc/modules/desktop_capture/primitives_gn",
-- "/third_party/libwebrtc/modules/portal/portal_gn",
-- "/third_party/libwebrtc/third_party/libepoxy/libepoxy_gn"
-- ]
--
-if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "x86":
+if CONFIG["OS_TARGET"] == "FreeBSD" and CONFIG["TARGET_CPU"] == "x86":
DIRS += [
"/third_party/libwebrtc/common_audio/common_audio_avx2_gn",
-@@ -685,13 +575,11 @@ if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "x86":
+@@ -684,13 +574,11 @@ if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "x86":
"/third_party/libwebrtc/modules/audio_processing/aec3/aec3_avx2_gn",
"/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/vector_math_avx2_gn",
"/third_party/libwebrtc/modules/desktop_capture/desktop_capture_differ_sse2_gn",
@@ -73539,7 +73539,7 @@ index ccba3ea3d575..ae8d467930ef 100644
DIRS += [
"/third_party/libwebrtc/common_audio/common_audio_avx2_gn",
-@@ -700,75 +588,6 @@ if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "x86_64":
+@@ -699,79 +587,6 @@ if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "x86_64":
"/third_party/libwebrtc/modules/audio_processing/aec3/aec3_avx2_gn",
"/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/vector_math_avx2_gn",
"/third_party/libwebrtc/modules/desktop_capture/desktop_capture_differ_sse2_gn",
@@ -73615,6 +73615,10 @@ index ccba3ea3d575..ae8d467930ef 100644
- "/third_party/libwebrtc/modules/desktop_capture/desktop_capture_gn",
- "/third_party/libwebrtc/modules/desktop_capture/primitives_gn"
- ]
+-
+-LICENSED_UNDER += [
+- "webrtc",
+-]
diff --git third_party/libwebrtc/net/dcsctp/common/internal_types_gn/moz.build third_party/libwebrtc/net/dcsctp/common/internal_types_gn/moz.build
index fc3ef8e7a6ec..8b46a83bb560 100644
--- third_party/libwebrtc/net/dcsctp/common/internal_types_gn/moz.build
@@ -87115,218 +87119,6 @@ index 70ba4989bce0..4ec63b0acc00 100644
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
Library("normalize_simulcast_size_experiment_gn")
-diff --git third_party/libwebrtc/rtc_base/experiments/psnr_experiment_gn/moz.build third_party/libwebrtc/rtc_base/experiments/psnr_experiment_gn/moz.build
-index e91a00d9a577..c5035bee9816 100644
---- third_party/libwebrtc/rtc_base/experiments/psnr_experiment_gn/moz.build
-+++ third_party/libwebrtc/rtc_base/experiments/psnr_experiment_gn/moz.build
-@@ -13,13 +13,22 @@ DEFINES["ABSL_ALLOCATOR_NOTHROW"] = "1"
- DEFINES["PROTOBUF_ENABLE_DEBUG_LOGGING_MAY_LEAK_PII"] = "0"
- DEFINES["RTC_DAV1D_IN_INTERNAL_DECODER_FACTORY"] = True
- DEFINES["RTC_ENABLE_VP9"] = True
-+DEFINES["USE_GLIB"] = "1"
-+DEFINES["USE_OZONE"] = "1"
-+DEFINES["WEBRTC_BSD"] = True
- DEFINES["WEBRTC_DEPRECATE_PLAN_B"] = True
- DEFINES["WEBRTC_ENABLE_PROTOBUF"] = "0"
- DEFINES["WEBRTC_ENCODER_PSNR_STATS"] = True
- 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
-+DEFINES["__STDC_CONSTANT_MACROS"] = True
-+DEFINES["__STDC_FORMAT_MACROS"] = True
-
- FINAL_LIBRARY = "xul"
-
-@@ -47,97 +56,7 @@ if not CONFIG["MOZ_DEBUG"]:
- if CONFIG["MOZ_DEBUG"] == "1":
-
- DEFINES["DYNAMIC_ANNOTATIONS_ENABLED"] = "1"
--
--if CONFIG["OS_TARGET"] == "Android":
--
-- DEFINES["ANDROID"] = True
-- DEFINES["ANDROID_NDK_VERSION_ROLL"] = "r27_1"
-- DEFINES["HAVE_SYS_UIO_H"] = True
-- DEFINES["WEBRTC_ANDROID"] = True
-- DEFINES["WEBRTC_ANDROID_OPENSLES"] = True
-- DEFINES["WEBRTC_LINUX"] = True
-- DEFINES["WEBRTC_POSIX"] = True
-- DEFINES["_GNU_SOURCE"] = True
-- DEFINES["__ANDROID_UNAVAILABLE_SYMBOLS_ARE_WEAK__"] = True
-- DEFINES["__STDC_CONSTANT_MACROS"] = True
-- DEFINES["__STDC_FORMAT_MACROS"] = True
--
-- OS_LIBS += [
-- "log"
-- ]
--
--if CONFIG["OS_TARGET"] == "Darwin":
--
-- DEFINES["WEBRTC_MAC"] = True
-- DEFINES["WEBRTC_POSIX"] = True
-- DEFINES["__STDC_CONSTANT_MACROS"] = True
-- DEFINES["__STDC_FORMAT_MACROS"] = True
--
-- OS_LIBS += [
-- "-framework Foundation"
-- ]
--
--if CONFIG["OS_TARGET"] == "Linux":
--
-- DEFINES["USE_AURA"] = "1"
-- DEFINES["USE_GLIB"] = "1"
-- DEFINES["USE_OZONE"] = "1"
-- DEFINES["USE_UDEV"] = True
-- DEFINES["WEBRTC_LINUX"] = True
-- DEFINES["WEBRTC_POSIX"] = True
-- DEFINES["_FILE_OFFSET_BITS"] = "64"
-- DEFINES["_LARGEFILE64_SOURCE"] = True
-- DEFINES["_LARGEFILE_SOURCE"] = True
-- DEFINES["__STDC_CONSTANT_MACROS"] = True
-- DEFINES["__STDC_FORMAT_MACROS"] = True
--
--if CONFIG["OS_TARGET"] == "OpenBSD":
--
-- DEFINES["USE_GLIB"] = "1"
-- DEFINES["USE_OZONE"] = "1"
-- DEFINES["WEBRTC_BSD"] = True
-- DEFINES["WEBRTC_POSIX"] = True
-- DEFINES["_FILE_OFFSET_BITS"] = "64"
-- DEFINES["_LARGEFILE64_SOURCE"] = True
-- DEFINES["_LARGEFILE_SOURCE"] = True
-- DEFINES["__STDC_CONSTANT_MACROS"] = True
-- DEFINES["__STDC_FORMAT_MACROS"] = True
--
--if CONFIG["OS_TARGET"] == "WINNT":
--
-- DEFINES["CERT_CHAIN_PARA_HAS_EXTRA_FIELDS"] = True
-- DEFINES["NOMINMAX"] = True
-- DEFINES["NTDDI_VERSION"] = "0x0A000000"
-- DEFINES["PSAPI_VERSION"] = "2"
-- DEFINES["RTC_ENABLE_WIN_WGC"] = True
-- DEFINES["UNICODE"] = True
-- DEFINES["USE_AURA"] = "1"
-- DEFINES["WEBRTC_WIN"] = True
-- DEFINES["WIN32"] = True
-- DEFINES["WIN32_LEAN_AND_MEAN"] = True
-- DEFINES["WINAPI_FAMILY"] = "WINAPI_FAMILY_DESKTOP_APP"
-- DEFINES["WINVER"] = "0x0A00"
-- DEFINES["_ATL_NO_OPENGL"] = True
-- DEFINES["_CRT_NONSTDC_NO_WARNINGS"] = True
-- DEFINES["_CRT_RAND_S"] = True
-- DEFINES["_CRT_SECURE_NO_DEPRECATE"] = True
-- DEFINES["_ENABLE_EXTENDED_ALIGNED_STORAGE"] = True
-- DEFINES["_HAS_EXCEPTIONS"] = "0"
-- DEFINES["_HAS_NODISCARD"] = True
-- DEFINES["_SCL_SECURE_NO_DEPRECATE"] = True
-- DEFINES["_SECURE_ATL"] = True
-- DEFINES["_UNICODE"] = True
-- DEFINES["_WIN32_WINNT"] = "0x0A00"
-- DEFINES["_WINDOWS"] = True
-- DEFINES["_WINSOCK_DEPRECATED_NO_WARNINGS"] = True
-- DEFINES["__STD_C"] = True
--
-- OS_LIBS += [
-- "crypt32",
-- "iphlpapi",
-- "secur32",
-- "winmm"
-- ]
-+ DEFINES["_DEBUG"] = True
-
- if CONFIG["TARGET_CPU"] == "aarch64":
-
-@@ -145,82 +64,21 @@ if CONFIG["TARGET_CPU"] == "aarch64":
- DEFINES["WEBRTC_HAS_NEON"] = True
- DEFINES["__ARM_NEON__"] = "1"
-
--if CONFIG["TARGET_CPU"] == "arm":
--
-- CXXFLAGS += [
-- "-mfpu=neon"
-- ]
--
-- DEFINES["WEBRTC_ARCH_ARM"] = True
-- DEFINES["WEBRTC_ARCH_ARM_V7"] = True
-- DEFINES["WEBRTC_HAS_NEON"] = True
--
--if CONFIG["TARGET_CPU"] == "loongarch64":
--
-- DEFINES["_GNU_SOURCE"] = True
--
- if CONFIG["TARGET_CPU"] == "mips32":
-
- DEFINES["MIPS32_LE"] = True
- DEFINES["MIPS_FPU_LE"] = True
-- DEFINES["_GNU_SOURCE"] = True
--
--if CONFIG["TARGET_CPU"] == "mips64":
--
-- DEFINES["_GNU_SOURCE"] = True
-
- if CONFIG["TARGET_CPU"] == "x86":
-
-- DEFINES["WEBRTC_ENABLE_AVX2"] = True
--
--if CONFIG["TARGET_CPU"] == "x86_64":
--
-- DEFINES["WEBRTC_ENABLE_AVX2"] = True
--
--if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "Android":
--
-- DEFINES["_DEBUG"] = True
--
--if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "Darwin":
--
-- DEFINES["_DEBUG"] = True
--
--if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "Linux":
--
-- DEFINES["_DEBUG"] = True
--
--if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "OpenBSD":
--
-- DEFINES["_DEBUG"] = True
--
--if CONFIG["MOZ_DEBUG"] == "1" and CONFIG["OS_TARGET"] == "WINNT":
--
-- DEFINES["_HAS_ITERATOR_DEBUGGING"] = "0"
--
--if CONFIG["OS_TARGET"] == "Android" and CONFIG["TARGET_CPU"] == "x86":
--
- CXXFLAGS += [
- "-msse2"
- ]
-
--if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "aarch64":
--
-- DEFINES["_GNU_SOURCE"] = True
--
--if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "arm":
--
-- DEFINES["_GNU_SOURCE"] = True
--
--if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "x86":
--
-- CXXFLAGS += [
-- "-msse2"
-- ]
--
-- DEFINES["_GNU_SOURCE"] = True
-+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
-
--if CONFIG["OS_TARGET"] == "Linux" and CONFIG["TARGET_CPU"] == "x86_64":
-+if CONFIG["TARGET_CPU"] == "x86_64":
-
-- DEFINES["_GNU_SOURCE"] = True
-+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
-
- Library("psnr_experiment_gn")
diff --git third_party/libwebrtc/rtc_base/experiments/quality_scaler_settings_gn/moz.build third_party/libwebrtc/rtc_base/experiments/quality_scaler_settings_gn/moz.build
index cd1690dc8997..4191b5e491e5 100644
--- third_party/libwebrtc/rtc_base/experiments/quality_scaler_settings_gn/moz.build
diff --git a/www/firefox/files/patch-python_sites_mach.txt b/www/firefox/files/patch-python_sites_mach.txt
index c551bb7abc1b..df7d5c593641 100644
--- a/www/firefox/files/patch-python_sites_mach.txt
+++ b/www/firefox/files/patch-python_sites_mach.txt
@@ -1,19 +1,19 @@
-commit 89784e00bea215965b7fa41635b3ddc5b6a0af38
+commit e761112160e961d952c2f943a8dca58d266e112a
Author: Christoph Moench-Tegeder <cmt@FreeBSD.org>
avoid problems with python modules in mach
diff --git python/sites/mach.txt python/sites/mach.txt
-index d5cdce88869a..6192acecf116 100644
+index d1f054b20871..7d48a3d1dad4 100644
--- python/sites/mach.txt
+++ python/sites/mach.txt
@@ -58,15 +58,15 @@ pth:xpcom/geckoprocesstypes_generator
pth:xpcom/idl-parser
# glean-sdk may not be installable if a wheel isn't available
# and it has to be built from source.
--pypi-optional:glean-sdk==68.0.1:telemetry will not be collected
+-pypi-optional:glean-sdk==70.2.0:telemetry will not be collected
-pypi-optional:orjson>=3.10:json operations will be slower in various tools
-+# pypi-optional:glean-sdk==68.0.1:telemetry will not be collected
++# pypi-optional:glean-sdk==70.2.0:telemetry will not be collected
+# pypi-optional:orjson>=3.10:json operations will be slower in various tools
# Mach gracefully handles the case where `psutil` is unavailable.
# We aren't (yet) able to pin packages in automation, so we have to
@@ -25,7 +25,7 @@ index d5cdce88869a..6192acecf116 100644
+# pypi-optional:psutil>=5.4.2:telemetry will be missing some data
+# pypi-optional:rtoml>=0.11.0:toml operations will be slower in various tools
+# pypi-optional:zstandard>=0.11.1,<=0.25.0:zstd archives will not be possible to extract
-+vendored:pyyaml:third_party/python/pyyaml/lib/
++vendored:pyyaml:third_party/python/pyyaml/lib/:faster native loading is disabled
vendored:third_party/python/ansicon
vendored:third_party/python/appdirs
vendored:third_party/python/async_timeout
diff --git a/www/firefox/files/patch-third__party_angle_angle__program__version__id__gn_moz.build b/www/firefox/files/patch-third__party_angle-freebsd
similarity index 95%
rename from www/firefox/files/patch-third__party_angle_angle__program__version__id__gn_moz.build
rename to www/firefox/files/patch-third__party_angle-freebsd
index 7ad7a9536a53..ccb1fabaeb35 100644
--- a/www/firefox/files/patch-third__party_angle_angle__program__version__id__gn_moz.build
+++ b/www/firefox/files/patch-third__party_angle-freebsd
@@ -1,8 +1,42 @@
-commit def8534bc849e5ede3f8afe6871a21335075696e
+commit dd6a6461150a5bf61f7071da1de220b7c5415de0
Author: Christoph Moench-Tegeder <cmt@FreeBSD.org>
ANGLEShader components for FreeBSD
+
+ including backfill to make debug build run
+diff --git third_party/angle/angle_common_gn/moz.build third_party/angle/angle_common_gn/moz.build
+index 7bd7d32284ae..ef4216a1e60c 100644
+--- third_party/angle/angle_common_gn/moz.build
++++ third_party/angle/angle_common_gn/moz.build
+@@ -136,6 +136,27 @@ if CONFIG["OS_TARGET"] == "Linux":
+ "/third_party/angle/src/common/system_utils_posix.cpp"
+ ]
+
++if CONFIG["OS_TARGET"] == "FreeBSD":
++
++ DEFINES["ANGLE_USE_VULKAN_DISPLAY"] = True
++ DEFINES["ANGLE_VULKAN_DISPLAY_MODE_HEADLESS"] = True
++ DEFINES["USE_GLIB"] = "1"
++ DEFINES["USE_OZONE"] = "1"
++ DEFINES["_FILE_OFFSET_BITS"] = "64"
++ DEFINES["_LARGEFILE64_SOURCE"] = True
++ DEFINES["_LARGEFILE_SOURCE"] = True
++ DEFINES["__STDC_CONSTANT_MACROS"] = True
++ DEFINES["__STDC_FORMAT_MACROS"] = True
++
++ OS_LIBS += [
++ "dl"
++ ]
++
++ UNIFIED_SOURCES += [
++ "/third_party/angle/src/common/system_utils_freebsd.cpp",
++ "/third_party/angle/src/common/system_utils_posix.cpp"
++ ]
++
+ if CONFIG["OS_TARGET"] == "OpenBSD":
+
+ DEFINES["EGL_NO_X11"] = True
diff --git third_party/angle/angle_program_version_id_gn/ANGLEShaderProgramVersion.h-22c710649c380411.rsp.in third_party/angle/angle_program_version_id_gn/ANGLEShaderProgramVersion.h-22c710649c380411.rsp.in
new file mode 100644
index 000000000000..65e792afa2f5
@@ -884,3 +918,55 @@ index bbd602444b05..33fd648848ec 100644
if CONFIG["OS_TARGET"] == "OpenBSD":
GeneratedFile(
+diff --git third_party/angle/src/common/system_utils_freebsd.cpp third_party/angle/src/common/system_utils_freebsd.cpp
+new file mode 100644
+index 000000000000..1b90b203cc7a
+--- /dev/null
++++ third_party/angle/src/common/system_utils_freebsd.cpp
+@@ -0,0 +1,46 @@
++//
++// Copyright 2015 The ANGLE Project Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style license that can be
++// found in the LICENSE file.
++//
++
++// system_utils_freebsd.cpp: Implementation of OS-specific functions for Linux
++
++#include "common/debug.h"
++#include "common/unsafe_buffers.h"
++#include "system_utils.h"
++
++#include <string.h>
++#include <sys/stat.h>
++#include <sys/time.h>
++#include <sys/types.h>
++#include <sys/sysctl.h>
++#include <unistd.h>
++
++#include <array>
++
++namespace angle
++{
++
++std::string GetExecutablePath()
++{
++ int mib[4] = {CTL_KERN, KERN_PROC, KERN_PROC_PATHNAME, -1};
++ char path[PATH_MAX + 1];
++ size_t path_len = sizeof(path);
++ if (sysctl(mib, 4, path, &path_len, nullptr, 0) < 0)
++ {
++ return "";
++ }
++ return path;
++}
++
++const char *GetSharedLibraryExtension()
++{
++ return "so";
++}
++
++void SetCurrentThreadName(const char *name)
++{
++ pthread_setname_np(pthread_self(), name);
++}
++} // namespace angle
diff --git a/www/firefox/files/patch-third__party_angle_angle__common__gn_moz.build b/www/firefox/files/patch-third__party_angle_angle__common__gn_moz.build
deleted file mode 100644
index 10a3af34763b..000000000000
--- a/www/firefox/files/patch-third__party_angle_angle__common__gn_moz.build
+++ /dev/null
@@ -1,36 +0,0 @@
-commit 06b2489a8a44a6f3f7bf4c523689a78e78b52c83
-Author: Christoph Moench-Tegeder <cmt@FreeBSD.org>
-
- angle build target for FreeBSD
-
-diff --git third_party/angle/angle_common_gn/moz.build third_party/angle/angle_common_gn/moz.build
-index e3220891a415..b39166f60958 100644
---- third_party/angle/angle_common_gn/moz.build
-+++ third_party/angle/angle_common_gn/moz.build
-@@ -134,6 +134,26 @@ if CONFIG["OS_TARGET"] == "Linux":
- "/third_party/angle/src/common/system_utils_posix.cpp"
- ]
-
-+if CONFIG["OS_TARGET"] == "FreeBSD":
-+
-+ DEFINES["ANGLE_USE_VULKAN_DISPLAY"] = True
-+ DEFINES["ANGLE_VULKAN_DISPLAY_MODE_HEADLESS"] = True
-+ DEFINES["USE_GLIB"] = "1"
-+ DEFINES["USE_OZONE"] = "1"
-+ DEFINES["_FILE_OFFSET_BITS"] = "64"
-+ DEFINES["_LARGEFILE64_SOURCE"] = True
-+ DEFINES["_LARGEFILE_SOURCE"] = True
-+ DEFINES["__STDC_CONSTANT_MACROS"] = True
-+ DEFINES["__STDC_FORMAT_MACROS"] = True
-+
-+ OS_LIBS += [
-+ "dl"
-+ ]
-+
-+ UNIFIED_SOURCES += [
-+ "/third_party/angle/src/common/system_utils_posix.cpp"
-+ ]
-+
- if CONFIG["OS_TARGET"] == "OpenBSD":
-
- DEFINES["USE_GLIB"] = "1"