On 7/7/26 00:32, Pierrick Bouvier wrote:
This series replaces TCG tests makefiles with meson, with the
goal of having something more readable and maintainable in the long term.
Also it closes the gap that tcg tests had with the rest of tests, by integrating
them with meson directly.

It covers all existing tests for all architectures, including
user/system/multiarch-user/multiarch-system. It implements all requirements
listed on original thread [1].

[1] https://lore.kernel.org/qemu-devel/[email protected]/

We also have for free:
- correct and complete dependencies for any test, including:
   scripts, c.inc, headers, reference files and binaries/plugins.
- catch test declaration issues at configure time vs test time.
- proper data types for variables instead of string expansion with make.

Series first introduce the meson machinery needed in tests/tcg/meson.build, step
by step. Then it adds support for all existing archs. Finally, we remove
Makefiles and configure bits.

Usage:

```
make check-tcg
make check-tcg-aarch64-linux-user
make check-tcg-aarch64-softmmu

make tcg-tests

ninja clean
./pyvenv/bin/meson test aarch64-softmmu-asid2 --verbose
```

A few items were left for further work (out of scope for this series):
- xtensaeb: didn't find how to cross compile for this architecture with what we
   have now in container debian-xtensa-cross. Tips are welcome.
- tricore: implemented but reverted as all tests seem to hang. To be
   investigated.
- riscv64/interruptedmemory.S is hanging. To be investigated.
- i386/test-i386-fprem.c is deactivated for now. It's broken (output does not
   match bare metal result) and is the slowest test we have. To be refactored 
and
   fixed.

v3
--

- add all architectures
- reduce number of plugins tests (only add one test for each plugin from
   multiarch pool)
- add depends for executable - allow to depend on a custom target for generated
   headers (x86_64 mmx, avx)
- add new tests added since last version for aarch64 (mte + gpc)
- refactor series to keep all arch files at end
- add docker host architecture selection

v2
--

- s/mispell/misspell
- moved comment about why we remove 'lib' prefix for plugins
- if user declare a wrong entry in a dictionary, list possible keys
- build tests by default (with 'all' target), as long as cross compiler is
   natively installed, to avoid triggering a container build.
- reword some comments based on reviewers feedback
- always declare all tests and avoid "per config" errors (no 'if' in arch files)
- move compiler feature and gdb version checks directly in tests/tcg/meson.build
- add support for cross containers
- add top target 'tcg-tests' to rebuild all tests

