mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-02-22 03:12:22 +00:00
Add support for explicit -sdl flag to QEMU
Not all QEMU builds default to SDL graphics for their display. Newer QEMU now has an explicit -sdl flag, which we can use to explicitly request SDL intead of relying on the default. This protects libvirt against unexpected changes in graphics default * src/qemu/qemu_conf.c, src/qemu/qemu_conf.h: Probe for -sdl flag and use it if it is found * tests/qemuhelptest.c: Add SDL flag to tests
This commit is contained in:
parent
d86c876a66
commit
4f6c999006
@ -1117,6 +1117,8 @@ static unsigned int qemudComputeCmdFlags(const char *help,
|
||||
flags |= QEMUD_CMD_FLAG_BALLOON;
|
||||
if (strstr(help, "-device"))
|
||||
flags |= QEMUD_CMD_FLAG_DEVICE;
|
||||
if (strstr(help, "-sdl"))
|
||||
flags |= QEMUD_CMD_FLAG_SDL;
|
||||
|
||||
if (version >= 9000)
|
||||
flags |= QEMUD_CMD_FLAG_VNC_COLON;
|
||||
@ -3426,6 +3428,12 @@ int qemudBuildCommandLine(virConnectPtr conn,
|
||||
*/
|
||||
ADD_ENV_COPY("QEMU_AUDIO_DRV");
|
||||
ADD_ENV_COPY("SDL_AUDIODRIVER");
|
||||
|
||||
/* New QEMU has this flag to let us explicitly ask for
|
||||
* SDL graphics. This is better than relying on the
|
||||
* default, since the default changes :-( */
|
||||
if (qemuCmdFlags & QEMUD_CMD_FLAG_SDL)
|
||||
ADD_ARG_LIT("-sdl");
|
||||
}
|
||||
|
||||
if (def->nvideos) {
|
||||
|
@ -79,6 +79,7 @@ enum qemud_cmd_flags {
|
||||
QEMUD_CMD_FLAG_MONITOR_JSON = (1 << 24), /* JSON mode for monitor */
|
||||
QEMUD_CMD_FLAG_BALLOON = (1 << 25), /* -balloon available */
|
||||
QEMUD_CMD_FLAG_DEVICE = (1 << 26), /* Is the new -device arg available */
|
||||
QEMUD_CMD_FLAG_SDL = (1 << 27), /* Is the new -sdl arg available */
|
||||
};
|
||||
|
||||
/* Main driver state */
|
||||
|
@ -140,7 +140,8 @@ mymain(int argc, char **argv)
|
||||
QEMUD_CMD_FLAG_DRIVE_SERIAL |
|
||||
QEMUD_CMD_FLAG_VGA |
|
||||
QEMUD_CMD_FLAG_0_10 |
|
||||
QEMUD_CMD_FLAG_ENABLE_KVM,
|
||||
QEMUD_CMD_FLAG_ENABLE_KVM |
|
||||
QEMUD_CMD_FLAG_SDL,
|
||||
10005, 0, 0);
|
||||
DO_TEST("qemu-kvm-0.10.5",
|
||||
QEMUD_CMD_FLAG_VNC_COLON |
|
||||
@ -159,7 +160,8 @@ mymain(int argc, char **argv)
|
||||
QEMUD_CMD_FLAG_VGA |
|
||||
QEMUD_CMD_FLAG_0_10 |
|
||||
QEMUD_CMD_FLAG_PCIDEVICE |
|
||||
QEMUD_CMD_FLAG_MEM_PATH,
|
||||
QEMUD_CMD_FLAG_MEM_PATH |
|
||||
QEMUD_CMD_FLAG_SDL,
|
||||
10005, 1, 0);
|
||||
DO_TEST("kvm-86",
|
||||
QEMUD_CMD_FLAG_VNC_COLON |
|
||||
@ -177,7 +179,8 @@ mymain(int argc, char **argv)
|
||||
QEMUD_CMD_FLAG_DRIVE_SERIAL |
|
||||
QEMUD_CMD_FLAG_VGA |
|
||||
QEMUD_CMD_FLAG_0_10 |
|
||||
QEMUD_CMD_FLAG_PCIDEVICE,
|
||||
QEMUD_CMD_FLAG_PCIDEVICE |
|
||||
QEMUD_CMD_FLAG_SDL,
|
||||
10050, 1, 0);
|
||||
DO_TEST("qemu-kvm-0.11.0-rc2",
|
||||
QEMUD_CMD_FLAG_VNC_COLON |
|
||||
@ -198,7 +201,8 @@ mymain(int argc, char **argv)
|
||||
QEMUD_CMD_FLAG_PCIDEVICE |
|
||||
QEMUD_CMD_FLAG_MEM_PATH |
|
||||
QEMUD_CMD_FLAG_ENABLE_KVM |
|
||||
QEMUD_CMD_FLAG_BALLOON,
|
||||
QEMUD_CMD_FLAG_BALLOON |
|
||||
QEMUD_CMD_FLAG_SDL,
|
||||
10092, 1, 0);
|
||||
DO_TEST("qemu-0.12.1",
|
||||
QEMUD_CMD_FLAG_VNC_COLON |
|
||||
@ -214,6 +218,7 @@ mymain(int argc, char **argv)
|
||||
QEMUD_CMD_FLAG_VGA |
|
||||
QEMUD_CMD_FLAG_0_10 |
|
||||
QEMUD_CMD_FLAG_ENABLE_KVM |
|
||||
QEMUD_CMD_FLAG_SDL |
|
||||
QEMUD_CMD_FLAG_XEN_DOMID |
|
||||
QEMUD_CMD_FLAG_MIGRATE_QEMU_UNIX |
|
||||
QEMUD_CMD_FLAG_CHARDEV |
|
||||
|
Loading…
x
Reference in New Issue
Block a user