Makefile.toml 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. extend = [
  2. { path = "scripts/makefile/desktop.toml" },
  3. { path = "scripts/makefile/protobuf.toml" },
  4. { path = "scripts/makefile/tests.toml" },
  5. { path = "scripts/makefile/docker.toml" },
  6. ]
  7. [env]
  8. CARGO_MAKE_EXTEND_WORKSPACE_MAKEFILE = true
  9. CARGO_MAKE_CRATE_FS_NAME = "dart_ffi"
  10. CARGO_MAKE_CRATE_NAME = "dart-ffi"
  11. DEV = true
  12. LIB_OUT_DIR = "debug"
  13. RELEASE = false
  14. #TARGET_OS = "unknown"
  15. [tasks.setup-crate-type]
  16. private = true
  17. script = [
  18. """
  19. toml = readfile ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/rust-lib/${CARGO_MAKE_CRATE_NAME}/Cargo.toml
  20. crate_type = set ""
  21. os = get_env TARGET_OS
  22. is_android = eq ${os} "android"
  23. is_ios = eq ${os} "ios"
  24. is_macos = eq ${os} "macos"
  25. is_pad = eq ${os} "pad"
  26. if ${is_android}
  27. crate_type = set "cdylib"
  28. elseif ${is_ios}
  29. crate_type = set "staticlib"
  30. elseif ${is_macos}
  31. crate_type = set "cdylib"
  32. elseif ${is_pad}
  33. crate_type = set "cdylib"
  34. else
  35. crate_type = set "rlib"
  36. end
  37. val = replace ${toml} "rlib" ${crate_type}
  38. result = writefile ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/rust-lib/${CARGO_MAKE_CRATE_NAME}/Cargo.toml ${val}
  39. assert ${result}
  40. """,
  41. ]
  42. script_runner = "@duckscript"
  43. [tasks.restore-crate-type]
  44. private = true
  45. script = [
  46. """
  47. toml = readfile ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/rust-lib/${CARGO_MAKE_CRATE_NAME}/Cargo.toml
  48. crate_type = set ""
  49. os = get_env TARGET_OS
  50. is_android = eq ${os} "android"
  51. is_ios = eq ${os} "ios"
  52. is_macos = eq ${os} "macos"
  53. is_pad = eq ${os} "pad"
  54. if ${is_android}
  55. crate_type = set "cdylib"
  56. elseif ${is_ios}
  57. crate_type = set "staticlib"
  58. elseif ${is_macos}
  59. crate_type = set "cdylib"
  60. elseif ${is_pad}
  61. crate_type = set "cdylib"
  62. else
  63. crate_type = set "rlib"
  64. end
  65. val = replace ${toml} ${crate_type} "rlib"
  66. result = writefile ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/rust-lib/${CARGO_MAKE_CRATE_NAME}/Cargo.toml ${val}
  67. assert ${result}
  68. """,
  69. ]
  70. script_runner = "@duckscript"