123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144 |
- # cargo make --profile production task
- # Run the task with profile, e.g.
- # cargo make --profile development-mac flowy-sdk-dev
- # cargo make --profile production-windows-x86 flowy-sdk-dev
- [tasks.env_check]
- dependencies = ["echo_env"]
- condition = { env_set = [ "BUILD_FLAG", "RUST_COMPILE_TARGET", "CRATE_TYPE", "TARGET_OS"], channels = ["nightly"] }
- [tasks.flowy-sdk-dev]
- mac_alias = "flowy-sdk-dev-macos"
- windows_alias = "flowy-sdk-dev-windows"
- linux_alias = "flowy-sdk-dev-linux"
- [tasks.flowy-sdk-dev-macos]
- category = "Build"
- dependencies = ["env_check"]
- run_task = { name = ["setup-crate-type","sdk-build", "post-desktop", "restore-crate-type"] }
- [tasks.flowy-sdk-dev-windows]
- category = "Build"
- dependencies = ["env_check"]
- run_task = { name = ["setup-crate-type","sdk-build", "post-desktop", "restore-crate-type"] }
- [tasks.flowy-sdk-dev-linux]
- category = "Build"
- dependencies = ["env_check"]
- run_task = { name = ["setup-crate-type","sdk-build", "post-desktop", "restore-crate-type"] }
- #
- [tasks.sdk-build]
- private = true
- script = [
- """
- cd rust-lib/
- echo cargo build --package=dart-ffi --target ${RUST_COMPILE_TARGET} --features=${FEATURES}
- cargo build --package=dart-ffi --target ${RUST_COMPILE_TARGET} --features=${FEATURES}
- cd ../
- """,
- ]
- script_runner = "@shell"
- [tasks.sdk-build.windows]
- private = true
- script = [
- """
- cd rust-lib
- echo cargo build --package=dart-ffi --target ${RUST_COMPILE_TARGET} --features=${FEATURES}
- exec cargo build --package=dart-ffi --target ${RUST_COMPILE_TARGET} --features=${FEATURES}
- cd ..
- """,
- ]
- script_runner = "@duckscript"
- #
- [tasks.flowy-sdk-release]
- description = "Build flowy sdk in release mode"
- category = "Build"
- dependencies = ["env_check"]
- run_task = { name = ["setup-crate-type","sdk-release-build", "post-desktop", "restore-crate-type"] }
- #
- [tasks.sdk-release-build]
- script = [
- """
- cd rust-lib/
- cargo build --${BUILD_FLAG} --package=dart-ffi --target ${RUST_COMPILE_TARGET} --features=${FEATURES}
- cd ../
- """,
- ]
- script_runner = "@shell"
- #
- [tasks.post-desktop]
- mac_alias = "post-desktop-macos"
- windows_alias = "post-desktop-windows"
- linux_alias = "post-desktop-linux"
- [tasks.post-desktop-macos]
- private = true
- script = [
- """
- echo "🚀 🚀 🚀 Flowy-SDK(macOS) build success"
- cp ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/rust-lib/target/${RUST_COMPILE_TARGET}/${BUILD_FLAG}/lib${CARGO_MAKE_CRATE_FS_NAME}.${SDK_EXT} \
- ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/app_flowy/packages/flowy_sdk/${TARGET_OS}/lib${CARGO_MAKE_CRATE_FS_NAME}.${SDK_EXT}
- cp ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/rust-lib/${CARGO_MAKE_CRATE_NAME}/binding.h \
- ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/app_flowy/packages/flowy_sdk/${TARGET_OS}/Classes/binding.h
- """,
- ]
- script_runner = "@duckscript"
- [tasks.post-desktop-windows]
- private = true
- script = [
- """
- echo "🚀 🚀 🚀 Flowy-SDK(windows) build success"
- dart_ffi_dir= set ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/app_flowy/windows/flutter/dart_ffi
- # copy dll
- cp ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/rust-lib/target/${RUST_COMPILE_TARGET}/${BUILD_FLAG}/${CARGO_MAKE_CRATE_FS_NAME}.${SDK_EXT} \
- ${dart_ffi_dir}/${CARGO_MAKE_CRATE_FS_NAME}.${SDK_EXT}
- # copy binding.h
- cp ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/rust-lib/${CARGO_MAKE_CRATE_NAME}/binding.h \
- ${dart_ffi_dir}/binding.h
- """,
- ]
- script_runner = "@duckscript"
- [tasks.post-desktop-linux]
- private = true
- script = [
- """
- echo "🚀 🚀 🚀 Flowy-SDK(linux) build success"
- dart_ffi_dir= set ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/app_flowy/linux/flutter/dart_ffi
- # copy dll
- cp ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/rust-lib/target/${RUST_COMPILE_TARGET}/${BUILD_FLAG}/lib${CARGO_MAKE_CRATE_FS_NAME}.${SDK_EXT} \
- ${dart_ffi_dir}/lib${CARGO_MAKE_CRATE_FS_NAME}.${SDK_EXT}
- # copy binding.h
- cp ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/rust-lib/${CARGO_MAKE_CRATE_NAME}/binding.h \
- ${dart_ffi_dir}/binding.h
- """,
- ]
- script_runner = "@duckscript"
- #
- [tasks.copy-to-sys-tmpdir]
- private = true
- condition = { profiles = [ "development-mac" ], platforms = ["mac"] }
- script = [
- """
- # post the dylib target_path that use for flutter unit test
- target_path = set ${TMPDIR}/appflowy/lib${CARGO_MAKE_CRATE_FS_NAME}.${SDK_EXT}
- rm ${target_path}
- cp ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/rust-lib/target/${RUST_COMPILE_TARGET}/${BUILD_FLAG}/lib${CARGO_MAKE_CRATE_FS_NAME}.${SDK_EXT} ${target_path}
- """,
- ]
- script_runner = "@duckscript"
|