Corrected Building.md and added additional content. Closes https://github.com/dart-lang/sdk/pull/60167 GitOrigin-RevId: 15572be15068c18e0b9787daf7fc2389ae6ee247 Change-Id: I1769a7f24dd38e1f7306372ef480af349aac30e8 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/410446 Commit-Queue: Slava Egorov <vegorov@google.com> Reviewed-by: Slava Egorov <vegorov@google.com>
diff --git a/docs/Building-Dart-SDK-for-ARM-or-RISC-V.md b/docs/Building-Dart-SDK-for-ARM-or-RISC-V.md index c7a589a..7e33f7b 100644 --- a/docs/Building-Dart-SDK-for-ARM-or-RISC-V.md +++ b/docs/Building-Dart-SDK-for-ARM-or-RISC-V.md
@@ -63,3 +63,26 @@ $ ./tools/linux_dist_support/create_tarball.py $ ./tools/linux_dist_support/create_debian_packages.py -a {ia32, x64, arm, arm64, riscv64} ``` + +# Testing + +In addition to cross-compiling the Dart SDK, test items can also be cross-compiled. Even without the corresponding hardware, you can quickly verify if the source code modifications you made are correct. Below is a simple method for development on the riscv64 platform for your reference. + +Cross-compile the test items on x86_64 Linux to riscv64 and perform correctness check: +1. Follow the steps above to cross-compile the riscv64 sdk. +2. Cross-compile the test items by running: `./tools/build.py --mode release --arch riscv64 most run_ffi_unit_tests`. +3. Install the necessary QEMU dependencies: `sudo apt install qemu-user qemu-user-static qemu-system`. +4. Run the test items, e.g., `tests/lib`: + +```bash +export QEMU_LD_PREFIX=/usr/riscv64-linux-gnu + +./tools/test.py \ + --runtime vm \ + --progress color \ + --arch riscv64 \ + --mode release \ + --time \ + --tasks 8 \ + lib +``` \ No newline at end of file
diff --git a/docs/Building.md b/docs/Building.md index 18fd1cf..c7c6c8d 100644 --- a/docs/Building.md +++ b/docs/Building.md
@@ -189,7 +189,6 @@ --progress color \ --arch x64 \ --mode release \ - --report \ --time \ --tasks 6 \ language @@ -198,13 +197,10 @@ VM tests example: ```bash ./tools/test.py \ - --compiler none \ --runtime vm \ --progress color \ --arch x64 \ --mode release \ - --checked \ - --report \ --time \ --tasks 6 \ language @@ -218,13 +214,13 @@ --progress color \ --arch x64 \ --mode release \ - --checked \ - --report \ --time \ --tasks 6 \ language ``` +In the above examples: `--progress` is used to style the progress bar in terminal; `--time` is used to print time information; `--tasks` is used to set the number of parallel tasks; you can use `. /tools/test.py --help` for more details. + ## Troubleshooting and tips for browser tests To debug a browser test failure, you must start a local http server to serve the test. This is made easy with a helper script in dart/tools/testing. The error report from test.py gives the command line to start the server in a message that reads: ```bash