Przeglądaj źródła

package/pipewire: add option to enable media-session support

The example media-session pipewire session manager requires
pipewire to be built with examples enabled, add support for
enabling this while depending on examples being enabled.

To simplify adding support for additional session managers in
the future such as wireplumber we pass a comma separated list
to the -Dsession-managers meson config option. This also will
ensure that systemd services that depend on media-session are
only installed if media-session support is enabled.

Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
James Hilliard 3 lat temu
rodzic
commit
ddad938149
2 zmienionych plików z 12 dodań i 0 usunięć
  1. 6 0
      package/pipewire/Config.in
  2. 6 0
      package/pipewire/pipewire.mk

+ 6 - 0
package/pipewire/Config.in

@@ -19,6 +19,12 @@ config BR2_PACKAGE_PIPEWIRE_EXAMPLES
 	help
 	  Build pipewire examples
 
+config BR2_PACKAGE_PIPEWIRE_MEDIA_SESSION
+	bool "pipewire media-session"
+	depends on BR2_PACKAGE_PIPEWIRE_EXAMPLES
+	help
+	  Build pipewire media-session support
+
 config BR2_PACKAGE_PIPEWIRE_GSTREAMER
 	bool "pipewire gstreamer plugins"
 	depends on BR2_USE_WCHAR # libglib2

+ 6 - 0
package/pipewire/pipewire.mk

@@ -156,6 +156,12 @@ else
 PIPEWIRE_CONF_OPTS += -Decho-cancel-webrtc=disabled
 endif
 
+ifeq ($(BR2_PACKAGE_PIPEWIRE_MEDIA_SESSION),y)
+PIPEWIRE_SESSION_MANAGERS_LIST = media-session
+endif
+
+PIPEWIRE_CONF_OPTS += -Dsession-managers='$(subst $(space),$(comma),$(PIPEWIRE_SESSION_MANAGERS_LIST))'
+
 define PIPEWIRE_USERS
 	pipewire -1 pipewire -1 * - - - PipeWire System Daemon
 endef