mbox series

[00/17] More build system cleanups, optional non-relocatable installs

Message ID 20231016063127.161204-1-pbonzini@redhat.com
Headers show
Series More build system cleanups, optional non-relocatable installs | expand

Message

Paolo Bonzini Oct. 16, 2023, 6:31 a.m. UTC
This mostly removes or simplifies some option parsing code, with some extra
items of interest:

- support for non-relocatable installs, which Michael Tokarev requested
  a while ago.

- the main change outside configure and meson.build is a simplification
  of GDB conditionals, by unifying HAVE_GDB_BIN and HOST_GDB_SUPPORTS_ARCH
  in tests/tcg.

- on the "future work" side, patch 2 adds a macro IS_ENABLED() that can
  be used in the future to replace #ifdef statements with "if()" so that
  both sides are compiled.

- qemu-ga parameters (manufacturer, distro, version) can be configured
  with command-line options in addition to environment variables

- finally, some changes to add comments or put related code together

Paolo

Paolo Bonzini (17):
  meson: do not build shaders by default
  meson: do not use set10
  meson, cutils: allow non-relocatable installs
  configure: clean up handling of CFI option
  hw/xen: cleanup sourcesets
  hw/remote: move stub vfu_object_set_bus_irq out of stubs/
  tests/tcg/arm: move non-SVE tests out of conditional
  configure, tests/tcg: simplify GDB conditionals
  configure: clean up plugin option handling
  configure: clean up PIE option handling
  configure: remove some dead cruft
  configure: move target-specific defaults to an external machine file
  configure: move environment-specific defaults to config-meson.cross
  configure: unify handling of several Debian cross containers
  configure, meson: use command line options to configure qemu-ga
  meson-buildoptions: document the data at the top
  meson: add a note on why we use config_host for program paths

 configs/meson/windows.txt                     |   9 +
 configure                                     | 250 +++++++-----------
 hw/arm/meson.build                            |   1 -
 hw/i386/meson.build                           |   1 -
 hw/remote/meson.build                         |   4 +-
 .../remote/vfio-user-obj-stub.c               |   0
 hw/xen/meson.build                            |  11 +-
 include/qemu/compiler.h                       |  15 ++
 meson.build                                   |  32 ++-
 meson_options.txt                             |   9 +
 qga/meson.build                               |   9 +-
 scripts/meson-buildoptions.py                 |  32 ++-
 scripts/meson-buildoptions.sh                 |  26 +-
 stubs/meson.build                             |   1 -
 tests/tcg/aarch64/Makefile.target             |  16 +-
 tests/tcg/multiarch/Makefile.target           |  18 +-
 .../multiarch/system/Makefile.softmmu-target  |  15 +-
 tests/tcg/s390x/Makefile.target               |   6 +-
 tests/unit/test-coroutine.c                   |   2 +-
 ui/shader/meson.build                         |   1 +
 util/cutils.c                                 |  11 +-
 util/qemu-coroutine.c                         |   4 +-
 22 files changed, 251 insertions(+), 222 deletions(-)
 create mode 100644 configs/meson/windows.txt
 rename stubs/vfio-user-obj.c => hw/remote/vfio-user-obj-stub.c (100%)