protobuf.toml 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. [tasks.install_protobuf]
  2. condition_script = [
  3. """
  4. if ! command -v protoc-gen-dart
  5. then
  6. exit 0
  7. fi
  8. # installed
  9. exit 1
  10. """,
  11. ]
  12. run_task = { name = ["install_protobuf_compiler"] }
  13. [tasks.install_protobuf_compiler]
  14. script = """
  15. echo "Install protoc_plugin (Dart)"
  16. dart pub global activate protoc_plugin
  17. """
  18. script_runner = "@shell"
  19. [tasks.install_protobuf_compiler.linux]
  20. script = """
  21. echo "Install protoc_plugin (Dart)"
  22. dart pub global activate protoc_plugin
  23. """
  24. script_runner = "@shell"
  25. [tasks.install_protobuf_compiler.windows]
  26. script = """
  27. ret = which dart
  28. if is_empty ${ret}
  29. echo Please make sure flutter/dart is properly installed and in PATH env var
  30. exit -1
  31. end
  32. ret = which protoc-gen-dart
  33. if is_empty ${ret}
  34. exec cmd.exe /c dart pub global activate protoc_plugin
  35. home_dir = get_home_dir
  36. echo Please add '${home_dir}\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\bin' into PATH env var
  37. exit -1
  38. end
  39. """
  40. script_runner = "@duckscript"
  41. [tasks.check_protoc_cmd]
  42. script = [
  43. """
  44. ret = which protoc
  45. if is_empty ${ret}
  46. echo Please make sure <protoc_installation_folder>/bin/ is in PATH env var
  47. echo See BUILD_ON_{LINUX|WINDOWS}.md for how to get protoc
  48. exit -1
  49. end
  50. """,
  51. ]
  52. script_runner = "@duckscript"
  53. [tasks.gen_pb_file]
  54. script = [
  55. """
  56. flowy_tool=${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/scripts/flowy-tool/Cargo.toml
  57. rust_lib=${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/rust-lib/
  58. shared_lib=${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/../shared-lib
  59. flutter_lib=${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/app_flowy/packages
  60. derive_meta=${shared_lib}/flowy-derive/src/derive_cache/derive_cache.rs
  61. flutter_package_lib=${flutter_lib}/flowy_sdk/lib
  62. cargo run \
  63. --manifest-path ${flowy_tool} pb-gen \
  64. --rust_sources ${rust_lib} ${shared_lib} \
  65. --derive_meta=${derive_meta} \
  66. --flutter_package_lib=${flutter_package_lib}
  67. """,
  68. ]
  69. script_runner = "@shell"
  70. [tasks.gen_pb_file.windows]
  71. script = [
  72. """
  73. flowy_tool=set ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/scripts/flowy-tool/Cargo.toml
  74. rust_source=set ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/rust-lib/
  75. # rust_lib=set ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/rust-lib
  76. shared_lib=set ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/../shared-lib
  77. flutter_lib=set ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/app_flowy/packages
  78. derive_meta=set ${shared_lib}/flowy-derive/src/derive_cache/derive_cache.rs
  79. flutter_package_lib=set ${flutter_lib}/flowy_sdk/lib
  80. exec cmd /c cargo run \
  81. --manifest-path ${flowy_tool} pb-gen \
  82. --rust_source=${rust_source} \
  83. --derive_meta=${derive_meta} \
  84. --flutter_package_lib=${flutter_package_lib}
  85. """,
  86. ]
  87. script_runner = "@duckscript"
  88. [tasks.gen_dart_event]
  89. script = [
  90. """
  91. flowy_tool=${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/scripts/flowy-tool/Cargo.toml
  92. flutter_lib=${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/app_flowy/packages
  93. rust_source=${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/rust-lib/
  94. output=${flutter_lib}/flowy_sdk/lib/dispatch/dart_event.dart
  95. cargo run \
  96. --manifest-path ${flowy_tool} dart-event \
  97. --rust_sources=${rust_source} \
  98. --output=${output}
  99. """,
  100. ]
  101. script_runner = "@shell"
  102. [tasks.gen_dart_event.windows]
  103. script = [
  104. """
  105. flowy_tool=set ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/scripts/flowy-tool/Cargo.toml
  106. flutter_lib=set ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/app_flowy/packages
  107. rust_source=set ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/rust-lib/
  108. output=set ${flutter_lib}/flowy_sdk/lib/dispatch/dart_event.dart
  109. exec cmd.exe /c cargo run \
  110. --manifest-path ${flowy_tool} dart-event \
  111. --rust_source=${rust_source} \
  112. --output=${output}
  113. """,
  114. ]
  115. script_runner = "@duckscript"