Control: retitle -1 debci tests always fail with qemu version 10+
Control: severity -1 serious

On 25.04.2025 11:31, Michael Tokarev wrote:

See, for example, 
https://ci.debian.net/packages/libs/libstdc++-riscv64-unknown-elf/testing/amd64/60220610/
(or from current qemu package tracking page, 
https://tracker.debian.org/pkg/qemu).

The relevant part is:

  riscv64-unknown-elf-g++ -specs=picolibcpp.specs --oslib=semihost -Os 
-march=rv32imac -mabi=ilp32 -Triscv-cpp.ld -Wl,-Map=hello-worldpp-riscv.map -o 
hello-worldpp-riscv.elf hello-worldpp.cpp
  /usr/lib/gcc/riscv64-unknown-elf/14.2.0/../../../riscv64-unknown-elf/bin/ld: 
warning: hello-worldpp-riscv.elf has a LOAD segment with RWX permissions
  ./run-riscv hello-worldpp-riscv.elf | cmp - ./expected-output
  qemu-system-riscv32: H extension implicitly requires S-mode

This is because of the wrong qemu version checks in
debian/tests/hello-world/run-riscv :

  if $qemu --version | grep -q 'version [789]'; then

this works for qemu version from 7.0 to 9.2, but
does not work with qemu 10.0 and up.  The same is
true for several subsequent tests too.

It should be, I guess, like

  qemu_major=$($qemu --version | cut -d. -f1)
  if [ $qemu_major -ge 7 ]; then...

or something like this.

Thanks,

/mjt

Reply via email to