[oe] [PATCH 1/2] pipewire: upgrade 0.2.7 -> 0.3.1

Andreas Müller schnitzeltony at gmail.com
Mon Mar 16 05:49:08 UTC 2020


On Mon, Mar 16, 2020 at 12:35 AM Khem Raj <raj.khem at gmail.com> wrote:
>
> On Sat, Mar 14, 2020 at 3:05 PM Andreas Müller <schnitzeltony at gmail.com> wrote:
> >
> > * as long as we have not upgradeed mutter to 3.36 we have to keep pipewire
> >   0.2.7 as pipewire-0.2 - mutter 3.34 asks for pipewire 0.2
> > * license was changed to MIT
> > * additional PACKAGECONFIGs added. The defaults were chosen by DISTRO_FEATURES
> >   or if not available by pipewire's defaults
> > * vulkan was disabled for now
> >
> > Signed-off-by: Andreas Müller <schnitzeltony at gmail.com>
> > ---
> >  .../pipewire/pipewire-0.2_git.bb              | 65 +++++++++++++++++++
> >  .../pipewire/pipewire_git.bb                  | 32 +++++----
> >  2 files changed, 86 insertions(+), 11 deletions(-)
> >  create mode 100644 meta-oe/recipes-multimedia/pipewire/pipewire-0.2_git.bb
> >
> > diff --git a/meta-oe/recipes-multimedia/pipewire/pipewire-0.2_git.bb b/meta-oe/recipes-multimedia/pipewire/pipewire-0.2_git.bb
> > new file mode 100644
> > index 000000000..bcb3015f8
> > --- /dev/null
> > +++ b/meta-oe/recipes-multimedia/pipewire/pipewire-0.2_git.bb
> > @@ -0,0 +1,65 @@
> > +SUMMARY = "Multimedia processing server for Linux"
> > +AUTHOR = "Wim Taymans <wtaymans at redhat.com>"
> > +HOMEPAGE = "https://pipewire.org"
> > +SECTION = "multimedia"
> > +LICENSE = "LGPL-2.1"
> > +LIC_FILES_CHKSUM = " \
> > +    file://LICENSE;md5=d8153c6e65986f862a0550ca74a3ed73 \
> > +    file://LGPL;md5=2d5025d4aa3495befef8f17206a5b0a1 \
> > +"
> > +DEPENDS = "alsa-lib dbus udev"
> > +SRCREV = "14c11c0fe4d366bad4cfecdee97b6652ff9ed63d"
> > +PV = "0.2.7"
> > +
> > +SRC_URI = "git://github.com/PipeWire/pipewire"
> > +
> > +S = "${WORKDIR}/git"
> > +
> > +inherit meson pkgconfig systemd manpages
> > +
> > +PACKAGECONFIG ??= "\
> > +    ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} \
> > +    gstreamer \
> > +"
> > +
> > +PACKAGECONFIG[systemd] = "-Dsystemd=true,-Dsystemd=false,systemd"
> > +PACKAGECONFIG[gstreamer] = "-Dgstreamer=enabled,-Dgstreamer=disabled,glib-2.0 gstreamer1.0 gstreamer1.0-plugins-base"
> > +PACKAGECONFIG[manpages] = "-Dman=true,-Dman=false,libxml-parser-perl-native"
> > +
> > +PACKAGES =+ "\
> > +    ${PN}-spa-plugins \
> > +    ${PN}-alsa \
> > +    ${PN}-config \
> > +    gstreamer1.0-${PN} \
> > +    lib${PN} \
> > +    lib${PN}-modules \
> > +"
> > +
> > +RDEPENDS_lib${PN} += "lib${PN}-modules ${PN}-spa-plugins"
> > +
> > +FILES_${PN} = "\
> > +    ${sysconfdir}/pipewire/pipewire.conf \
> > +    ${bindir}/pipewire* \
> > +    ${systemd_user_unitdir}/* \
> > +"
> > +FILES_lib${PN} = "\
> > +    ${libdir}/libpipewire-*.so.* \
> > +"
> > +FILES_lib${PN}-modules = "\
> > +    ${libdir}/pipewire-*/* \
> > +"
> > +FILES_${PN}-spa-plugins = "\
> > +    ${bindir}/spa-* \
> > +    ${libdir}/spa/* \
> > +"
> > +FILES_${PN}-alsa = "\
> > +    ${libdir}/alsa-lib/* \
> > +    ${datadir}/alsa/alsa.conf.d/50-pipewire.conf \
> > +"
> > +FILES_gstreamer1.0-${PN} = "\
> > +    ${libdir}/gstreamer-1.0/* \
> > +"
> > +
> > +CONFFILES_${PN} = "\
> > +    ${sysconfdir}/pipewire/pipewire.conf \
> > +"
> > diff --git a/meta-oe/recipes-multimedia/pipewire/pipewire_git.bb b/meta-oe/recipes-multimedia/pipewire/pipewire_git.bb
> > index bcb3015f8..95da2df09 100644
> > --- a/meta-oe/recipes-multimedia/pipewire/pipewire_git.bb
> > +++ b/meta-oe/recipes-multimedia/pipewire/pipewire_git.bb
> > @@ -2,14 +2,14 @@ SUMMARY = "Multimedia processing server for Linux"
> >  AUTHOR = "Wim Taymans <wtaymans at redhat.com>"
> >  HOMEPAGE = "https://pipewire.org"
> >  SECTION = "multimedia"
> > -LICENSE = "LGPL-2.1"
> > +LICENSE = "MIT"
> >  LIC_FILES_CHKSUM = " \
> > -    file://LICENSE;md5=d8153c6e65986f862a0550ca74a3ed73 \
> > -    file://LGPL;md5=2d5025d4aa3495befef8f17206a5b0a1 \
> > +    file://LICENSE;md5=e2c0b7d86d04e716a3c4c9ab34260e69 \
> > +    file://COPYING;md5=97be96ca4fab23e9657ffa590b931c1a \
> >  "
> >  DEPENDS = "alsa-lib dbus udev"
> > -SRCREV = "14c11c0fe4d366bad4cfecdee97b6652ff9ed63d"
> > -PV = "0.2.7"
> > +SRCREV = "74a1632f0720886d5b3b6c23ee8fcd6c03ca7aac"
> > +PV = "0.3.1"
> >
> >  SRC_URI = "git://github.com/PipeWire/pipewire"
> >
> > @@ -18,13 +18,20 @@ S = "${WORKDIR}/git"
> >  inherit meson pkgconfig systemd manpages
> >
> >  PACKAGECONFIG ??= "\
> > -    ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} \
> > -    gstreamer \
> > +    ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez', '', d)} \
> > +    ${@bb.utils.filter('DISTRO_FEATURES', 'pulseaudio systemd vulkan', d)} \
>
> Perhaps add vulkan as packageconfig too here. I am seeing
>
> WARNING: pipewire-0.3.1-r0 do_configure: QA Issue: pipewire: invalid
> PACKAGECONFIG: vulkan [invalid-packageconfig]

As you can see I played around with vulkan PACKAGECONFIG but forgot to
remove it's usage. The reasons I decided to disable it by default are

* I am not sure what to (r)depend it needs - there is no
virtual/vulkan. Is it vulkan-loader as gstreamer1.0-plugins-bad does?
* Have no machine to test
* Would take me huge amount of build time - and for me it is just an
optional dependency for mutter (that I never used yet)

So what do you prefer:

* keep disabled (as soon as sombody wants vulkan here he/she/it can take care)
* add untested PACKAGECONFIG (with vulkan-loader in DEPENDS field?)

Cheers

Andreas


More information about the Openembedded-devel mailing list