kotatogram-desktop: fix build on Darwin after #210062

This commit is contained in:
Ilya Fedin 2023-01-19 18:08:56 +04:00
parent 33ba834c72
commit 77d99717a6
5 changed files with 6 additions and 513 deletions

View File

@ -69,14 +69,11 @@ with lib;
let
tg_owt = callPackage ./tg_owt.nix {
abseil-cpp = (abseil-cpp.override {
abseil-cpp = abseil-cpp.override {
# abseil-cpp should use the same compiler
inherit stdenv;
cxxStandard = "20";
}).overrideAttrs (_: {
# https://github.com/NixOS/nixpkgs/issues/130963
NIX_LDFLAGS = optionalString stdenv.isDarwin "-lc++abi";
});
};
# tg_owt should use the same compiler
inherit stdenv;
@ -100,8 +97,6 @@ stdenv.mkDerivation rec {
patches = [
./kf594.patch
./shortcuts-binary-path.patch
# let it build with nixpkgs 10.12 sdk
./kotato-10.12-sdk.patch
];
postPatch = optionalString stdenv.isLinux ''
@ -112,6 +107,7 @@ stdenv.mkDerivation rec {
substituteInPlace Telegram/ThirdParty/libtgvoip/os/linux/AudioPulse.cpp \
--replace '"libpulse.so.0"' '"${libpulseaudio}/lib/libpulse.so.0"'
'' + optionalString stdenv.isDarwin ''
sed -i "13i#import <CoreAudio/CoreAudio.h>" Telegram/lib_webrtc/webrtc/mac/webrtc_media_devices_mac.mm
substituteInPlace Telegram/CMakeLists.txt \
--replace 'COMMAND iconutil' 'COMMAND png2icns' \
--replace '--convert icns' "" \
@ -189,9 +185,6 @@ stdenv.mkDerivation rec {
libicns
];
# https://github.com/NixOS/nixpkgs/issues/130963
NIX_LDFLAGS = optionalString stdenv.isDarwin "-lc++abi";
enableParallelBuilding = true;
cmakeFlags = [

View File

@ -1,424 +0,0 @@
diff --git a/Telegram/SourceFiles/platform/mac/file_bookmark_mac.mm b/Telegram/SourceFiles/platform/mac/file_bookmark_mac.mm
index 9e9a1744b..ae55f873f 100644
--- a/Telegram/SourceFiles/platform/mac/file_bookmark_mac.mm
+++ b/Telegram/SourceFiles/platform/mac/file_bookmark_mac.mm
@@ -14,6 +14,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include <Cocoa/Cocoa.h>
#include <CoreFoundation/CFURL.h>
+#undef check
namespace Platform {
namespace {
diff --git a/Telegram/SourceFiles/platform/mac/specific_mac.mm b/Telegram/SourceFiles/platform/mac/specific_mac.mm
index 1d68457bb..ac8c4e0ab 100644
--- a/Telegram/SourceFiles/platform/mac/specific_mac.mm
+++ b/Telegram/SourceFiles/platform/mac/specific_mac.mm
@@ -118,6 +118,7 @@ PermissionStatus GetPermissionStatus(PermissionType type) {
switch (type) {
case PermissionType::Microphone:
case PermissionType::Camera:
+#if 0
const auto nativeType = (type == PermissionType::Microphone)
? AVMediaTypeAudio
: AVMediaTypeVideo;
@@ -132,6 +133,7 @@ PermissionStatus GetPermissionStatus(PermissionType type) {
return PermissionStatus::Denied;
}
}
+#endif
break;
}
return PermissionStatus::Granted;
@@ -141,6 +143,7 @@ void RequestPermission(PermissionType type, Fn<void(PermissionStatus)> resultCal
switch (type) {
case PermissionType::Microphone:
case PermissionType::Camera:
+#if 0
const auto nativeType = (type == PermissionType::Microphone)
? AVMediaTypeAudio
: AVMediaTypeVideo;
@@ -151,6 +154,7 @@ void RequestPermission(PermissionType type, Fn<void(PermissionStatus)> resultCal
});
}];
}
+#endif
break;
}
resultCallback(PermissionStatus::Granted);
diff --git a/Telegram/SourceFiles/platform/mac/touchbar/items/mac_formatter_item.h b/Telegram/SourceFiles/platform/mac/touchbar/items/mac_formatter_item.h
index a537929c8..82ef2b837 100644
--- a/Telegram/SourceFiles/platform/mac/touchbar/items/mac_formatter_item.h
+++ b/Telegram/SourceFiles/platform/mac/touchbar/items/mac_formatter_item.h
@@ -9,8 +9,8 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#import <AppKit/NSPopoverTouchBarItem.h>
#import <AppKit/NSTouchBar.h>
+#undef check
-API_AVAILABLE(macos(10.12.2))
@interface TextFormatPopover : NSPopoverTouchBarItem
- (id)init:(NSTouchBarItemIdentifier)identifier;
@end
diff --git a/Telegram/SourceFiles/platform/mac/touchbar/items/mac_pinned_chats_item.h b/Telegram/SourceFiles/platform/mac/touchbar/items/mac_pinned_chats_item.h
index c6a4b886f..d2e0936c0 100644
--- a/Telegram/SourceFiles/platform/mac/touchbar/items/mac_pinned_chats_item.h
+++ b/Telegram/SourceFiles/platform/mac/touchbar/items/mac_pinned_chats_item.h
@@ -8,12 +8,12 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#pragma once
#include <AppKit/NSImageView.h>
+#undef check
namespace Main {
class Session;
} // namespace Main
-API_AVAILABLE(macos(10.12.2))
@interface PinnedDialogsPanel : NSImageView
- (id)init:(not_null<Main::Session*>)session
destroyEvent:(rpl::producer<>)touchBarSwitches;
diff --git a/Telegram/SourceFiles/platform/mac/touchbar/items/mac_scrubber_item.h b/Telegram/SourceFiles/platform/mac/touchbar/items/mac_scrubber_item.h
index 27b04467c..b1a7dfbd9 100644
--- a/Telegram/SourceFiles/platform/mac/touchbar/items/mac_scrubber_item.h
+++ b/Telegram/SourceFiles/platform/mac/touchbar/items/mac_scrubber_item.h
@@ -9,12 +9,12 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#import <AppKit/NSPopoverTouchBarItem.h>
#import <AppKit/NSTouchBar.h>
+#undef check
namespace Window {
class Controller;
} // namespace Window
-API_AVAILABLE(macos(10.12.2))
@interface StickerEmojiPopover : NSPopoverTouchBarItem<NSTouchBarDelegate>
- (id)init:(not_null<Window::Controller*>)controller
identifier:(NSTouchBarItemIdentifier)identifier;
diff --git a/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_audio.h b/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_audio.h
index ec4596c67..972461aef 100644
--- a/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_audio.h
+++ b/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_audio.h
@@ -8,8 +8,8 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#pragma once
#import <AppKit/NSTouchBar.h>
+#undef check
-API_AVAILABLE(macos(10.12.2))
@interface TouchBarAudioPlayer : NSTouchBar<NSTouchBarDelegate>
- (rpl::producer<>)closeRequests;
@end
diff --git a/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_common.h b/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_common.h
index 52b54de12..ac3857f9b 100644
--- a/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_common.h
+++ b/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_common.h
@@ -9,6 +9,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#import <AppKit/NSImage.h>
#import <Foundation/Foundation.h>
+#undef check
namespace TouchBar {
diff --git a/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_controls.h b/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_controls.h
index 1cc8c832f..c2178c975 100644
--- a/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_controls.h
+++ b/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_controls.h
@@ -20,19 +20,19 @@ struct TrackState;
namespace TouchBar {
-[[nodiscard]] API_AVAILABLE(macos(10.12.2))
+[[nodiscard]]
NSButton *CreateTouchBarButton(
NSImage *image,
rpl::lifetime &lifetime,
Fn<void()> callback);
-[[nodiscard]] API_AVAILABLE(macos(10.12.2))
+[[nodiscard]]
NSButton *CreateTouchBarButton(
const style::icon &icon,
rpl::lifetime &lifetime,
Fn<void()> callback);
-[[nodiscard]] API_AVAILABLE(macos(10.12.2))
+[[nodiscard]]
NSButton *CreateTouchBarButtonWithTwoStates(
NSImage *icon1,
NSImage *icon2,
@@ -41,7 +41,7 @@ NSButton *CreateTouchBarButtonWithTwoStates(
bool firstState,
rpl::producer<bool> stateChanged = rpl::never<bool>());
-[[nodiscard]] API_AVAILABLE(macos(10.12.2))
+[[nodiscard]]
NSButton *CreateTouchBarButtonWithTwoStates(
const style::icon &icon1,
const style::icon &icon2,
@@ -50,14 +50,14 @@ NSButton *CreateTouchBarButtonWithTwoStates(
bool firstState,
rpl::producer<bool> stateChanged = rpl::never<bool>());
-[[nodiscard]] API_AVAILABLE(macos(10.12.2))
+[[nodiscard]]
NSSliderTouchBarItem *CreateTouchBarSlider(
NSString *itemId,
rpl::lifetime &lifetime,
Fn<void(bool, double, double)> callback,
rpl::producer<Media::Player::TrackState> stateChanged);
-[[nodiscard]] API_AVAILABLE(macos(10.12.2))
+[[nodiscard]]
NSCustomTouchBarItem *CreateTouchBarTrackPosition(
NSString *itemId,
rpl::producer<Media::Player::TrackState> stateChanged);
diff --git a/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_main.h b/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_main.h
index f03546eaf..bc8c63678 100644
--- a/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_main.h
+++ b/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_main.h
@@ -8,6 +8,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#pragma once
#import <AppKit/NSTouchBar.h>
+#undef check
namespace Window {
class Controller;
@@ -21,7 +22,6 @@ const auto kPopoverPickerItemIdentifier = @"pickerButtons";
} // namespace TouchBar::Main
-API_AVAILABLE(macos(10.12.2))
@interface TouchBarMain : NSTouchBar
- (id)init:(not_null<Window::Controller*>)controller
touchBarSwitches:(rpl::producer<>)touchBarSwitches;
diff --git a/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_manager.h b/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_manager.h
index 464f87c9c..9a008c75e 100644
--- a/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_manager.h
+++ b/Telegram/SourceFiles/platform/mac/touchbar/mac_touchbar_manager.h
@@ -8,6 +8,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#pragma once
#import <AppKit/NSTouchBar.h>
+#undef check
namespace Main {
class Domain;
@@ -17,7 +18,6 @@ namespace Window {
class Controller;
} // namespace Window
-API_AVAILABLE(macos(10.12.2))
@interface RootTouchBar : NSTouchBar<NSTouchBarDelegate>
- (id)init:(rpl::producer<bool>)canApplyMarkdown
controller:(not_null<Window::Controller*>)controller
Submodule Telegram/ThirdParty/tgcalls contains modified content
diff --git a/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/TGRTCDefaultVideoDecoderFactory.mm b/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/TGRTCDefaultVideoDecoderFactory.mm
index b280c1b..a1ed0d2 100644
--- a/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/TGRTCDefaultVideoDecoderFactory.mm
+++ b/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/TGRTCDefaultVideoDecoderFactory.mm
@@ -71,7 +71,7 @@
if (@available(iOS 11.0, *)) {
[result addObject:h265Info];
}
-#else // WEBRTC_IOS
+#elif 0 // WEBRTC_IOS
if (@available(macOS 10.13, *)) {
[result addObject:h265Info];
}
@@ -101,7 +101,7 @@
return [[TGRTCVideoDecoderH265 alloc] init];
}
}
-#else // WEBRTC_IOS
+#elif 0 // WEBRTC_IOS
if (@available(macOS 10.13, *)) {
if ([info.name isEqualToString:kRTCVideoCodecH265Name]) {
return [[TGRTCVideoDecoderH265 alloc] init];
diff --git a/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/TGRTCDefaultVideoEncoderFactory.mm b/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/TGRTCDefaultVideoEncoderFactory.mm
index 9960607..f3659b3 100644
--- a/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/TGRTCDefaultVideoEncoderFactory.mm
+++ b/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/TGRTCDefaultVideoEncoderFactory.mm
@@ -89,7 +89,7 @@
[result addObject:h265Info];
}
}
-#else // WEBRTC_IOS
+#elif 0 // WEBRTC_IOS
if (@available(macOS 10.13, *)) {
if ([[AVAssetExportSession allExportPresets] containsObject:AVAssetExportPresetHEVCHighestQuality]) {
[result addObject:h265Info];
@@ -129,7 +129,7 @@
return [[TGRTCVideoEncoderH265 alloc] initWithCodecInfo:info];
}
}
-#else // WEBRTC_IOS
+#elif 0 // WEBRTC_IOS
if (@available(macOS 10.13, *)) {
if ([info.name isEqualToString:kRTCVideoCodecH265Name]) {
return [[TGRTCVideoEncoderH265 alloc] initWithCodecInfo:info];
diff --git a/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/VideoCameraCapturerMac.mm b/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/VideoCameraCapturerMac.mm
index bf99063..b717645 100644
--- a/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/VideoCameraCapturerMac.mm
+++ b/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/VideoCameraCapturerMac.mm
@@ -507,8 +507,7 @@ static tgcalls::DarwinVideoTrackSource *getObjCVideoSource(const rtc::scoped_ref
- (void)captureOutput:(AVCaptureOutput *)captureOutput
didDropSampleBuffer:(CMSampleBufferRef)sampleBuffer
fromConnection:(AVCaptureConnection *)connection {
- NSString *droppedReason =
- (__bridge NSString *)CMGetAttachment(sampleBuffer, kCMSampleBufferAttachmentKey_DroppedFrameReason, nil);
+ NSString *droppedReason = nil;
RTCLogError(@"Dropped sample buffer. Reason: %@", droppedReason);
}
@@ -682,7 +681,7 @@ static tgcalls::DarwinVideoTrackSource *getObjCVideoSource(const rtc::scoped_ref
int closest = -1;
CMTime result;
for (int i = 0; i < format.videoSupportedFrameRateRanges.count; i++) {
- const auto rateRange = format.videoSupportedFrameRateRanges[i];
+ const AVFrameRateRange *rateRange = format.videoSupportedFrameRateRanges[i];
int gap = abs(rateRange.minFrameRate - target);
if (gap <= closest || closest == -1) {
closest = gap;
diff --git a/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/VideoMetalViewMac.mm b/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/VideoMetalViewMac.mm
index 4ef8630..3fc753c 100644
--- a/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/VideoMetalViewMac.mm
+++ b/Telegram/ThirdParty/tgcalls/tgcalls/platform/darwin/VideoMetalViewMac.mm
@@ -243,9 +243,11 @@ private:
layer.framebufferOnly = true;
layer.opaque = false;
// layer.cornerRadius = 4;
+#if 0
if (@available(macOS 10.13, *)) {
layer.displaySyncEnabled = NO;
}
+#endif
// layer.presentsWithTransaction = YES;
layer.backgroundColor = [NSColor clearColor].CGColor;
layer.contentsGravity = kCAGravityResizeAspectFill;
@@ -332,9 +334,7 @@ private:
- (RTCVideoRotation)rtcFrameRotation {
if (_rotationOverride) {
RTCVideoRotation rotation;
- if (@available(macOS 10.13, *)) {
- [_rotationOverride getValue:&rotation size:sizeof(rotation)];
- } else {
+ {
[_rotationOverride getValue:&rotation];
}
return rotation;
Submodule Telegram/lib_base contains modified content
diff --git a/Telegram/lib_base/base/platform/mac/base_global_shortcuts_mac.mm b/Telegram/lib_base/base/platform/mac/base_global_shortcuts_mac.mm
index 5491702..32befc6 100644
--- a/Telegram/lib_base/base/platform/mac/base_global_shortcuts_mac.mm
+++ b/Telegram/lib_base/base/platform/mac/base_global_shortcuts_mac.mm
@@ -128,6 +128,7 @@ bool Available() {
}
bool Allowed() {
+#if 0
if (@available(macOS 10.15, *)) {
// Input Monitoring is required on macOS 10.15 an later.
// Even if user grants access, restart is required.
@@ -141,6 +142,7 @@ bool Allowed() {
return AXIsProcessTrustedWithOptions(
(__bridge CFDictionaryRef)options);
}
+#endif
return true;
}
diff --git a/Telegram/lib_base/base/platform/mac/base_info_mac.mm b/Telegram/lib_base/base/platform/mac/base_info_mac.mm
index f1f259a..6629eb6 100644
--- a/Telegram/lib_base/base/platform/mac/base_info_mac.mm
+++ b/Telegram/lib_base/base/platform/mac/base_info_mac.mm
@@ -226,16 +226,20 @@ void Finish() {
}
void OpenInputMonitoringPrivacySettings() {
+#if 0
if (@available(macOS 10.15, *)) {
IOHIDRequestAccess(kIOHIDRequestTypeListenEvent);
}
+#endif
[[NSWorkspace sharedWorkspace] openURL:PrivacySettingsUrl("Privacy_ListenEvent")];
}
void OpenDesktopCapturePrivacySettings() {
+#if 0
if (@available(macOS 11.0, *)) {
CGRequestScreenCaptureAccess();
}
+#endif
[[NSWorkspace sharedWorkspace] openURL:PrivacySettingsUrl("Privacy_ScreenCapture")];
}
diff --git a/Telegram/lib_base/base/platform/mac/base_system_media_controls_mac.mm b/Telegram/lib_base/base/platform/mac/base_system_media_controls_mac.mm
index 6102705..8981239 100644
--- a/Telegram/lib_base/base/platform/mac/base_system_media_controls_mac.mm
+++ b/Telegram/lib_base/base/platform/mac/base_system_media_controls_mac.mm
@@ -277,6 +277,7 @@ void SystemMediaControls::setThumbnail(const QImage &thumbnail) {
if (thumbnail.isNull()) {
return;
}
+#if 0
if (@available(macOS 10.13.2, *)) {
const auto copy = thumbnail;
[_private->info
@@ -290,6 +291,7 @@ void SystemMediaControls::setThumbnail(const QImage &thumbnail) {
forKey:MPMediaItemPropertyArtwork];
updateDisplay();
}
+#endif
}
void SystemMediaControls::setDuration(int duration) {
@@ -308,10 +310,12 @@ void SystemMediaControls::setVolume(float64 volume) {
}
void SystemMediaControls::clearThumbnail() {
+#if 0
if (@available(macOS 10.13.2, *)) {
[_private->info removeObjectForKey:MPMediaItemPropertyArtwork];
updateDisplay();
}
+#endif
}
void SystemMediaControls::clearMetadata() {
@@ -373,9 +377,11 @@ bool SystemMediaControls::volumeSupported() const {
}
bool SystemMediaControls::Supported() {
+#if 0
if (@available(macOS 10.12.2, *)) {
return true;
}
+#endif
return false;
}
Submodule Telegram/lib_webrtc contains modified content
diff --git a/Telegram/lib_webrtc/webrtc/mac/webrtc_media_devices_mac.mm b/Telegram/lib_webrtc/webrtc/mac/webrtc_media_devices_mac.mm
index 21e93f7..10a3890 100644
--- a/Telegram/lib_webrtc/webrtc/mac/webrtc_media_devices_mac.mm
+++ b/Telegram/lib_webrtc/webrtc/mac/webrtc_media_devices_mac.mm
@@ -397,6 +397,7 @@ void MacMediaDevices::videoInputRefreshed() {
}
bool MacDesktopCaptureAllowed() {
+#if 0
if (@available(macOS 11.0, *)) {
// Screen Recording is required on macOS 10.15 an later.
// Even if user grants access, restart is required.
@@ -421,6 +422,7 @@ bool MacDesktopCaptureAllowed() {
CFRelease(stream);
return true;
}
+#endif
return true;
}

View File

@ -1,68 +0,0 @@
diff --git a/src/rtc_base/async_resolver.cc b/src/rtc_base/async_resolver.cc
index ad1598f2..fe9c3832 100644
--- a/src/rtc_base/async_resolver.cc
+++ b/src/rtc_base/async_resolver.cc
@@ -57,7 +57,7 @@ void GlobalGcdRunTask(void* context) {
// Post a task into the system-defined global concurrent queue.
void PostTaskToGlobalQueue(std::unique_ptr<webrtc::QueuedTask> task) {
- dispatch_queue_global_t global_queue =
+ dispatch_queue_t global_queue =
dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
webrtc::QueuedTask* context = task.release();
dispatch_async_f(global_queue, context, &GlobalGcdRunTask);
diff --git a/src/rtc_base/system/gcd_helpers.m b/src/rtc_base/system/gcd_helpers.m
index fd9a361f..3a63be6d 100644
--- a/src/rtc_base/system/gcd_helpers.m
+++ b/src/rtc_base/system/gcd_helpers.m
@@ -13,9 +13,6 @@
dispatch_queue_t RTCDispatchQueueCreateWithTarget(const char *label,
dispatch_queue_attr_t attr,
dispatch_queue_t target) {
- if (@available(iOS 10, macOS 10.12, tvOS 10, watchOS 3, *)) {
- return dispatch_queue_create_with_target(label, attr, target);
- }
dispatch_queue_t queue = dispatch_queue_create(label, attr);
dispatch_set_target_queue(queue, target);
return queue;
diff --git a/src/sdk/objc/components/video_codec/nalu_rewriter.cc b/src/sdk/objc/components/video_codec/nalu_rewriter.cc
index 1121c921..f21926b0 100644
--- a/src/sdk/objc/components/video_codec/nalu_rewriter.cc
+++ b/src/sdk/objc/components/video_codec/nalu_rewriter.cc
@@ -242,10 +242,7 @@ bool H265CMSampleBufferToAnnexBBuffer(
int nalu_header_size = 0;
size_t param_set_count = 0;
OSStatus status = noErr;
- if (__builtin_available(macOS 10.13, *)) {
- status = CMVideoFormatDescriptionGetHEVCParameterSetAtIndex(
- description, 0, nullptr, nullptr, &param_set_count, &nalu_header_size);
- } else {
+ {
RTC_LOG(LS_ERROR) << "Not supported.";
return false;
}
@@ -268,10 +265,7 @@ bool H265CMSampleBufferToAnnexBBuffer(
size_t param_set_size = 0;
const uint8_t* param_set = nullptr;
for (size_t i = 0; i < param_set_count; ++i) {
- if (__builtin_available(macOS 10.13, *)) {
- status = CMVideoFormatDescriptionGetHEVCParameterSetAtIndex(
- description, i, &param_set, &param_set_size, nullptr, nullptr);
- } else {
+ {
RTC_LOG(LS_ERROR) << "Not supported.";
return false;
}
@@ -501,11 +495,7 @@ CMVideoFormatDescriptionRef CreateH265VideoFormatDescription(
// Parse the SPS and PPS into a CMVideoFormatDescription.
CMVideoFormatDescriptionRef description = nullptr;
OSStatus status = noErr;
- if (__builtin_available(macOS 10.13, *)) {
- status = CMVideoFormatDescriptionCreateFromHEVCParameterSets(
- kCFAllocatorDefault, 3, param_set_ptrs, param_set_sizes, 4, nullptr,
- &description);
- } else {
+ {
RTC_LOG(LS_ERROR) << "Not supported.";
return nullptr;
}

View File

@ -56,11 +56,6 @@ stdenv.mkDerivation {
fetchSubmodules = true;
};
patches = [
# let it build with nixpkgs 10.12 sdk
./tg_owt-10.12-sdk.patch
];
postPatch = lib.optionalString stdenv.isLinux ''
substituteInPlace src/modules/desktop_capture/linux/egl_dmabuf.cc \
--replace '"libEGL.so.1"' '"${libGL}/lib/libEGL.so.1"' \
@ -115,9 +110,6 @@ stdenv.mkDerivation {
ApplicationServices
];
# https://github.com/NixOS/nixpkgs/issues/130963
NIX_LDFLAGS = lib.optionalString stdenv.isDarwin "-lc++abi";
enableParallelBuilding = true;
meta.license = lib.licenses.bsd3;

View File

@ -30316,14 +30316,14 @@ with pkgs;
kooha = callPackage ../applications/video/kooha { };
kotatogram-desktop = libsForQt5.callPackage ../applications/networking/instant-messengers/telegram/kotatogram-desktop {
inherit (darwin.apple_sdk.frameworks) Cocoa CoreFoundation CoreServices CoreText CoreGraphics
inherit (darwin.apple_sdk_11_0.frameworks) Cocoa CoreFoundation CoreServices CoreText CoreGraphics
CoreMedia OpenGL AudioUnit ApplicationServices Foundation AGL Security SystemConfiguration
Carbon AudioToolbox VideoToolbox VideoDecodeAcceleration AVFoundation CoreAudio CoreVideo
CoreMediaIO QuartzCore AppKit CoreWLAN WebKit IOKit GSS MediaPlayer IOSurface Metal MetalKit;
# C++20 is required, darwin has Clang 7 by default, aarch64 has gcc 9 by default
# C++20 is required, aarch64 has gcc 9 by default
stdenv = if stdenv.isDarwin
then llvmPackages_12.stdenv
then darwin.apple_sdk_11_0.stdenv
else if stdenv.isAarch64 then gcc10Stdenv else stdenv;
# tdesktop has random crashes when jemalloc is built with gcc.