mirror of
https://github.com/oxen-io/session-ios.git
synced 2023-12-13 21:30:14 +01:00
dbb29d7d7e
We do this by manually managing the RTCAudioSession. Unfortunately to do this we have to include a couple of RTC headers not exported by the default build of WebRTC.framework (see: Libraries/WebRTC) // FREEBIE
1.3 KiB
1.3 KiB
Apart from the general BUILDING.md
there are certain things that have
to be done by Signal-iOS maintainers.
For transperancy and bus factor, they are outlined here.
Dependencies
Keeping cocoapods based dependencies is easy enough.
pod update
WebRTC
We don't currently have an automated build (cocoapod/carthage) setup for the WebRTC.framework. Instead, read the WebRTC upstream source and build setup instructions here:
https://webrtc.org/native-code/ios/
Once you have your build environment set up and the WebRTC source downloaded:
# The specific set of commands that worked for me were somewhat different.
# 1. Install depot tools
cd <somewhere>
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
cd depot_tools
export PATH=<somewhere>/depot_tools:"$PATH"
# 2. Fetch webrtc source
cd <somewhere else>
mkdir webrtc
cd webrtc
fetch --nohooks webrtc_ios
gclient sync
# 3. Build webrtc
# NOTE: build_ios_libs.sh only worked for me from inside "src"
cd src
webrtc/build/ios/build_ios_libs.sh
# NOTE: It's Carthage/Build/iOS, not Carthage/Builds
mv out_ios_libs/WebRTC.framework ../../Signal-iOS/Carthage/Build/iOS/
Translations
Read more about translations in TRANSLATIONS.md