pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/mail/thunderbird



Module Name:    pkgsrc
Committed By:   ryoon
Date:           Wed Dec 24 16:47:38 UTC 2025

Modified Files:
        pkgsrc/mail/thunderbird: Makefile distinfo mozilla-common.mk
        pkgsrc/mail/thunderbird/patches: patch-browser_app_profile_firefox.js
            patch-third__party_libwebrtc_modules_audio__device_audio__device__impl.cc
            patch-third__party_libwebrtc_modules_video__capture_linux_video__capture__v4l2.cc
Added Files:
        pkgsrc/mail/thunderbird/patches: patch-build_gn__processor.py
            patch-memory_build_mozjemalloc__types.h
            patch-third__party_libwebrtc_modules_portal_portal__gn_moz.build
            patch-third__party_libwebrtc_modules_video__capture_video__capture__internal__impl__gn_moz.build
            patch-third__party_libwebrtc_modules_video__capture_video__capture__options.cc
            patch-third__party_libwebrtc_rtc__base_platform__thread__types.cc
Removed Files:
        pkgsrc/mail/thunderbird/patches:
            patch-third__party_libwebrtc_modules_video__capture_linux_device__info__v4l2.cc

Log Message:
mail/thunderbird: Update to 146.0.1

Changelog:
146.0.1:
What's Fixed

fixed
Reverted fix that localized consistent special folder names in server's language

146.0:
What's New

new
Enabled configuration of preferred OpenPGP keyserver via the UI

What's Changed

changed
Existing logins are migrated to make use of more modern AES cryptography

What's Fixed

fixed
Memory was not cleaned up after opening New Window from folder pane context
menu

fixed
Thunderbird could crash in server subscription logic

fixed
Importing a vCard only displayed VCF files in the file picker

fixed
Could not distinguish folders with same name in 'Recent Destinations' and
'Favorites'

fixed
Could not compose new message if the folder pane was empty

fixed
'Delete' was missing from context menu when multiple IMAP folders were selected

fixed
'Delete' button in unified toolbar could delete attachments instead of message

fixed
Servers lacking localization showed special folder names in server??s language

fixed
'Recent destinations' submenu was not sorted by time of modification

fixed
Account column could display incorrect account name

fixed
'Tag' submenu of mail context menu could be populated incorrectly

fixed
Extending the expiration date of OpenPGP key set incorrect date

fixed
Could not sign/encrypt (PGP) when using -compose and Thunderbird was not
running

fixed
Account Hub email success messages were not always accurate about config source

fixed
Account Hub advanced config setup did not include default outgoing config

fixed
Account Hub local address book creation could continue with blank name

fixed
Detailed security exception dialog was not shown when adding certificate
exception

fixed
The default account could be reset after restart if uninitialized

fixed
Opening a vCard (.vcf) from file manager or CLI did not work in some cases

fixed
Dragging attachments on macOS to folder or desktop no longer worked

fixed
EWS folder properties "Select this folder for offline use" did not work

fixed
Thunderbird could crash when mail folder was renamed or moved

fixed
Account Hub could fail when manually creating EWS account

fixed
'Offline' folder flag for EWS folders was reset on restart

fixed
'Open with' of Microsoft Office attachment did not mark file with MOTW label

fixed
Visual and UX improvements

fixed
Security fixes

Security fixes:
Mozilla Foundation Security Advisory 2025-95
#CVE-2025-14321: Use-after-free in the WebRTC: Signaling component
#CVE-2025-14322: Sandbox escape due to incorrect boundary conditions in the
 Graphics: CanvasWebGL component
#CVE-2025-14323: Privilege escalation in the DOM: Notifications component
#CVE-2025-14324: JIT miscompilation in the JavaScript Engine: JIT component
#CVE-2025-14325: JIT miscompilation in the JavaScript Engine: JIT component
#CVE-2025-14326: Use-after-free in the Audio/Video: GMP component
#CVE-2025-14327: Spoofing issue in the Downloads Panel component
#CVE-2025-14328: Privilege escalation in the Netmonitor component
#CVE-2025-14329: Privilege escalation in the Netmonitor component
#CVE-2025-14330: JIT miscompilation in the JavaScript Engine: JIT component
#CVE-2025-14331: Same-origin policy bypass in the Request Handling component
#CVE-2025-14332: Memory safety bugs fixed in Firefox 146 and Thunderbird 146
#CVE-2025-14333: Memory safety bugs fixed in Firefox ESR 140.6, Thunderbird ESR
 140.6, Firefox 146 and Thunderbird 146


To generate a diff of this commit:
cvs rdiff -u -r1.354 -r1.355 pkgsrc/mail/thunderbird/Makefile
cvs rdiff -u -r1.291 -r1.292 pkgsrc/mail/thunderbird/distinfo
cvs rdiff -u -r1.24 -r1.25 pkgsrc/mail/thunderbird/mozilla-common.mk
cvs rdiff -u -r1.6 -r1.7 \
    pkgsrc/mail/thunderbird/patches/patch-browser_app_profile_firefox.js