Pierrick Bouvier (91):
   tests/tcg/multiarch/system/memory.c: remove unused variable
   tests/tcg/multiarch/plugin/check-plugin-output.sh: take test output as
     input
   tests/tcg/multiarch/plugin: rename check-plugin-output to
     regex-compare
   tests/tcg: introduce meson.build
   tests/tcg/meson.build: introduce exe_name
   tests/tcg/meson.build: introduce test_name
   tests/tcg/meson.build: introduce cflags
   tests/tcg/meson.build: introduce qemu_args
   tests/tcg/meson.build: introduce env_var
   tests/tcg/plugins: build list of test_plugins
   tests/tcg/meson.build: introduce plugin_test
   tests/tcg/meson.build: test gdb support and introduce gdb_arch
   tests/tcg/meson.build: introduce gdb_test
   tests/tcg/meson.build: add default flag for testing compiler support
   tests/tcg/meson.build: introduce wrapper
   tests/tcg/meson.build: introduce expected_output
   tests/tcg/meson.build: add wrapper run_and_check_forbidden_output
   tests/tcg/meson.build: add wrapper run_with_input
   tests/tcg/meson.build: add wrapper record_replay
   tests/tcg/meson.build: add wrapper check_plugin_output
   tests/tcg/meson.build: add logic to skip tests
   tests/tcg/meson.build: introduce cc_feat and cc_feat_cflags
   tests/tcg/meson.build: introduce gdb_feat and gdb_feat_version
   tests/tcg/meson.build: move gdb_arch support check
   tests/tcg/meson.build: let test infrastructure detect compiler
   tests/docker/docker.py: return error code if probe fails
   tests/docker/docker.py: remove "Image is up to date" info
   tests/tcg/meson.build: introduce cc_dockerfile and cc_docker_arch
   tests/tcg/meson.build: introduce depends
   tests/tcg/meson.build: add top-level 'tcg-tests' target
   tests/tcg/multiarch: declare user tests
   tests/tcg/multiarch: declare system tests
   tests/tcg/meson.build: add generic plugin tests
   tests/tcg/aarch64: user tests
   tests/tcg/aarch64/system/gpc-test.c: remove unused variables
   tests/tcg/aarch64: system tests
   tests/tcg/aarch64_be: user tests
   tests/tcg/alpha: add float reference files
   tests/tcg/alpha: user tests
   tests/tcg/alpha: system tests
   tests/tcg/arm: user tests
   tests/tcg/arm: system tests
   tests/tcg/hexagon/overflow.c: add missing include
   tests/tcg/hexagon: user tests
   tests/tcg/multiarch/sha1.c: fix big endian implementation
   tests/tcg/hppa: add float reference files
   tests/tcg/hppa: user tests
   tests/tcg/i386: add missing float reference files
   tests/tcg/i386: user tests
   tests/tcg/i386: system tests
   tests/tcg/loongarch64: user tests
   tests/tcg/loongarch64: system tests
   tests/tcg/m68k: add float reference files
   tests/tcg/m68k: user tests
   scripts/probe-gdb-support.py: add mapping for mips architecture
   tests/tcg/mips: add float reference files
   test/tcg/mips: user tests
   tests/tcg/mips64: add float reference files
   tests/tcg/mips64: user tests
   tests/tcg/mips64el: add float reference files
   tests/tcg/mips64el: user tests
   tests/docker/dockerfiles/debian-all-test-cross.docker: add or1k
     toolchain
   tests/tcg/or1k/test_addic.c: remove unused variables
   tests/tcg/or1k/test_muli.c: remove set but unused variable
   tests/tcg/or1k: add float reference files
   plugins/api.c: identify or1k pc register and mark it as read only
   tests/tcg/or1k: user tests
   tests/tcg/ppc64: add float reference files
   tests/tcg/ppc64: remove dependency on qemu/compiler.h
   tests/tcg/ppc64: user tests
   tests/tcg/ppc64le: add missing float reference file
   tests/tcg/ppc64le: user tests
   tests/tcg/riscv64: add float reference files
   tests/tcg/riscv64: user tests
   tests/tcg/riscv64: system tests
   tests/tcg/s390x/head64.S: declare _exit symbol after main
   tests/tcg/s390x: add float reference files
   tests/tcg/s390x: user tests
   tests/tcg/s390x: system tests
   tests/tcg/sh4: add float reference files
   tests/tcg/sh4: user tests
   tests/tcg/tricore: system tests
   Revert "tests/tcg/tricore: system tests"
   tests/tcg/x86_64: add missing float reference file
   tests/tcg/x86_64: user tests
   tests/tcg/x86_64: system tests
   tests/tcg/xtensa/crt.S: align .text section
   tests/tcg/xtensa: system tests
   tests: remove tcg tests machinery
   tests/tcg: remove Makefiles
   configure: remove --cross-cc* options

  configure                                     | 473 ---------
  docs/devel/testing/main.rst                   |  22 +-
  plugins/api.c                                 |   2 +
  scripts/probe-gdb-support.py                  |   1 +
  tests/Makefile.include                        |  68 +-
  tests/docker/docker.py                        |   4 +-
  .../dockerfiles/debian-all-test-cross.docker  |  16 +-
  tests/lcitool/refresh                         | 107 +-
  tests/meson.build                             |   2 +-
  tests/tcg/Makefile.target                     | 281 -----
  tests/tcg/aarch64/Makefile.softmmu-target     | 147 ---
  tests/tcg/aarch64/Makefile.target             | 198 ----
  tests/tcg/aarch64/meson.build                 | 195 ++++
  tests/tcg/aarch64/system/gpc-test.c           |   5 -
  tests/tcg/aarch64/system/meson.build          | 108 ++
  tests/tcg/aarch64_be/Makefile.target          |  17 -
  tests/tcg/aarch64_be/meson.build              |  22 +
  tests/tcg/alpha/Makefile.softmmu-target       |  34 -
  tests/tcg/alpha/Makefile.target               |  18 -
  tests/tcg/alpha/float_convd.ref               | 988 ++++++++++++++++++
  tests/tcg/alpha/float_convs.ref               | 748 +++++++++++++
  tests/tcg/alpha/float_madds.ref               | 768 ++++++++++++++
  tests/tcg/alpha/meson.build                   |  55 +
  tests/tcg/alpha/system/meson.build            |  46 +
  tests/tcg/arm/Makefile.softmmu-target         |  80 --
  tests/tcg/arm/Makefile.target                 |  87 --
  tests/tcg/arm/meson.build                     |  80 ++
  tests/tcg/arm/system/meson.build              |  66 ++
  tests/tcg/hexagon/Makefile.target             | 146 ---
  tests/tcg/hexagon/meson.build                 | 111 ++
  tests/tcg/hexagon/overflow.c                  |   1 +
  tests/tcg/hppa/Makefile.target                |  14 -
  tests/tcg/hppa/float_convd.ref                | 988 ++++++++++++++++++
  tests/tcg/hppa/float_convs.ref                | 748 +++++++++++++
  tests/tcg/hppa/float_madds.ref                | 768 ++++++++++++++
  tests/tcg/hppa/meson.build                    |  22 +
  tests/tcg/i386/Makefile.softmmu-target        |  37 -
  tests/tcg/i386/Makefile.target                | 102 --
  tests/tcg/i386/float_convd.conf               | 988 ------------------
  tests/tcg/i386/float_convd.ref                | 988 ++++++++++++++++++
  tests/tcg/i386/float_madds.ref                | 768 ++++++++++++++
  tests/tcg/i386/meson.build                    |  58 +
  tests/tcg/i386/system/meson.build             |  48 +
  tests/tcg/loongarch64/Makefile.softmmu-target |  33 -
  tests/tcg/loongarch64/Makefile.target         |  20 -
  tests/tcg/loongarch64/meson.build             |  32 +
  tests/tcg/loongarch64/system/meson.build      |  47 +
  tests/tcg/m68k/Makefile.target                |   7 -
  tests/tcg/m68k/float_convd.ref                | 988 ++++++++++++++++++
  tests/tcg/m68k/float_convs.ref                | 748 +++++++++++++
  tests/tcg/m68k/float_madds.ref                | 768 ++++++++++++++
  tests/tcg/m68k/meson.build                    |  23 +
  tests/tcg/meson.build                         | 447 ++++++++
  tests/tcg/minilib/Makefile.target             |  21 -
  tests/tcg/mips/Makefile.target                |  19 -
  tests/tcg/mips/float_convd.ref                | 988 ++++++++++++++++++
  tests/tcg/mips/float_convs.ref                | 748 +++++++++++++
  tests/tcg/mips/float_madds.ref                | 768 ++++++++++++++
  tests/tcg/mips/meson.build                    |  25 +
  tests/tcg/mips/user/ase/dsp/Makefile          | 184 ----
  tests/tcg/mips/user/isa/mips64r6/crc/Makefile |  40 -
  tests/tcg/mips/user/isa/r5900/Makefile        |  32 -
  tests/tcg/mips64/Makefile.target              |  20 -
  tests/tcg/mips64/float_convd.ref              | 988 ++++++++++++++++++
  tests/tcg/mips64/float_convs.ref              | 748 +++++++++++++
  tests/tcg/mips64/float_madds.ref              | 768 ++++++++++++++
  tests/tcg/mips64/meson.build                  |  27 +
  tests/tcg/mips64el/Makefile.target            |   8 -
  tests/tcg/mips64el/float_convd.ref            | 988 ++++++++++++++++++
  tests/tcg/mips64el/float_convs.ref            | 748 +++++++++++++
  tests/tcg/mips64el/float_madds.ref            | 768 ++++++++++++++
  tests/tcg/mips64el/meson.build                |  14 +
  tests/tcg/multiarch/Makefile.target           | 233 -----
  tests/tcg/multiarch/meson.build               | 149 +++
  .../multiarch/plugin/check-plugin-output.sh   |  36 -
  tests/tcg/multiarch/plugin/regex-compare.sh   |  28 +
  tests/tcg/multiarch/sha1.c                    |   4 +-
  tests/tcg/multiarch/sha1.ref                  |   1 +
  .../multiarch/system/Makefile.softmmu-target  |  81 --
  tests/tcg/multiarch/system/memory.c           |   3 +-
  tests/tcg/multiarch/system/meson.build        |  53 +
  tests/tcg/or1k/Makefile                       |  71 --
  tests/tcg/or1k/float_convd.ref                | 247 +++++
  tests/tcg/or1k/float_convs.ref                | 187 ++++
  tests/tcg/or1k/float_madds.ref                | 192 ++++
  tests/tcg/or1k/meson.build                    |  72 ++
  tests/tcg/or1k/test_addic.c                   |   2 +-
  tests/tcg/or1k/test_muli.c                    |   5 +-
  tests/tcg/plugins/meson.build                 |  11 +-
  tests/tcg/ppc64/Makefile.target               |  63 --
  tests/tcg/ppc64/float_convd.ref               | 988 ++++++++++++++++++
  tests/tcg/ppc64/float_convs.ref               | 748 +++++++++++++
  tests/tcg/ppc64/float_madds.ref               | 768 ++++++++++++++
  tests/tcg/ppc64/meson.build                   |  56 +
  tests/tcg/ppc64/vector.c                      |  11 +-
  tests/tcg/ppc64/vsx_f2i_nan.c                 |   7 +-
  tests/tcg/ppc64le/Makefile.target             |   7 -
  tests/tcg/ppc64le/float_convd.ref             | 988 ++++++++++++++++++
  tests/tcg/ppc64le/meson.build                 |  14 +
  tests/tcg/riscv64/Makefile.softmmu-target     |  45 -
  tests/tcg/riscv64/Makefile.target             |  20 -
  tests/tcg/riscv64/float_convd.ref             | 988 ++++++++++++++++++
  tests/tcg/riscv64/float_convs.ref             | 748 +++++++++++++
  tests/tcg/riscv64/float_madds.ref             | 768 ++++++++++++++
  tests/tcg/riscv64/meson.build                 |  38 +
  tests/tcg/riscv64/system/meson.build          |  38 +
  tests/tcg/s390x/Makefile.softmmu-target       |  57 -
  tests/tcg/s390x/Makefile.target               | 127 ---
  tests/tcg/s390x/float_convd.ref               | 988 ++++++++++++++++++
  tests/tcg/s390x/float_convs.ref               | 748 +++++++++++++
  tests/tcg/s390x/float_madds.ref               | 768 ++++++++++++++
  tests/tcg/s390x/head64.S                      |   2 +
  tests/tcg/s390x/meson.build                   | 140 +++
  tests/tcg/s390x/system/meson.build            |  92 ++
  tests/tcg/scripts/check_plugin_output.sh      |  25 +
  tests/tcg/scripts/record_replay.sh            |  16 +
  .../scripts/run_and_check_forbidden_output.sh |  19 +
  tests/tcg/scripts/run_and_diff.sh             |  15 +
  tests/tcg/scripts/run_with_input.sh           |  12 +
  tests/tcg/sh4/Makefile.target                 |  18 -
  tests/tcg/sh4/float_convd.ref                 | 494 +++++++++
  tests/tcg/sh4/float_convs.ref                 | 374 +++++++
  tests/tcg/sh4/float_madds.ref                 | 384 +++++++
  tests/tcg/sh4/meson.build                     |  25 +
  tests/tcg/tricore/Makefile.softmmu-target     |  53 -
  tests/tcg/x86_64/Makefile.softmmu-target      |  44 -
  tests/tcg/x86_64/Makefile.target              |  40 -
  tests/tcg/x86_64/float_madds.ref              | 768 ++++++++++++++
  tests/tcg/x86_64/meson.build                  |  83 ++
  tests/tcg/x86_64/system/meson.build           |  62 ++
  tests/tcg/xtensa/Makefile.softmmu-target      |  46 -
  tests/tcg/xtensa/crt.S                        |   1 +
  tests/tcg/xtensa/meson.build                  |  89 ++
  tests/tcg/xtensaeb/Makefile.softmmu-target    |   5 -
  134 files changed, 30491 insertions(+), 4114 deletions(-)
  delete mode 100644 tests/tcg/Makefile.target
  delete mode 100644 tests/tcg/aarch64/Makefile.softmmu-target
  delete mode 100644 tests/tcg/aarch64/Makefile.target
  create mode 100644 tests/tcg/aarch64/meson.build
  create mode 100644 tests/tcg/aarch64/system/meson.build
  delete mode 100644 tests/tcg/aarch64_be/Makefile.target
  create mode 100644 tests/tcg/aarch64_be/meson.build
  delete mode 100644 tests/tcg/alpha/Makefile.softmmu-target
  delete mode 100644 tests/tcg/alpha/Makefile.target
  create mode 100644 tests/tcg/alpha/float_convd.ref
  create mode 100644 tests/tcg/alpha/float_convs.ref
  create mode 100644 tests/tcg/alpha/float_madds.ref
  create mode 100644 tests/tcg/alpha/meson.build
  create mode 100644 tests/tcg/alpha/system/meson.build
  delete mode 100644 tests/tcg/arm/Makefile.softmmu-target
  delete mode 100644 tests/tcg/arm/Makefile.target
  create mode 100644 tests/tcg/arm/meson.build
  create mode 100644 tests/tcg/arm/system/meson.build
  delete mode 100644 tests/tcg/hexagon/Makefile.target
  create mode 100644 tests/tcg/hexagon/meson.build
  delete mode 100644 tests/tcg/hppa/Makefile.target
  create mode 100644 tests/tcg/hppa/float_convd.ref
  create mode 100644 tests/tcg/hppa/float_convs.ref
  create mode 100644 tests/tcg/hppa/float_madds.ref
  create mode 100644 tests/tcg/hppa/meson.build
  delete mode 100644 tests/tcg/i386/Makefile.softmmu-target
  delete mode 100644 tests/tcg/i386/Makefile.target
  delete mode 100644 tests/tcg/i386/float_convd.conf
  create mode 100644 tests/tcg/i386/float_convd.ref
  create mode 100644 tests/tcg/i386/float_madds.ref
  create mode 100644 tests/tcg/i386/meson.build
  create mode 100644 tests/tcg/i386/system/meson.build
  delete mode 100644 tests/tcg/loongarch64/Makefile.softmmu-target
  delete mode 100644 tests/tcg/loongarch64/Makefile.target
  create mode 100644 tests/tcg/loongarch64/meson.build
  create mode 100644 tests/tcg/loongarch64/system/meson.build
  delete mode 100644 tests/tcg/m68k/Makefile.target
  create mode 100644 tests/tcg/m68k/float_convd.ref
  create mode 100644 tests/tcg/m68k/float_convs.ref
  create mode 100644 tests/tcg/m68k/float_madds.ref
  create mode 100644 tests/tcg/m68k/meson.build
  create mode 100644 tests/tcg/meson.build
  delete mode 100644 tests/tcg/minilib/Makefile.target
  delete mode 100644 tests/tcg/mips/Makefile.target
  create mode 100644 tests/tcg/mips/float_convd.ref
  create mode 100644 tests/tcg/mips/float_convs.ref
  create mode 100644 tests/tcg/mips/float_madds.ref
  create mode 100644 tests/tcg/mips/meson.build
  delete mode 100644 tests/tcg/mips/user/ase/dsp/Makefile
  delete mode 100644 tests/tcg/mips/user/isa/mips64r6/crc/Makefile
  delete mode 100644 tests/tcg/mips/user/isa/r5900/Makefile
  delete mode 100644 tests/tcg/mips64/Makefile.target
  create mode 100644 tests/tcg/mips64/float_convd.ref
  create mode 100644 tests/tcg/mips64/float_convs.ref
  create mode 100644 tests/tcg/mips64/float_madds.ref
  create mode 100644 tests/tcg/mips64/meson.build
  delete mode 100644 tests/tcg/mips64el/Makefile.target
  create mode 100644 tests/tcg/mips64el/float_convd.ref
  create mode 100644 tests/tcg/mips64el/float_convs.ref
  create mode 100644 tests/tcg/mips64el/float_madds.ref
  create mode 100644 tests/tcg/mips64el/meson.build
  delete mode 100644 tests/tcg/multiarch/Makefile.target
  create mode 100644 tests/tcg/multiarch/meson.build
  delete mode 100755 tests/tcg/multiarch/plugin/check-plugin-output.sh
  create mode 100755 tests/tcg/multiarch/plugin/regex-compare.sh
  create mode 100644 tests/tcg/multiarch/sha1.ref
  delete mode 100644 tests/tcg/multiarch/system/Makefile.softmmu-target
  create mode 100644 tests/tcg/multiarch/system/meson.build
  delete mode 100644 tests/tcg/or1k/Makefile
  create mode 100644 tests/tcg/or1k/float_convd.ref
  create mode 100644 tests/tcg/or1k/float_convs.ref
  create mode 100644 tests/tcg/or1k/float_madds.ref
  create mode 100644 tests/tcg/or1k/meson.build
  delete mode 100644 tests/tcg/ppc64/Makefile.target
  create mode 100644 tests/tcg/ppc64/float_convd.ref
  create mode 100644 tests/tcg/ppc64/float_convs.ref
  create mode 100644 tests/tcg/ppc64/float_madds.ref
  create mode 100644 tests/tcg/ppc64/meson.build
  delete mode 100644 tests/tcg/ppc64le/Makefile.target
  create mode 100644 tests/tcg/ppc64le/float_convd.ref
  create mode 100644 tests/tcg/ppc64le/meson.build
  delete mode 100644 tests/tcg/riscv64/Makefile.softmmu-target
  delete mode 100644 tests/tcg/riscv64/Makefile.target
  create mode 100644 tests/tcg/riscv64/float_convd.ref
  create mode 100644 tests/tcg/riscv64/float_convs.ref
  create mode 100644 tests/tcg/riscv64/float_madds.ref
  create mode 100644 tests/tcg/riscv64/meson.build
  create mode 100644 tests/tcg/riscv64/system/meson.build
  delete mode 100644 tests/tcg/s390x/Makefile.softmmu-target
  delete mode 100644 tests/tcg/s390x/Makefile.target
  create mode 100644 tests/tcg/s390x/float_convd.ref
  create mode 100644 tests/tcg/s390x/float_convs.ref
  create mode 100644 tests/tcg/s390x/float_madds.ref
  create mode 100644 tests/tcg/s390x/meson.build
  create mode 100644 tests/tcg/s390x/system/meson.build
  create mode 100755 tests/tcg/scripts/check_plugin_output.sh
  create mode 100755 tests/tcg/scripts/record_replay.sh
  create mode 100755 tests/tcg/scripts/run_and_check_forbidden_output.sh
  create mode 100755 tests/tcg/scripts/run_and_diff.sh
  create mode 100755 tests/tcg/scripts/run_with_input.sh
  delete mode 100644 tests/tcg/sh4/Makefile.target
  create mode 100644 tests/tcg/sh4/float_convd.ref
  create mode 100644 tests/tcg/sh4/float_convs.ref
  create mode 100644 tests/tcg/sh4/float_madds.ref
  create mode 100644 tests/tcg/sh4/meson.build
  delete mode 100644 tests/tcg/tricore/Makefile.softmmu-target
  delete mode 100644 tests/tcg/x86_64/Makefile.softmmu-target
  delete mode 100644 tests/tcg/x86_64/Makefile.target
  create mode 100644 tests/tcg/x86_64/float_madds.ref
  create mode 100644 tests/tcg/x86_64/meson.build
  create mode 100644 tests/tcg/x86_64/system/meson.build
  delete mode 100644 tests/tcg/xtensa/Makefile.softmmu-target
  create mode 100644 tests/tcg/xtensa/meson.build
  delete mode 100644 tests/tcg/xtensaeb/Makefile.softmmu-target


