qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH] Unbreak -no-quit for GTK when SDL is disabled
@ 2013-06-10 21:34 Peter Wu
  2013-06-10 21:53 ` Anthony Liguori
  0 siblings, 1 reply; 3+ messages in thread
From: Peter Wu @ 2013-06-10 21:34 UTC (permalink / raw)
  To: qemu-devel, qemu-trivial

When QEMU is built without SDL support, -no-quit would print an error message
that SDL is disabled. Since GTK also supports -no-quit, enable the option when
GTK or SDL is enabled at compile time.

While at it, do not create the no_quit variable when it is not used.

Signed-off-by: Peter Wu <lekensteyn@gmail.com>
---
 include/sysemu/sysemu.h |  2 ++
 vl.c                    | 13 +++++++++----
 2 files changed, 11 insertions(+), 4 deletions(-)

diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h
index 2fb71af..b9b8e52 100644
--- a/include/sysemu/sysemu.h
+++ b/include/sysemu/sysemu.h
@@ -117,7 +117,9 @@ extern int smp_cpus;
 extern int max_cpus;
 extern int cursor_hide;
 extern int graphic_rotate;
+#if defined(CONFIG_SDL) || defined(CONFIG_GTK)
 extern int no_quit;
+#endif
 extern int no_shutdown;
 extern int semihosting_enabled;
 extern int old_param;
diff --git a/vl.c b/vl.c
index cfd2d3e..74ab050 100644
--- a/vl.c
+++ b/vl.c
@@ -202,7 +202,9 @@ static int full_screen = 0;
 #ifdef CONFIG_SDL
 static int no_frame = 0;
 #endif
+#if defined(CONFIG_SDL) || defined(CONFIG_GTK)
 int no_quit = 0;
+#endif
 CharDriverState *serial_hds[MAX_SERIAL_PORTS];
 CharDriverState *parallel_hds[MAX_PARALLEL_PORTS];
 CharDriverState *virtcon_hds[MAX_VIRTIO_CONSOLES];
@@ -3523,6 +3525,13 @@ int main(int argc, char **argv, char **envp)
             case QEMU_OPTION_full_screen:
                 full_screen = 1;
                 break;
+            case QEMU_OPTION_no_quit:
+#if defined(CONFIG_SDL) || defined(CONFIG_GTK)
+                no_quit = 1;
+#else
+                fprintf(stderr, "SDL and GTK support are disabled\n");
+#endif
+                break;
 #ifdef CONFIG_SDL
             case QEMU_OPTION_no_frame:
                 no_frame = 1;
@@ -3533,9 +3542,6 @@ int main(int argc, char **argv, char **envp)
             case QEMU_OPTION_ctrl_grab:
                 ctrl_grab = 1;
                 break;
-            case QEMU_OPTION_no_quit:
-                no_quit = 1;
-                break;
             case QEMU_OPTION_sdl:
                 display_type = DT_SDL;
                 break;
@@ -3543,7 +3549,6 @@ int main(int argc, char **argv, char **envp)
             case QEMU_OPTION_no_frame:
             case QEMU_OPTION_alt_grab:
             case QEMU_OPTION_ctrl_grab:
-            case QEMU_OPTION_no_quit:
             case QEMU_OPTION_sdl:
                 fprintf(stderr, "SDL support is disabled\n");
                 exit(1);
-- 
1.8.3

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [Qemu-devel] [PATCH] Unbreak -no-quit for GTK when SDL is disabled
  2013-06-10 21:34 [Qemu-devel] [PATCH] Unbreak -no-quit for GTK when SDL is disabled Peter Wu
@ 2013-06-10 21:53 ` Anthony Liguori
  2013-06-11  8:53   ` Peter Wu
  0 siblings, 1 reply; 3+ messages in thread
From: Anthony Liguori @ 2013-06-10 21:53 UTC (permalink / raw)
  To: Peter Wu, qemu-devel, qemu-trivial

Peter Wu <lekensteyn@gmail.com> writes:

> When QEMU is built without SDL support, -no-quit would print an error message
> that SDL is disabled. Since GTK also supports -no-quit, enable the option when
> GTK or SDL is enabled at compile time.
>
> While at it, do not create the no_quit variable when it is not used.
>
> Signed-off-by: Peter Wu <lekensteyn@gmail.com>

Any harm in just making -no-quit unconditional?

It's a nop for VNC and presumably for spice too but it's not incorrect
AFAICT.

Would be nice to drop #ifdefs if we can.

Regards,

Anthony Liguori

> ---
>  include/sysemu/sysemu.h |  2 ++
>  vl.c                    | 13 +++++++++----
>  2 files changed, 11 insertions(+), 4 deletions(-)
>
> diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h
> index 2fb71af..b9b8e52 100644
> --- a/include/sysemu/sysemu.h
> +++ b/include/sysemu/sysemu.h
> @@ -117,7 +117,9 @@ extern int smp_cpus;
>  extern int max_cpus;
>  extern int cursor_hide;
>  extern int graphic_rotate;
> +#if defined(CONFIG_SDL) || defined(CONFIG_GTK)
>  extern int no_quit;
> +#endif
>  extern int no_shutdown;
>  extern int semihosting_enabled;
>  extern int old_param;
> diff --git a/vl.c b/vl.c
> index cfd2d3e..74ab050 100644
> --- a/vl.c
> +++ b/vl.c
> @@ -202,7 +202,9 @@ static int full_screen = 0;
>  #ifdef CONFIG_SDL
>  static int no_frame = 0;
>  #endif
> +#if defined(CONFIG_SDL) || defined(CONFIG_GTK)
>  int no_quit = 0;
> +#endif
>  CharDriverState *serial_hds[MAX_SERIAL_PORTS];
>  CharDriverState *parallel_hds[MAX_PARALLEL_PORTS];
>  CharDriverState *virtcon_hds[MAX_VIRTIO_CONSOLES];
> @@ -3523,6 +3525,13 @@ int main(int argc, char **argv, char **envp)
>              case QEMU_OPTION_full_screen:
>                  full_screen = 1;
>                  break;
> +            case QEMU_OPTION_no_quit:
> +#if defined(CONFIG_SDL) || defined(CONFIG_GTK)
> +                no_quit = 1;
> +#else
> +                fprintf(stderr, "SDL and GTK support are disabled\n");
> +#endif
> +                break;
>  #ifdef CONFIG_SDL
>              case QEMU_OPTION_no_frame:
>                  no_frame = 1;
> @@ -3533,9 +3542,6 @@ int main(int argc, char **argv, char **envp)
>              case QEMU_OPTION_ctrl_grab:
>                  ctrl_grab = 1;
>                  break;
> -            case QEMU_OPTION_no_quit:
> -                no_quit = 1;
> -                break;
>              case QEMU_OPTION_sdl:
>                  display_type = DT_SDL;
>                  break;
> @@ -3543,7 +3549,6 @@ int main(int argc, char **argv, char **envp)
>              case QEMU_OPTION_no_frame:
>              case QEMU_OPTION_alt_grab:
>              case QEMU_OPTION_ctrl_grab:
> -            case QEMU_OPTION_no_quit:
>              case QEMU_OPTION_sdl:
>                  fprintf(stderr, "SDL support is disabled\n");
>                  exit(1);
> -- 
> 1.8.3

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Qemu-devel] [PATCH] Unbreak -no-quit for GTK when SDL is disabled
  2013-06-10 21:53 ` Anthony Liguori
