mattermost-mobile-upstream/libraries/@mattermost/calls-native/mattermost-calls-native.podspec

55 lines
1.8 KiB
Ruby

require "json"
package = JSON.parse(File.read(File.join(__dir__, "package.json")))
Pod::Spec.new do |s|
s.name = "mattermost-calls-native"
s.version = package["version"]
s.summary = package["description"]
s.homepage = package["homepage"]
s.license = package["license"]
s.authors = package["author"]
s.platforms = { :ios => min_ios_version_supported }
s.source = { :git => ".git", :tag => "#{s.version}" }
s.source_files = "ios/**/*.{h,m,mm,swift}"
s.resource_bundles = {
'MMCallsNativeResources' => ['ios/Resources/**/*.png']
}
s.frameworks = "PushKit", "CallKit", "AVFoundation"
# Match the WebRTC framework version that react-native-webrtc pulls in.
# We call RTCAudioSession.sharedInstance().audioSessionDidActivate(_:)
# directly from our CallKit delegate — this is the integration point
# officially documented by react-native-webrtc, and the underlying
# framework is shared with the host app's react-native-webrtc install.
s.dependency 'JitsiWebRTC', '~> 124.0.0'
s.dependency 'Gekidou'
fabric_enabled = ENV["RCT_NEW_ARCH_ENABLED"] == "1"
other_cpp_flags = fabric_enabled ? "-DRCT_NEW_ARCH_ENABLED=1" : ""
install_modules_dependencies(s)
s.pod_target_xcconfig = {
'USE_HEADERMAP' => 'YES',
"DEFINES_MODULE" => "YES",
'SWIFT_COMPILATION_MODE' => 'wholemodule',
"BUILD_LIBRARY_FOR_DISTRIBUTION" => "YES",
"OTHER_CPLUSPLUSFLAGS" => other_cpp_flags,
"OTHER_SWIFT_FLAGS" => "-no-verify-emitted-module-interface",
"CLANG_CXX_LANGUAGE_STANDARD" => "c++20",
}
user_header_search_paths = [
'"${PODS_CONFIGURATION_BUILD_DIR}/mattermost-calls-native/Swift Compatibility Header"',
]
s.user_target_xcconfig = {
"HEADER_SEARCH_PATHS" => user_header_search_paths,
}
end