Instead of reusing DT_SDL for Cocoa, use DT_COCOA to indicate that a Cocoa display was requested.
configure already ensures CONFIG_COCOA and CONFIG_SDL are never set at the same time. The only case where DT_SDL is used outside a #ifdef CONFIG_SDL block is in the no_frame/alt_grab/ctrl_grab check. That means the only user-visible change is that we will start printing a warning if the SDL-specific options are used in Cocoa mode. This is a bugfix, because no_frame/alt_grab/ctrl_grab are not used by Cocoa code. Cc: Andreas Färber <andreas.faer...@web.de> Cc: Peter Maydell <peter.mayd...@linaro.org> Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- include/sysemu/sysemu.h | 1 + vl.c | 6 ++++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h index f992494..0f4e520 100644 --- a/include/sysemu/sysemu.h +++ b/include/sysemu/sysemu.h @@ -137,6 +137,7 @@ typedef enum DisplayType DT_DEFAULT, DT_CURSES, DT_SDL, + DT_COCOA, DT_GTK, DT_NOGRAPHIC, DT_NONE, diff --git a/vl.c b/vl.c index 7d993a5..bba1b0a 100644 --- a/vl.c +++ b/vl.c @@ -4247,8 +4247,10 @@ int main(int argc, char **argv, char **envp) if (display_type == DT_DEFAULT && !display_remote) { #if defined(CONFIG_GTK) display_type = DT_GTK; -#elif defined(CONFIG_SDL) || defined(CONFIG_COCOA) +#elif defined(CONFIG_SDL) display_type = DT_SDL; +#elif defined(CONFIG_COCOA) + display_type = DT_COCOA; #elif defined(CONFIG_VNC) vnc_parse("localhost:0,to=99,id=default", &error_abort); show_vnc_port = 1; @@ -4588,7 +4590,7 @@ int main(int argc, char **argv, char **envp) sdl_display_init(ds, full_screen, no_frame); break; #elif defined(CONFIG_COCOA) - case DT_SDL: + case DT_COCOA: cocoa_display_init(ds, full_screen); break; #endif -- 2.1.0