Makefile.toml 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. [config]
  2. default_to_workspace = false
  3. [tasks.clean]
  4. command = "cargo"
  5. args = ["clean"]
  6. [tasks.prototyper-nemu-build]
  7. command = "cargo"
  8. args = ["build", "-prustsbi-prototyper", "--release", "--features=nemu,payload"]
  9. [tasks.prototyper-nemu]
  10. command = "rust-objcopy"
  11. args = ["--binary-architecture=riscv64", "target/riscv64imac-unknown-none-elf/release/rustsbi-prototyper",
  12. "--output-target=binary", "target/riscv64imac-unknown-none-elf/release/rustsbi-prototyper.bin"
  13. ]
  14. dependencies = ["prototyper-nemu-build"]
  15. [tasks.prototyper-build]
  16. command = "cargo"
  17. args = ["build", "-prustsbi-prototyper", "--release", "--target", "riscv64imac-unknown-none-elf", "-Zbuild-std=core"]
  18. env = {"RUSTFLAGS"="-C relocation-model=pie -C link-arg=-pie" }
  19. [tasks.prototyper]
  20. command = "rust-objcopy"
  21. args = ["--binary-architecture=riscv64", "target/riscv64imac-unknown-none-elf/release/rustsbi-prototyper",
  22. "--output-target=binary", "target/riscv64imac-unknown-none-elf/release/rustsbi-prototyper.bin"
  23. ]
  24. dependencies = ["prototyper-build"]
  25. [tasks.test-kernel-build]
  26. command = "cargo"
  27. args = ["build", "-prustsbi-test-kernel", "--release"]
  28. env = { "RUSTFLAGS"= { unset = true }}
  29. [tasks.test-kernel]
  30. command = "rust-objcopy"
  31. args = ["--binary-architecture=riscv64", "target/riscv64imac-unknown-none-elf/release/rustsbi-test-kernel",
  32. "--output-target=binary", "target/riscv64imac-unknown-none-elf/release/rustsbi-test-kernel.bin"
  33. ]
  34. dependencies = ["test-kernel-build"]
  35. [tasks.test-kernel-itb]
  36. script = '''
  37. cp test-kernel/scripts/rustsbi-test-kernel.its target/riscv64imac-unknown-none-elf/release
  38. cd target/riscv64imac-unknown-none-elf/release/
  39. mkimage -f rustsbi-test-kernel.its rustsbi-test-kernel.itb
  40. rm rustsbi-test-kernel.its
  41. cd ../../../
  42. '''
  43. dependencies = ["prototyper", "test-kernel"]