diff options
Diffstat (limited to 'meta-pipewire/recipes-multimedia/wireplumber')
27 files changed, 426 insertions, 0 deletions
diff --git a/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/00-audio-sink.endpoint b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/00-audio-sink.endpoint new file mode 100644 index 000000000..4bc435742 --- /dev/null +++ b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/00-audio-sink.endpoint @@ -0,0 +1,10 @@ +[match-node] +priority = 0 +properties = [ + { name = "media.class", value = "Audio/Sink" }, +] + +[endpoint] +type = "pw-audio-softdsp-endpoint" +direction = "sink" +streams = "playback.streams" diff --git a/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/00-audio-source.endpoint b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/00-audio-source.endpoint new file mode 100644 index 000000000..7657f6f40 --- /dev/null +++ b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/00-audio-source.endpoint @@ -0,0 +1,10 @@ +[match-node] +priority = 0 +properties = [ + { name = "media.class", value = "Audio/Source" }, +] + +[endpoint] +type = "pw-audio-softdsp-endpoint" +direction = "source" +streams = "capture.streams" diff --git a/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/00-default-input-audio.endpoint-link b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/00-default-input-audio.endpoint-link new file mode 100644 index 000000000..4b70dc89f --- /dev/null +++ b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/00-default-input-audio.endpoint-link @@ -0,0 +1,7 @@ +[match-endpoint] +priority = 0 +direction = "sink" +media_class = "Stream/Input/Audio" + +[endpoint-link] +keep = false diff --git a/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/00-default-output-audio.endpoint-link b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/00-default-output-audio.endpoint-link new file mode 100644 index 000000000..5d6428f94 --- /dev/null +++ b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/00-default-output-audio.endpoint-link @@ -0,0 +1,7 @@ +[match-endpoint] +priority = 0 +direction = "source" +media_class = "Stream/Output/Audio" + +[endpoint-link] +keep = false diff --git a/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/00-stream-input-audio.endpoint b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/00-stream-input-audio.endpoint new file mode 100644 index 000000000..2993f3e44 --- /dev/null +++ b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/00-stream-input-audio.endpoint @@ -0,0 +1,9 @@ +[match-node] +priority = 0 +properties = [ + { name = "media.class", value = "Stream/Input/Audio" }, +] + +[endpoint] +direction = "sink" +type = "pw-audio-softdsp-endpoint" diff --git a/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/00-stream-output-audio.endpoint b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/00-stream-output-audio.endpoint new file mode 100644 index 000000000..1cf82ea02 --- /dev/null +++ b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/00-stream-output-audio.endpoint @@ -0,0 +1,9 @@ +[match-node] +priority = 0 +properties = [ + { name = "media.class", value = "Stream/Output/Audio" }, +] + +[endpoint] +direction = "source" +type = "pw-audio-softdsp-endpoint" diff --git a/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/01-hw00-audio-sink.endpoint b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/01-hw00-audio-sink.endpoint new file mode 100644 index 000000000..85a9b5117 --- /dev/null +++ b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/01-hw00-audio-sink.endpoint @@ -0,0 +1,12 @@ +[match-node] +priority = 1 +properties = [ + { name = "media.class", value = "Audio/Sink" }, + { name = "api.alsa.path", value = "hw:0,0" }, +] + +[endpoint] +type = "pw-audio-softdsp-endpoint" +direction = "sink" +streams = "playback.streams" +priority = 1 diff --git a/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/01-hw00-audio-source.endpoint b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/01-hw00-audio-source.endpoint new file mode 100644 index 000000000..c77701c0d --- /dev/null +++ b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/01-hw00-audio-source.endpoint @@ -0,0 +1,12 @@ +[match-node] +priority = 1 +properties = [ + { name = "media.class", value = "Audio/Source" }, + { name = "api.alsa.path", value = "hw:0,0" }, +] + +[endpoint] +type = "pw-audio-softdsp-endpoint" +direction = "source" +streams = "capture.streams" +priority = 1 diff --git a/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/30-ak4613-audio-sink.endpoint b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/30-ak4613-audio-sink.endpoint new file mode 100644 index 000000000..53f9d0df7 --- /dev/null +++ b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/30-ak4613-audio-sink.endpoint @@ -0,0 +1,12 @@ +[match-node] +priority = 30 +properties = [ + { name = "media.class", value = "Audio/Sink" }, + { name = "api.alsa.card.id", value = "rcarsound" }, +] + +[endpoint] +type = "pw-audio-softdsp-endpoint" +direction = "sink" +streams = "playback.streams" +priority = 30 diff --git a/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/30-ak4613-audio-source.endpoint b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/30-ak4613-audio-source.endpoint new file mode 100644 index 000000000..d72d7e31c --- /dev/null +++ b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/30-ak4613-audio-source.endpoint @@ -0,0 +1,12 @@ +[match-node] +priority = 30 +properties = [ + { name = "media.class", value = "Audio/Source" }, + { name = "api.alsa.card.id", value = "rcarsound" }, +] + +[endpoint] +type = "pw-audio-softdsp-endpoint" +direction = "source" +streams = "capture.streams" +priority = 30 diff --git a/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/30-dra7xx-audio-sink.endpoint b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/30-dra7xx-audio-sink.endpoint new file mode 100644 index 000000000..becd21e2e --- /dev/null +++ b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/30-dra7xx-audio-sink.endpoint @@ -0,0 +1,12 @@ +[match-node] +priority = 30 +properties = [ + { name = "media.class", value = "Audio/Sink" }, + { name = "api.alsa.card.id", value = "DRA7xx-EVM" }, +] + +[endpoint] +type = "pw-audio-softdsp-endpoint" +direction = "sink" +streams = "playback.streams" +priority = 30 diff --git a/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/30-dra7xx-audio-source.endpoint b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/30-dra7xx-audio-source.endpoint new file mode 100644 index 000000000..72ef46770 --- /dev/null +++ b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/30-dra7xx-audio-source.endpoint @@ -0,0 +1,12 @@ +[match-node] +priority = 30 +properties = [ + { name = "media.class", value = "Audio/Source" }, + { name = "api.alsa.card.id", value = "DRA7xx-EVM" }, +] + +[endpoint] +type = "pw-audio-softdsp-endpoint" +direction = "source" +streams = "capture.streams" +priority = 30 diff --git a/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/30-rcarsound-audio-sink.endpoint b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/30-rcarsound-audio-sink.endpoint new file mode 100644 index 000000000..53f9d0df7 --- /dev/null +++ b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/30-rcarsound-audio-sink.endpoint @@ -0,0 +1,12 @@ +[match-node] +priority = 30 +properties = [ + { name = "media.class", value = "Audio/Sink" }, + { name = "api.alsa.card.id", value = "rcarsound" }, +] + +[endpoint] +type = "pw-audio-softdsp-endpoint" +direction = "sink" +streams = "playback.streams" +priority = 30 diff --git a/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/30-rcarsound-audio-source.endpoint b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/30-rcarsound-audio-source.endpoint new file mode 100644 index 000000000..d72d7e31c --- /dev/null +++ b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/30-rcarsound-audio-source.endpoint @@ -0,0 +1,12 @@ +[match-node] +priority = 30 +properties = [ + { name = "media.class", value = "Audio/Source" }, + { name = "api.alsa.card.id", value = "rcarsound" }, +] + +[endpoint] +type = "pw-audio-softdsp-endpoint" +direction = "source" +streams = "capture.streams" +priority = 30 diff --git a/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/30-rpi3-audio-sink.endpoint b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/30-rpi3-audio-sink.endpoint new file mode 100644 index 000000000..74e4d62e6 --- /dev/null +++ b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/30-rpi3-audio-sink.endpoint @@ -0,0 +1,13 @@ +[match-node] +priority = 30 +properties = [ + { name = "media.class", value = "Audio/Sink" }, + { name = "api.alsa.card.name", value = "bcm2835 ALSA" }, + { name = "api.alsa.pcm.name", value = "bcm2835 ALSA" }, +] + +[endpoint] +type = "pw-audio-softdsp-endpoint" +direction = "sink" +streams = "playback.streams" +priority = 30 diff --git a/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/40-fiberdyne-amp.endpoint b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/40-fiberdyne-amp.endpoint new file mode 100644 index 000000000..807ad4688 --- /dev/null +++ b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/40-fiberdyne-amp.endpoint @@ -0,0 +1,12 @@ +[match-node] +priority = 40 +properties = [ + { name = "media.class", value = "Audio/Sink" }, + { name = "api.alsa.card.id", value = "ep016ch" }, +] + +[endpoint] +type = "pw-audio-softdsp-endpoint" +direction = "sink" +streams = "playback.streams" +priority = 40 diff --git a/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/40-microchip-mic.endpoint b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/40-microchip-mic.endpoint new file mode 100644 index 000000000..bbfcd43a5 --- /dev/null +++ b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/40-microchip-mic.endpoint @@ -0,0 +1,12 @@ +[match-node] +priority = 40 +properties = [ + { name = "media.class", value = "Audio/Source" }, + { name = "api.alsa.card.id", value = "ep811ch" }, +] + +[endpoint] +type = "pw-audio-softdsp-endpoint" +direction = "source" +streams = "capture.streams" +priority = 40 diff --git a/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/70-usb-audio-sink.endpoint b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/70-usb-audio-sink.endpoint new file mode 100644 index 000000000..62e279090 --- /dev/null +++ b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/70-usb-audio-sink.endpoint @@ -0,0 +1,12 @@ +[match-node] +priority = 70 +properties = [ + { name = "media.class", value = "Audio/Sink" }, + { name = "api.alsa.card.driver", value = "USB-Audio" }, +] + +[endpoint] +type = "pw-audio-softdsp-endpoint" +direction = "sink" +streams = "playback.streams" +priority = 70 diff --git a/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/70-usb-audio-source.endpoint b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/70-usb-audio-source.endpoint new file mode 100644 index 000000000..505ae8d81 --- /dev/null +++ b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/70-usb-audio-source.endpoint @@ -0,0 +1,12 @@ +[match-node] +priority = 70 +properties = [ + { name = "media.class", value = "Audio/Source" }, + { name = "api.alsa.card.driver", value = "USB-Audio" }, +] + +[endpoint] +type = "pw-audio-softdsp-endpoint" +direction = "source" +streams = "capture.streams" +priority = 70 diff --git a/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/bluealsa-input-audio.endpoint-link b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/bluealsa-input-audio.endpoint-link new file mode 100644 index 000000000..b5753a102 --- /dev/null +++ b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/bluealsa-input-audio.endpoint-link @@ -0,0 +1,11 @@ +[match-endpoint] +priority = 75 +direction = "sink" +name = "bluealsa*" +media_class = "Stream/Input/Audio" +properties = [ + { name = "bluealsa.profile", value = "sco" }, +] + +[endpoint-link] +keep = true diff --git a/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/bluealsa-output-audio.endpoint-link b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/bluealsa-output-audio.endpoint-link new file mode 100644 index 000000000..d1b3cec07 --- /dev/null +++ b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/bluealsa-output-audio.endpoint-link @@ -0,0 +1,11 @@ +[match-endpoint] +priority = 75 +direction = "source" +name = "bluealsa*" +media_class = "Stream/Output/Audio" +properties = [ + { name = "bluealsa.profile", value = "sco" }, +] + +[endpoint-link] +keep = true diff --git a/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/capture.streams b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/capture.streams new file mode 100644 index 000000000..e7ce36f6a --- /dev/null +++ b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/capture.streams @@ -0,0 +1,3 @@ +[[streams]] +name = "Default" +priority = 25 diff --git a/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/playback.streams b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/playback.streams new file mode 100644 index 000000000..c645416ad --- /dev/null +++ b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/playback.streams @@ -0,0 +1,31 @@ +[[streams]] +name = "Multimedia" +priority = 25 + +[[streams]] +name = "Speech-Low" +priority = 30 + +[[streams]] +name = "Custom-Low" +priority = 35 + +[[streams]] +name = "Navigation" +priority = 50 + +[[streams]] +name = "Speech-High" +priority = 60 + +[[streams]] +name = "Custom-High" +priority = 65 + +[[streams]] +name = "Communication" +priority = 75 + +[[streams]] +name = "Emergency" +priority = 99 diff --git a/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/wireplumber.conf b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/wireplumber.conf new file mode 100644 index 000000000..e0975a81f --- /dev/null +++ b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl/wireplumber.conf @@ -0,0 +1,30 @@ +# Register well-known SPA factories +# These do not need to exist on the system to be registered +add-spa-lib audio.convert* audioconvert/libspa-audioconvert +add-spa-lib api.alsa.* alsa/libspa-alsa +add-spa-lib api.v4l2.* v4l2/libspa-v4l2 +add-spa-lib api.bluez5.* bluez5/libspa-bluez5 + +# the client-device pipewire module is needed for libwireplumber-module-monitor +load-pipewire-module libpipewire-module-client-device + +# Session object implementation +# This keeps track of the default input & output device endpoint +load-module C libwireplumber-module-session + +# Basic pipewire integration - do not remove +load-module C libwireplumber-module-pipewire + +# Grants access to security confined clients +load-module C libwireplumber-module-client-permissions + +load-module C libwireplumber-module-monitor { + "factory": <"api.alsa.enum.udev">, + "flags": <["use-adapter", "activate-devices"]> +} + +# Implements endpoint creation based on TOML configuration files +load-module C libwireplumber-module-config-endpoint + +# Implements linking clients to devices based on TOML configuration files +load-module C libwireplumber-module-config-policy diff --git a/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl_git.bb b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl_git.bb new file mode 100644 index 000000000..7df90907a --- /dev/null +++ b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber-board-config-agl_git.bb @@ -0,0 +1,57 @@ +SUMMARY = "AGL configuration file for wireplumber" +HOMEPAGE = "https://gitlab.freedesktop.org/gkiagia/wireplumber" +BUGTRACKER = "https://jira.automotivelinux.org" +AUTHOR = "George Kiagiadakis <george.kiagiadakis@collabora.com>" +SECTION = "multimedia" + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +SRC_URI = "\ + file://wireplumber.conf \ + file://00-audio-sink.endpoint \ + file://00-audio-source.endpoint \ + file://00-default-input-audio.endpoint-link \ + file://00-default-output-audio.endpoint-link \ + file://00-stream-input-audio.endpoint \ + file://00-stream-output-audio.endpoint \ + file://01-hw00-audio-sink.endpoint \ + file://01-hw00-audio-source.endpoint \ + file://30-ak4613-audio-sink.endpoint \ + file://30-ak4613-audio-source.endpoint \ + file://30-rcarsound-audio-sink.endpoint \ + file://30-rcarsound-audio-source.endpoint \ + file://30-dra7xx-audio-sink.endpoint \ + file://30-dra7xx-audio-source.endpoint \ + file://30-rpi3-audio-sink.endpoint \ + file://40-fiberdyne-amp.endpoint \ + file://40-microchip-mic.endpoint \ + file://70-usb-audio-sink.endpoint \ + file://70-usb-audio-source.endpoint \ + file://bluealsa-input-audio.endpoint-link \ + file://bluealsa-output-audio.endpoint-link \ + file://capture.streams \ + file://playback.streams \ +" + +PACKAGE_ARCH = "${MACHINE_ARCH}" + +do_configure[noexec] = "1" +do_compile[noexec] = "1" + +do_install_append() { + install -d ${D}/${sysconfdir}/wireplumber/ + install -m 644 ${WORKDIR}/wireplumber.conf ${D}/${sysconfdir}/wireplumber/wireplumber.conf + install -m 644 ${WORKDIR}/*.endpoint ${D}/${sysconfdir}/wireplumber/ + install -m 644 ${WORKDIR}/*.endpoint-link ${D}/${sysconfdir}/wireplumber/ + install -m 644 ${WORKDIR}/*.streams ${D}/${sysconfdir}/wireplumber/ +} + +FILES_${PN} += "\ + ${sysconfdir}/wireplumber/* \ +" +CONFFILES_${PN} += "\ + ${sysconfdir}/wireplumber/* \ +" + +RPROVIDES_${PN} += "virtual/wireplumber-config" diff --git a/meta-pipewire/recipes-multimedia/wireplumber/wireplumber/0001-Build-cpptoml-without-a-cmake-subproject.patch b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber/0001-Build-cpptoml-without-a-cmake-subproject.patch new file mode 100644 index 000000000..726b35e74 --- /dev/null +++ b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber/0001-Build-cpptoml-without-a-cmake-subproject.patch @@ -0,0 +1,28 @@ +From e5efe3d4f0abc28251dac245ce0cf4124e7e2a12 Mon Sep 17 00:00:00 2001 +From: George Kiagiadakis <george.kiagiadakis@collabora.com> +Date: Thu, 5 Dec 2019 17:59:44 +0200 +Subject: [PATCH] Build cpptoml without a cmake subproject + +Upstream-Status: Inappropriate +--- + meson.build | 4 +--- + 1 file changed, 1 insertion(+), 3 deletions(-) + +diff --git a/meson.build b/meson.build +index 5a75d96..0b21377 100644 +--- a/meson.build ++++ b/meson.build +@@ -24,9 +24,7 @@ else + wireplumber_config_dir = join_paths(get_option('prefix'), get_option('sysconfdir'), 'wireplumber') + endif + +-cmake = import('cmake') +-cpptoml = cmake.subproject('cpptoml') +-cpptoml_dep = cpptoml.dependency('cpptoml') ++cpptoml_dep = declare_dependency(include_directories: include_directories('subprojects/cpptoml')) + + gobject_dep = dependency('gobject-2.0') + gmodule_dep = dependency('gmodule-2.0') +-- +2.24.0 + diff --git a/meta-pipewire/recipes-multimedia/wireplumber/wireplumber_git.bb b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber_git.bb new file mode 100644 index 000000000..0e810b375 --- /dev/null +++ b/meta-pipewire/recipes-multimedia/wireplumber/wireplumber_git.bb @@ -0,0 +1,46 @@ +SUMMARY = "Session / Policy Manager for PipeWire" +HOMEPAGE = "https://gitlab.freedesktop.org/pipewire/wireplumber" +BUGTRACKER = "https://gitlab.freedesktop.org/pipewire/wireplumber/issues" +AUTHOR = "George Kiagiadakis <george.kiagiadakis@collabora.com>" +SECTION = "multimedia" + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://LICENSE;beginline=3;md5=e8ad01a5182f2c1b3a2640e9ea268264" + +inherit meson pkgconfig gobject-introspection + +DEPENDS = "glib-2.0 glib-2.0-native pipewire" + +SRC_URI = "\ + git://gitlab.freedesktop.org/pipewire/wireplumber.git;protocol=https;branch=master \ + https://raw.githubusercontent.com/skystrife/cpptoml/fededad7169e538ca47e11a9ee9251bc361a9a65/include/cpptoml.h \ + file://0001-Build-cpptoml-without-a-cmake-subproject.patch \ +" +SRCREV = "0e98e4150b73d0bed9b72bf8d3eba49671962991" +SRC_URI[sha256sum] = "3e4e1d315fa1229921c7a4297ead08775b5bb1220c18a7eac62db9ca7e79df0d" + +PV = "0.1.90+git${SRCPV}" +S = "${WORKDIR}/git" + +do_configure_prepend() { + mkdir -p ${WORKDIR}/git/subprojects/cpptoml/include + cp -f ${WORKDIR}/cpptoml.h ${WORKDIR}/git/subprojects/cpptoml/include/ +} + +PACKAGES =+ "${PN}-config" + +FILES_${PN} += "\ + ${libdir}/wireplumber-*/* \ +" +RPROVIDES_${PN} += "virtual/pipewire-sessionmanager" +RDEPENDS_${PN} += "virtual/wireplumber-config" + + +FILES_${PN}-config += "\ + ${sysconfdir}/wireplumber/* \ +" +CONFFILES_${PN}-config += "\ + ${sysconfdir}/wireplumber/* \ +" + +RPROVIDES_${PN}-config += "virtual/wireplumber-config" |