[PATCH for 6.1] meson.build: relax the libdl test to one for the function dlopen

Alex Bennée posted 1 patch 2 years, 9 months ago
Test checkpatch passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20210714101536.16016-1-alex.bennee@linaro.org
meson.build | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
[PATCH for 6.1] meson.build: relax the libdl test to one for the function dlopen
Posted by Alex Bennée 2 years, 9 months ago
For the *BSD family dlopen is already part of libc so it's not a hard
dependency to have a libdl.so library.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
 meson.build | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/meson.build b/meson.build
index c6dd70c400..e5de144233 100644
--- a/meson.build
+++ b/meson.build
@@ -455,7 +455,10 @@ endif
 rt = cc.find_library('rt', required: false)
 libdl = not_found
 if 'CONFIG_PLUGIN' in config_host
-  libdl = cc.find_library('dl', required: true)
+  libdl = cc.find_library('dl', required: false)
+  if not cc.has_function('dlopen', dependencies: libdl)
+    error('dlopen not found')
+  endif
 endif
 libiscsi = not_found
 if not get_option('libiscsi').auto() or have_block
-- 
2.32.0.264.g75ae10bc75


Re: [PATCH for 6.1] meson.build: relax the libdl test to one for the function dlopen
Posted by Paolo Bonzini 2 years, 9 months ago
> -  libdl = cc.find_library('dl', required: true)
> +  libdl = cc.find_library('dl', required: false)
> +  if not cc.has_function('dlopen', dependencies: libdl)
> +    error('dlopen not found')
> +  endif

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