mobile.toml 3.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. [tasks.env_check]
  2. dependencies = ["echo_env", "install_flutter_protobuf"]
  3. condition = { env_set = [
  4. "BUILD_FLAG",
  5. "RUST_COMPILE_TARGET",
  6. "CRATE_TYPE",
  7. "TARGET_OS",
  8. ], channels = [
  9. "stable",
  10. ] }
  11. [tasks.appflowy-core-dev-ios]
  12. category = "Build"
  13. dependencies = ["env_check"]
  14. run_task = { name = [
  15. "setup-crate-type",
  16. "sdk-build-ios",
  17. "post-mobile-ios",
  18. "restore-crate-type",
  19. ] }
  20. [tasks.sdk-build-ios]
  21. private = true
  22. script = [
  23. """
  24. cd rust-lib/
  25. rustup show
  26. echo cargo lipo --targets ${RUST_COMPILE_TARGET} --features "${FLUTTER_DESKTOP_FEATURES}"
  27. cargo lipo --targets ${RUST_COMPILE_TARGET} --features "${FLUTTER_DESKTOP_FEATURES}"
  28. cd ../
  29. """,
  30. ]
  31. script_runner = "@shell"
  32. [tasks.appflowy-core-dev-android]
  33. category = "Build"
  34. dependencies = ["env_check"]
  35. run_task = { name = [
  36. "setup-crate-type",
  37. "sdk-build-android",
  38. "post-mobile-android",
  39. "restore-crate-type",
  40. ] }
  41. [tasks.sdk-build-android]
  42. private = true
  43. script = [
  44. """
  45. cd rust-lib/
  46. rustup show
  47. echo "cargo ndk -t arm64-v8a -t x86_64 -o ./jniLibs build --features "${FLUTTER_DESKTOP_FEATURES}""
  48. cargo ndk -t arm64-v8a -t x86_64 -o ./jniLibs build --features "${FLUTTER_DESKTOP_FEATURES}"
  49. cd ../
  50. """,
  51. ]
  52. script_runner = "@shell"
  53. [tasks.post-mobile-ios]
  54. private = true
  55. script = [
  56. """
  57. echo "🚀 🚀 🚀 AppFlowy-Core for iOS platform build success"
  58. dart_ffi_dir= set ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/appflowy_flutter/packages/appflowy_backend/${TARGET_OS}
  59. lib = set lib${LIB_NAME}.${LIB_EXT}
  60. echo "💻 💻 💻 Copying ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/rust-lib/target/${RUST_COMPILE_TARGET}/${BUILD_FLAG}/${lib} to ${dart_ffi_dir}/${lib}"
  61. rm -f ${dart_ffi_dir}/${lib}
  62. cp ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/rust-lib/target/${RUST_COMPILE_TARGET}/${BUILD_FLAG}/${lib} \
  63. ${dart_ffi_dir}/${lib}
  64. echo "💻 💻 💻 Copying ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/rust-lib/${CARGO_MAKE_CRATE_NAME}/binding.h to ${dart_ffi_dir}/Classes/binding.h"
  65. rm -f ${dart_ffi_dir}/Classes/binding.h
  66. cp ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/rust-lib/${CARGO_MAKE_CRATE_NAME}/binding.h \
  67. ${dart_ffi_dir}/Classes/binding.h
  68. """,
  69. ]
  70. script_runner = "@duckscript"
  71. [tasks.post-mobile-android]
  72. script = [
  73. """
  74. echo "🚀 🚀 🚀 AppFlowy-Core for Android platform build success"
  75. dart_ffi_dir= set ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/appflowy_flutter/android/app/src/main
  76. lib = set lib${LIB_NAME}.${LIB_EXT}
  77. echo "💻 💻 💻 Copying ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/rust-lib/jniLibs/ to ${dart_ffi_dir}/"
  78. rm -r ${dart_ffi_dir}/jniLibs/
  79. cp ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/rust-lib/jniLibs/ \
  80. ${dart_ffi_dir}/
  81. echo "💻 💻 💻 Copying ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/rust-lib/${CARGO_MAKE_CRATE_NAME}/binding.h to ${dart_ffi_dir}/Classes/binding.h"
  82. rm -f ${dart_ffi_dir}/Classes/binding.h
  83. cp ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/rust-lib/${CARGO_MAKE_CRATE_NAME}/binding.h \
  84. ${dart_ffi_dir}/Classes/binding.h
  85. """,
  86. ]
  87. script_runner = "@duckscript"