Commit 3df12b7
feat: add C++ JSI interface and Executorch dependency (#346)
## Description
Add C++ JSI interface and Executorch dependency for Android and iOS.
For Android:
- Add CMake integration for building C++ code.
- Add JSI installer that is called from Kotlin via JNI.
- Add Executorch C++ dependency by a dynamic library extracted from the
.aar provided by an Executorch script.
For iOS:
- Add JSI installer in Objective C++.
- Modify the podspec to statically link Executorch. The binaries are
extracted from the xcframeworks provided by an Executorch script.
Port style transfer and image segmentation to C++ for iOS/Android.
### Type of change
- [ ] Bug fix (non-breaking change which fixes an issue)
- [x] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- [ ] Documentation update (improves or adds clarity to existing
documentation)
### Tested on
- [x] iOS
- [x] Android
### Checklist
- [x] I have performed a self-review of my code
- [x] I have commented my code, particularly in hard-to-understand areas
- [ ] I have updated the documentation accordingly
- [ ] My changes generate no new warnings
---------
Co-authored-by: Mateusz Sluszniak <[email protected]>1 parent fe7f78b commit 3df12b7
File tree
644 files changed
+143172
-1493
lines changed- apps
- computer-vision
- ios
- screens
- llm/ios
- llm.xcodeproj
- speech-to-text/ios
- speechtotext.xcodeproj
- text-embeddings/ios
- textembeddings.xcodeproj
- ios/libs
- packages/react-native-executorch
- android
- libs
- arm64-v8a
- x86_64
- src/main
- cpp
- java/com/swmansion/rnexecutorch
- models
- imageSegmentation
- styleTransfer
- common
- ada
- rnexecutorch
- data_processing
- host_objects
- jsi
- models
- image_segmentation
- style_transfer
- ios
- RnExecutorch.xcodeproj
- RnExecutorch
- models
- classification
- image_segmentation
- ocr
- style_transfer
- text_embeddings
- libs
- src
- hooks
- computer_vision
- modules/computer_vision
- native
- third-party
- android/libs
- executorch
- arm64-v8a
- x86_64
- opencv-third-party/arm64-v8a
- opencv
- arm64-v8a
- x86_64
- include
- c10
- macros
- util
- executorch
- extension
- module
- tensor
- runtime
- backend
- core
- exec_aten
- util
- portable_type
- c10/c10
- macros
- util
- executor
- kernel
- platform
- schema
- opencv2
- core
- detail
- hal
- parallel
- backend
- utils
- dnn
- features2d
- hal
- highgui
- imgproc
- detail
- hal
- photo
- legacy
- video
- detail
- legacy
- ios
- ExecutorchLib
- ExecutorchLib.xcodeproj
- ExecutorchLib
- Exported
- model
- runner
- sampler
- tokenizer
- frameworks
- backend_coreml.xcframework
- ios-arm64-simulator
- ios-arm64
- backend_mps.xcframework
- ios-arm64-simulator
- ios-arm64
- backend_xnnpack.xcframework
- ios-arm64-simulator
- ios-arm64
- executorch.xcframework
- ios-arm64-simulator
- Headers
- c10
- macros
- util
- executorch
- extension
- module
- tensor
- runtime
- backend
- core
- exec_aten
- util
- portable_type
- c10/c10
- macros
- util
- executor
- kernel
- platform
- schema
- ios-arm64
- Headers
- c10
- macros
- util
- executorch
- extension
- module
- tensor
- runtime
- backend
- core
- exec_aten
- util
- portable_type
- c10/c10
- macros
- util
- executor
- kernel
- platform
- schema
- kernels_custom.xcframework
- ios-arm64-simulator
- ios-arm64
- kernels_optimized.xcframework
- ios-arm64-simulator
- ios-arm64
- kernels_portable.xcframework
- ios-arm64-simulator
- ios-arm64
- kernels_quantized.xcframework
- ios-arm64-simulator
- ios-arm64
- re2.xcframework
- ios-arm64-simulator/re2.framework
- Headers
- ios-arm64/re2.framework
- Headers
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
644 files changed
+143172
-1493
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
70 | 70 | | |
71 | 71 | | |
72 | 72 | | |
73 | | - | |
| 73 | + | |
74 | 74 | | |
75 | 75 | | |
76 | 76 | | |
| |||
1399 | 1399 | | |
1400 | 1400 | | |
1401 | 1401 | | |
1402 | | - | |
| 1402 | + | |
1403 | 1403 | | |
1404 | 1404 | | |
1405 | 1405 | | |
| |||
1419 | 1419 | | |
1420 | 1420 | | |
1421 | 1421 | | |
| 1422 | + | |
1422 | 1423 | | |
1423 | 1424 | | |
1424 | 1425 | | |
| |||
2041 | 2042 | | |
2042 | 2043 | | |
2043 | 2044 | | |
| 2045 | + | |
| 2046 | + | |
| 2047 | + | |
2044 | 2048 | | |
2045 | 2049 | | |
2046 | 2050 | | |
| |||
2134 | 2138 | | |
2135 | 2139 | | |
2136 | 2140 | | |
| 2141 | + | |
2137 | 2142 | | |
2138 | 2143 | | |
2139 | 2144 | | |
| |||
2319 | 2324 | | |
2320 | 2325 | | |
2321 | 2326 | | |
2322 | | - | |
| 2327 | + | |
2323 | 2328 | | |
2324 | 2329 | | |
2325 | 2330 | | |
| |||
2351 | 2356 | | |
2352 | 2357 | | |
2353 | 2358 | | |
2354 | | - | |
| 2359 | + | |
2355 | 2360 | | |
2356 | 2361 | | |
2357 | 2362 | | |
| |||
2389 | 2394 | | |
2390 | 2395 | | |
2391 | 2396 | | |
| 2397 | + | |
2392 | 2398 | | |
2393 | 2399 | | |
2394 | 2400 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
6 | | - | |
7 | 6 | | |
| 7 | + | |
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
| |||
Large diffs are not rendered by default.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
470 | 470 | | |
471 | 471 | | |
472 | 472 | | |
473 | | - | |
| 473 | + | |
474 | 474 | | |
475 | 475 | | |
476 | 476 | | |
| |||
528 | 528 | | |
529 | 529 | | |
530 | 530 | | |
531 | | - | |
| 531 | + | |
532 | 532 | | |
533 | 533 | | |
534 | 534 | | |
| |||
Large diffs are not rendered by default.
Lines changed: 2 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
457 | 457 | | |
458 | 458 | | |
459 | 459 | | |
460 | | - | |
| 460 | + | |
461 | 461 | | |
462 | 462 | | |
463 | 463 | | |
| |||
515 | 515 | | |
516 | 516 | | |
517 | 517 | | |
518 | | - | |
| 518 | + | |
519 | 519 | | |
520 | 520 | | |
521 | 521 | | |
| |||
Large diffs are not rendered by default.
Lines changed: 2 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
451 | 451 | | |
452 | 452 | | |
453 | 453 | | |
454 | | - | |
| 454 | + | |
455 | 455 | | |
456 | 456 | | |
457 | 457 | | |
| |||
509 | 509 | | |
510 | 510 | | |
511 | 511 | | |
512 | | - | |
| 512 | + | |
513 | 513 | | |
514 | 514 | | |
515 | 515 | | |
| |||
Binary file not shown.
Binary file not shown.
0 commit comments