replay: do not build if TCG is not available
authorClaudio Fontana <cfontana@suse.de>
Tue, 13 Oct 2020 19:21:23 +0000 (21:21 +0200)
committerPaolo Bonzini <pbonzini@redhat.com>
Thu, 22 Oct 2020 15:53:54 +0000 (11:53 -0400)
commit9b1c911654e9d4937f10cb347cf581d50771ee5b
treef5dd92c503917b9fbe2798f48a706eafa88693c9
parentc51a5a23d87be2cfd8e2d739d11475b251f398cb
replay: do not build if TCG is not available

this fixes non-TCG builds broken recently by replay reverse debugging.

Stub the needed functions in stub/, splitting roughly between functions
needed only by system emulation, by system emulation and tools,
and by everyone.  This includes duplicating some code in replay/, and
puts the logic for non-replay related events in the replay/ module (+
the stubs), so this should be revisited in the future.

Surprisingly, only _one_ qtest was affected by this, ide-test.c, which
resulted in a buzz as the bh events were never delivered, and the bh
never executed.

Many other subsystems _should_ have been affected.

This fixes the immediate issue, however a better way to group replay
functionality to TCG-only code could be developed in the long term.

Signed-off-by: Claudio Fontana <cfontana@suse.de>
Message-Id: <20201013192123.22632-4-cfontana@suse.de>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
block/meson.build
net/meson.build
replay/meson.build
replay/stubs-system.c [new file with mode: 0644]
stubs/meson.build
stubs/replay-tools.c [new file with mode: 0644]
stubs/replay-user.c [deleted file]
stubs/replay.c
tests/ptimer-test-stubs.c
tests/qtest/qmp-cmd-test.c