summaryrefslogtreecommitdiffstats
path: root/meta-pipewire/recipes-multimedia/pipewire
diff options
context:
space:
mode:
Diffstat (limited to 'meta-pipewire/recipes-multimedia/pipewire')
-rw-r--r--meta-pipewire/recipes-multimedia/pipewire/pipewire/0001-Revert-treewide-meson.build-use-project_-build-sourc.patch241
-rw-r--r--meta-pipewire/recipes-multimedia/pipewire/pipewire/0001-alsa-plugin-allow-specifying-a-media.role-on-the-vir.patch124
-rw-r--r--meta-pipewire/recipes-multimedia/pipewire/pipewire/0001-null-sink-make-the-timerfd-non-blocking.patch43
-rw-r--r--meta-pipewire/recipes-multimedia/pipewire/pipewire/0002-Revert-treewide-meson.build-use-dependency-variable-.patch1129
-rw-r--r--meta-pipewire/recipes-multimedia/pipewire/pipewire/0002-node-driver-make-the-timerfd-non-blocking.patch43
-rw-r--r--meta-pipewire/recipes-multimedia/pipewire/pipewire/0003-Revert-meson-declare-spa_dep-and-override_dependency.patch83
-rw-r--r--meta-pipewire/recipes-multimedia/pipewire/pipewire/0004-Revert-systemd-correctly-prefix-systemd-system-units.patch25
-rw-r--r--meta-pipewire/recipes-multimedia/pipewire/pipewire/0005-pipewiresink-set-a-default-channel-map-if-the-number.patch77
-rw-r--r--meta-pipewire/recipes-multimedia/pipewire/pipewire_0.3.43.bb (renamed from meta-pipewire/recipes-multimedia/pipewire/pipewire_0.3.30.bb)116
-rw-r--r--meta-pipewire/recipes-multimedia/pipewire/pipewire_0.3.43.bbappend (renamed from meta-pipewire/recipes-multimedia/pipewire/pipewire_0.3.30.bbappend)12
10 files changed, 1622 insertions, 271 deletions
diff --git a/meta-pipewire/recipes-multimedia/pipewire/pipewire/0001-Revert-treewide-meson.build-use-project_-build-sourc.patch b/meta-pipewire/recipes-multimedia/pipewire/pipewire/0001-Revert-treewide-meson.build-use-project_-build-sourc.patch
new file mode 100644
index 000000000..42f01086a
--- /dev/null
+++ b/meta-pipewire/recipes-multimedia/pipewire/pipewire/0001-Revert-treewide-meson.build-use-project_-build-sourc.patch
@@ -0,0 +1,241 @@
+From e850a4c080c80fc218224521727996062ebb9487 Mon Sep 17 00:00:00 2001
+From: Ashok Sidipotu <ashok.sidipotu@collabora.com>
+Date: Fri, 14 Jan 2022 16:12:55 +0530
+Subject: [PATCH 1/4] Revert "treewide: meson.build: use
+ project_{build,source}_root()"
+
+This reverts commit 8ed46a283fa1f8623b940eaeb9f7cbcc52eebf0e.
+Upstream-Status: Inappropriate[meson version dependent]
+---
+ doc/meson.build | 34 ++++++++++++++--------------
+ meson.build | 8 +++----
+ spa/plugins/audioconvert/meson.build | 4 ++--
+ spa/tests/meson.build | 4 ++--
+ src/daemon/meson.build | 6 ++---
+ src/modules/meson.build | 6 ++---
+ src/tests/meson.build | 6 ++---
+ test/meson.build | 4 ++--
+ 8 files changed, 36 insertions(+), 36 deletions(-)
+
+diff --git a/doc/meson.build b/doc/meson.build
+index 0e6d7f8e3..082780145 100644
+--- a/doc/meson.build
++++ b/doc/meson.build
+@@ -1,8 +1,8 @@
+ doxyfile_conf = configuration_data()
+ doxyfile_conf.set('PACKAGE_NAME', meson.project_name())
+ doxyfile_conf.set('PACKAGE_VERSION', meson.project_version())
+-doxyfile_conf.set('top_srcdir', meson.project_source_root())
+-doxyfile_conf.set('top_builddir', meson.project_build_root())
++doxyfile_conf.set('top_srcdir', meson.source_root())
++doxyfile_conf.set('top_builddir', meson.build_root())
+
+ dot_found = find_program('dot', required: false).found()
+ summary({'dot (used with doxygen)': dot_found}, bool_yn: true, section: 'Optional programs')
+@@ -49,35 +49,35 @@ extra_docs = [
+
+ inputs = []
+ foreach extra : extra_docs
+- inputs += meson.project_source_root() / 'doc' / extra
++ inputs += meson.source_root() / 'doc' / extra
+ endforeach
+ foreach h : pipewire_headers
+- inputs += meson.project_source_root() / 'src' / 'pipewire' / h
++ inputs += meson.source_root() / 'src' / 'pipewire' / h
+ endforeach
+ foreach h : pipewire_ext_headers
+- inputs += meson.project_source_root() / 'src' / 'pipewire' / 'extensions' / h
++ inputs += meson.source_root() / 'src' / 'pipewire' / 'extensions' / h
+ endforeach
+ foreach h : pipewire_ext_sm_headers
+- inputs += meson.project_source_root() / 'src' / 'pipewire' / 'extensions' / h
++ inputs += meson.source_root() / 'src' / 'pipewire' / 'extensions' / h
+ endforeach
+ foreach h : pipewire_sources
+- inputs += meson.project_source_root() / 'src' / 'pipewire' / h
++ inputs += meson.source_root() / 'src' / 'pipewire' / h
+ endforeach
+ foreach h : module_sources
+- inputs += meson.project_source_root() / 'src' / 'modules' / h
++ inputs += meson.source_root() / 'src' / 'modules' / h
+ endforeach
+-inputs += meson.project_source_root() / 'test' / 'pwtest.h'
+-input_dirs = [ meson.project_source_root() / 'spa' / 'include' / 'spa' ]
++inputs += meson.source_root() / 'test' / 'pwtest.h'
++input_dirs = [ meson.source_root() / 'spa' / 'include' / 'spa' ]
+
+ path_prefixes = [
+- meson.project_source_root() / 'src',
+- meson.project_source_root() / 'spa' / 'include',
+- meson.project_source_root(),
++ meson.source_root() / 'src',
++ meson.source_root() / 'spa' / 'include',
++ meson.source_root(),
+ ]
+
+ cssfiles = [
+- meson.project_source_root() / 'doc' / 'doxygen-awesome.css',
+- meson.project_source_root() / 'doc' / 'custom.css'
++ meson.source_root() / 'doc' / 'doxygen-awesome.css',
++ meson.source_root() / 'doc' / 'custom.css'
+ ]
+
+ # Example files (in order from simple to esoteric)
+@@ -118,8 +118,8 @@ input_dirs += [ 'doc/examples.dox' ]
+ doxyfile_conf.set('inputs', ' '.join(inputs + input_dirs))
+ doxyfile_conf.set('cssfiles', ' '.join(cssfiles))
+ doxyfile_conf.set('path_prefixes', ' '.join(path_prefixes))
+-doxyfile_conf.set('c_input_filter', meson.project_source_root() / 'doc' / 'input-filter.sh')
+-doxyfile_conf.set('h_input_filter', meson.project_source_root() / 'doc' / 'input-filter-h.sh')
++doxyfile_conf.set('c_input_filter', meson.source_root() / 'doc' / 'input-filter.sh')
++doxyfile_conf.set('h_input_filter', meson.source_root() / 'doc' / 'input-filter-h.sh')
+
+ doxyfile = configure_file(input: 'Doxyfile.in',
+ output: 'Doxyfile',
+diff --git a/meson.build b/meson.build
+index b1ea32f7a..67e697c15 100644
+--- a/meson.build
++++ b/meson.build
+@@ -304,9 +304,9 @@ includes_inc = include_directories('include')
+ pipewire_inc = include_directories('src')
+
+ makedata = configuration_data()
+-makedata.set('BUILD_ROOT', meson.project_build_root())
+-makedata.set('SOURCE_ROOT', meson.project_source_root())
+-makedata.set('VERSION', pipewire_version)
++ makedata.set('BUILD_ROOT', meson.build_root())
++ makedata.set('SOURCE_ROOT', meson.source_root())
++ makedata.set('VERSION', pipewire_version)
+ if version_arr.length() == 4
+ makedata.set('TAG', 'HEAD')
+ else
+@@ -498,7 +498,7 @@ endif
+ setenv = find_program('pw-uninstalled.sh')
+ run_target('pw-uninstalled',
+ command : [setenv,
+- '-b@0@'.format(meson.project_build_root()),
++ '-b@0@'.format(meson.build_root()),
+ '-v@0@'.format(pipewire_version)]
+ )
+
+diff --git a/spa/plugins/audioconvert/meson.build b/spa/plugins/audioconvert/meson.build
+index de9f491af..4d15271f5 100644
+--- a/spa/plugins/audioconvert/meson.build
++++ b/spa/plugins/audioconvert/meson.build
+@@ -140,7 +140,7 @@ foreach a : test_apps
+ install : installed_tests_enabled,
+ install_dir : installed_tests_execdir / 'audioconvert'),
+ env : [
+- 'SPA_PLUGIN_DIR=@0@'.format(spa_dep.get_variable(internal: 'plugindir')),
++ 'SPA_PLUGIN_DIR=@0@/spa/plugins/'.format(meson.build_root()),
+ ])
+
+ if installed_tests_enabled
+@@ -170,7 +170,7 @@ foreach a : benchmark_apps
+ install : installed_tests_enabled,
+ install_dir : installed_tests_execdir / 'audioconvert'),
+ env : [
+- 'SPA_PLUGIN_DIR=@0@'.format(spa_dep.get_variable(internal: 'plugindir')),
++ 'SPA_PLUGIN_DIR=@0@/spa/plugins/'.format(meson.build_root()),
+ ])
+
+ if installed_tests_enabled
+diff --git a/spa/tests/meson.build b/spa/tests/meson.build
+index 990df87bd..9e2a211e2 100644
+--- a/spa/tests/meson.build
++++ b/spa/tests/meson.build
+@@ -5,7 +5,7 @@ find = find_program('find', required: false)
+ summary({'find (for header testing)': find.found()}, bool_yn: true, section: 'Optional programs')
+ if find.found()
+ spa_headers = run_command(find,
+- meson.project_source_root() / 'spa' / 'include',
++ meson.source_root() / 'spa' / 'include',
+ '-name', '*.h',
+ '-not', '-name', 'type-info.h',
+ '-type', 'f',
+@@ -40,7 +40,7 @@ foreach a : benchmark_apps
+ install_dir : installed_tests_execdir,
+ ),
+ env : [
+- 'SPA_PLUGIN_DIR=@0@'.format(spa_dep.get_variable(internal: 'plugindir')),
++ 'SPA_PLUGIN_DIR=@0@/spa/plugins/'.format(meson.build_root()),
+ ]
+ )
+
+diff --git a/src/daemon/meson.build b/src/daemon/meson.build
+index 44a574337..5e64287a1 100644
+--- a/src/daemon/meson.build
++++ b/src/daemon/meson.build
+@@ -18,9 +18,9 @@ conf_config.set('pulse_comment', '#')
+
+ conf_config_uninstalled = conf_config
+ conf_config_uninstalled.set('pipewire_path',
+- meson.project_build_root() / 'src' / 'daemon' / 'pipewire')
++ meson.build_root() / 'src' / 'daemon' / 'pipewire')
+ conf_config_uninstalled.set('pipewire_pulse_path',
+- meson.project_build_root() / 'src' / 'daemon' / 'pipewire-pulse')
++ meson.build_root() / 'src' / 'daemon' / 'pipewire-pulse')
+ conf_config_uninstalled.set('pulse_comment', '')
+
+ build_ms = 'media-session' in get_option('session-managers')
+@@ -105,7 +105,7 @@ custom_target('pipewire-uninstalled',
+ install: false,
+ input: pipewire_exec,
+ output: 'pipewire-uninstalled',
+- command: [ln, '-fs', meson.project_build_root() + '/@INPUT@', '@OUTPUT@'],
++ command: [ln, '-fs', meson.build_root() + '/@INPUT@', '@OUTPUT@'],
+ )
+
+ #desktop_file = i18n.merge_file(
+diff --git a/src/modules/meson.build b/src/modules/meson.build
+index 93dc70173..45852f3b9 100644
+--- a/src/modules/meson.build
++++ b/src/modules/meson.build
+@@ -370,9 +370,9 @@ test('pw-test-protocol-native',
+ install_dir : installed_tests_execdir,
+ ),
+ env : [
+- 'SPA_PLUGIN_DIR=@0@'.format(spa_dep.get_variable(internal: 'plugindir')),
+- 'PIPEWIRE_CONFIG_DIR=@0@'.format(pipewire_dep.get_variable(internal: 'confdatadir')),
+- 'PIPEWIRE_MODULE_DIR=@0@'.format(pipewire_dep.get_variable(internal: 'moduledir')),
++ 'SPA_PLUGIN_DIR=@0@/spa/plugins/'.format(meson.build_root()),
++ 'PIPEWIRE_CONFIG_DIR=@0@/src/daemon/'.format(meson.build_root()),
++ 'PIPEWIRE_MODULE_DIR=@0@/src/modules/'.format(meson.build_root())
+ ]
+ )
+
+diff --git a/src/tests/meson.build b/src/tests/meson.build
+index 3e8d05012..1b03967fb 100644
+--- a/src/tests/meson.build
++++ b/src/tests/meson.build
+@@ -13,9 +13,9 @@ foreach a : test_apps
+ install : installed_tests_enabled,
+ install_dir : installed_tests_execdir),
+ env : [
+- 'SPA_PLUGIN_DIR=@0@'.format(spa_dep.get_variable(internal: 'plugindir')),
+- 'PIPEWIRE_CONFIG_DIR=@0@'.format(pipewire_dep.get_variable(internal: 'confdatadir')),
+- 'PIPEWIRE_MODULE_DIR=@0@'.format(pipewire_dep.get_variable(internal: 'moduledir')),
++ 'SPA_PLUGIN_DIR=@0@/spa/plugins/'.format(meson.build_root()),
++ 'PIPEWIRE_CONFIG_DIR=@0@/src/daemon/'.format(meson.build_root()),
++ 'PIPEWIRE_MODULE_DIR=@0@/src/modules/'.format(meson.build_root())
+ ])
+
+ if installed_tests_enabled
+diff --git a/test/meson.build b/test/meson.build
+index 20bdcb210..89f2bc2ec 100644
+--- a/test/meson.build
++++ b/test/meson.build
+@@ -14,8 +14,8 @@ pwtest_deps = [
+ ]
+
+ pwtest_c_args = [
+- '-DBUILD_ROOT="@0@"'.format(meson.project_build_root()),
+- '-DSOURCE_ROOT="@0@"'.format(meson.project_source_root()),
++ '-DBUILD_ROOT="@0@"'.format(meson.build_root()),
++ '-DSOURCE_ROOT="@0@"'.format(meson.source_root()),
+ ]
+
+ pwtest_inc = [
+--
+2.34.1
+
diff --git a/meta-pipewire/recipes-multimedia/pipewire/pipewire/0001-alsa-plugin-allow-specifying-a-media.role-on-the-vir.patch b/meta-pipewire/recipes-multimedia/pipewire/pipewire/0001-alsa-plugin-allow-specifying-a-media.role-on-the-vir.patch
deleted file mode 100644
index c6cf373c2..000000000
--- a/meta-pipewire/recipes-multimedia/pipewire/pipewire/0001-alsa-plugin-allow-specifying-a-media.role-on-the-vir.patch
+++ /dev/null
@@ -1,124 +0,0 @@
-From ff019936a70262c176a4bd950bc80ab84d2a71b0 Mon Sep 17 00:00:00 2001
-From: George Kiagiadakis <george.kiagiadakis@collabora.com>
-Date: Tue, 22 Jun 2021 13:23:22 +0300
-Subject: [PATCH] alsa plugin: allow specifying a media.role on the virtual
- device name
-
-So that we can do:
- aplay -D pipewire:ROLE=Music music.wav
- aplay -D pipewire:ROLE=Notification notice.wav
-
-Upstream-Status: Backport [from master/0.3.31]
----
- pipewire-alsa/alsa-plugins/pcm_pipewire.c | 14 +++++++++++++-
- pipewire-alsa/conf/50-pipewire.conf | 11 ++++++++++-
- 2 files changed, 23 insertions(+), 2 deletions(-)
-
-diff --git a/pipewire-alsa/alsa-plugins/pcm_pipewire.c b/pipewire-alsa/alsa-plugins/pcm_pipewire.c
-index 86792d2c7..6ace1b689 100644
---- a/pipewire-alsa/alsa-plugins/pcm_pipewire.c
-+++ b/pipewire-alsa/alsa-plugins/pcm_pipewire.c
-@@ -59,6 +59,7 @@ typedef struct {
-
- char *node_name;
- char *target;
-+ char *role;
-
- int fd;
- int error;
-@@ -509,6 +510,9 @@ static int snd_pcm_pipewire_prepare(snd_pcm_ioplug_t *io)
- pw_properties_set(props, PW_KEY_MEDIA_CATEGORY,
- io->stream == SND_PCM_STREAM_PLAYBACK ?
- "Playback" : "Capture");
-+ if (pw->role != NULL &&
-+ pw_properties_get(props, PW_KEY_MEDIA_ROLE) == NULL)
-+ pw_properties_setf(props, PW_KEY_MEDIA_ROLE, "%s", pw->role);
-
- pw->stream = pw_stream_new(pw->core, pw->node_name, props);
- if (pw->stream == NULL)
-@@ -958,6 +962,7 @@ static int snd_pcm_pipewire_open(snd_pcm_t **pcmp, const char *name,
- const char *server_name,
- const char *playback_node,
- const char *capture_node,
-+ const char *role,
- snd_pcm_stream_t stream,
- int mode,
- uint32_t flags,
-@@ -1013,6 +1018,8 @@ static int snd_pcm_pipewire_open(snd_pcm_t **pcmp, const char *name,
- pw->target = capture_node ? strdup(capture_node) : NULL;
- }
-
-+ pw->role = (role && *role) ? strdup(role) : NULL;
-+
- pw->main_loop = pw_thread_loop_new("alsa-pipewire", NULL);
- if (pw->main_loop == NULL) {
- err = -errno;
-@@ -1091,6 +1098,7 @@ SND_PCM_PLUGIN_DEFINE_FUNC(pipewire)
- const char *server_name = NULL;
- const char *playback_node = NULL;
- const char *capture_node = NULL;
-+ const char *role = NULL;
- snd_pcm_format_t format = SND_PCM_FORMAT_UNKNOWN;
- int rate = 0;
- int channels = 0;
-@@ -1125,6 +1133,10 @@ SND_PCM_PLUGIN_DEFINE_FUNC(pipewire)
- snd_config_get_string(n, &capture_node);
- continue;
- }
-+ if (spa_streq(id, "role")) {
-+ snd_config_get_string(n, &role);
-+ continue;
-+ }
- if (spa_streq(id, "exclusive")) {
- if (snd_config_get_bool(n))
- flags |= PW_STREAM_FLAG_EXCLUSIVE;
-@@ -1174,7 +1186,7 @@ SND_PCM_PLUGIN_DEFINE_FUNC(pipewire)
- }
-
- err = snd_pcm_pipewire_open(pcmp, name, node_name, server_name, playback_node,
-- capture_node, stream, mode, flags, rate, format,
-+ capture_node, role, stream, mode, flags, rate, format,
- channels, period_bytes);
-
- return err;
-diff --git a/pipewire-alsa/conf/50-pipewire.conf b/pipewire-alsa/conf/50-pipewire.conf
-index 2c6f2d259..f7e58472b 100644
---- a/pipewire-alsa/conf/50-pipewire.conf
-+++ b/pipewire-alsa/conf/50-pipewire.conf
-@@ -3,9 +3,10 @@
- defaults.pipewire.server "pipewire-0"
- defaults.pipewire.node "-1"
- defaults.pipewire.exclusive false
-+defaults.pipewire.role ""
-
- pcm.pipewire {
-- @args [ SERVER NODE EXCLUSIVE ]
-+ @args [ SERVER NODE EXCLUSIVE ROLE ]
- @args.SERVER {
- type string
- default {
-@@ -27,6 +28,13 @@ pcm.pipewire {
- name defaults.pipewire.exclusive
- }
- }
-+ @args.ROLE {
-+ type string
-+ default {
-+ @func refer
-+ name defaults.pipewire.role
-+ }
-+ }
-
-
- type pipewire
-@@ -34,6 +42,7 @@ pcm.pipewire {
- playback_node $NODE
- capture_node $NODE
- exclusive $EXCLUSIVE
-+ role $ROLE
- hint {
- show on
- description "PipeWire Sound Server"
---
-2.30.2
-
diff --git a/meta-pipewire/recipes-multimedia/pipewire/pipewire/0001-null-sink-make-the-timerfd-non-blocking.patch b/meta-pipewire/recipes-multimedia/pipewire/pipewire/0001-null-sink-make-the-timerfd-non-blocking.patch
deleted file mode 100644
index 71e526f86..000000000
--- a/meta-pipewire/recipes-multimedia/pipewire/pipewire/0001-null-sink-make-the-timerfd-non-blocking.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From c633004bf310998580ff8944c59d94689d6fca87 Mon Sep 17 00:00:00 2001
-From: George Kiagiadakis <george.kiagiadakis@collabora.com>
-Date: Thu, 1 Jul 2021 11:37:01 +0300
-Subject: [PATCH] null-sink: make the timerfd non-blocking
-
-Fixes #1377
-
-Upstream-Status: Backport [from master/0.3.32]
-Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
----
- spa/plugins/support/null-audio-sink.c | 8 ++++++--
- 1 file changed, 6 insertions(+), 2 deletions(-)
-
-diff --git a/spa/plugins/support/null-audio-sink.c b/spa/plugins/support/null-audio-sink.c
-index e9588f1e2..12e671db8 100644
---- a/spa/plugins/support/null-audio-sink.c
-+++ b/spa/plugins/support/null-audio-sink.c
-@@ -221,8 +221,11 @@ static void on_timeout(struct spa_source *source)
- spa_log_trace(this->log, "timeout");
-
- if (spa_system_timerfd_read(this->data_system,
-- this->timer_source.fd, &expirations) < 0)
-+ this->timer_source.fd, &expirations) < 0) {
-+ if (errno == EAGAIN)
-+ return;
- perror("read timerfd");
-+ }
-
- nsec = this->next_time;
-
-@@ -818,7 +821,8 @@ impl_init(const struct spa_handle_factory *factory,
-
- this->timer_source.func = on_timeout;
- this->timer_source.data = this;
-- this->timer_source.fd = spa_system_timerfd_create(this->data_system, CLOCK_MONOTONIC, SPA_FD_CLOEXEC);
-+ this->timer_source.fd = spa_system_timerfd_create(this->data_system, CLOCK_MONOTONIC,
-+ SPA_FD_CLOEXEC | SPA_FD_NONBLOCK);
- this->timer_source.mask = SPA_IO_IN;
- this->timer_source.rmask = 0;
- this->timerspec.it_value.tv_sec = 0;
---
-2.30.2
-
diff --git a/meta-pipewire/recipes-multimedia/pipewire/pipewire/0002-Revert-treewide-meson.build-use-dependency-variable-.patch b/meta-pipewire/recipes-multimedia/pipewire/pipewire/0002-Revert-treewide-meson.build-use-dependency-variable-.patch
new file mode 100644
index 000000000..4131e6c27
--- /dev/null
+++ b/meta-pipewire/recipes-multimedia/pipewire/pipewire/0002-Revert-treewide-meson.build-use-dependency-variable-.patch
@@ -0,0 +1,1129 @@
+From cbe87dc5390c91523a9f0bc3eb126fa500c351e2 Mon Sep 17 00:00:00 2001
+From: Ashok Sidipotu <ashok.sidipotu@collabora.com>
+Date: Fri, 14 Jan 2022 18:23:54 +0530
+Subject: [PATCH 2/4] Revert "treewide: meson.build: use dependency variable
+ for SPA"
+
+This reverts commit 2b110af36683f13f2b55064dec4ae02c1b407561.
+
+Upstream-Status: Inappropriate[meson version dependent]
+---
+ spa/examples/meson.build | 4 +-
+ spa/meson.build | 41 +++++++-------
+ spa/plugins/alsa/acp/meson.build | 4 +-
+ spa/plugins/alsa/meson.build | 7 +--
+ spa/plugins/audioconvert/meson.build | 33 ++++++------
+ spa/plugins/audiomixer/meson.build | 11 ++--
+ spa/plugins/audiotestsrc/meson.build | 3 +-
+ spa/plugins/bluez5/meson.build | 24 ++++-----
+ spa/plugins/control/meson.build | 3 +-
+ spa/plugins/ffmpeg/meson.build | 3 +-
+ spa/plugins/jack/meson.build | 3 +-
+ spa/plugins/libcamera/meson.build | 3 +-
+ spa/plugins/support/meson.build | 14 +++--
+ spa/plugins/test/meson.build | 3 +-
+ spa/plugins/v4l2/meson.build | 3 +-
+ spa/plugins/videoconvert/meson.build | 3 +-
+ spa/plugins/videotestsrc/meson.build | 3 +-
+ spa/plugins/volume/meson.build | 2 +-
+ spa/plugins/vulkan/meson.build | 3 +-
+ spa/tests/meson.build | 5 +-
+ spa/tools/meson.build | 9 ++--
+ src/daemon/meson.build | 8 +--
+ src/gst/meson.build | 4 +-
+ src/modules/meson.build | 80 ++++++++++++++--------------
+ src/modules/spa/meson.build | 16 +++---
+ src/pipewire/meson.build | 4 +-
+ test/meson.build | 11 ++--
+ 27 files changed, 160 insertions(+), 147 deletions(-)
+
+diff --git a/spa/examples/meson.build b/spa/examples/meson.build
+index 7064a0643..bc04b723c 100644
+--- a/spa/examples/meson.build
++++ b/spa/examples/meson.build
+@@ -23,8 +23,8 @@ foreach c : spa_examples
+ executable(
+ c,
+ c + '.c',
+- include_directories : [configinc],
+- dependencies : [spa_dep, dl_lib, pthread_lib, mathlib] + deps,
++ include_directories : [configinc, spa_inc],
++ dependencies : [dl_lib, pthread_lib, mathlib] + deps,
+ install : installed_tests_enabled,
+ install_dir : installed_tests_execdir / 'examples' / 'spa'
+ )
+diff --git a/spa/meson.build b/spa/meson.build
+index 4ad37cdb4..2717b86d6 100644
+--- a/spa/meson.build
++++ b/spa/meson.build
+@@ -5,28 +5,7 @@
+ #pthread_lib = dependencies('threads')
+ #mathlib = cc.find_library('m', required : false)
+
+-spa_dep = declare_dependency(
+- include_directories : [
+- include_directories('include'),
+- ],
+- version : spaversion,
+- variables : {
+- 'plugindir' : meson.current_build_dir() / 'plugins',
+- 'datadir' : meson.current_source_dir() / 'plugins',
+- },
+-)
+-
+-meson.override_dependency('lib@0@'.format(spa_name), spa_dep)
+-
+-pkgconfig.generate(filebase : 'lib@0@'.format(spa_name),
+- name : 'libspa',
+- subdirs : spa_name,
+- description : 'Simple Plugin API',
+- version : spaversion,
+- extra_cflags : '-D_REENTRANT',
+- variables : ['plugindir=${libdir}/@0@'.format(spa_name)],
+- uninstalled_variables : ['plugindir=${prefix}/spa/plugins'],
+-)
++spa_inc = include_directories('include')
+
+ subdir('include')
+
+@@ -76,3 +55,21 @@ subdir('tests')
+ if not get_option('examples').disabled()
+ subdir('examples')
+ endif
++
++spa_dep = declare_dependency(
++ include_directories : [spa_inc],
++ version : spaversion,
++ variables : { 'plugindir' : meson.current_build_dir() / 'plugins' }
++)
++
++pkgconfig.generate(filebase : 'lib@0@'.format(spa_name),
++ name : 'libspa',
++ subdirs : spa_name,
++ description : 'Simple Plugin API',
++ version : spaversion,
++ extra_cflags : '-D_REENTRANT',
++ variables : ['plugindir=${libdir}/@0@'.format(spa_name)],
++ uninstalled_variables : ['plugindir=${prefix}/spa/plugins'],
++)
++
++meson.override_dependency('lib@0@'.format(spa_name), spa_dep)
+diff --git a/spa/plugins/alsa/acp/meson.build b/spa/plugins/alsa/acp/meson.build
+index 0ec97e2b4..3686aec82 100644
+--- a/spa/plugins/alsa/acp/meson.build
++++ b/spa/plugins/alsa/acp/meson.build
+@@ -16,7 +16,7 @@ acp_lib = static_library(
+ 'acp',
+ acp_sources,
+ c_args : acp_c_args,
+- include_directories : [configinc, includes_inc ],
+- dependencies : [ spa_dep, alsa_dep, mathlib, ]
++ include_directories : [configinc, spa_inc, includes_inc ],
++ dependencies : [ alsa_dep, mathlib, ]
+ )
+ acp_dep = declare_dependency(link_with: acp_lib)
+diff --git a/spa/plugins/alsa/meson.build b/spa/plugins/alsa/meson.build
+index e3fa6f0d7..402d93486 100644
+--- a/spa/plugins/alsa/meson.build
++++ b/spa/plugins/alsa/meson.build
+@@ -16,8 +16,8 @@ spa_alsa = shared_library(
+ 'spa-alsa',
+ [ spa_alsa_sources ],
+ c_args : acp_c_args,
+- include_directories : [configinc],
+- dependencies : [ spa_dep, alsa_dep, libudev_dep, mathlib, epoll_shim_dep, libinotify_dep ],
++ include_directories : [spa_inc, configinc],
++ dependencies : [ alsa_dep, libudev_dep, mathlib, epoll_shim_dep, libinotify_dep ],
+ link_with : [ acp_lib ],
+ install : true,
+ install_dir : spa_plugindir / 'alsa'
+@@ -30,7 +30,8 @@ alsa_udevrules = [
+ executable('spa-acp-tool',
+ [ 'acp-tool.c' ],
+ c_args : acp_c_args,
+- dependencies : [ spa_dep, alsa_dep, mathlib, acp_dep ],
++ include_directories : [spa_inc ],
++ dependencies : [ alsa_dep, mathlib, acp_dep ],
+ install : true,
+ )
+
+diff --git a/spa/plugins/audioconvert/meson.build b/spa/plugins/audioconvert/meson.build
+index 4d15271f5..6f4fd968b 100644
+--- a/spa/plugins/audioconvert/meson.build
++++ b/spa/plugins/audioconvert/meson.build
+@@ -17,7 +17,7 @@ if have_sse
+ 'volume-ops-sse.c',
+ 'channelmix-ops-sse.c' ],
+ c_args : [sse_args, '-O3', '-DHAVE_SSE'],
+- dependencies : [ spa_dep ],
++ include_directories : [spa_inc],
+ install : false
+ )
+ simd_cargs += ['-DHAVE_SSE']
+@@ -27,7 +27,7 @@ if have_sse2
+ audioconvert_sse2 = static_library('audioconvert_sse2',
+ ['fmt-ops-sse2.c' ],
+ c_args : [sse2_args, '-O3', '-DHAVE_SSE2'],
+- dependencies : [ spa_dep ],
++ include_directories : [spa_inc],
+ install : false
+ )
+ simd_cargs += ['-DHAVE_SSE2']
+@@ -38,7 +38,7 @@ if have_ssse3
+ ['fmt-ops-ssse3.c',
+ 'resample-native-ssse3.c' ],
+ c_args : [ssse3_args, '-O3', '-DHAVE_SSSE3'],
+- dependencies : [ spa_dep ],
++ include_directories : [spa_inc],
+ install : false
+ )
+ simd_cargs += ['-DHAVE_SSSE3']
+@@ -48,7 +48,7 @@ if have_sse41
+ audioconvert_sse41 = static_library('audioconvert_sse41',
+ ['fmt-ops-sse41.c'],
+ c_args : [sse41_args, '-O3', '-DHAVE_SSE41'],
+- dependencies : [ spa_dep ],
++ include_directories : [spa_inc],
+ install : false
+ )
+ simd_cargs += ['-DHAVE_SSE41']
+@@ -58,7 +58,7 @@ if have_avx and have_fma
+ audioconvert_avx = static_library('audioconvert_avx',
+ ['resample-native-avx.c'],
+ c_args : [avx_args, fma_args, '-O3', '-DHAVE_AVX', '-DHAVE_FMA'],
+- dependencies : [ spa_dep ],
++ include_directories : [spa_inc],
+ install : false
+ )
+ simd_cargs += ['-DHAVE_AVX', '-DHAVE_FMA']
+@@ -68,7 +68,7 @@ if have_avx2
+ audioconvert_avx2 = static_library('audioconvert_avx2',
+ ['fmt-ops-avx2.c'],
+ c_args : [avx2_args, '-O3', '-DHAVE_AVX2'],
+- dependencies : [ spa_dep ],
++ include_directories : [spa_inc],
+ install : false
+ )
+ simd_cargs += ['-DHAVE_AVX2']
+@@ -80,7 +80,7 @@ if have_neon
+ ['resample-native-neon.c',
+ 'fmt-ops-neon.c' ],
+ c_args : [neon_args, '-O3', '-DHAVE_NEON'],
+- dependencies : [ spa_dep ],
++ include_directories : [spa_inc],
+ install : false
+ )
+ simd_cargs += ['-DHAVE_NEON']
+@@ -100,8 +100,7 @@ audioconvert_lib = static_library('audioconvert',
+ 'volume-ops-c.c' ],
+ c_args : [ simd_cargs, '-O3'],
+ link_with : simd_dependencies,
+- include_directories : [configinc],
+- dependencies : [ spa_dep ],
++ include_directories : [configinc, spa_inc],
+ install : false
+ )
+ audioconvert_dep = declare_dependency(link_with: audioconvert_lib)
+@@ -109,7 +108,8 @@ audioconvert_dep = declare_dependency(link_with: audioconvert_lib)
+ spa_audioconvert_lib = shared_library('spa-audioconvert',
+ audioconvert_sources,
+ c_args : simd_cargs,
+- dependencies : [ spa_dep, mathlib, audioconvert_dep ],
++ include_directories : [spa_inc],
++ dependencies : [ mathlib, audioconvert_dep ],
+ install : true,
+ install_dir : spa_plugindir / 'audioconvert')
+ spa_audioconvert_dep = declare_dependency(link_with: spa_audioconvert_lib)
+@@ -117,7 +117,7 @@ spa_audioconvert_dep = declare_dependency(link_with: spa_audioconvert_lib)
+ test_lib = static_library('test_lib',
+ ['test-source.c' ],
+ c_args : ['-O3'],
+- dependencies : [ spa_dep ],
++ include_directories : [spa_inc],
+ install : false
+ )
+
+@@ -132,8 +132,8 @@ test_apps = [
+ foreach a : test_apps
+ test(a,
+ executable(a, a + '.c',
+- dependencies : [ spa_dep, dl_lib, pthread_lib, mathlib, audioconvert_dep, spa_audioconvert_dep ],
+- include_directories : [ configinc ],
++ dependencies : [ dl_lib, pthread_lib, mathlib, audioconvert_dep, spa_audioconvert_dep ],
++ include_directories : [ configinc, spa_inc ],
+ link_with : [ test_lib ],
+ install_rpath : spa_plugindir / 'audioconvert',
+ c_args : [ simd_cargs ],
+@@ -163,8 +163,8 @@ benchmark_apps = [
+ foreach a : benchmark_apps
+ benchmark(a,
+ executable(a, a + '.c',
+- dependencies : [ spa_dep, dl_lib, pthread_lib, mathlib, audioconvert_dep, spa_audioconvert_dep ],
+- include_directories : [ configinc ],
++ dependencies : [ dl_lib, pthread_lib, mathlib, audioconvert_dep, spa_audioconvert_dep ],
++ include_directories : [ configinc, spa_inc ],
+ c_args : [ simd_cargs ],
+ install_rpath : spa_plugindir / 'audioconvert',
+ install : installed_tests_enabled,
+@@ -192,8 +192,9 @@ if sndfile_dep.found()
+ executable('spa-resample',
+ sparesample_sources,
+ c_args : [ simd_cargs ],
++ include_directories : [spa_inc ],
+ link_with : [ test_lib ],
+- dependencies : [ spa_dep, sndfile_dep, mathlib, audioconvert_dep ],
++ dependencies : [sndfile_dep, mathlib, audioconvert_dep],
+ install : true,
+ )
+ endif
+diff --git a/spa/plugins/audiomixer/meson.build b/spa/plugins/audiomixer/meson.build
+index 9e1d12d59..214c2a887 100644
+--- a/spa/plugins/audiomixer/meson.build
++++ b/spa/plugins/audiomixer/meson.build
+@@ -11,7 +11,7 @@ simd_dependencies = []
+ audiomixer_c = static_library('audiomixer_c',
+ ['mix-ops-c.c' ],
+ c_args : ['-O3'],
+- dependencies : [ spa_dep ],
++ include_directories : [spa_inc],
+ install : false
+ )
+ simd_dependencies += audiomixer_c
+@@ -20,7 +20,7 @@ if have_sse
+ audiomixer_sse = static_library('audiomixer_sse',
+ ['mix-ops-sse.c' ],
+ c_args : [sse_args, '-O3', '-DHAVE_SSE'],
+- dependencies : [ spa_dep ],
++ include_directories : [spa_inc],
+ install : false
+ )
+ simd_cargs += ['-DHAVE_SSE']
+@@ -30,7 +30,7 @@ if have_sse2
+ audiomixer_sse2 = static_library('audiomixer_sse2',
+ ['mix-ops-sse2.c' ],
+ c_args : [sse2_args, '-O3', '-DHAVE_SSE2'],
+- dependencies : [ spa_dep ],
++ include_directories : [spa_inc],
+ install : false
+ )
+ simd_cargs += ['-DHAVE_SSE2']
+@@ -40,7 +40,7 @@ if have_avx and have_fma
+ audiomixer_avx = static_library('audiomixer_avx',
+ ['mix-ops-avx.c'],
+ c_args : [avx_args, fma_args, '-O3', '-DHAVE_AVX', '-DHAVE_FMA'],
+- dependencies : [ spa_dep ],
++ include_directories : [spa_inc],
+ install : false
+ )
+ simd_cargs += ['-DHAVE_AVX', '-DHAVE_FMA']
+@@ -51,7 +51,8 @@ audiomixerlib = shared_library('spa-audiomixer',
+ audiomixer_sources,
+ c_args : simd_cargs,
+ link_with : simd_dependencies,
+- dependencies : [ spa_dep, mathlib ],
++ include_directories : [spa_inc],
++ dependencies : [ mathlib ],
+ install : true,
+ install_dir : spa_plugindir / 'audiomixer'
+ )
+diff --git a/spa/plugins/audiotestsrc/meson.build b/spa/plugins/audiotestsrc/meson.build
+index d1b22428d..8011ee883 100644
+--- a/spa/plugins/audiotestsrc/meson.build
++++ b/spa/plugins/audiotestsrc/meson.build
+@@ -2,6 +2,7 @@ audiotestsrc_sources = ['audiotestsrc.c', 'plugin.c']
+
+ audiotestsrclib = shared_library('spa-audiotestsrc',
+ audiotestsrc_sources,
+- dependencies : [ spa_dep, mathlib ],
++ include_directories : [spa_inc],
++ dependencies : [mathlib, ],
+ install : true,
+ install_dir : spa_plugindir / 'audiotestsrc')
+diff --git a/spa/plugins/bluez5/meson.build b/spa/plugins/bluez5/meson.build
+index b13e23cf4..eca9c9eb5 100644
+--- a/spa/plugins/bluez5/meson.build
++++ b/spa/plugins/bluez5/meson.build
+@@ -56,8 +56,8 @@ endif
+
+ bluez5lib = shared_library('spa-bluez5',
+ bluez5_sources,
+- include_directories : [ configinc ],
+- dependencies : [ spa_dep, bluez5_deps ],
++ include_directories : [ spa_inc, configinc ],
++ dependencies : bluez5_deps,
+ install : true,
+ install_dir : spa_plugindir / 'bluez5')
+
+@@ -65,26 +65,26 @@ codec_args = [ '-DCODEC_PLUGIN' ]
+
+ bluez_codec_sbc = shared_library('spa-codec-bluez5-sbc',
+ [ 'a2dp-codec-sbc.c', 'a2dp-codecs.c' ],
+- include_directories : [ configinc ],
++ include_directories : [ spa_inc, configinc ],
+ c_args : codec_args,
+- dependencies : [ spa_dep, sbc_dep ],
++ dependencies : sbc_dep,
+ install : true,
+ install_dir : spa_plugindir / 'bluez5')
+
+ bluez_codec_faststream = shared_library('spa-codec-bluez5-faststream',
+ [ 'a2dp-codec-faststream.c', 'a2dp-codecs.c' ],
+- include_directories : [ configinc ],
++ include_directories : [ spa_inc, configinc ],
+ c_args : codec_args,
+- dependencies : [ spa_dep, sbc_dep ],
++ dependencies : sbc_dep,
+ install : true,
+ install_dir : spa_plugindir / 'bluez5')
+
+ if fdk_aac_dep.found()
+ bluez_codec_aac = shared_library('spa-codec-bluez5-aac',
+ [ 'a2dp-codec-aac.c', 'a2dp-codecs.c' ],
+- include_directories : [ configinc ],
++ include_directories : [ spa_inc, configinc ],
+ c_args : codec_args,
+- dependencies : [ spa_dep, fdk_aac_dep ],
++ dependencies : fdk_aac_dep,
+ install : true,
+ install_dir : spa_plugindir / 'bluez5')
+ endif
+@@ -92,9 +92,9 @@ endif
+ if aptx_dep.found()
+ bluez_codec_aptx = shared_library('spa-codec-bluez5-aptx',
+ [ 'a2dp-codec-aptx.c', 'a2dp-codecs.c' ],
+- include_directories : [ configinc ],
++ include_directories : [ spa_inc, configinc ],
+ c_args : codec_args,
+- dependencies : [ spa_dep, aptx_dep, sbc_dep ],
++ dependencies : [ aptx_dep, sbc_dep ],
+ install : true,
+ install_dir : spa_plugindir / 'bluez5')
+ endif
+@@ -108,9 +108,9 @@ if ldac_dep.found()
+ endif
+ bluez_codec_ldac = shared_library('spa-codec-bluez5-ldac',
+ [ 'a2dp-codec-ldac.c', 'a2dp-codecs.c' ],
+- include_directories : [ configinc ],
++ include_directories : [ spa_inc, configinc ],
+ c_args : ldac_args,
+- dependencies : [ spa_dep, ldac_dep ],
++ dependencies : ldac_dep,
+ install : true,
+ install_dir : spa_plugindir / 'bluez5')
+ endif
+diff --git a/spa/plugins/control/meson.build b/spa/plugins/control/meson.build
+index adabdfab3..10f9cfeda 100644
+--- a/spa/plugins/control/meson.build
++++ b/spa/plugins/control/meson.build
+@@ -5,6 +5,7 @@ control_sources = [
+
+ controllib = shared_library('spa-control',
+ control_sources,
+- dependencies : [ spa_dep, mathlib ],
++ include_directories : [spa_inc],
++ dependencies : [ mathlib ],
+ install : true,
+ install_dir : spa_plugindir / 'control')
+diff --git a/spa/plugins/ffmpeg/meson.build b/spa/plugins/ffmpeg/meson.build
+index 0e41ecb6e..2aec258da 100644
+--- a/spa/plugins/ffmpeg/meson.build
++++ b/spa/plugins/ffmpeg/meson.build
+@@ -4,6 +4,7 @@ ffmpeg_sources = ['ffmpeg.c',
+
+ ffmpeglib = shared_library('spa-ffmpeg',
+ ffmpeg_sources,
+- dependencies : [ spa_dep, avcodec_dep ],
++ include_directories : [spa_inc],
++ dependencies : [avcodec_dep],
+ install : true,
+ install_dir : spa_plugindir / 'ffmpeg')
+diff --git a/spa/plugins/jack/meson.build b/spa/plugins/jack/meson.build
+index 312a54061..b1732acd6 100644
+--- a/spa/plugins/jack/meson.build
++++ b/spa/plugins/jack/meson.build
+@@ -7,6 +7,7 @@ spa_jack_sources = [
+
+ spa_jack = shared_library('spa-jack',
+ spa_jack_sources,
+- dependencies : [ spa_dep, jack_dep, mathlib ],
++ include_directories : [spa_inc],
++ dependencies : [ jack_dep, mathlib ],
+ install : true,
+ install_dir : spa_plugindir / 'jack')
+diff --git a/spa/plugins/libcamera/meson.build b/spa/plugins/libcamera/meson.build
+index abb1a42cf..02ac2d9c2 100644
+--- a/spa/plugins/libcamera/meson.build
++++ b/spa/plugins/libcamera/meson.build
+@@ -11,7 +11,8 @@ summary({'libdrm': libdrm_dep.found()}, bool_yn: true, section: 'Backend')
+ if libdrm_dep.found()
+ libcameralib = shared_library('spa-libcamera',
+ libcamera_sources,
+- dependencies : [ spa_dep, libudev_dep, libcamera_dep, pthread_lib, libdrm_dep ],
++ include_directories : [ spa_inc ],
++ dependencies : [ libudev_dep, libcamera_dep, pthread_lib, libdrm_dep ],
+ install : true,
+ install_dir : spa_plugindir / 'libcamera')
+ endif
+diff --git a/spa/plugins/support/meson.build b/spa/plugins/support/meson.build
+index b810b283c..15010a51e 100644
+--- a/spa/plugins/support/meson.build
++++ b/spa/plugins/support/meson.build
+@@ -17,12 +17,14 @@ endif
+
+ spa_support_lib = shared_library('spa-support',
+ spa_support_sources,
++ include_directories : [ spa_inc ],
+ c_args : [ simd_cargs ],
+- dependencies : [ spa_dep, pthread_lib, epoll_shim_dep ],
++ dependencies : [ pthread_lib, epoll_shim_dep ],
+ install : true,
+ install_dir : spa_plugindir / 'support')
+ spa_support_dep = declare_dependency(link_with: spa_support_lib)
+
++
+ if not get_option('evl').disabled()
+ evl_inc = include_directories('/usr/evl/include')
+ evl_lib = cc.find_library('evl',
+@@ -33,8 +35,8 @@ if not get_option('evl').disabled()
+
+ spa_evl_lib = shared_library('spa-evl',
+ spa_evl_sources,
+- include_directories : [ evl_inc],
+- dependencies : [ spa_dep, pthread_lib, evl_lib ],
++ include_directories : [ spa_inc, evl_inc],
++ dependencies : [ pthread_lib, evl_lib],
+ install : true,
+ install_dir : spa_plugindir / 'support')
+ endif
+@@ -44,7 +46,8 @@ if dbus_dep.found()
+
+ spa_dbus_lib = shared_library('spa-dbus',
+ spa_dbus_sources,
+- dependencies : [ spa_dep, dbus_dep ],
++ include_directories : [ spa_inc],
++ dependencies : [dbus_dep, ],
+ install : true,
+ install_dir : spa_plugindir / 'support')
+ spa_dbus_dep = declare_dependency(link_with: spa_dbus_lib)
+@@ -61,7 +64,8 @@ if systemd_dep.found()
+
+ spa_journal_lib = shared_library('spa-journal',
+ spa_journal_sources,
+- dependencies : [ spa_dep, systemd_dep ],
++ include_directories : spa_inc,
++ dependencies : systemd_dep,
+ install : true,
+ install_dir : spa_plugindir / 'support')
+ spa_journal_dep = declare_dependency(link_with: spa_journal_lib)
+diff --git a/spa/plugins/test/meson.build b/spa/plugins/test/meson.build
+index 950ee7c38..e824450f6 100644
+--- a/spa/plugins/test/meson.build
++++ b/spa/plugins/test/meson.build
+@@ -2,6 +2,7 @@ test_sources = ['fakesrc.c', 'fakesink.c', 'plugin.c']
+
+ testlib = shared_library('spa-test',
+ test_sources,
+- dependencies : [ spa_dep, pthread_lib ],
++ include_directories : [ spa_inc],
++ dependencies : [pthread_lib, ],
+ install : true,
+ install_dir : spa_plugindir / 'test')
+diff --git a/spa/plugins/v4l2/meson.build b/spa/plugins/v4l2/meson.build
+index 648583f32..297a62b16 100644
+--- a/spa/plugins/v4l2/meson.build
++++ b/spa/plugins/v4l2/meson.build
+@@ -5,6 +5,7 @@ v4l2_sources = ['v4l2.c',
+
+ v4l2lib = shared_library('spa-v4l2',
+ v4l2_sources,
+- dependencies : [ spa_dep, libudev_dep, libinotify_dep ],
++ include_directories : [ spa_inc ],
++ dependencies : [ libudev_dep, libinotify_dep ],
+ install : true,
+ install_dir : spa_plugindir / 'v4l2')
+diff --git a/spa/plugins/videoconvert/meson.build b/spa/plugins/videoconvert/meson.build
+index 24673a541..17d860d5a 100644
+--- a/spa/plugins/videoconvert/meson.build
++++ b/spa/plugins/videoconvert/meson.build
+@@ -9,7 +9,8 @@ simd_dependencies = []
+ videoconvertlib = shared_library('spa-videoconvert',
+ videoconvert_sources,
+ c_args : simd_cargs,
+- dependencies : [ spa_dep, mathlib ],
++ include_directories : [spa_inc],
++ dependencies : [ mathlib ],
+ link_with : simd_dependencies,
+ install : true,
+ install_dir : spa_plugindir / 'videoconvert')
+diff --git a/spa/plugins/videotestsrc/meson.build b/spa/plugins/videotestsrc/meson.build
+index 01a33ee29..f6f3dca56 100644
+--- a/spa/plugins/videotestsrc/meson.build
++++ b/spa/plugins/videotestsrc/meson.build
+@@ -2,6 +2,7 @@ videotestsrc_sources = ['videotestsrc.c', 'plugin.c']
+
+ videotestsrclib = shared_library('spa-videotestsrc',
+ videotestsrc_sources,
+- dependencies : [ spa_dep, pthread_lib ],
++ include_directories : [ spa_inc],
++ dependencies : [pthread_lib, ],
+ install : true,
+ install_dir : spa_plugindir / 'videotestsrc')
+diff --git a/spa/plugins/volume/meson.build b/spa/plugins/volume/meson.build
+index 2445e2bbd..e10f89563 100644
+--- a/spa/plugins/volume/meson.build
++++ b/spa/plugins/volume/meson.build
+@@ -2,6 +2,6 @@ volume_sources = ['volume.c', 'plugin.c']
+
+ volumelib = shared_library('spa-volume',
+ volume_sources,
+- dependencies : [ spa_dep ],
++ include_directories : [spa_inc],
+ install : true,
+ install_dir : spa_plugindir / 'volume')
+diff --git a/spa/plugins/vulkan/meson.build b/spa/plugins/vulkan/meson.build
+index b79bca2cf..9683b41ea 100644
+--- a/spa/plugins/vulkan/meson.build
++++ b/spa/plugins/vulkan/meson.build
+@@ -6,6 +6,7 @@ spa_vulkan_sources = [
+
+ spa_vulkan = shared_library('spa-vulkan',
+ spa_vulkan_sources,
+- dependencies : [ spa_dep, vulkan_dep, mathlib ],
++ include_directories : [spa_inc],
++ dependencies : [ vulkan_dep, mathlib ],
+ install : true,
+ install_dir : spa_plugindir / 'vulkan')
+diff --git a/spa/tests/meson.build b/spa/tests/meson.build
+index 9e2a211e2..146cfe08a 100644
+--- a/spa/tests/meson.build
++++ b/spa/tests/meson.build
+@@ -20,7 +20,7 @@ if find.found()
+ configuration: c)
+ executable('spa-include-test-@0@'.format(spa_header.underscorify()),
+ src,
+- dependencies: [ spa_dep ],
++ include_directories: [spa_inc],
+ install: false)
+ endif
+ endforeach
+@@ -35,7 +35,8 @@ benchmark_apps = [
+ foreach a : benchmark_apps
+ benchmark('spa-' + a,
+ executable('spa-' + a, a + '.c',
+- dependencies : [ spa_dep, dl_lib, pthread_lib, mathlib ],
++ dependencies : [dl_lib, pthread_lib, mathlib ],
++ include_directories : [spa_inc ],
+ install : installed_tests_enabled,
+ install_dir : installed_tests_execdir,
+ ),
+diff --git a/spa/tools/meson.build b/spa/tools/meson.build
+index 6f12e9c8f..e4df6c3ac 100644
+--- a/spa/tools/meson.build
++++ b/spa/tools/meson.build
+@@ -1,11 +1,14 @@
+ executable('spa-inspect', 'spa-inspect.c',
+- dependencies : [ spa_dep, dl_lib ],
++ include_directories : [spa_inc],
++ dependencies : [dl_lib, ],
+ install : true)
+
+ executable('spa-monitor', 'spa-monitor.c',
+- dependencies : [ spa_dep, dl_lib ],
++ include_directories : [spa_inc],
++ dependencies : [dl_lib, ],
+ install : true)
+
+ executable('spa-json-dump', 'spa-json-dump.c',
+- dependencies : [ spa_dep, dl_lib, ],
++ include_directories : [spa_inc],
++ dependencies : [dl_lib, ],
+ install : true)
+diff --git a/src/daemon/meson.build b/src/daemon/meson.build
+index 5e64287a1..104a6dbf3 100644
+--- a/src/daemon/meson.build
++++ b/src/daemon/meson.build
+@@ -86,16 +86,16 @@ pipewire_exec = executable('pipewire',
+ pipewire_daemon_sources,
+ install: true,
+ c_args : pipewire_c_args,
+- include_directories : [ configinc ],
+- dependencies : [ spa_dep, pipewire_dep, ],
++ include_directories : [configinc, spa_inc],
++ dependencies : [pipewire_dep, ],
+ )
+
+ executable('pipewire-pulse',
+ pipewire_daemon_sources,
+ install: true,
+ c_args : pipewire_c_args,
+- include_directories : [ configinc ],
+- dependencies : [ spa_dep, pipewire_dep, ],
++ include_directories : [configinc, spa_inc],
++ dependencies : [pipewire_dep, ],
+ )
+
+ ln = find_program('ln')
+diff --git a/src/gst/meson.build b/src/gst/meson.build
+index 709dc0f1c..b91b33dc9 100644
+--- a/src/gst/meson.build
++++ b/src/gst/meson.build
+@@ -24,8 +24,8 @@ pipewire_gst_headers = [
+
+ pipewire_gst = shared_library('gstpipewire',
+ pipewire_gst_sources,
+- include_directories : [ configinc ],
+- dependencies : [ spa_dep, gst_dep, pipewire_dep ],
++ include_directories : [configinc, spa_inc],
++ dependencies : [gst_dep, pipewire_dep],
+ install : true,
+ install_dir : '@0@/gstreamer-1.0'.format(get_option('libdir')),
+ )
+diff --git a/src/modules/meson.build b/src/modules/meson.build
+index 45852f3b9..61a53bd6f 100644
+--- a/src/modules/meson.build
++++ b/src/modules/meson.build
+@@ -30,20 +30,20 @@ module_sources = [
+ ]
+
+ pipewire_module_access = shared_library('pipewire-module-access', [ 'module-access.c' ],
+- include_directories : [configinc],
++ include_directories : [configinc, spa_inc],
+ install : true,
+ install_dir : modules_install_dir,
+ install_rpath: modules_install_dir,
+- dependencies : [spa_dep, mathlib, dl_lib, pipewire_dep],
++ dependencies : [mathlib, dl_lib, pipewire_dep],
+ )
+
+ pipewire_module_loopback = shared_library('pipewire-module-loopback',
+ [ 'module-loopback.c' ],
+- include_directories : [configinc],
++ include_directories : [configinc, spa_inc],
+ install : true,
+ install_dir : modules_install_dir,
+ install_rpath: modules_install_dir,
+- dependencies : [spa_dep, mathlib, dl_lib, pipewire_dep],
++ dependencies : [mathlib, dl_lib, pipewire_dep],
+ )
+
+ simd_cargs = []
+@@ -53,7 +53,7 @@ if have_sse
+ pffft_sse = static_library('pffft_sse',
+ ['module-filter-chain/pffft.c' ],
+ c_args : [sse_args, '-O3', '-DHAVE_SSE'],
+- dependencies : [ spa_dep ],
++ include_directories : [spa_inc],
+ install : false
+ )
+ simd_cargs += ['-DHAVE_SSE']
+@@ -63,7 +63,7 @@ if have_neon
+ pffft_neon = static_library('pffft_neon',
+ ['module-filter-chain/pffft.c' ],
+ c_args : [neon_args, '-O3', '-DHAVE_NEON'],
+- dependencies : [ spa_dep ],
++ include_directories : [spa_inc],
+ install : false
+ )
+ simd_cargs += ['-DHAVE_NEON']
+@@ -73,7 +73,7 @@ endif
+ pffft_c = static_library('pffft_c',
+ ['module-filter-chain/pffft.c' ],
+ c_args : [simd_cargs, '-O3', '-DPFFFT_SIMD_DISABLE'],
+- dependencies : [ spa_dep ],
++ include_directories : [spa_inc],
+ install : false
+ )
+ simd_dependencies += pffft_c
+@@ -99,7 +99,7 @@ endif
+
+ pipewire_module_filter_chain = shared_library('pipewire-module-filter-chain',
+ filter_chain_sources,
+- include_directories : [configinc],
++ include_directories : [configinc, spa_inc],
+ install : true,
+ install_dir : modules_install_dir,
+ install_rpath: modules_install_dir,
+@@ -120,7 +120,7 @@ endif
+
+ pipewire_module_echo_cancel = shared_library('pipewire-module-echo-cancel',
+ pipewire_module_echo_cancel_sources,
+- include_directories : [configinc],
++ include_directories : [configinc, spa_inc],
+ install : true,
+ install_dir : modules_install_dir,
+ install_rpath: modules_install_dir,
+@@ -130,17 +130,17 @@ pipewire_module_echo_cancel = shared_library('pipewire-module-echo-cancel',
+ pipewire_module_profiler = shared_library('pipewire-module-profiler',
+ [ 'module-profiler.c',
+ 'module-profiler/protocol-native.c', ],
+- include_directories : [configinc],
++ include_directories : [configinc, spa_inc],
+ install : true,
+ install_dir : modules_install_dir,
+ install_rpath: modules_install_dir,
+- dependencies : [spa_dep, mathlib, dl_lib, pipewire_dep],
++ dependencies : [mathlib, dl_lib, pipewire_dep],
+ )
+
+ build_module_rt = build_machine.system() == 'linux'
+ if build_module_rt
+ pipewire_module_rt = shared_library('pipewire-module-rt', [ 'module-rt.c' ],
+- include_directories : [configinc],
++ include_directories : [configinc, spa_inc],
+ install : true,
+ install_dir : modules_install_dir,
+ install_rpath: modules_install_dir,
+@@ -152,7 +152,7 @@ summary({'rt': build_module_rt}, bool_yn: true, section: 'Optional Modules')
+ build_module_rtkit = dbus_dep.found()
+ if build_module_rtkit
+ pipewire_module_rtkit = shared_library('pipewire-module-rtkit', [ 'module-rtkit.c' ],
+- include_directories : [configinc],
++ include_directories : [configinc, spa_inc],
+ install : true,
+ install_dir : modules_install_dir,
+ install_rpath: modules_install_dir,
+@@ -164,7 +164,7 @@ summary({'rtkit': build_module_rtkit}, bool_yn: true, section: 'Optional Modules
+ build_module_portal = dbus_dep.found()
+ if build_module_portal
+ pipewire_module_portal = shared_library('pipewire-module-portal', [ 'module-portal.c' ],
+- include_directories : [configinc],
++ include_directories : [configinc, spa_inc],
+ install : true,
+ install_dir : modules_install_dir,
+ install_rpath: modules_install_dir,
+@@ -178,20 +178,20 @@ pipewire_module_client_device = shared_library('pipewire-module-client-device',
+ 'module-client-device/resource-device.c',
+ 'module-client-device/proxy-device.c',
+ 'module-client-device/protocol-native.c', ],
+- include_directories : [configinc],
++ include_directories : [configinc, spa_inc],
+ install : true,
+ install_dir : modules_install_dir,
+ install_rpath: modules_install_dir,
+- dependencies : [spa_dep, mathlib, dl_lib, pipewire_dep],
++ dependencies : [mathlib, dl_lib, pipewire_dep],
+ )
+
+ pipewire_module_link_factory = shared_library('pipewire-module-link-factory',
+ [ 'module-link-factory.c' ],
+- include_directories : [configinc],
++ include_directories : [configinc, spa_inc],
+ install : true,
+ install_dir : modules_install_dir,
+ install_rpath: modules_install_dir,
+- dependencies : [spa_dep, mathlib, dl_lib, pipewire_dep],
++ dependencies : [mathlib, dl_lib, pipewire_dep],
+ )
+
+ pipewire_module_protocol_deps = [mathlib, dl_lib, pipewire_dep]
+@@ -207,7 +207,7 @@ pipewire_module_protocol_native = shared_library('pipewire-module-protocol-nativ
+ 'module-protocol-native/protocol-native.c',
+ 'module-protocol-native/v0/protocol-native.c',
+ 'module-protocol-native/connection.c' ],
+- include_directories : [configinc],
++ include_directories : [configinc, spa_inc],
+ install : true,
+ install_dir : modules_install_dir,
+ install_rpath: modules_install_dir,
+@@ -281,7 +281,7 @@ endif
+
+ pipewire_module_protocol_pulse = shared_library('pipewire-module-protocol-pulse',
+ pipewire_module_protocol_pulse_sources,
+- include_directories : [configinc],
++ include_directories : [configinc, spa_inc],
+ install : true,
+ install_dir : modules_install_dir,
+ install_rpath: modules_install_dir,
+@@ -293,7 +293,7 @@ if build_module_pulse_tunnel
+ pipewire_module_pulse_tunnel = shared_library('pipewire-module-pulse-tunnel',
+ [ 'module-pulse-tunnel.c',
+ 'module-protocol-pulse/format.c' ],
+- include_directories : [configinc],
++ include_directories : [configinc, spa_inc],
+ install : true,
+ install_dir : modules_install_dir,
+ install_rpath: modules_install_dir,
+@@ -304,7 +304,7 @@ summary({'pulse-tunnel': build_module_pulse_tunnel}, bool_yn: true, section: 'Op
+
+ pipewire_module_protocol_simple = shared_library('pipewire-module-protocol-simple',
+ [ 'module-protocol-simple.c' ],
+- include_directories : [configinc],
++ include_directories : [configinc, spa_inc],
+ install : true,
+ install_dir : modules_install_dir,
+ install_rpath: modules_install_dir,
+@@ -313,20 +313,20 @@ pipewire_module_protocol_simple = shared_library('pipewire-module-protocol-simpl
+
+ pipewire_module_example_sink = shared_library('pipewire-module-example-sink',
+ [ 'module-example-sink.c' ],
+- include_directories : [configinc],
++ include_directories : [configinc, spa_inc],
+ install : false,
+ install_dir : modules_install_dir,
+ install_rpath: modules_install_dir,
+- dependencies : [spa_dep, mathlib, dl_lib, pipewire_dep],
++ dependencies : [mathlib, dl_lib, pipewire_dep],
+ )
+
+ pipewire_module_example_sink = shared_library('pipewire-module-example-source',
+ [ 'module-example-source.c' ],
+- include_directories : [configinc],
++ include_directories : [configinc, spa_inc],
+ install : false,
+ install_dir : modules_install_dir,
+ install_rpath: modules_install_dir,
+- dependencies : [spa_dep, mathlib, dl_lib, pipewire_dep],
++ dependencies : [mathlib, dl_lib, pipewire_dep],
+ )
+
+ pipewire_module_client_node = shared_library('pipewire-module-client-node',
+@@ -338,12 +338,12 @@ pipewire_module_client_node = shared_library('pipewire-module-client-node',
+ 'module-client-node/v0/transport.c',
+ 'module-client-node/v0/protocol-native.c',
+ 'spa/spa-node.c', ],
+- include_directories : [configinc],
++ include_directories : [configinc, spa_inc],
+ link_with : pipewire_module_protocol_native,
+ install : true,
+ install_dir : modules_install_dir,
+ install_rpath: modules_install_dir,
+- dependencies : [spa_dep, mathlib, dl_lib, pipewire_dep],
++ dependencies : [mathlib, dl_lib, pipewire_dep],
+ )
+
+ pipewire_module_metadata = shared_library('pipewire-module-metadata',
+@@ -351,12 +351,12 @@ pipewire_module_metadata = shared_library('pipewire-module-metadata',
+ 'module-metadata/proxy-metadata.c',
+ 'module-metadata/metadata.c',
+ 'module-metadata/protocol-native.c'],
+- include_directories : [configinc],
++ include_directories : [configinc, spa_inc],
+ link_with : pipewire_module_protocol_native,
+ install : true,
+ install_dir : modules_install_dir,
+ install_rpath: modules_install_dir,
+- dependencies : [spa_dep, mathlib, dl_lib, pipewire_dep],
++ dependencies : [mathlib, dl_lib, pipewire_dep],
+ )
+
+ test('pw-test-protocol-native',
+@@ -364,8 +364,8 @@ test('pw-test-protocol-native',
+ [ 'module-protocol-native/test-connection.c',
+ 'module-protocol-native/connection.c' ],
+ c_args : libpipewire_c_args,
+- include_directories : [configinc ],
+- dependencies : [spa_dep, pipewire_dep],
++ include_directories : [configinc, spa_inc ],
++ dependencies : [pipewire_dep],
+ install : installed_tests_enabled,
+ install_dir : installed_tests_execdir,
+ ),
+@@ -391,7 +391,7 @@ pipewire_module_adapter = shared_library('pipewire-module-adapter',
+ [ 'module-adapter.c',
+ 'module-adapter/adapter.c',
+ 'spa/spa-node.c' ],
+- include_directories : [configinc],
++ include_directories : [configinc, spa_inc],
+ install : true,
+ install_dir : modules_install_dir,
+ install_rpath: modules_install_dir,
+@@ -413,11 +413,11 @@ pipewire_module_session_manager = shared_library('pipewire-module-session-manage
+ 'module-session-manager/proxy-session-manager.c',
+ 'module-session-manager/session.c',
+ ],
+- include_directories : [configinc],
++ include_directories : [configinc, spa_inc],
+ install : true,
+ install_dir : modules_install_dir,
+ install_rpath: modules_install_dir,
+- dependencies : [spa_dep, mathlib, dl_lib, pipewire_dep],
++ dependencies : [mathlib, dl_lib, pipewire_dep],
+ )
+
+ build_module_zeroconf_discover = avahi_dep.found()
+@@ -426,7 +426,7 @@ pipewire_module_zeroconf_discover = shared_library('pipewire-module-zeroconf-dis
+ [ 'module-zeroconf-discover.c',
+ 'module-protocol-pulse/format.c',
+ 'module-zeroconf-discover/avahi-poll.c' ],
+- include_directories : [configinc],
++ include_directories : [configinc, spa_inc],
+ install : true,
+ install_dir : modules_install_dir,
+ install_rpath: modules_install_dir,
+@@ -440,7 +440,7 @@ if build_module_raop_discover
+ pipewire_module_raop_discover = shared_library('pipewire-module-raop-discover',
+ [ 'module-raop-discover.c',
+ 'module-zeroconf-discover/avahi-poll.c' ],
+- include_directories : [configinc],
++ include_directories : [configinc, spa_inc],
+ install : true,
+ install_dir : modules_install_dir,
+ install_rpath: modules_install_dir,
+@@ -454,7 +454,7 @@ if build_module_raop
+ pipewire_module_raop_sink = shared_library('pipewire-module-raop-sink',
+ [ 'module-raop-sink.c',
+ 'module-raop/rtsp-client.c' ],
+- include_directories : [configinc],
++ include_directories : [configinc, spa_inc],
+ install : true,
+ install_dir : modules_install_dir,
+ install_rpath: modules_install_dir,
+@@ -470,7 +470,7 @@ build_module_roc = roc_lib.found()
+ if build_module_roc
+ pipewire_module_roc_sink = shared_library('pipewire-module-roc-sink',
+ [ 'module-roc-sink.c' ],
+- include_directories : [configinc],
++ include_directories : [configinc, spa_inc],
+ install : true,
+ install_dir : modules_install_dir,
+ install_rpath: modules_install_dir,
+@@ -479,7 +479,7 @@ pipewire_module_roc_sink = shared_library('pipewire-module-roc-sink',
+
+ pipewire_module_roc_source = shared_library('pipewire-module-roc-source',
+ [ 'module-roc-source.c' ],
+- include_directories : [configinc],
++ include_directories : [configinc, spa_inc],
+ install : true,
+ install_dir : modules_install_dir,
+ install_rpath: modules_install_dir,
+diff --git a/src/modules/spa/meson.build b/src/modules/spa/meson.build
+index 8332910b5..ab4fac18d 100644
+--- a/src/modules/spa/meson.build
++++ b/src/modules/spa/meson.build
+@@ -1,31 +1,31 @@
+ pipewire_module_spa_node = shared_library('pipewire-module-spa-node',
+ [ 'module-node.c', 'spa-node.c' ],
+- include_directories : [configinc],
++ include_directories : [configinc, spa_inc],
+ install : true,
+ install_dir : modules_install_dir,
+- dependencies : [spa_dep, mathlib, dl_lib, pipewire_dep],
++ dependencies : [mathlib, dl_lib, pipewire_dep],
+ )
+
+ pipewire_module_spa_device = shared_library('pipewire-module-spa-device',
+ [ 'module-device.c', 'spa-device.c' ],
+- include_directories : [configinc],
++ include_directories : [configinc, spa_inc],
+ install : true,
+ install_dir : modules_install_dir,
+- dependencies : [spa_dep, mathlib, dl_lib, pipewire_dep],
++ dependencies : [mathlib, dl_lib, pipewire_dep],
+ )
+
+ pipewire_module_spa_node_factory = shared_library('pipewire-module-spa-node-factory',
+ [ 'module-node-factory.c', 'spa-node.c' ],
+- include_directories : [configinc],
++ include_directories : [configinc, spa_inc],
+ install : true,
+ install_dir : modules_install_dir,
+- dependencies : [spa_dep, mathlib, dl_lib, pipewire_dep],
++ dependencies : [mathlib, dl_lib, pipewire_dep],
+ )
+
+ pipewire_module_spa_device_factory = shared_library('pipewire-module-spa-device-factory',
+ [ 'module-device-factory.c', 'spa-device.c' ],
+- include_directories : [configinc],
++ include_directories : [configinc, spa_inc],
+ install : true,
+ install_dir : modules_install_dir,
+- dependencies : [spa_dep, mathlib, dl_lib, pipewire_dep],
++ dependencies : [mathlib, dl_lib, pipewire_dep],
+ )
+diff --git a/src/pipewire/meson.build b/src/pipewire/meson.build
+index 969f50b22..f66ce8746 100644
+--- a/src/pipewire/meson.build
++++ b/src/pipewire/meson.build
+@@ -103,9 +103,9 @@ libpipewire = shared_library(pipewire_name, pipewire_sources,
+ version : libversion,
+ soversion : soversion,
+ c_args : libpipewire_c_args,
+- include_directories : [pipewire_inc, configinc, includes_inc],
++ include_directories : [pipewire_inc, configinc, spa_inc, includes_inc],
+ install : true,
+- dependencies : [spa_dep, dl_lib, mathlib, pthread_lib, libintl_dep, atomic_dep, ],
++ dependencies : [dl_lib, mathlib, pthread_lib, libintl_dep, atomic_dep, ],
+ )
+
+ pipewire_dep = declare_dependency(link_with : libpipewire,
+diff --git a/test/meson.build b/test/meson.build
+index 89f2bc2ec..87e211431 100644
+--- a/test/meson.build
++++ b/test/meson.build
+@@ -19,6 +19,7 @@ pwtest_c_args = [
+ ]
+
+ pwtest_inc = [
++ spa_inc,
+ pipewire_inc,
+ configinc,
+ includes_inc,
+@@ -36,7 +37,6 @@ test('test-pwtest',
+ executable('test-pwtest',
+ 'test-pwtest.c',
+ include_directories: pwtest_inc,
+- dependencies: [ spa_dep ],
+ link_with: pwtest_lib)
+ )
+
+@@ -45,7 +45,6 @@ test('test-pwtest',
+ executable('test-example',
+ 'test-example.c',
+ include_directories: pwtest_inc,
+- dependencies: [ spa_dep ],
+ link_with: pwtest_lib)
+
+ test('test-pw-utils',
+@@ -55,7 +54,6 @@ test('test-pw-utils',
+ 'test-map.c',
+ 'test-utils.c',
+ include_directories: pwtest_inc,
+- dependencies: [ spa_dep ],
+ link_with: pwtest_lib)
+ )
+
+@@ -63,7 +61,6 @@ test('test-lib',
+ executable('test-lib',
+ 'test-lib.c',
+ include_directories: pwtest_inc,
+- dependencies: [ spa_dep ],
+ link_with: pwtest_lib)
+ )
+
+@@ -71,7 +68,6 @@ test('test-client',
+ executable('test-client',
+ 'test-client.c',
+ include_directories: pwtest_inc,
+- dependencies: [ spa_dep ],
+ link_with: pwtest_lib)
+ )
+
+@@ -80,7 +76,7 @@ test('test-context',
+ 'test-context.c',
+ 'test-config.c',
+ include_directories: pwtest_inc,
+- dependencies: [spa_dep, spa_support_dep, spa_dbus_dep],
++ dependencies: [spa_support_dep, spa_dbus_dep],
+ link_with: [pwtest_lib,
+ pipewire_module_protocol_native,
+ pipewire_module_client_node,
+@@ -95,7 +91,7 @@ test('test-support',
+ 'test-support.c',
+ 'test-logger.c',
+ include_directories: pwtest_inc,
+- dependencies: [spa_dep, systemd_dep, spa_support_dep, spa_journal_dep],
++ dependencies: [systemd_dep, spa_support_dep, spa_journal_dep],
+ link_with: [pwtest_lib])
+ )
+ test('test-spa',
+@@ -107,7 +103,6 @@ test('test-spa',
+ 'test-spa-node.c',
+ 'test-spa-pod.c',
+ include_directories: pwtest_inc,
+- dependencies: [ spa_dep ],
+ link_with: pwtest_lib)
+ )
+
+--
+2.34.1
+
diff --git a/meta-pipewire/recipes-multimedia/pipewire/pipewire/0002-node-driver-make-the-timerfd-non-blocking.patch b/meta-pipewire/recipes-multimedia/pipewire/pipewire/0002-node-driver-make-the-timerfd-non-blocking.patch
deleted file mode 100644
index 5a59d8676..000000000
--- a/meta-pipewire/recipes-multimedia/pipewire/pipewire/0002-node-driver-make-the-timerfd-non-blocking.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 5aa9c953909b936ba215ebca77461a17160f59fb Mon Sep 17 00:00:00 2001
-From: George Kiagiadakis <george.kiagiadakis@collabora.com>
-Date: Thu, 1 Jul 2021 11:50:40 +0300
-Subject: [PATCH] node-driver: make the timerfd non-blocking
-
-Relates to #1377
-
-Upstream-Status: Backport [from master/0.3.32]
-Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
----
- spa/plugins/support/node-driver.c | 8 ++++++--
- 1 file changed, 6 insertions(+), 2 deletions(-)
-
-diff --git a/spa/plugins/support/node-driver.c b/spa/plugins/support/node-driver.c
-index 34533d0d9..32964110d 100644
---- a/spa/plugins/support/node-driver.c
-+++ b/spa/plugins/support/node-driver.c
-@@ -119,8 +119,11 @@ static void on_timeout(struct spa_source *source)
- spa_log_trace(this->log, "timeout");
-
- if (spa_system_timerfd_read(this->data_system,
-- this->timer_source.fd, &expirations) < 0)
-+ this->timer_source.fd, &expirations) < 0) {
-+ if (errno == EAGAIN)
-+ return;
- perror("read timerfd");
-+ }
-
- nsec = this->next_time;
-
-@@ -349,7 +352,8 @@ impl_init(const struct spa_handle_factory *factory,
-
- this->timer_source.func = on_timeout;
- this->timer_source.data = this;
-- this->timer_source.fd = spa_system_timerfd_create(this->data_system, CLOCK_MONOTONIC, SPA_FD_CLOEXEC);
-+ this->timer_source.fd = spa_system_timerfd_create(this->data_system, CLOCK_MONOTONIC,
-+ SPA_FD_CLOEXEC | SPA_FD_NONBLOCK);
- this->timer_source.mask = SPA_IO_IN;
- this->timer_source.rmask = 0;
- this->timerspec.it_value.tv_sec = 0;
---
-2.30.2
-
diff --git a/meta-pipewire/recipes-multimedia/pipewire/pipewire/0003-Revert-meson-declare-spa_dep-and-override_dependency.patch b/meta-pipewire/recipes-multimedia/pipewire/pipewire/0003-Revert-meson-declare-spa_dep-and-override_dependency.patch
new file mode 100644
index 000000000..47e4f3cc2
--- /dev/null
+++ b/meta-pipewire/recipes-multimedia/pipewire/pipewire/0003-Revert-meson-declare-spa_dep-and-override_dependency.patch
@@ -0,0 +1,83 @@
+From 83b7f6457e5dca3ee2145e35f361f1520d24be42 Mon Sep 17 00:00:00 2001
+From: Ashok Sidipotu <ashok.sidipotu@collabora.com>
+Date: Fri, 14 Jan 2022 18:30:44 +0530
+Subject: [PATCH 3/4] Revert "meson: declare spa_dep and override_dependency()
+ for spa and pipewire"
+
+This reverts commit 7ab5c35cadc075bcdf44031f1f7d95352cf9a13b.
+
+Upstream-Status: Inappropriate[meson version dependent]
+---
+ meson.build | 2 +-
+ spa/meson.build | 13 +------------
+ src/pipewire/meson.build | 10 ++--------
+ 3 files changed, 4 insertions(+), 21 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index 67e697c15..476f722b7 100644
+--- a/meson.build
++++ b/meson.build
+@@ -1,7 +1,7 @@
+ project('pipewire', ['c' ],
+ version : '0.3.43',
+ license : [ 'MIT', 'LGPL-2.1-or-later', 'GPL-2.0-only' ],
+- meson_version : '>= 0.56.0',
++ meson_version : '>= 0.49.0',
+ default_options : [ 'warning_level=3',
+ 'c_std=gnu99',
+ 'cpp_std=c++17',
+diff --git a/spa/meson.build b/spa/meson.build
+index 2717b86d6..4e0f96727 100644
+--- a/spa/meson.build
++++ b/spa/meson.build
+@@ -56,20 +56,9 @@ if not get_option('examples').disabled()
+ subdir('examples')
+ endif
+
+-spa_dep = declare_dependency(
+- include_directories : [spa_inc],
+- version : spaversion,
+- variables : { 'plugindir' : meson.current_build_dir() / 'plugins' }
+-)
+-
+ pkgconfig.generate(filebase : 'lib@0@'.format(spa_name),
+ name : 'libspa',
+ subdirs : spa_name,
+ description : 'Simple Plugin API',
+ version : spaversion,
+- extra_cflags : '-D_REENTRANT',
+- variables : ['plugindir=${libdir}/@0@'.format(spa_name)],
+- uninstalled_variables : ['plugindir=${prefix}/spa/plugins'],
+-)
+-
+-meson.override_dependency('lib@0@'.format(spa_name), spa_dep)
++ extra_cflags : '-D_REENTRANT')
+diff --git a/src/pipewire/meson.build b/src/pipewire/meson.build
+index f66ce8746..5cfaba3f9 100644
+--- a/src/pipewire/meson.build
++++ b/src/pipewire/meson.build
+@@ -109,12 +109,8 @@ libpipewire = shared_library(pipewire_name, pipewire_sources,
+ )
+
+ pipewire_dep = declare_dependency(link_with : libpipewire,
+- include_directories : [pipewire_inc, configinc],
+- dependencies : [pthread_lib, atomic_dep, spa_dep],
+- variables : {
+- 'moduledir' : meson.current_build_dir() / '..' / 'modules',
+- 'confdatadir' : meson.current_build_dir() / '..' / 'daemon',
+- }
++ include_directories : [pipewire_inc, configinc, spa_inc],
++ dependencies : [pthread_lib, atomic_dep, ],
+ )
+
+ pkgconfig.generate(libpipewire,
+@@ -132,6 +128,4 @@ pkgconfig.generate(libpipewire,
+ ],
+ )
+
+-meson.override_dependency('lib@0@'.format(pipewire_name), pipewire_dep)
+-
+ subdir('extensions')
+--
+2.34.1
+
diff --git a/meta-pipewire/recipes-multimedia/pipewire/pipewire/0004-Revert-systemd-correctly-prefix-systemd-system-units.patch b/meta-pipewire/recipes-multimedia/pipewire/pipewire/0004-Revert-systemd-correctly-prefix-systemd-system-units.patch
new file mode 100644
index 000000000..8b975d07f
--- /dev/null
+++ b/meta-pipewire/recipes-multimedia/pipewire/pipewire/0004-Revert-systemd-correctly-prefix-systemd-system-units.patch
@@ -0,0 +1,25 @@
+From 85d47ff146f1bda2f94d32b5b392024089c6f564 Mon Sep 17 00:00:00 2001
+From: Ashok Sidipotu <ashok.sidipotu@collabora.com>
+Date: Fri, 14 Jan 2022 20:51:09 +0530
+Subject: [PATCH 4/4] Revert "systemd: correctly prefix systemd system units"
+
+This reverts commit 5054b48c9de655b4b48f7c801cb305d9eb122520.
+
+Upstream-Status: Inappropriate[this systemd configuration is in not relvent to AGL]
+---
+ src/daemon/systemd/system/meson.build | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/daemon/systemd/system/meson.build b/src/daemon/systemd/system/meson.build
+index 7e1c223f8..4d942c1ab 100644
+--- a/src/daemon/systemd/system/meson.build
++++ b/src/daemon/systemd/system/meson.build
+@@ -1,4 +1,4 @@
+-systemd_system_services_dir = systemd.get_variable(pkgconfig: 'systemdsystemunitdir', pkgconfig_define : [ 'rootprefix', prefix])
++systemd_system_services_dir = systemd.get_variable(pkgconfig: 'systemdsystemunitdir', pkgconfig_define : [ 'prefix', prefix])
+
+ install_data(sources : 'pipewire.socket',
+ install_dir : systemd_system_services_dir)
+--
+2.34.1
+
diff --git a/meta-pipewire/recipes-multimedia/pipewire/pipewire/0005-pipewiresink-set-a-default-channel-map-if-the-number.patch b/meta-pipewire/recipes-multimedia/pipewire/pipewire/0005-pipewiresink-set-a-default-channel-map-if-the-number.patch
new file mode 100644
index 000000000..3b1b2a490
--- /dev/null
+++ b/meta-pipewire/recipes-multimedia/pipewire/pipewire/0005-pipewiresink-set-a-default-channel-map-if-the-number.patch
@@ -0,0 +1,77 @@
+From ee2e6412d37d012fbf8d25bd37271a5ee92b3ad4 Mon Sep 17 00:00:00 2001
+From: George Kiagiadakis <george.kiagiadakis@collabora.com>
+Date: Thu, 3 Feb 2022 15:08:57 +0200
+Subject: [PATCH] pipewiresink: set a default channel map if the number of
+ channels is fixed
+
+This allows remaping streams using pipewiresink to match the channel layout
+of the target device
+Upstream-Status: Backport [from master/0.3.46]
+---
+ src/gst/gstpipewireformat.c | 42 ++++++++++++++++++++++++++++++++++++-
+ 1 file changed, 41 insertions(+), 1 deletion(-)
+
+diff --git a/src/gst/gstpipewireformat.c b/src/gst/gstpipewireformat.c
+index dca90267c..c8ce7ba62 100644
+--- a/src/gst/gstpipewireformat.c
++++ b/src/gst/gstpipewireformat.c
+@@ -445,6 +445,44 @@ handle_video_fields (ConvertData *d)
+ return TRUE;
+ }
+
++static void
++set_default_channels (struct spa_pod_builder *b, uint32_t channels)
++{
++ uint32_t position[SPA_AUDIO_MAX_CHANNELS] = {0};
++ gboolean ok = TRUE;
++
++ switch (channels) {
++ case 8:
++ position[6] = SPA_AUDIO_CHANNEL_SL;
++ position[7] = SPA_AUDIO_CHANNEL_SR;
++ SPA_FALLTHROUGH
++ case 6:
++ position[5] = SPA_AUDIO_CHANNEL_LFE;
++ SPA_FALLTHROUGH
++ case 5:
++ position[4] = SPA_AUDIO_CHANNEL_FC;
++ SPA_FALLTHROUGH
++ case 4:
++ position[2] = SPA_AUDIO_CHANNEL_RL;
++ position[3] = SPA_AUDIO_CHANNEL_RR;
++ SPA_FALLTHROUGH
++ case 2:
++ position[0] = SPA_AUDIO_CHANNEL_FL;
++ position[1] = SPA_AUDIO_CHANNEL_FR;
++ break;
++ case 1:
++ position[0] = SPA_AUDIO_CHANNEL_MONO;
++ break;
++ default:
++ ok = FALSE;
++ break;
++ }
++
++ if (ok)
++ spa_pod_builder_add (b, SPA_FORMAT_AUDIO_position,
++ SPA_POD_Array(sizeof(uint32_t), SPA_TYPE_Id, channels, position), 0);
++}
++
+ static gboolean
+ handle_audio_fields (ConvertData *d)
+ {
+@@ -538,8 +576,10 @@ handle_audio_fields (ConvertData *d)
+ }
+ if (i > 0) {
+ choice = spa_pod_builder_pop(&d->b, &f);
+- if (i == 1)
++ if (i == 1) {
+ choice->body.type = SPA_CHOICE_None;
++ set_default_channels (&d->b, v);
++ }
+ }
+ }
+ return TRUE;
+--
+2.34.1
+
diff --git a/meta-pipewire/recipes-multimedia/pipewire/pipewire_0.3.30.bb b/meta-pipewire/recipes-multimedia/pipewire/pipewire_0.3.43.bb
index b1a1aebc0..f1d4b3863 100644
--- a/meta-pipewire/recipes-multimedia/pipewire/pipewire_0.3.30.bb
+++ b/meta-pipewire/recipes-multimedia/pipewire/pipewire_0.3.43.bb
@@ -20,7 +20,8 @@ SECTION = "multimedia"
DEPENDS = "dbus"
-SRCREV = "e857856be7b64d562cdcc01c43933218a68b225e"
+# v0.3.43
+SRCREV = "07724b7aefa8a23a016727b53f4e426ecd63d248"
SRC_URI = "git://gitlab.freedesktop.org/pipewire/pipewire.git;branch=master;protocol=https"
S = "${WORKDIR}/git"
@@ -29,9 +30,9 @@ inherit meson pkgconfig systemd manpages gettext useradd
USERADD_PACKAGES = "${PN}"
-GROUPADD_PARAM_${PN} = "--system pipewire"
+GROUPADD_PARAM:${PN} = "--system pipewire"
-USERADD_PARAM_${PN} = "--system --home / --no-create-home \
+USERADD_PARAM:${PN} = "--system --home / --no-create-home \
--comment 'PipeWire multimedia daemon' \
--gid pipewire --groups audio,video \
pipewire"
@@ -52,6 +53,11 @@ USERADD_PARAM_${PN} = "--system --home / --no-create-home \
# instance does.
#
# manpage generation requires xmltoman, which is not available.
+#
+# Dont build any session managers along with pipewire
+# wireplumber is the session manger used in AGL and it will
+# be build in a different recipe
+#
EXTRA_OEMESON += " \
-Daudiotestsrc=enabled \
-Devl=disabled \
@@ -63,6 +69,7 @@ EXTRA_OEMESON += " \
-Dvulkan=disabled \
-Dlibcamera=disabled \
-Dman=disabled \
+ -Dsession-managers=[] \
"
PACKAGECONFIG ??= "\
@@ -88,10 +95,11 @@ PACKAGECONFIG[systemd] = "-Dsystemd=enabled -Dsystemd-system-service=enabled ,-D
PACKAGECONFIG[v4l2] = "-Dv4l2=enabled,-Dv4l2=disabled,udev"
PACKAGECONFIG[pipewire-alsa] = "-Dpipewire-alsa=enabled,-Dpipewire-alsa=disabled,alsa-lib"
PACKAGECONFIG[pipewire-jack] = "-Dpipewire-jack=enabled -Dlibjack-path=${libdir}/${PW_MODULE_SUBDIR}/jack,-Dpipewire-jack=disabled,jack,,,jack"
+PACKAGECONFIG[pipewire-v4l2] = "-Dpipewire-v4l2=enabled -Dpipewire-v4l2=${libdir}/${PW_MODULE_SUBDIR}/v4l2,-Dpipewire-v4l2=disabled,v4l2"
-PACKAGESPLITFUNCS_prepend = " split_dynamic_packages "
-PACKAGESPLITFUNCS_append = " set_dynamic_metapkg_rdepends "
-PACKAGESPLITFUNCS_append = " fixup_dynamic_pkg_licenses "
+PACKAGESPLITFUNCS:prepend = " split_dynamic_packages "
+PACKAGESPLITFUNCS:append = " set_dynamic_metapkg_rdepends "
+PACKAGESPLITFUNCS:append = " fixup_dynamic_pkg_licenses "
SPA_SUBDIR = "spa-0.2"
PW_MODULE_SUBDIR = "pipewire-0.3"
@@ -113,18 +121,18 @@ python fixup_dynamic_pkg_licenses () {
for pkg in packages:
# we manually assign the LICENSES here to cover all packages (even dynamically created ones)
- d.setVar("LICENSE_" + pkg ,"MIT")
+ d.setVar("LICENSE:" + pkg ,"MIT")
# next handle special cases
- # ==> LICENSE_${PN}-spa-plugins-alsa = "LGPL-2.1-or-later"
+ # ==> LICENSE:${PN}-spa-plugins-alsa = "LGPL-2.1-or-later"
if "pipewire-spa-plugins-alsa" in pkg:
- d.setVar("LICENSE_pipewire-spa-plugins-alsa", "LGPL-2.1-or-later")
- # ==> LICENSE_${PN}-alsa-card-profile = "LGPL-2.1-or-later"
+ d.setVar("LICENSE:pipewire-spa-plugins-alsa", "LGPL-2.1-or-later")
+ # ==> LICENSE:${PN}-alsa-card-profile = "LGPL-2.1-or-later"
if "pipewire-alsa-card-profile" in pkg:
- d.setVar("LICENSE_pipewire-alsa-card-profile", "LGPL-2.1-or-later")
- # ==> LICENSE_${PN}-jack = "GPL-2.0-only"
+ d.setVar("LICENSE:pipewire-alsa-card-profile", "LGPL-2.1-or-later")
+ # ==> LICENSE:${PN}-jack = "GPL-2.0-only"
if "pipewire-jack" in pkg:
- d.setVar("LICENSE_pipewire-jack", "GPL-2.0-only")
+ d.setVar("LICENSE:pipewire-jack", "GPL-2.0-only")
}
python split_dynamic_packages () {
@@ -154,11 +162,11 @@ python set_dynamic_metapkg_rdepends () {
pw_module_pn = base_pn + '-modules'
pw_module_metapkg = pw_module_pn + '-meta'
- d.setVar('ALLOW_EMPTY_' + spa_metapkg, "1")
- d.setVar('FILES_' + spa_metapkg, "")
+ d.setVar('ALLOW_EMPTY:' + spa_metapkg, "1")
+ d.setVar('FILES:' + spa_metapkg, "")
- d.setVar('ALLOW_EMPTY_' + pw_module_metapkg, "1")
- d.setVar('FILES_' + pw_module_metapkg, "")
+ d.setVar('ALLOW_EMPTY:' + pw_module_metapkg, "1")
+ d.setVar('FILES:' + pw_module_metapkg, "")
blacklist = [ spa_pn, spa_metapkg, pw_module_pn, pw_module_metapkg ]
spa_metapkg_rdepends = []
@@ -193,11 +201,11 @@ python set_dynamic_metapkg_rdepends () {
if is_pw_module_pkg:
pw_module_metapkg_rdepends.append(pkg)
- d.setVar('RDEPENDS_' + spa_metapkg, ' '.join(spa_metapkg_rdepends))
- d.setVar('DESCRIPTION_' + spa_metapkg, spa_pn + ' meta package')
+ d.setVar('RDEPENDS:' + spa_metapkg, ' '.join(spa_metapkg_rdepends))
+ d.setVar('DESCRIPTION:' + spa_metapkg, spa_pn + ' meta package')
- d.setVar('RDEPENDS_' + pw_module_metapkg, ' '.join(pw_module_metapkg_rdepends))
- d.setVar('DESCRIPTION_' + pw_module_metapkg, pw_module_pn + ' meta package')
+ d.setVar('RDEPENDS:' + pw_module_metapkg, ' '.join(pw_module_metapkg_rdepends))
+ d.setVar('DESCRIPTION:' + pw_module_metapkg, pw_module_pn + ' meta package')
}
PACKAGES =+ "\
@@ -206,7 +214,7 @@ PACKAGES =+ "\
${PN}-pulse \
${PN}-alsa \
${PN}-jack \
- ${PN}-media-session \
+ ${PN}-v4l2 \
${PN}-spa-plugins \
${PN}-spa-plugins-meta \
${PN}-spa-tools \
@@ -218,95 +226,91 @@ PACKAGES =+ "\
PACKAGES_DYNAMIC = "^${PN}-spa-plugins.* ^${PN}-modules.*"
-SYSTEMD_SERVICE_${PN} = "pipewire.service"
-CONFFILES_${PN} += "${datadir}/pipewire/pipewire.conf"
-FILES_${PN} = " \
+SYSTEMD_SERVICE:${PN} = "pipewire.service"
+CONFFILES:${PN} += "${datadir}/pipewire/pipewire.conf"
+FILES:${PN} = " \
${datadir}/pipewire/pipewire.conf \
${datadir}/pipewire/filter-chain \
${systemd_user_unitdir}/pipewire.* \
${bindir}/pipewire \
"
-FILES_${PN}-dev += " \
+FILES:${PN}-dev += " \
${libdir}/${PW_MODULE_SUBDIR}/jack/libjack*.so \
"
-CONFFILES_libpipewire += "${datadir}/pipewire/client.conf"
-FILES_libpipewire = " \
+CONFFILES:libpipewire += "${datadir}/pipewire/client.conf"
+FILES:libpipewire = " \
${datadir}/pipewire/client.conf \
${libdir}/libpipewire-*.so.* \
"
# Add the bare minimum modules and plugins required to be able
# to use libpipewire. Without these, it is essentially unusable.
-RDEPENDS_libpipewire += " \
+RDEPENDS:libpipewire += " \
${PN}-modules-client-node \
${PN}-modules-protocol-native \
${PN}-spa-plugins-support \
"
-FILES_${PN}-tools = " \
+FILES:${PN}-tools = " \
${bindir}/pw-* \
"
# This is a shim daemon that is intended to be used as a
# drop-in PulseAudio replacement, providing a pulseaudio-compatible
# socket that can be used by applications that use libpulse.
-CONFFILES_${PN}-pulse += "${datadir}/pipewire/pipewire-pulse.conf"
+CONFFILES:${PN}-pulse += "${datadir}/pipewire/pipewire-pulse.conf"
-FILES_${PN}-pulse = " \
+FILES:${PN}-pulse = " \
${datadir}/pipewire/pipewire-pulse.conf \
${systemd_user_unitdir}/pipewire-pulse.* \
${bindir}/pipewire-pulse \
"
-RDEPENDS_${PN}-pulse += " \
+RDEPENDS:${PN}-pulse += " \
${PN}-modules-protocol-pulse \
"
# alsa plugin to redirect audio to pipewire
-FILES_${PN}-alsa = "\
+FILES:${PN}-alsa = "\
${libdir}/alsa-lib/* \
${datadir}/alsa/alsa.conf.d/* \
"
+#lib to emulate v4l2 system calls on top of PipeWire
+FILES:${PN}-v4l2 = "\
+ ${libdir}/${PW_MODULE_SUBDIR}/v4l2/libpw-v4l2.so \
+"
+
# jack drop-in libraries to redirect audio to pipewire
-CONFFILES_${PN}-jack = "${datadir}/pipewire/jack.conf"
-FILES_${PN}-jack = "\
+CONFFILES:${PN}-jack = "${datadir}/pipewire/jack.conf"
+FILES:${PN}-jack = "\
${datadir}/pipewire/jack.conf \
${libdir}/${PW_MODULE_SUBDIR}/jack/libjack*.so.* \
"
-
-# Example session manager. Not intended for use in production.
-CONFFILES_${PN}-media-session = "${datadir}/pipewire/media-session.d/*"
-SYSTEMD_SERVICE_${PN}-media-session = "pipewire-media-session.service"
-FILES_${PN}-media-session = " \
- ${bindir}/pipewire-media-session \
- ${datadir}/pipewire/media-session.d/* \
- ${systemd_system_unitdir}/pipewire-media-session.service \
-"
-RPROVIDES_${PN}-media-session = "virtual/pipewire-sessionmanager"
-
# Dynamic packages (see set_dynamic_metapkg_rdepends).
-FILES_${PN}-spa-plugins = ""
-RRECOMMENDS_${PN}-spa-plugins += "${PN}-spa-plugins-meta"
+FILES:${PN}-spa-plugins-bluez5 += " \
+ ${datadir}/${SPA_SUBDIR}/bluez5/bluez-hardware.conf \
+"
+RRECOMMENDS:${PN}-spa-plugins += "${PN}-spa-plugins-meta"
-FILES_${PN}-spa-tools = " \
+FILES:${PN}-spa-tools = " \
${bindir}/spa-* \
"
# Dynamic packages (see set_dynamic_metapkg_rdepends).
-FILES_${PN}-modules = ""
-RRECOMMENDS_${PN}-modules += "${PN}-modules-meta"
+FILES:${PN}-modules = ""
+RRECOMMENDS:${PN}-modules += "${PN}-modules-meta"
-CONFFILES_${PN}-modules-rtkit = "${datadir}/pipewire/client-rt.conf"
-FILES_${PN}-modules-rtkit += " \
+CONFFILES:${PN}-modules-rtkit = "${datadir}/pipewire/client-rt.conf"
+FILES:${PN}-modules-rtkit += " \
${datadir}/pipewire/client-rt.conf \
"
-FILES_${PN}-alsa-card-profile = " \
+FILES:${PN}-alsa-card-profile = " \
${datadir}/alsa-card-profile/* \
${nonarch_base_libdir}/udev/rules.d/90-pipewire-alsa.rules \
"
-FILES_gstreamer1.0-pipewire = " \
+FILES:gstreamer1.0-pipewire = " \
${libdir}/gstreamer-1.0/* \
"
diff --git a/meta-pipewire/recipes-multimedia/pipewire/pipewire_0.3.30.bbappend b/meta-pipewire/recipes-multimedia/pipewire/pipewire_0.3.43.bbappend
index 85c9edab3..8d3df64cb 100644
--- a/meta-pipewire/recipes-multimedia/pipewire/pipewire_0.3.30.bbappend
+++ b/meta-pipewire/recipes-multimedia/pipewire/pipewire_0.3.43.bbappend
@@ -7,12 +7,14 @@ PACKAGECONFIG = "\
"
SRC_URI += "\
- file://0001-alsa-plugin-allow-specifying-a-media.role-on-the-vir.patch \
- file://0001-null-sink-make-the-timerfd-non-blocking.patch \
- file://0002-node-driver-make-the-timerfd-non-blocking.patch \
+ file://0001-Revert-treewide-meson.build-use-project_-build-sourc.patch \
+ file://0002-Revert-treewide-meson.build-use-dependency-variable-.patch \
+ file://0003-Revert-meson-declare-spa_dep-and-override_dependency.patch \
+ file://0004-Revert-systemd-correctly-prefix-systemd-system-units.patch \
+ file://0005-pipewiresink-set-a-default-channel-map-if-the-number.patch \
"
-do_install_append() {
+do_install:append() {
# install symlinks to alsalib configuration files
for i in 50-pipewire.conf 99-pipewire-default.conf; do
if [ -f ${D}${datadir}/alsa/alsa.conf.d/${i} ]; then
@@ -22,6 +24,6 @@ do_install_append() {
done
}
-FILES_${PN}-alsa_append = "\
+FILES:${PN}-alsa:append = "\
${sysconfdir}/alsa/conf.d/* \
"