[PATCH] meson: Add missing SDL dependency to system/main.c

Philippe Mathieu-Daudé posted 1 patch 6 days, 16 hours ago
meson.build | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
[PATCH] meson: Add missing SDL dependency to system/main.c
Posted by Philippe Mathieu-Daudé 6 days, 16 hours ago
When building QEMU configure with --disable-gtk --disable-cocoa
on macOS we get:

  ../system/main.c:30:10: fatal error: 'SDL.h' file not found
     30 | #include <SDL.h>
        |          ^~~~~~~
  1 error generated.

Fix by adding the SDL dependency to main.c it's CFLAGS contains
the SDL include directory.

Fixes: 64ed6f92ff ("meson: link emulators without Makefile.target")
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
Looking at commit 88c39c8693 ("Simplify softmmu/main.c") I wonder
if this header is still required.
---
 meson.build | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/meson.build b/meson.build
index e0b880e4e1..846ffa3834 100644
--- a/meson.build
+++ b/meson.build
@@ -4235,14 +4235,14 @@ foreach target : target_dirs
       'name': 'qemu-system-' + target_name,
       'win_subsystem': 'console',
       'sources': files('system/main.c'),
-      'dependencies': []
+      'dependencies': [sdl]
     }]
     if host_os == 'windows' and (sdl.found() or gtk.found())
       execs += [{
         'name': 'qemu-system-' + target_name + 'w',
         'win_subsystem': 'windows',
         'sources': files('system/main.c'),
-        'dependencies': []
+        'dependencies': [sdl]
       }]
     endif
     if get_option('fuzzing')
-- 
2.45.2


Re: [PATCH] meson: Add missing SDL dependency to system/main.c
Posted by Paolo Bonzini 6 days, 13 hours ago
On 11/20/24 12:49, Philippe Mathieu-Daudé wrote:
> When building QEMU configure with --disable-gtk --disable-cocoa
> on macOS we get:
> 
>    ../system/main.c:30:10: fatal error: 'SDL.h' file not found
>       30 | #include <SDL.h>
>          |          ^~~~~~~
>    1 error generated.
> 
> Fix by adding the SDL dependency to main.c it's CFLAGS contains
> the SDL include directory.
> 
> Fixes: 64ed6f92ff ("meson: link emulators without Makefile.target")
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
> Looking at commit 88c39c8693 ("Simplify softmmu/main.c") I wonder
> if this header is still required.

I think so, SDL has its own main() wrapper.  Anyhow:

Acked-by: Paolo Bonzini <pbonzini@redhat.com>

Thanks,

Paolo

> ---
>   meson.build | 4 ++--
>   1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/meson.build b/meson.build
> index e0b880e4e1..846ffa3834 100644
> --- a/meson.build
> +++ b/meson.build
> @@ -4235,14 +4235,14 @@ foreach target : target_dirs
>         'name': 'qemu-system-' + target_name,
>         'win_subsystem': 'console',
>         'sources': files('system/main.c'),
> -      'dependencies': []
> +      'dependencies': [sdl]
>       }]
>       if host_os == 'windows' and (sdl.found() or gtk.found())
>         execs += [{
>           'name': 'qemu-system-' + target_name + 'w',
>           'win_subsystem': 'windows',
>           'sources': files('system/main.c'),
> -        'dependencies': []
> +        'dependencies': [sdl]
>         }]
>       endif
>       if get_option('fuzzing')


Re: [PATCH] meson: Add missing SDL dependency to system/main.c
Posted by Philippe Mathieu-Daudé 6 days, 16 hours ago
On 20/11/24 12:49, Philippe Mathieu-Daudé wrote:
> When building QEMU configure with --disable-gtk --disable-cocoa
> on macOS we get:
> 

Relevant ./configure output:

   User interface
     Cocoa support                   : NO
     SDL support                     : YES 2.30.5
     SDL image support               : NO
     GTK support                     : NO
     pixman                          : YES 0.42.2
     VTE support                     : NO
     PNG support                     : YES 1.6.43
     VNC support                     : YES
     VNC SASL support                : YES
     VNC JPEG support                : YES 3.0.3
     spice protocol support          : YES 0.14.4
       spice server support          : NO
     curses support                  : YES
     brlapi support                  : NO

   User defined options
     cocoa                           : disabled
     docs                            : disabled
     gtk                             : disabled

>    ../system/main.c:30:10: fatal error: 'SDL.h' file not found
>       30 | #include <SDL.h>
>          |          ^~~~~~~
>    1 error generated.
> 
> Fix by adding the SDL dependency to main.c it's CFLAGS contains
> the SDL include directory.
> 
> Fixes: 64ed6f92ff ("meson: link emulators without Makefile.target")
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
> Looking at commit 88c39c8693 ("Simplify softmmu/main.c") I wonder
> if this header is still required.
> ---
>   meson.build | 4 ++--
>   1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/meson.build b/meson.build
> index e0b880e4e1..846ffa3834 100644
> --- a/meson.build
> +++ b/meson.build
> @@ -4235,14 +4235,14 @@ foreach target : target_dirs
>         'name': 'qemu-system-' + target_name,
>         'win_subsystem': 'console',
>         'sources': files('system/main.c'),
> -      'dependencies': []
> +      'dependencies': [sdl]
>       }]
>       if host_os == 'windows' and (sdl.found() or gtk.found())
>         execs += [{
>           'name': 'qemu-system-' + target_name + 'w',
>           'win_subsystem': 'windows',
>           'sources': files('system/main.c'),
> -        'dependencies': []
> +        'dependencies': [sdl]
>         }]
>       endif
>       if get_option('fuzzing')