From acc75b21f653873ec1da68bfa08f2945a8dd09d2 Mon Sep 17 00:00:00 2001 From: Eli Schwartz Date: Sun, 30 Jun 2024 13:44:06 -0400 Subject: [PATCH] meson: fix conflicting use of feature-based dependency lookups When spa-plugins is enabled, the gio-2.0 global dependency is overwritten. When bluez support is enabled, OR when gsettings is enabled, the gio-2.0 dependency is then detected as found. This means that pipewire-module-protocol-pulse can end up enabling gsettings support even if it has been forcibly turned off. Rename the meson variables to ensure they are looked up separately. (cherry picked from commit b5f031bc15524bbfde577290ad9bbadeab77ae8b) Signed-off-by: Eli Schwartz --- meson.build | 4 ++-- spa/meson.build | 6 +++--- src/modules/meson.build | 4 ++-- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/meson.build b/meson.build index 0ea256e9b..3353a2aec 100644 --- a/meson.build +++ b/meson.build @@ -343,8 +343,8 @@ summary({'GLib-2.0 (Flatpak support)': glib2_dep.found()}, bool_yn: true, sectio flatpak_support = glib2_dep.found() cdata.set('HAVE_GLIB2', flatpak_support) -gio_dep = dependency('gio-2.0', version : '>= 2.26.0', required : get_option('gsettings')) -summary({'GIO (GSettings)': gio_dep.found()}, bool_yn: true, section: 'Misc dependencies') +gsettings_gio_dep = dependency('gio-2.0', version : '>= 2.26.0', required : get_option('gsettings')) +summary({'GIO (GSettings)': gsettings_gio_dep.found()}, bool_yn: true, section: 'Misc dependencies') gst_option = get_option('gstreamer') gst_deps_def = { diff --git a/spa/meson.build b/spa/meson.build index db0a84425..e37744b08 100644 --- a/spa/meson.build +++ b/spa/meson.build @@ -43,12 +43,12 @@ if get_option('spa-plugins').allowed() summary({'ALSA': alsa_dep.found()}, bool_yn: true, section: 'Backend') bluez_dep = dependency('bluez', version : '>= 4.101', required: get_option('bluez5')) - gio_dep = dependency('gio-2.0', required : get_option('bluez5')) - gio_unix_dep = dependency('gio-unix-2.0', required : get_option('bluez5')) + bluez_gio_dep = dependency('gio-2.0', required : get_option('bluez5')) + bluez_gio_unix_dep = dependency('gio-unix-2.0', required : get_option('bluez5')) bluez_glib2_dep = dependency('glib-2.0', required : get_option('bluez5')) sbc_dep = dependency('sbc', required: get_option('bluez5')) summary({'SBC': sbc_dep.found()}, bool_yn: true, section: 'Bluetooth audio codecs') - bluez5_deps = [ mathlib, dbus_dep, sbc_dep, bluez_dep, bluez_glib2_dep, gio_dep, gio_unix_dep ] + bluez5_deps = [ mathlib, dbus_dep, sbc_dep, bluez_dep, bluez_glib2_dep, bluez_gio_dep, bluez_gio_unix_dep ] bluez_deps_found = get_option('bluez5').allowed() foreach dep: bluez5_deps if get_option('bluez5').enabled() and not dep.found() diff --git a/src/modules/meson.build b/src/modules/meson.build index 1b434b7f6..52660253e 100644 --- a/src/modules/meson.build +++ b/src/modules/meson.build @@ -409,11 +409,11 @@ if avahi_dep.found() cdata.set('HAVE_AVAHI', true) endif -if gio_dep.found() +if gsettings_gio_dep.found() pipewire_module_protocol_pulse_sources += [ 'module-protocol-pulse/modules/module-gsettings.c', ] - pipewire_module_protocol_pulse_deps += gio_dep + pipewire_module_protocol_pulse_deps += gsettings_gio_dep cdata.set('HAVE_GIO', true) endif -- 2.44.2