cvs rdiff -u -r0 -r1.1 \
    pkgsrc/mail/thunderbird/patches/patch-build_gn__processor.py \
    pkgsrc/mail/thunderbird/patches/patch-memory_build_mozjemalloc__types.h \
    pkgsrc/mail/thunderbird/patches/patch-third__party_libwebrtc_modules_portal_portal__gn_moz.build \
    pkgsrc/mail/thunderbird/patches/patch-third__party_libwebrtc_modules_video__capture_video__capture__internal__impl__gn_moz.build \
    pkgsrc/mail/thunderbird/patches/patch-third__party_libwebrtc_modules_video__capture_video__capture__options.cc \
    pkgsrc/mail/thunderbird/patches/patch-third__party_libwebrtc_rtc__base_platform__thread__types.cc
cvs rdiff -u -r1.1 -r1.2 \
    pkgsrc/mail/thunderbird/patches/patch-third__party_libwebrtc_modules_audio__device_audio__device__impl.cc
cvs rdiff -u -r1.3 -r0 \
    pkgsrc/mail/thunderbird/patches/patch-third__party_libwebrtc_modules_video__capture_linux_device__info__v4l2.cc
cvs rdiff -u -r1.2 -r1.3 \
    pkgsrc/mail/thunderbird/patches/patch-third__party_libwebrtc_modules_video__capture_linux_video__capture__v4l2.cc

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/mail/thunderbird/Makefile
diff -u pkgsrc/mail/thunderbird/Makefile:1.354 pkgsrc/mail/thunderbird/Makefile:1.355
--- pkgsrc/mail/thunderbird/Makefile:1.354      Mon Dec 22 06:08:09 2025
+++ pkgsrc/mail/thunderbird/Makefile    Wed Dec 24 16:47:38 2025
@@ -1,9 +1,8 @@
-# $NetBSD: Makefile,v 1.354 2025/12/22 06:08:09 adam Exp $
+# $NetBSD: Makefile,v 1.355 2025/12/24 16:47:38 ryoon Exp $
 
 DISTNAME=      thunderbird-${TB_VER}.source
 PKGNAME=       thunderbird-${TB_VER:S/esr//}
-TB_VER=                145.0
-PKGREVISION=   2
+TB_VER=                146.0.1
 CATEGORIES=    mail
 MASTER_SITES=  ${MASTER_SITE_MOZILLA:=thunderbird/releases/${TB_VER}/source/}
 EXTRACT_SUFX=  .tar.xz

Index: pkgsrc/mail/thunderbird/distinfo
diff -u pkgsrc/mail/thunderbird/distinfo:1.291 pkgsrc/mail/thunderbird/distinfo:1.292
--- pkgsrc/mail/thunderbird/distinfo:1.291      Fri Nov 28 14:47:05 2025
+++ pkgsrc/mail/thunderbird/distinfo    Wed Dec 24 16:47:38 2025
@@ -1,9 +1,10 @@
-$NetBSD: distinfo,v 1.291 2025/11/28 14:47:05 ryoon Exp $
+$NetBSD: distinfo,v 1.292 2025/12/24 16:47:38 ryoon Exp $
 
-BLAKE2s (thunderbird-145.0.source.tar.xz) = 88880f965a7105fb87e159f77ad613af79c59dc343a69606b3bb23caf78e949b
-SHA512 (thunderbird-145.0.source.tar.xz) = f33835e4d740b32d072ac915124d988ef9d4cbe55d7c972c817991d19b64e8bc95b75b503ad3cb9abf4fd1d220fc7cb61720ea84dc49482faa13da1690d7d80e
-Size (thunderbird-145.0.source.tar.xz) = 782126204 bytes
-SHA1 (patch-browser_app_profile_firefox.js) = bc719edef37d18655ba79b030270438ee166fdaf
+BLAKE2s (thunderbird-146.0.1.source.tar.xz) = 9c03c8ae25c3313ae889578cd780265f0f2b00d5c9db436d50f07874825c6dac
+SHA512 (thunderbird-146.0.1.source.tar.xz) = 8a3b2de246c7c597574fce596836c7ef7b24bd21573feb15c308003f34b82335ad865aa0f81b24d1669c8023c0448c0e273a63019aab13356b023c2e8adc2c47
+Size (thunderbird-146.0.1.source.tar.xz) = 781793608 bytes
+SHA1 (patch-browser_app_profile_firefox.js) = 1eaa674c0aa8279e2f9dc2eda582650a08156d65
+SHA1 (patch-build_gn__processor.py) = 078f773104bf4c1b30584564aefe365db6ba6daf
 SHA1 (patch-build_moz.configure_init.configure) = 65deb3c233df0aab81eb1fca05d708e5a4ed169a
 SHA1 (patch-build_moz.configure_rust.configure) = 25ddfacd29cebbc6db005dbe61a2a7446d480678
 SHA1 (patch-comm_mailnews_compose_src_nsMsgCompUtils.cpp) = c3e38828803536879baf2934aa1bfa50cfba0112
@@ -33,6 +34,7 @@ SHA1 (patch-js_src_util_NativeStack.cpp)
 SHA1 (patch-js_src_vm_TypedArrayObject-inl.h) = e7913c8d4b2b05b67040baa64dae62d6ba40390e
 SHA1 (patch-media_ffvpx_libavutil_arm_bswap.h) = 019677e249e744baea857ca17ef69d977f43b3a4
 SHA1 (patch-media_libpng_pngpriv.h) = 8320a1f7534ed5c4914b597bb3d6117d0060318f
+SHA1 (patch-memory_build_mozjemalloc__types.h) = af87ef935653cb845a6b702af2f5645a6ada27db
 SHA1 (patch-modules_fdlibm_src_math__private.h) = e20b6c23011d7123cbbd64a500eb8ce8c426620e
 SHA1 (patch-netwerk_protocol_http_nsHttpHandler.cpp) = 67493b4635041d21ff9fbfda80b3197fed542a26
 SHA1 (patch-nsprpub_pr_src_pthreads_ptsynch.c) = 753fd4d62088c870aefe7c4b739286259848446e
@@ -41,13 +43,16 @@ SHA1 (patch-security_nss_lib_freebl_mpi_
 SHA1 (patch-third__party_abseil-cpp_absl_debugging_internal_elf__mem__image.cc) = cc68e46f1b98bbcc064a4c61fc96a3c7ede8e6ba
 SHA1 (patch-third__party_abseil-cpp_absl_debugging_internal_vdso__support.cc) = f9c44d0d6fd952296f23c24f56053958b30d8e5c
 SHA1 (patch-third__party_js_cfworker_build.sh) = 46cdf97b99cf01080f290ae8d9a33b5f869fc3e4
-SHA1 (patch-third__party_libwebrtc_modules_audio__device_audio__device__impl.cc) = 927532138175f99f96433d24060f65a2a919d2d1
+SHA1 (patch-third__party_libwebrtc_modules_audio__device_audio__device__impl.cc) = 127284a1a9b6e12581d325f5a5aadae443b0e57b
 SHA1 (patch-third__party_libwebrtc_modules_desktop__capture_desktop__capture__gn_moz.build) = f53af8e5383f31b5de7df21f80eb53d60c11eae1
 SHA1 (patch-third__party_libwebrtc_modules_desktop__capture_linux_wayland_egl__dmabuf.cc) = 89f8f8eb5dcb877e0c70120f742050f1b32676fb
-SHA1 (patch-third__party_libwebrtc_modules_video__capture_linux_device__info__v4l2.cc) = 4cb0e1c88dc83370024ed1aac7f75445b9f98df8
-SHA1 (patch-third__party_libwebrtc_modules_video__capture_linux_video__capture__v4l2.cc) = 8111952a107eb2cd665525ddd0e27c79eee3c1cd
+SHA1 (patch-third__party_libwebrtc_modules_portal_portal__gn_moz.build) = 9a1ad764d5df7e19da8d370edf12f7ae07e4c8e3
+SHA1 (patch-third__party_libwebrtc_modules_video__capture_linux_video__capture__v4l2.cc) = 9f1e606242b2ab2625dabc06f25b593f4721d387
+SHA1 (patch-third__party_libwebrtc_modules_video__capture_video__capture__internal__impl__gn_moz.build) = 2a214979769cbf57b1d534610e524138aac7fc2b
+SHA1 (patch-third__party_libwebrtc_modules_video__capture_video__capture__options.cc) = e15f7e365ef6d57cd262f920f49c4d73f3a13305
 SHA1 (patch-third__party_libwebrtc_rtc__base_memory__usage.cc) = a831145ba15b30d30c6e6e216b574d416253ed4a
 SHA1 (patch-third__party_libwebrtc_rtc__base_physical__socket__server.cc) = 6909c4da9e7b3785252e5bce9be0ff47ebb87e01
+SHA1 (patch-third__party_libwebrtc_rtc__base_platform__thread__types.cc) = 8ae75100775037347008d168eedc151e0e993b0f
 SHA1 (patch-third__party_python_dlmanager_check.py) = 69054522d8ced8cb47e65e5a8b1a87ed5ce6708e
 SHA1 (patch-third__party_sqlite3_ext_moz.build) = 53248ac4ba98983362b173d7644f1001f5127b3c
 SHA1 (patch-third__party_sqlite3_src_moz.build) = b26856a4b87aa12211575d9982f62dc899474b52

Index: pkgsrc/mail/thunderbird/mozilla-common.mk
diff -u pkgsrc/mail/thunderbird/mozilla-common.mk:1.24 pkgsrc/mail/thunderbird/mozilla-common.mk:1.25
--- pkgsrc/mail/thunderbird/mozilla-common.mk:1.24      Sat Nov 22 01:07:07 2025
+++ pkgsrc/mail/thunderbird/mozilla-common.mk   Wed Dec 24 16:47:38 2025
@@ -1,4 +1,4 @@
-# $NetBSD: mozilla-common.mk,v 1.24 2025/11/22 01:07:07 ryoon Exp $
+# $NetBSD: mozilla-common.mk,v 1.25 2025/12/24 16:47:38 ryoon Exp $
 #
 # common Makefile fragment for mozilla packages based on gecko 2.0.
 #
@@ -266,7 +266,7 @@ RUST_REQ=   1.82.0
 # TODO: check again, pkgsrc has hunspell 1.7
 # was: textproc/hunspell 1.3 is too old
 #.include "../../textproc/hunspell/buildlink3.mk"
-.include "../../multimedia/ffmpeg7/buildlink3.mk"
+.include "../../multimedia/ffmpeg8/buildlink3.mk"
 .include "../../x11/libXt/buildlink3.mk"
 .include "../../x11/libXtst/buildlink3.mk"
 BUILDLINK_API_DEPENDS.pixman+= pixman>=0.40

Index: pkgsrc/mail/thunderbird/patches/patch-browser_app_profile_firefox.js
diff -u pkgsrc/mail/thunderbird/patches/patch-browser_app_profile_firefox.js:1.6 pkgsrc/mail/thunderbird/patches/patch-browser_app_profile_firefox.js:1.7
--- pkgsrc/mail/thunderbird/patches/patch-browser_app_profile_firefox.js:1.6    Wed Apr 30 03:47:13 2025
+++ pkgsrc/mail/thunderbird/patches/patch-browser_app_profile_firefox.js        Wed Dec 24 16:47:38 2025
@@ -1,11 +1,11 @@
-$NetBSD: patch-browser_app_profile_firefox.js,v 1.6 2025/04/30 03:47:13 ryoon Exp $
+$NetBSD: patch-browser_app_profile_firefox.js,v 1.7 2025/12/24 16:47:38 ryoon Exp $
 
 This patch modifies default Firefox settings - see the comments above
 each one.
 
---- browser/app/profile/firefox.js.orig        2024-03-08 13:19:26.000000000 +0000
+--- browser/app/profile/firefox.js.orig        2025-10-03 13:17:55.000000000 +0000
 +++ browser/app/profile/firefox.js
-@@ -2461,6 +2461,39 @@ pref("app.normandy.onsync_skew_sec", 600
+@@ -2842,6 +2842,39 @@ pref("app.normandy.onsync_skew_sec", 600
  pref("toolkit.coverage.enabled", false);
  pref("toolkit.coverage.endpoint.base", "https://coverage.mozilla.org";);
  

Index: pkgsrc/mail/thunderbird/patches/patch-third__party_libwebrtc_modules_audio__device_audio__device__impl.cc
diff -u pkgsrc/mail/thunderbird/patches/patch-third__party_libwebrtc_modules_audio__device_audio__device__impl.cc:1.1 
pkgsrc/mail/thunderbird/patches/patch-third__party_libwebrtc_modules_audio__device_audio__device__impl.cc:1.2
--- pkgsrc/mail/thunderbird/patches/patch-third__party_libwebrtc_modules_audio__device_audio__device__impl.cc:1.1       Tue Nov  4 17:24:34 2025
+++ pkgsrc/mail/thunderbird/patches/patch-third__party_libwebrtc_modules_audio__device_audio__device__impl.cc   Wed Dec 24 16:47:38 2025
@@ -1,17 +1,17 @@
-$NetBSD: patch-third__party_libwebrtc_modules_audio__device_audio__device__impl.cc,v 1.1 2025/11/04 17:24:34 ryoon Exp $
+$NetBSD: patch-third__party_libwebrtc_modules_audio__device_audio__device__impl.cc,v 1.2 2025/12/24 16:47:38 ryoon Exp $
 
---- third_party/libwebrtc/modules/audio_device/audio_device_impl.cc.orig       2025-10-03 13:18:12.000000000 +0000
+--- third_party/libwebrtc/modules/audio_device/audio_device_impl.cc.orig       2025-11-28 13:14:41.000000000 +0000
 +++ third_party/libwebrtc/modules/audio_device/audio_device_impl.cc
-@@ -33,7 +33,7 @@
- #if defined(WEBRTC_WINDOWS_CORE_AUDIO_BUILD)
+@@ -28,7 +28,7 @@
+ 
+ #if defined(WEBRTC_WIN)
  #include "modules/audio_device/win/audio_device_core_win.h"
- #endif
 -#elif defined(WEBRTC_LINUX)
 +#elif defined(WEBRTC_LINUX) || defined(WEBRTC_BSD)
  #if defined(WEBRTC_ENABLE_LINUX_ALSA)
  #include "modules/audio_device/linux/audio_device_alsa_linux.h"
  #endif
-@@ -151,6 +151,11 @@ int32_t AudioDeviceModuleImpl::CheckPlat
+@@ -146,6 +146,11 @@ int32_t AudioDeviceModuleImpl::CheckPlat
  #elif defined(WEBRTC_FUCHSIA)
    platform = kPlatformFuchsia;
    RTC_LOG(LS_INFO) << "current platform is Fuchsia";
@@ -23,7 +23,7 @@ $NetBSD: patch-third__party_libwebrtc_mo
  #endif
    if (platform == kPlatformNotSupported) {
      RTC_LOG(LS_ERROR)
-@@ -204,7 +209,7 @@ int32_t AudioDeviceModuleImpl::CreatePla
+@@ -199,7 +204,7 @@ int32_t AudioDeviceModuleImpl::CreatePla
  // 'rtc_include_pulse_audio' build flag.
  // TODO(bugs.webrtc.org/9127): improve support and make it more clear that
  // PulseAudio is the default selection.

Index: pkgsrc/mail/thunderbird/patches/patch-third__party_libwebrtc_modules_video__capture_linux_video__capture__v4l2.cc
diff -u pkgsrc/mail/thunderbird/patches/patch-third__party_libwebrtc_modules_video__capture_linux_video__capture__v4l2.cc:1.2 
pkgsrc/mail/thunderbird/patches/patch-third__party_libwebrtc_modules_video__capture_linux_video__capture__v4l2.cc:1.3
--- pkgsrc/mail/thunderbird/patches/patch-third__party_libwebrtc_modules_video__capture_linux_video__capture__v4l2.cc:1.2       Wed Apr 30 03:47:13 2025
+++ pkgsrc/mail/thunderbird/patches/patch-third__party_libwebrtc_modules_video__capture_linux_video__capture__v4l2.cc   Wed Dec 24 16:47:38 2025
@@ -1,11 +1,14 @@
-$NetBSD: patch-third__party_libwebrtc_modules_video__capture_linux_video__capture__v4l2.cc,v 1.2 2025/04/30 03:47:13 ryoon Exp $
+$NetBSD: patch-third__party_libwebrtc_modules_video__capture_linux_video__capture__v4l2.cc,v 1.3 2025/12/24 16:47:38 ryoon Exp $
 
 * Fix build under NetBSD 9 and older.
   The older NetBSD's sys/videoio.h does not have v4l2_capability.device_caps.
+* On NetBSD, some uvideo(4) devices are not usable. They returns
+  fmt.pixelformat as zero from VIDIOC_ENUM_FMT. Exclude unsupported devices
+  in early stage.
 
---- third_party/libwebrtc/modules/video_capture/linux/video_capture_v4l2.cc.orig       2022-10-06 21:19:29.000000000 +0000
+--- third_party/libwebrtc/modules/video_capture/linux/video_capture_v4l2.cc.orig       2025-12-05 17:43:20.000000000 +0000
 +++ third_party/libwebrtc/modules/video_capture/linux/video_capture_v4l2.cc
-@@ -77,6 +77,7 @@ int32_t VideoCaptureModuleV4L2::Init(con
+@@ -90,18 +90,28 @@ int32_t VideoCaptureModuleV4L2::Init(con
      if ((fd = open(device, O_RDONLY)) != -1) {
        // query device capabilities
        struct v4l2_capability cap;
@@ -13,7 +16,23 @@ $NetBSD: patch-third__party_libwebrtc_mo
        if (ioctl(fd, VIDIOC_QUERYCAP, &cap) == 0) {
          if (cap.bus_info[0] != 0) {
            if (strncmp((const char*)cap.bus_info,
-@@ -89,6 +90,7 @@ int32_t VideoCaptureModuleV4L2::Init(con
+                       (const char*)deviceUniqueIdUTF8,
+                       strlen((const char*)deviceUniqueIdUTF8)) ==
+               0) {  // match with device id
+-            close(fd);
+-            found = true;
+-            break;  // fd matches with device unique id supplied
++            struct v4l2_fmtdesc fmt;
++            memset(&fmt, 0, sizeof(fmt));
++            fmt.index = 0;
++            fmt.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
++            if (ioctl(fd, VIDIOC_ENUM_FMT, &fmt) == 0) {
++              if (fmt.pixelformat != 0) {
++                close(fd);
++                found = true;
++                break;  // fd matches with device unique id supplied
++              }
++            }
            }
          }
        }

Added files:

Index: pkgsrc/mail/thunderbird/patches/patch-build_gn__processor.py
diff -u /dev/null pkgsrc/mail/thunderbird/patches/patch-build_gn__processor.py:1.1
--- /dev/null   Wed Dec 24 16:47:38 2025
+++ pkgsrc/mail/thunderbird/patches/patch-build_gn__processor.py        Wed Dec 24 16:47:38 2025
@@ -0,0 +1,46 @@
+$NetBSD: patch-build_gn__processor.py,v 1.1 2025/12/24 16:47:38 ryoon Exp $
+
+--- build/gn_processor.py.orig 2025-10-03 13:17:56.000000000 +0000
++++ build/gn_processor.py
+@@ -190,6 +190,8 @@ def filter_gn_config(path, gn_result, sa
+         "mac": "Darwin",
+         "openbsd": "OpenBSD",
+         "win": "WINNT",
++        "freebsd": "FreeBSD",
++        "netbsd": "NetBSD",
+     }
+ 
+     mozbuild_args = {
+@@ -810,17 +812,17 @@ def main():
+ 
+     vars_set = []
+     for is_debug in (True, False):
+-        for target_os in ("android", "linux", "mac", "openbsd", "win"):
++        for target_os in ("android", "linux", "mac", "openbsd", "win", "freebsd", "netbsd"):
+             target_cpus = ["x64"]
+-            if target_os in ("android", "linux", "mac", "win", "openbsd"):
++            if target_os in ("android", "linux", "mac", "win", "openbsd", "freebsd", "netbsd"):
+                 target_cpus.append("arm64")
+-            if target_os in ("android", "linux"):
++            if target_os in ("android", "linux", "freebsd", "netbsd"):
+                 target_cpus.append("arm")
+-            if target_os in ("android", "linux", "win"):
++            if target_os in ("android", "linux", "win", "freebsd", "netbsd"):
+                 target_cpus.append("x86")
+-            if target_os in ("linux", "openbsd"):
++            if target_os in ("linux", "openbsd", "freebsd", "netbsd"):
+                 target_cpus.append("riscv64")
+-            if target_os == "linux":
++            if target_os in ("linux", "openbsd", "freebsd", "netbsd"):
+                 target_cpus.extend(["loong64", "ppc64", "mipsel", "mips64el"])
+             for target_cpu in target_cpus:
+                 vars = {
+@@ -834,7 +836,7 @@ def main():
+                         vars["ozone_platform_x11"] = enable_x11
+                         vars_set.append(vars.copy())
+                 else:
+-                    if target_os == "openbsd":
++                    if target_os in ("openbsd", "freebsd", "netbsd"):
+                         vars["ozone_platform_x11"] = True
+                     vars_set.append(vars)
+ 
Index: pkgsrc/mail/thunderbird/patches/patch-memory_build_mozjemalloc__types.h
diff -u /dev/null pkgsrc/mail/thunderbird/patches/patch-memory_build_mozjemalloc__types.h:1.1
--- /dev/null   Wed Dec 24 16:47:38 2025
+++ pkgsrc/mail/thunderbird/patches/patch-memory_build_mozjemalloc__types.h     Wed Dec 24 16:47:38 2025
@@ -0,0 +1,23 @@
+$NetBSD: patch-memory_build_mozjemalloc__types.h,v 1.1 2025/12/24 16:47:38 ryoon Exp $
+
+* Try to fix build with mozilla-jemalloc option.
+
+--- memory/build/mozjemalloc_types.h.orig      2025-10-09 16:40:29.000000000 +0000
++++ memory/build/mozjemalloc_types.h
+@@ -50,11 +50,13 @@
+ extern "C" {
+ #endif
+ 
+-#ifndef MALLOC_USABLE_SIZE_CONST_PTR
+-#  define MALLOC_USABLE_SIZE_CONST_PTR const
++#ifdef MALLOC_USABLE_SIZE_CONST_PTR
++#  define MALLOC_USABLE_SIZE_CONST_PTR_CONST const
++#else
++#  define MALLOC_USABLE_SIZE_CONST_PTR_CONST
+ #endif
+ 
+-typedef MALLOC_USABLE_SIZE_CONST_PTR void* usable_ptr_t;
++typedef MALLOC_USABLE_SIZE_CONST_PTR_CONST void* usable_ptr_t;
+ 
+ typedef size_t arena_id_t;
+ 
Index: pkgsrc/mail/thunderbird/patches/patch-third__party_libwebrtc_modules_portal_portal__gn_moz.build
diff -u /dev/null pkgsrc/mail/thunderbird/patches/patch-third__party_libwebrtc_modules_portal_portal__gn_moz.build:1.1
--- /dev/null   Wed Dec 24 16:47:38 2025
+++ pkgsrc/mail/thunderbird/patches/patch-third__party_libwebrtc_modules_portal_portal__gn_moz.build    Wed Dec 24 16:47:38 2025
@@ -0,0 +1,29 @@
+$NetBSD: patch-third__party_libwebrtc_modules_portal_portal__gn_moz.build,v 1.1 2025/12/24 16:47:38 ryoon Exp $
+
+--- third_party/libwebrtc/modules/portal/portal_gn/moz.build.orig      2025-12-02 15:14:25.832556602 +0000
++++ third_party/libwebrtc/modules/portal/portal_gn/moz.build
+@@ -41,7 +41,8 @@ DEFINES["WEBRTC_MOZILLA_BUILD"] = True
+ DEFINES["WEBRTC_NON_STATIC_TRACE_EVENT_HANDLERS"] = "0"
+ DEFINES["WEBRTC_POSIX"] = True
+ DEFINES["WEBRTC_STRICT_FIELD_TRIALS"] = "0"
+-DEFINES["WEBRTC_USE_PIPEWIRE"] = True
++if CONFIG["OS_TARGET"] == "Linux":
++    DEFINES["WEBRTC_USE_PIPEWIRE"] = True
+ DEFINES["_FILE_OFFSET_BITS"] = "64"
+ DEFINES["_GLIBCXX_ASSERTIONS"] = "1"
+ DEFINES["_GNU_SOURCE"] = True
+@@ -67,10 +68,13 @@ LOCAL_INCLUDES += [
+ ]
+ 
+ UNIFIED_SOURCES += [
+-    "/third_party/libwebrtc/modules/portal/pipewire_utils.cc",
+     "/third_party/libwebrtc/modules/portal/scoped_glib.cc",
+     "/third_party/libwebrtc/modules/portal/xdg_desktop_portal_utils.cc"
+ ]
++if CONFIG["OS_TARGET"] == "Linux":
++    UNIFIED_SOURCES += [
++        "/third_party/libwebrtc/modules/portal/pipewire_utils.cc"
++    ]
+ 
+ if not CONFIG["MOZ_DEBUG"]:
+ 
Index: pkgsrc/mail/thunderbird/patches/patch-third__party_libwebrtc_modules_video__capture_video__capture__internal__impl__gn_moz.build
diff -u /dev/null pkgsrc/mail/thunderbird/patches/patch-third__party_libwebrtc_modules_video__capture_video__capture__internal__impl__gn_moz.build:1.1
--- /dev/null   Wed Dec 24 16:47:38 2025
+++ pkgsrc/mail/thunderbird/patches/patch-third__party_libwebrtc_modules_video__capture_video__capture__internal__impl__gn_moz.build    Wed Dec 24 16:47:38 2025
@@ -0,0 +1,40 @@
+$NetBSD: patch-third__party_libwebrtc_modules_video__capture_video__capture__internal__impl__gn_moz.build,v 1.1 2025/12/24 16:47:38 ryoon Exp $
+
+--- third_party/libwebrtc/modules/video_capture/video_capture_internal_impl_gn/moz.build.orig  2025-12-02 15:13:29.385557469 +0000
++++ third_party/libwebrtc/modules/video_capture/video_capture_internal_impl_gn/moz.build
+@@ -282,7 +282,7 @@ if CONFIG["OS_TARGET"] == "Android" and 
+         "-msse2"
+     ]
+ 
+-if CONFIG["TARGET_CPU"] == "aarch64" and (CONFIG["OS_TARGET"] == "Linux" or CONFIG["OS_TARGET"] == "NetBSD" or CONFIG["OS_TARGET"] == "OpenBSD" or CONFIG["OS_TARGET"] == "FreeBSD"):
++if CONFIG["TARGET_CPU"] == "aarch64" and CONFIG["OS_TARGET"] == "Linux":
+ 
+     DEFINES["WEBRTC_USE_PIPEWIRE"] = True
+     DEFINES["_GNU_SOURCE"] = True
+@@ -299,7 +299,7 @@ if CONFIG["TARGET_CPU"] == "aarch64" and
+         "/third_party/libwebrtc/modules/video_capture/linux/video_capture_pipewire.cc"
+     ]
+ 
+-if CONFIG["TARGET_CPU"] == "arm" and (CONFIG["OS_TARGET"] == "Linux" or CONFIG["OS_TARGET"] == "NetBSD" or CONFIG["OS_TARGET"] == "OpenBSD" or CONFIG["OS_TARGET"] == "FreeBSD"):
++if CONFIG["TARGET_CPU"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+ 
+     DEFINES["WEBRTC_USE_PIPEWIRE"] = True
+     DEFINES["_GNU_SOURCE"] = True
+@@ -316,7 +316,7 @@ if CONFIG["TARGET_CPU"] == "arm" and (CO
+         "/third_party/libwebrtc/modules/video_capture/linux/video_capture_pipewire.cc"
+     ]
+ 
+-if CONFIG["TARGET_CPU"] == "x86" and (CONFIG["OS_TARGET"] == "Linux" or CONFIG["OS_TARGET"] == "NetBSD" or CONFIG["OS_TARGET"] == "OpenBSD" or CONFIG["OS_TARGET"] == "FreeBSD"):
++if CONFIG["TARGET_CPU"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+ 
+     CXXFLAGS += [
+         "-msse2"
+@@ -337,7 +337,7 @@ if CONFIG["TARGET_CPU"] == "x86" and (CO
+         "/third_party/libwebrtc/modules/video_capture/linux/video_capture_pipewire.cc"
+     ]
+ 
+-if CONFIG["TARGET_CPU"] == "x86_64" and (CONFIG["OS_TARGET"] == "Linux" or CONFIG["OS_TARGET"] == "NetBSD" or CONFIG["OS_TARGET"] == "OpenBSD" or CONFIG["OS_TARGET"] == "FreeBSD"):
++if CONFIG["TARGET_CPU"] == "x86_64" and CONFIG["OS_TARGET"] == "Linux":
+ 
+     DEFINES["WEBRTC_USE_PIPEWIRE"] = True
+     DEFINES["_GNU_SOURCE"] = True
Index: pkgsrc/mail/thunderbird/patches/patch-third__party_libwebrtc_modules_video__capture_video__capture__options.cc
diff -u /dev/null pkgsrc/mail/thunderbird/patches/patch-third__party_libwebrtc_modules_video__capture_video__capture__options.cc:1.1
--- /dev/null   Wed Dec 24 16:47:38 2025
+++ pkgsrc/mail/thunderbird/patches/patch-third__party_libwebrtc_modules_video__capture_video__capture__options.cc      Wed Dec 24 16:47:38 2025
@@ -0,0 +1,13 @@
+$NetBSD: patch-third__party_libwebrtc_modules_video__capture_video__capture__options.cc,v 1.1 2025/12/24 16:47:38 ryoon Exp $
+
+--- third_party/libwebrtc/modules/video_capture/video_capture_options.cc.orig  2025-05-21 12:41:53.782245708 +0000
++++ third_party/libwebrtc/modules/video_capture/video_capture_options.cc
+@@ -37,7 +37,7 @@ void VideoCaptureOptions::Init(Callback*
+     return;
+   }
+ #endif
+-#if defined(WEBRTC_LINUX)
++#if defined(WEBRTC_LINUX) || defined(WEBRTC_BSD)
+   if (!allow_v4l2_)
+     callback->OnInitialized(Status::UNAVAILABLE);
+   else
Index: pkgsrc/mail/thunderbird/patches/patch-third__party_libwebrtc_rtc__base_platform__thread__types.cc
diff -u /dev/null pkgsrc/mail/thunderbird/patches/patch-third__party_libwebrtc_rtc__base_platform__thread__types.cc:1.1
--- /dev/null   Wed Dec 24 16:47:38 2025
+++ pkgsrc/mail/thunderbird/patches/patch-third__party_libwebrtc_rtc__base_platform__thread__types.cc   Wed Dec 24 16:47:38 2025
@@ -0,0 +1,29 @@
+$NetBSD: patch-third__party_libwebrtc_rtc__base_platform__thread__types.cc,v 1.1 2025/12/24 16:47:38 ryoon Exp $
+
+--- third_party/libwebrtc/rtc_base/platform_thread_types.cc.orig       2025-05-21 12:30:11.564823191 +0000
++++ third_party/libwebrtc/rtc_base/platform_thread_types.cc
+@@ -71,7 +71,11 @@ bool IsThreadRefEqual(const PlatformThre
+ #if defined(WEBRTC_WIN) || defined(WEBRTC_FUCHSIA)
+   return a == b;
+ #elif defined(WEBRTC_POSIX)
++#  if defined(__NetBSD__)
++  return a == b;
++#  else
+   return pthread_equal(a, b);
++#  endif
+ #endif
+ }
+ 
+@@ -118,6 +122,12 @@ void SetCurrentThreadName(const char* na
+   prctl(PR_SET_NAME, reinterpret_cast<unsigned long>(name));  // NOLINT
+ #elif defined(WEBRTC_MAC) || defined(WEBRTC_IOS)
+   pthread_setname_np(name);
++#elif defined(WEBRTC_BSD)
++#  if defined(__NetBSD__)
++  pthread_setname_np(pthread_self(), "%s", const_cast<char *>(name));
++#  else
++  pthread_setname_np(pthread_self(), name);
++#  endif
+ #elif defined(WEBRTC_FUCHSIA)
+   zx_status_t status = zx_object_set_property(zx_thread_self(), ZX_PROP_NAME,
+                                               name, strlen(name));



Home | Main Index | Thread Index | Old Index