From: Marc-André Lureau <marcandre.lureau@xxxxxxxxxx> Split lib dependencies in 3 groups: glib, gtk, and acl. Fixes: https://gitlab.freedesktop.org/spice/spice-gtk/issues/77 Signed-off-by: Marc-André Lureau <marcandre.lureau@xxxxxxxxxx> --- meson.build | 46 ++++++++++++++++++++++++++-------------------- src/meson.build | 10 +++++----- 2 files changed, 31 insertions(+), 25 deletions(-) diff --git a/meson.build b/meson.build index 67149e7..8c3faea 100644 --- a/meson.build +++ b/meson.build @@ -31,7 +31,9 @@ spice_gtk_global_cflags = ['-DHAVE_CONFIG_H', compiler = meson.get_compiler('c') spice_gtk_config_data = configuration_data() spice_gtk_include = [include_directories('.')] +spice_glib_deps = [] spice_gtk_deps = [] +spice_acl_deps = [] spice_gtk_host_system = host_machine.system() # @@ -39,7 +41,7 @@ spice_gtk_host_system = host_machine.system() # spice_common = subproject('spice-common', default_options : ['generate-code=client']) spice_gtk_config_data.merge_from(spice_common.get_variable('spice_common_config_data')) -spice_gtk_deps += spice_common.get_variable('spice_common_client_dep') +spice_glib_deps += spice_common.get_variable('spice_common_client_dep') # # check for system headers @@ -85,7 +87,7 @@ deps = {'spice-protocol' : spice_protocol_version, 'openssl' : '>= 1.0.0'} foreach dep, version : deps - spice_gtk_deps += dependency(dep, version : version) + spice_glib_deps += dependency(dep, version : version) endforeach # mandatory dependencies, without specific version requirement @@ -98,7 +100,7 @@ else endif foreach dep : deps - spice_gtk_deps += dependency(dep) + spice_glib_deps += dependency(dep) endforeach deps = ['librt', 'libm'] @@ -107,7 +109,7 @@ if spice_gtk_host_system == 'windows' endif foreach dep : deps - spice_gtk_deps += compiler.find_library(dep) + spice_glib_deps += compiler.find_library(dep) endforeach # @@ -118,7 +120,7 @@ optional_deps = {'celt051' : '>= 0.5.1.1', foreach dep, version : optional_deps d = dependency(dep, required : get_option(dep), version : version) if d.found() - spice_gtk_deps += d + spice_glib_deps += d spice_gtk_config_data.set('HAVE_@0@'.format(dep.underscorify().to_upper()), '1') endif endforeach @@ -138,8 +140,8 @@ endif # webdav spice_gtk_has_phodav = false if get_option('webdav') - spice_gtk_deps += dependency('libphodav-2.0') - spice_gtk_deps += dependency('libsoup-2.4', version : '>= 2.49.91') + spice_glib_deps += dependency('libphodav-2.0') + spice_glib_deps += dependency('libsoup-2.4', version : '>= 2.49.91') spice_gtk_config_data.set('USE_PHODAV', '1') spice_gtk_has_phodav = true endif @@ -149,7 +151,7 @@ spice_gtk_has_pulse = false if get_option('pulse') deps = ['libpulse', 'libpulse-mainloop-glib'] foreach dep : deps - spice_gtk_deps += dependency(dep) + spice_glib_deps += dependency(dep) endforeach spice_gtk_config_data.set('HAVE_PULSE', '1') spice_gtk_has_pulse = true @@ -161,7 +163,7 @@ spice_gtk_has_gstaudio = false if get_option('gstaudio') deps = gst_base_deps + ['gstreamer-audio-1.0'] foreach dep : deps - spice_gtk_deps += dependency(dep) + spice_glib_deps += dependency(dep) endforeach spice_gtk_config_data.set('HAVE_GSTAUDIO', '1') spice_gtk_has_gstaudio = true @@ -175,7 +177,7 @@ if get_option('gstvideo') deps += gst_base_deps endif foreach dep : deps - spice_gtk_deps += dependency(dep) + spice_glib_deps += dependency(dep) endforeach spice_gtk_config_data.set('HAVE_GSTVIDEO', '1') spice_gtk_has_gstvideo = true @@ -199,21 +201,21 @@ if get_option('usbredir') if not usb_dep.found() usb_dep = dependency('libusbredirparser', version : '>= 0.4') endif - spice_gtk_deps += usb_dep + spice_glib_deps += usb_dep deps = {'libusbredirhost' : '>= 0.4.2', 'libusb-1.0' : '>= 1.0.9'} foreach dep, version : deps usb_dep = dependency(dep, version : version) - spice_gtk_deps += usb_dep + spice_glib_deps += usb_dep endforeach if spice_gtk_host_system != 'windows' if usb_dep.version().version_compare('>= 1.0.16') spice_gtk_config_data.set('USE_LIBUSB_HOTPLUG', '1') else - spice_gtk_deps += dependency('gudev-1.0') + spice_glib_deps += dependency('gudev-1.0') spice_gtk_config_data.set('USE_GUDEV', '1') endif endif @@ -239,11 +241,11 @@ if get_option('polkit') if not compiler.has_function('acl_get_file', dependencies : acl_dep) error('PolicyKit support requested, but some required packages are not available') endif - spice_gtk_deps += acl_dep + spice_acl_deps += acl_dep endif endif - spice_gtk_deps += polkit_dep + spice_acl_deps += polkit_dep spice_gtk_config_data.set('USE_POLKIT', '1') spice_gtk_has_polkit = true endif @@ -252,6 +254,10 @@ if spice_gtk_has_usbredir and not spice_gtk_has_polkit warning('Building with usbredir support, but *not* building the usb acl helper') endif +if spice_gtk_has_polkit + spice_acl_deps += dependency('gio-unix-2.0') +endif + # pie spice_gtk_has_pie = false if get_option('pie') @@ -303,7 +309,7 @@ endif # introspection spice_gtk_has_introspection = false if get_option('introspection') - spice_gtk_deps += dependency('gobject-introspection-1.0', version : '>= 0.94') + spice_glib_deps += dependency('gobject-introspection-1.0', version : '>= 0.94') spice_gtk_has_introspection = true endif @@ -331,7 +337,7 @@ if get_option('lz4') lz4_dep = dependency('liblz4', version : '>= 1.7.3') endif - spice_gtk_deps += lz4_dep + spice_glib_deps += lz4_dep spice_gtk_config_data.set('USE_LZ4', '1') spice_gtk_has_lz4 = true endif @@ -339,7 +345,7 @@ endif # sasl spice_gtk_has_sasl = false if get_option('sasl') - spice_gtk_deps += dependency('libsasl2') + spice_glib_deps += dependency('libsasl2') spice_gtk_config_data.set('HAVE_SASL', '1') spice_gtk_has_sasl = true endif @@ -349,12 +355,12 @@ spice_gtk_has_smartcard = false if get_option('smartcard') smartcard_dep = dependency('libcacard', required : false, version : '>= 2.5.1') if smartcard_dep.found() - spice_gtk_deps += smartcard_dep + spice_glib_deps += smartcard_dep spice_gtk_config_data.set('USE_SMARTCARD', '1') else smartcard012_dep = dependency('libcacard', required : false, version : '>= 0.1.2') if smartcard012_dep.found() - spice_gtk_deps += smartcard012_dep + spice_glib_deps += smartcard012_dep spice_gtk_config_data.set('USE_SMARTCARD_012', '1') endif endif diff --git a/src/meson.build b/src/meson.build index a8e1d05..6bbb96b 100644 --- a/src/meson.build +++ b/src/meson.build @@ -199,12 +199,12 @@ spice_client_glib_lib = library('spice-client-glib-2.0', spice_client_glib_sourc include_directories : spice_gtk_include, link_args : [spice_gtk_version_script], link_depends : spice_client_glib_syms, - dependencies : spice_gtk_deps) + dependencies : spice_glib_deps) spice_client_glib_dep = declare_dependency(sources : [spice_marshals[1], spice_client_glib_enums[1]], link_with : spice_client_glib_lib, include_directories : spice_gtk_include, - dependencies : spice_gtk_deps) + dependencies : spice_glib_deps) # # SpiceClientGLib-2.0.gir @@ -234,7 +234,7 @@ if spice_gtk_has_polkit install : true, install_dir : spice_gtk_usb_acl_helper_dir, install_mode : ['rwsr-xr-x', 'root', 'root'], - dependencies : spice_gtk_deps, + dependencies : spice_acl_deps, pie : spice_gtk_has_pie ) endif @@ -340,11 +340,11 @@ if spice_gtk_has_gtk install : true, link_args : [spice_gtk_version_script], link_depends : spice_client_gtk_syms, - dependencies : spice_client_glib_dep) + dependencies : [spice_client_glib_dep, spice_gtk_deps]) spice_client_gtk_dep = declare_dependency(sources : spice_widget_enums[1], link_with : spice_client_gtk_lib, - dependencies : spice_client_glib_dep) + dependencies : [spice_client_glib_dep, spice_gtk_deps]) # # SpiceClientGtk-3.0.gir -- 2.20.1.2.gb21ebb671b _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/spice-devel