Add UniFFI iOS bridge crate
This commit is contained in:
26
scripts/generate-ios-ffi-bindings.sh
Executable file
26
scripts/generate-ios-ffi-bindings.sh
Executable file
@@ -0,0 +1,26 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
||||
OUT_DIR="${1:-$ROOT_DIR/build/ios-ffi}"
|
||||
LIB_PATH="$ROOT_DIR/target/release/libtele_ios_ffi.a"
|
||||
|
||||
cd "$ROOT_DIR"
|
||||
|
||||
cargo build -p tele-ios-ffi --release
|
||||
rm -rf "$OUT_DIR"
|
||||
mkdir -p "$OUT_DIR/Swift" "$OUT_DIR/Headers" "$OUT_DIR/Modules"
|
||||
|
||||
cargo run -p uniffi-bindgen-swift -- "$LIB_PATH" "$OUT_DIR/Swift" --swift-sources
|
||||
cargo run -p uniffi-bindgen-swift -- "$LIB_PATH" "$OUT_DIR/Headers" --headers
|
||||
cargo run -p uniffi-bindgen-swift -- "$LIB_PATH" "$OUT_DIR/Headers" \
|
||||
--modulemap \
|
||||
--module-name tele_ios_ffiFFI \
|
||||
--modulemap-filename module.modulemap
|
||||
cargo run -p uniffi-bindgen-swift -- "$LIB_PATH" "$OUT_DIR/Modules" \
|
||||
--xcframework \
|
||||
--modulemap \
|
||||
--module-name tele_ios_ffiFFI \
|
||||
--modulemap-filename module.modulemap
|
||||
|
||||
printf 'Generated UniFFI Swift bindings in %s\n' "$OUT_DIR"
|
||||
Reference in New Issue
Block a user