[Spice-devel] [PATCH spice-gtk v2 08/15] meson: switch polkit option to auto feature
Frediano Ziglio
fziglio at redhat.com
Wed Jan 9 10:09:28 UTC 2019
From: Marc-André Lureau <marcandre.lureau at redhat.com>
Signed-off-by: Marc-André Lureau <marcandre.lureau at redhat.com>
---
meson.build | 33 ++++++++++++++++-----------------
meson_options.txt | 3 +--
2 files changed, 17 insertions(+), 19 deletions(-)
diff --git a/meson.build b/meson.build
index 7eff9ae2..75a2c441 100644
--- a/meson.build
+++ b/meson.build
@@ -186,26 +186,25 @@ endif
# polkit
spice_gtk_has_polkit = false
-if get_option('polkit')
- polkit_dep = dependency('polkit-gobject-1', version : '>= 0.96')# ,required : false)
- if polkit_dep.found()
- spice_gtk_policy_dir = polkit_dep.get_pkgconfig_variable('policydir')
- foreach func : ['polkit_authority_get_sync', 'polkit_authorization_result_get_dismissed']
- if compiler.has_function(func, dependencies : polkit_dep)
- spice_gtk_config_data.set('HAVE_ at 0@'.format(func.to_upper()), '1')
- endif
- endforeach
-
- if not compiler.has_function('acl_get_file')
- acl_dep = compiler.find_library('acl')
- if not compiler.has_function('acl_get_file', dependencies : acl_dep)
- error('PolicyKit support requested, but some required packages are not available')
- endif
- spice_acl_deps += acl_dep
+d = dependency('polkit-gobject-1', version : '>= 0.96', required : get_option('polkit'))
+if d.found()
+ spice_gtk_policy_dir = d.get_pkgconfig_variable('policydir')
+ foreach func : ['polkit_authority_get_sync', 'polkit_authorization_result_get_dismissed']
+ if compiler.has_function(func, dependencies : d)
+ spice_gtk_config_data.set('HAVE_ at 0@'.format(func.to_upper()), '1')
+ endif
+ endforeach
+
+ # TODO: With 'auto', we should just disable polkit support if this is missing.
+ if not compiler.has_function('acl_get_file')
+ acl_dep = compiler.find_library('acl')
+ if not compiler.has_function('acl_get_file', dependencies : acl_dep)
+ error('PolicyKit support requested, but some required packages are not available')
endif
+ spice_acl_deps += acl_dep
endif
- spice_acl_deps += polkit_dep
+ spice_acl_deps += d
spice_acl_deps += dependency('gio-unix-2.0')
spice_gtk_config_data.set('USE_POLKIT', '1')
spice_gtk_has_polkit = true
diff --git a/meson_options.txt b/meson_options.txt
index 6631e1c1..42538255 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -20,8 +20,7 @@ option('usbredir',
description : 'Enable usbredir support')
option('polkit',
- type : 'boolean',
- value : true,
+ type : 'feature',
description : 'Enable PolicyKit support for the USB acl helper')
option('pie',
--
2.20.1
More information about the Spice-devel
mailing list