Seems like something is wrong with cross-compiler detection now.
On Fedora I get:

FAILED: tests/tcg/s390x-softmmu-memory.test
/usr/lib64/ccache/s390x-linux-gnu-gcc /mnt/root/home/iii/qemu-worktrees/[email protected]/tests/tcg/multiarch/system/memory.c -o tests/tcg/s390x-softmmu-memory.test -static -MMD -MF tests/tcg/s390x-softmmu-memory.d -Wall -Werror -O0 -g -fno-strict-aliasing -nostdlib -I /mnt/root/home/iii/qemu-worktrees/[email protected]/tests/tcg/s390x/system/../../minilib /mnt/root/home/iii/qemu-worktrees/[email protected]/tests/tcg/s390x/system/../../minilib/printf.c -I /mnt/root/home/iii/qemu-worktrees/[email protected]/include/hw/s390x/ipl -I /mnt/root/home/iii/qemu-worktrees/[email protected]/roms/SLOF/lib/libc/include -march=z13 ../tests/tcg/s390x/system/../head64.S ../tests/tcg/s390x/system/../console.c -DCHECK_UNALIGNED=0 In file included from /mnt/root/home/iii/qemu-worktrees/[email protected]/tests/tcg/multiarch/system/memory.c:15: /usr/lib/gcc/s390x-linux-gnu/15/include/stdint.h:11:16: fatal error: stdint.h: No such file or directory
   11 | # include_next <stdint.h>
      |                ^~~~~~~~~~

The cross-compiler situation on Fedora is that they ship the
cross-compiler itself, but no userspace headers, so it's usable
only for kernel builds. In this case QEMU should fall back to Docker,
which works for me on master, but not with this series.

Reply via email to