[PATCH] meson: Fixes curses detection on msys2

Yonggang Luo posted 1 patch 3 years, 4 months ago
Test checkpatch passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20201116213106.589-1-luoyonggang@gmail.com
meson.build | 13 +++++++++----
1 file changed, 9 insertions(+), 4 deletions(-)
[PATCH] meson: Fixes curses detection on msys2
Posted by Yonggang Luo 3 years, 4 months ago
Fixes regression on curses detection in msys2
by commit#925a40df2828d32d3aaaf022282cba81082fb263

Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
---
 meson.build | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/meson.build b/meson.build
index bbff0880f4..8695f7d1c2 100644
--- a/meson.build
+++ b/meson.build
@@ -494,10 +494,15 @@ if have_system and not get_option('curses').disabled()
       return 0;
     }'''
 
-  curses = dependency((targetos == 'windows' ? 'ncurses' : 'ncursesw'),
-                      required: false,
-                      method: 'pkg-config',
-                      static: enable_static)
+  curses_dep_list = targetos == 'windows' ? ['ncurses', 'ncursesw'] : ['ncursesw']
+  foreach curses_dep : curses_dep_list
+    if not curses.found()
+      curses = dependency(curses_dep,
+                          required: false,
+                          method: 'pkg-config',
+                          static: enable_static)
+    endif
+  endforeach
   msg = get_option('curses').enabled() ? 'curses library not found' : ''
   if curses.found()
     if cc.links(curses_test, dependencies: [curses])
-- 
2.28.0.windows.1


Re: [PATCH] meson: Fixes curses detection on msys2
Posted by Paolo Bonzini 3 years, 4 months ago
On 16/11/20 22:31, Yonggang Luo wrote:
> Fixes regression on curses detection in msys2
> by commit#925a40df2828d32d3aaaf022282cba81082fb263
> 
> Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
> ---
>   meson.build | 13 +++++++++----
>   1 file changed, 9 insertions(+), 4 deletions(-)
> 
> diff --git a/meson.build b/meson.build
> index bbff0880f4..8695f7d1c2 100644
> --- a/meson.build
> +++ b/meson.build
> @@ -494,10 +494,15 @@ if have_system and not get_option('curses').disabled()
>         return 0;
>       }'''
>   
> -  curses = dependency((targetos == 'windows' ? 'ncurses' : 'ncursesw'),
> -                      required: false,
> -                      method: 'pkg-config',
> -                      static: enable_static)
> +  curses_dep_list = targetos == 'windows' ? ['ncurses', 'ncursesw'] : ['ncursesw']
> +  foreach curses_dep : curses_dep_list
> +    if not curses.found()
> +      curses = dependency(curses_dep,
> +                          required: false,
> +                          method: 'pkg-config',
> +                          static: enable_static)
> +    endif
> +  endforeach
>     msg = get_option('curses').enabled() ? 'curses library not found' : ''
>     if curses.found()
>       if cc.links(curses_test, dependencies: [curses])
> 

Queued, thanks.

Paolo