@ 2013-06-11  8:53   ` Peter Wu
  0 siblings, 0 replies; 3+ messages in thread
From: Peter Wu @ 2013-06-11  8:53 UTC (permalink / raw)
  To: Anthony Liguori; +Cc: qemu-trivial, qemu-devel

On Monday 10 June 2013 16:53:06 Anthony Liguori wrote:
> Peter Wu <lekensteyn@gmail.com> writes:
> > When QEMU is built without SDL support, -no-quit would print an error
> > message that SDL is disabled. Since GTK also supports -no-quit, enable
> > the option when GTK or SDL is enabled at compile time.
> > 
> > While at it, do not create the no_quit variable when it is not used.
> > 
> > Signed-off-by: Peter Wu <lekensteyn@gmail.com>
> 
> Any harm in just making -no-quit unconditional?

No harm, there are just 4 bytes more memory wasted and some code, not a big 
deal.

> It's a nop for VNC and presumably for spice too but it's not incorrect
> AFAICT.
> 
> Would be nice to drop #ifdefs if we can.

The readability should increase by dropping it. By the way, this integer 
should really be a bool.

As shortly discussed on IRC, a better approach is testing for the sanity of 
certain usages instead of ifdef'ing stuff. Having SDL compiled in and then 
using VNC still does not make -alt-grab more valid.

Let's drop this patch, I will submit a new one which checks the option at run-
time.

Regards,
Peter

> Regards,
> 
> Anthony Liguori
> 
> > ---
> > 
> >  include/sysemu/sysemu.h |  2 ++
> >  vl.c                    | 13 +++++++++----
> >  2 files changed, 11 insertions(+), 4 deletions(-)
> > 
> > diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h
> > index 2fb71af..b9b8e52 100644
> > --- a/include/sysemu/sysemu.h
> > +++ b/include/sysemu/sysemu.h
> > @@ -117,7 +117,9 @@ extern int smp_cpus;
> > 
> >  extern int max_cpus;
> >  extern int cursor_hide;
> >  extern int graphic_rotate;
> > 
> > +#if defined(CONFIG_SDL) || defined(CONFIG_GTK)
> > 
> >  extern int no_quit;
> > 
> > +#endif
> > 
> >  extern int no_shutdown;
> >  extern int semihosting_enabled;
> >  extern int old_param;
> > 
> > diff --git a/vl.c b/vl.c
> > index cfd2d3e..74ab050 100644
> > --- a/vl.c
> > +++ b/vl.c
> > @@ -202,7 +202,9 @@ static int full_screen = 0;
> > 
> >  #ifdef CONFIG_SDL
> >  static int no_frame = 0;
> >  #endif
> > 
> > +#if defined(CONFIG_SDL) || defined(CONFIG_GTK)
> > 
> >  int no_quit = 0;
> > 
> > +#endif
> > 
> >  CharDriverState *serial_hds[MAX_SERIAL_PORTS];
> >  CharDriverState *parallel_hds[MAX_PARALLEL_PORTS];
> >  CharDriverState *virtcon_hds[MAX_VIRTIO_CONSOLES];
> > 
> > @@ -3523,6 +3525,13 @@ int main(int argc, char **argv, char **envp)
> > 
> >              case QEMU_OPTION_full_screen:
> >                  full_screen = 1;
> >                  break;
> > 
> > +            case QEMU_OPTION_no_quit:
> > +#if defined(CONFIG_SDL) || defined(CONFIG_GTK)
> > +                no_quit = 1;
> > +#else
> > +                fprintf(stderr, "SDL and GTK support are disabled\n");
> > +#endif
> > +                break;
> > 
> >  #ifdef CONFIG_SDL
> >  
> >              case QEMU_OPTION_no_frame:
> >                  no_frame = 1;
> > 
> > @@ -3533,9 +3542,6 @@ int main(int argc, char **argv, char **envp)
> > 
> >              case QEMU_OPTION_ctrl_grab:
> >                  ctrl_grab = 1;
> >                  break;
> > 
> > -            case QEMU_OPTION_no_quit:
> > -                no_quit = 1;
> > -                break;
> > 
> >              case QEMU_OPTION_sdl:
> >                  display_type = DT_SDL;
> >                  break;
> > 
> > @@ -3543,7 +3549,6 @@ int main(int argc, char **argv, char **envp)
> > 
> >              case QEMU_OPTION_no_frame:
> >              case QEMU_OPTION_alt_grab:
> > 
> >              case QEMU_OPTION_ctrl_grab:
> > -            case QEMU_OPTION_no_quit:
> >              case QEMU_OPTION_sdl:
> >                  fprintf(stderr, "SDL support is disabled\n");
> >                  exit(1);

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2013-06-11  8:53 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-06-10 21:34 [Qemu-devel] [PATCH] Unbreak -no-quit for GTK when SDL is disabled Peter Wu
2013-06-10 21:53 ` Anthony Liguori
2013-06-11  8:53   ` Peter Wu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).