Pier Angelo Vendrame pushed to branch base-browser-146.0a1-16.0-2 at The Tor 
Project / Applications / Tor Browser


Commits:
5bfdfd0b by june wilde at 2025-12-11T12:13:24+01:00
fixup! BB 41459: WebRTC fails to build under mingw (Part 2)

- - - - -
e6e81938 by june wilde at 2025-12-11T12:13:25+01:00
fixup! BB 41459: WebRTC fails to build under mingw (Part 1)

- - - - -
f12904c2 by june wilde at 2025-12-11T12:13:25+01:00
fixup! BB 41459: WebRTC fails to build under mingw (Part 5)

- - - - -


6 changed files:

- build/moz.configure/windows.configure
- 
dom/media/webrtc/libwebrtc_overrides/modules/desktop_capture/desktop_capture_types.h
- third_party/libwebrtc/modules/desktop_capture/win/wgc_capture_session.cc
- third_party/libwebrtc/modules/desktop_capture/win/window_capture_utils.h
- third_party/libwebrtc/rtc_base/cpu_info.cc
- third_party/libwebrtc/rtc_base/win/create_direct3d_device.h


Changes:

=====================================
build/moz.configure/windows.configure
=====================================
@@ -624,12 +624,13 @@ with only_when(depends(c_compiler)(lambda c: c.type == 
"clang-cl")):
         add_linker_flag("-LARGEADDRESSAWARE")
         add_linker_flag("-SAFESEH")
 
-        # avoid conficts with std::min/max
-        set_define("NOMINMAX", True)
-
 
 set_define("WIN32_LEAN_AND_MEAN", True)
 
+with only_when(depends(c_compiler)(lambda c: c.type == "clang-cl")):
+    # See http://support.microsoft.com/kb/143208 to use STL
+    set_define("NOMINMAX", True)
+
 
 with only_when(target_is_windows & depends(c_compiler)(lambda c: c.type != 
"clang-cl")):
     # strsafe.h on mingw uses macros for function deprecation that pollutes 
namespace


=====================================
dom/media/webrtc/libwebrtc_overrides/modules/desktop_capture/desktop_capture_types.h
=====================================
@@ -7,11 +7,11 @@
 #ifndef 
DOM_MEDIA_WEBRTC_LIBWEBRTCOVERRIDES_MODULES_DESKTOP_CAPTURE_DESKTOP_CAPTURE_TYPES_H_
 #define 
DOM_MEDIA_WEBRTC_LIBWEBRTCOVERRIDES_MODULES_DESKTOP_CAPTURE_DESKTOP_CAPTURE_TYPES_H_
 
-// pid_t
-#if !defined(XP_WIN) || defined(__MINGW32__)
+#if defined(XP_WIN) && \
+  !defined(__MINGW32__) // Moving this into the global namespace
+typedef int pid_t;      // matching what used to be in
+#elif defined(XP_WIN)  // video_capture_defines.h
 #  include <sys/types.h>
-#else
-typedef int pid_t;
 #endif
 
 #include 
"../../third_party/libwebrtc/modules/desktop_capture/desktop_capture_types.h"


=====================================
third_party/libwebrtc/modules/desktop_capture/win/wgc_capture_session.cc
=====================================
@@ -13,6 +13,8 @@
 #include <dispatcherqueue.h>
 #include <windows.graphics.capture.interop.h>
 #include <windows.graphics.directx.direct3d11.interop.h>
+#include <windows.graphics.h>
+#include <wrl/client.h>
 #include <wrl/event.h>
 
 #include <algorithm>


=====================================
third_party/libwebrtc/modules/desktop_capture/win/window_capture_utils.h
=====================================
@@ -11,7 +11,7 @@
 #ifndef MODULES_DESKTOP_CAPTURE_WIN_WINDOW_CAPTURE_UTILS_H_
 #define MODULES_DESKTOP_CAPTURE_WIN_WINDOW_CAPTURE_UTILS_H_
 
-#include <shlobj_core.h>
+#include <shlobj.h>
 #include <windows.h>
 #include <wrl/client.h>
 


=====================================
third_party/libwebrtc/rtc_base/cpu_info.cc
=====================================
@@ -97,7 +97,7 @@ uint64_t xgetbv(uint32_t xcr) {
 }
 #endif  // WEBRTC_ENABLE_AVX2
 
-#ifndef _MSC_VER
+#if !defined(_MSC_VER) && !defined(__MINGW32__)
 // Intrinsic for "cpuid".
 #if defined(__pic__) && defined(__i386__)
 static inline void __cpuid(int cpu_info[4], int info_type) {


=====================================
third_party/libwebrtc/rtc_base/win/create_direct3d_device.h
=====================================
@@ -12,9 +12,8 @@
 #define RTC_BASE_WIN_CREATE_DIRECT3D_DEVICE_H_
 
 #include <windows.graphics.directx.direct3d11.h>
-#ifndef __MINGW32__
-#  include <windows.graphics.directX.direct3d11.interop.h>
-#else
+#include <windows.graphics.directx.direct3d11.interop.h>
+#ifdef __MINGW32__
 #  include <dxgi.h>
 #  include <inspectable.h>
 extern "C" {
@@ -23,6 +22,7 @@ HRESULT __stdcall CreateDirect3D11DeviceFromDXGIDevice(
     ::IDXGIDevice* dxgiDevice, ::IInspectable** graphicsDevice);
 }
 #endif
+
 #include <winerror.h>
 #include <wrl/client.h>
 



View it on GitLab: 
https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/e2a7c7807d5b3d531e076ce67ef3a9fb8169367d...f12904c221c038ad500ef2cfce771280c8e26b41

-- 
View it on GitLab: 
https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/e2a7c7807d5b3d531e076ce67ef3a9fb8169367d...f12904c221c038ad500ef2cfce771280c8e26b41
You're receiving this email because of your account on gitlab.torproject.org.


_______________________________________________
tor-commits mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to