[PATCH] build-sys: fix -static linking of libvhost-user

marcandre.lureau@redhat.com posted 1 patch 4 years, 11 months ago
Test checkpatch passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20201215080319.136228-1-marcandre.lureau@redhat.com
meson.build | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
[PATCH] build-sys: fix -static linking of libvhost-user
Posted by marcandre.lureau@redhat.com 4 years, 11 months ago
From: Marc-André Lureau <marcandre.lureau@redhat.com>

Fix linking vhost-user binaries with with ./configure -static, by
overriding glib-2.0 dependency with configure results.

Fixes: 0df750e9d3a5fea5e1 ("libvhost-user: make it a meson subproject")
Reported-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
---
 meson.build | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/meson.build b/meson.build
index 9ea05ab49f..7ecd307952 100644
--- a/meson.build
+++ b/meson.build
@@ -268,7 +268,11 @@ endif
 # grandfathered in from the QEMU Makefiles.
 add_project_arguments(config_host['GLIB_CFLAGS'].split(),
                       native: false, language: ['c', 'cpp', 'objc'])
-glib = declare_dependency(link_args: config_host['GLIB_LIBS'].split())
+glib = declare_dependency(compile_args: config_host['GLIB_CFLAGS'].split(),
+                          link_args: config_host['GLIB_LIBS'].split())
+# override glib dep with the configure results (for subprojects)
+meson.override_dependency('glib-2.0', glib)
+
 gio = not_found
 if 'CONFIG_GIO' in config_host
   gio = declare_dependency(compile_args: config_host['GIO_CFLAGS'].split(),
-- 
2.29.0


Re: [PATCH] build-sys: fix -static linking of libvhost-user
Posted by Paolo Bonzini 4 years, 11 months ago
On 15/12/20 09:03, marcandre.lureau@redhat.com wrote:
> From: Marc-André Lureau <marcandre.lureau@redhat.com>
> 
> Fix linking vhost-user binaries with with ./configure -static, by
> overriding glib-2.0 dependency with configure results.
> 
> Fixes: 0df750e9d3a5fea5e1 ("libvhost-user: make it a meson subproject")
> Reported-by: Peter Maydell <peter.maydell@linaro.org>
> Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
> ---
>   meson.build | 6 +++++-
>   1 file changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/meson.build b/meson.build
> index 9ea05ab49f..7ecd307952 100644
> --- a/meson.build
> +++ b/meson.build
> @@ -268,7 +268,11 @@ endif
>   # grandfathered in from the QEMU Makefiles.
>   add_project_arguments(config_host['GLIB_CFLAGS'].split(),
>                         native: false, language: ['c', 'cpp', 'objc'])
> -glib = declare_dependency(link_args: config_host['GLIB_LIBS'].split())
> +glib = declare_dependency(compile_args: config_host['GLIB_CFLAGS'].split(),
> +                          link_args: config_host['GLIB_LIBS'].split())
> +# override glib dep with the configure results (for subprojects)
> +meson.override_dependency('glib-2.0', glib)
> +
>   gio = not_found
>   if 'CONFIG_GIO' in config_host
>     gio = declare_dependency(compile_args: config_host['GIO_CFLAGS'].split(),
> 

Queued, thanks.

Paolo