README.md (1189B)
1 # RadrootsFFI 2 3 `ios/RadrootsFFI` is the source resolver and build workspace for the Rust FFI 4 artifact consumed by `ios/RadrootsKit`. 5 6 ## Goals 7 - keep the iOS project openable and buildable in Xcode for OSS developers 8 - keep `radroots-app-ffi-swift` reusable for other Apple clients 9 - support three source modes from one Makefile: `git`, `crates`, and `local` 10 11 ## Quick start 12 - build everything: `make -C ios all` 13 - print current config: `make -C ios print-config` 14 - rebuild from scratch: `make -C ios distclean all` 15 16 ## Source modes 17 - `SOURCE_MODE=git` (default) 18 - clones `RADROOTS_CRATES_GIT_URL` at `RADROOTS_CRATES_GIT_REV` 19 - builds `app-ffi-swift` from the checked out workspace 20 - `SOURCE_MODE=crates` 21 - downloads `radroots-app-ffi-swift` from crates.io by version 22 - `SOURCE_MODE=local` 23 - requires `LOCAL_FFI_MANIFEST=/absolute/path/to/app-ffi-swift/Cargo.toml` 24 25 ## Configuration 26 Configuration is read from: 27 - `RadrootsFFI/source.lock` for pinned defaults 28 - `RadrootsFFI/Config/ffi-build.env` for optional local overrides 29 30 ## Outputs 31 - xcframework: `ios/RadrootsKit/Artifacts/RadrootsFFI.xcframework` 32 - generated swift bindings: `ios/RadrootsKit/Sources/RadrootsKit/Generated`