menuconfig BR2_PACKAGE_PIPEWIRE
bool "pipewire"
- depends on BR2_TOOLCHAIN_HAS_THREADS # dbus
+ depends on BR2_PACKAGE_HAS_UDEV # libudev
+ depends on BR2_TOOLCHAIN_HAS_THREADS # dbus, alsa-lib
depends on BR2_USE_MMU # dbus
+ select BR2_PACKAGE_ALSA_LIB
select BR2_PACKAGE_DBUS
help
PipeWire is a server and user space API to deal with
https://pipewire.org/
+if BR2_PACKAGE_PIPEWIRE
+
+config BR2_PACKAGE_PIPEWIRE_GSTREAMER
+ bool "pipewire gstreamer plugins"
+ depends on BR2_USE_WCHAR # libglib2
+ depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2
+ depends on BR2_USE_MMU # libglib2
+ select BR2_PACKAGE_LIBGLIB2
+ select BR2_PACKAGE_GSTREAMER1
+ select BR2_PACKAGE_GST1_PLUGINS_BASE
+ help
+ Build GStreamer plugins
+
+comment "pipewire gstreamer support needs a toolchain w/ wchar, threads"
+ depends on BR2_USE_MMU
+ depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
+
+endif
+
comment "pipewire needs a toolchain w/ threads"
depends on BR2_USE_MMU
depends on !BR2_TOOLCHAIN_HAS_THREADS
PIPEWIRE_LICENSE = LGPL-2.1+
PIPEWIRE_LICENSE_FILES = LICENSE LGPL
PIPEWIRE_INSTALL_STAGING = YES
-PIPEWIRE_DEPENDENCIES = host-pkgconf dbus
-PIPEWIRE_CONF_OPTS = -Dgstreamer=disabled
+PIPEWIRE_DEPENDENCIES = host-pkgconf alsa-lib dbus udev
+
+ifeq ($(BR2_PACKAGE_FFMPEG),y)
+PIPEWIRE_DEPENDENCIES += ffmpeg
+endif
+
+ifeq ($(BR2_PACKAGE_SBC),y)
+PIPEWIRE_DEPENDENCIES += sbc
+endif
+
+ifeq ($(BR2_PACKAGE_SDL2),y)
+PIPEWIRE_DEPENDENCIES += sdl2
+endif
+
+ifeq ($(BR2_PACKAGE_PIPEWIRE_GSTREAMER),y)
+PIPEWIRE_CONF_OPTS += -Dgstreamer=enabled
+PIPEWIRE_DEPENDENCIES += libglib2 gstreamer1 gst1-plugins-base
+else
+PIPEWIRE_CONF_OPTS += -Dgstreamer=disabled
+endif
ifeq ($(BR2_PACKAGE_SYSTEMD),y)
PIPEWIRE_CONF_OPTS += -Dsystemd=true