This repository contains the iOS client implementation of Jami.
- MacOS version 12 or higher
- XCode version 13 or higher
- Homebrew (instructions could be found on https://brew.sh)
- Carthage (brew install carthage)
Supported archs are: arm64 for iPhoneOS and arm64, x86_64 for iPhoneSimulator Minimum supported version is: 14.5
- Clone the project
git clone https://review.jami.net/jami-project
- Initialize repositories
cd jami-project && ./build.py --init
- Install dependencies
./build.py --dependencies --distribution IOS
-
Build daemon and contributions (choose one option):
Option A: For iPhone device only
cd client-ios && ./compile-ios.sh --platform=iPhoneOS
Option B: For simulator only
cd client-ios && ./compile-ios.sh --platform=iPhoneSimulator
Option C: For both iPhone device and simulator
cd client-ios && ./compile-ios.sh --platform=all
Additional options:
--release Build in release mode with optimizations --arch=ARCH Specify a specific architecture for simulator builds (arm64 or x86_64) Note: This option is only used when building for iPhoneSimulator --help Display detailed help information
-
Build client dependencies
cd Ring && ./fetch-dependencies.sh
The build process automatically generates XCFrameworks from the compiled static libraries. These XCFrameworks are located in the xcframework
directory and include both device (arm64) and simulator (arm64, x86_64) architectures when built with --platform=all
.
Update translations using the Transifex:
cd Ring
tx push -s
./update-translations.sh