mbox series

[v4,00/13] user-mode: Prune build dependencies (part 1)

Message ID 20200522172510.25784-1-philmd@redhat.com
Headers show
Series user-mode: Prune build dependencies (part 1) | expand

Message

Philippe Mathieu-Daudé May 22, 2020, 5:24 p.m. UTC
This is the first part of a series reducing user-mode
dependencies. By stripping out unused code, the build
and testing time is reduced (as is space used by objects).

Part 1 (generic):
- reduce user-mode object list
- remove some migration code from user-mode
- remove cpu_get_crash_info()

Patches 1-12 are fully reviewed.

Since v3:
- Rebased due to (trivial) conflicts after:
  . commit 2df9f5718df7722924699a3754f99165e2f4ae35
    ui/win32-kbd-hook: handle AltGr in a hook procedure
  . commit b69c3c21a5d11075d42100d5cfe0a736593fae6b
    qdev: Unrealize must not fail
  . commit d2623129a7dec1d3041ad1221dda1ca49c667532
    qom: Drop parameter @errp of object_property_add() & friends
- Added patch #13 'Restrict ui/win32-kbd-hook to system-mode'

Since v2:
- Rebased due to conflict when applying patch:
  "util/Makefile: Reduce the user-mode object list"
  because commit 01ef6b9e4e modified util/Makefile.objs:
  "linux-user: factor out reading of /proc/self/maps"

Since v1:
- Addressed Laurent/Richard review comments
- Removed 'exec: Drop redundant #ifdeffery'
- Removed 'target: Restrict write_elfXX_note() handlers to system-mode'

$ git backport-diff -u v2 -r v3
Key:
[----] : patches are identical
[####] : number of functional differences between upstream/downstream patch
[down] : patch is downstream-only
The flags [FC] indicate (F)unctional and (C)ontextual differences, respectively

001/13:[----] [--] 'Makefile: Only build virtiofsd if system-mode is enabled'
002/13:[----] [--] 'configure: Avoid building TCG when not needed'
003/13:[----] [--] 'tests/Makefile: Only display TCG-related tests when TCG is available'
004/13:[----] [--] 'tests/Makefile: Restrict some softmmu-only tests'
005/13:[----] [--] 'util/Makefile: Reduce the user-mode object list'
006/13:[----] [-C] 'stubs/Makefile: Reduce the user-mode object list'
007/13:[----] [--] 'target/riscv/cpu: Restrict CPU migration to system-mode'
008/13:[----] [--] 'exec: Assert CPU migration is not used on user-only build'
009/13:[----] [--] 'arch_init: Remove unused 'qapi-commands-misc.h' include'
010/13:[----] [-C] 'target/i386: Restrict CpuClass::get_crash_info() to system-mode'
011/13:[----] [-C] 'target/s390x: Restrict CpuClass::get_crash_info() to system-mode'
012/13:[----] [--] 'hw/core: Restrict CpuClass::get_crash_info() to system-mode'
013/13:[down] 'stubs: Restrict ui/win32-kbd-hook to system-mode'

Philippe Mathieu-Daudé (13):
  Makefile: Only build virtiofsd if system-mode is enabled
  configure: Avoid building TCG when not needed
  tests/Makefile: Only display TCG-related tests when TCG is available
  tests/Makefile: Restrict some softmmu-only tests
  util/Makefile: Reduce the user-mode object list
  stubs/Makefile: Reduce the user-mode object list
  target/riscv/cpu: Restrict CPU migration to system-mode
  exec: Assert CPU migration is not used on user-only build
  arch_init: Remove unused 'qapi-commands-misc.h' include
  target/i386: Restrict CpuClass::get_crash_info() to system-mode
  target/s390x: Restrict CpuClass::get_crash_info() to system-mode
  hw/core: Restrict CpuClass::get_crash_info() to system-mode
  stubs: Restrict ui/win32-kbd-hook to system-mode

 configure              |  4 +++
 Makefile               |  2 +-
 include/hw/core/cpu.h  |  7 ++++-
 arch_init.c            |  1 -
 exec.c                 |  4 ++-
 hw/core/cpu.c          |  2 ++
 target/i386/cpu.c      |  6 ++++-
 target/riscv/cpu.c     |  6 +++--
 target/s390x/cpu.c     | 12 ++++-----
 stubs/Makefile.objs    | 54 ++++++++++++++++++++++----------------
 tests/Makefile.include | 18 +++++++------
 util/Makefile.objs     | 59 +++++++++++++++++++++++++++---------------
 12 files changed, 109 insertions(+), 66 deletions(-)