[gnome-build-meta/alatiera/3-36-7] gnome-shell: add a private version of newer pulseaudio




commit 7f791ce4dfb1b2bd3aa42382b0d49725f2de1694
Author: Jordan Petridis <jpetridis gnome org>
Date:   Fri Oct 9 13:22:52 2020 +0300

    gnome-shell: add a private version of newer pulseaudio
    
    3.36.7 bumped the required version of pulseaudio,
    from the gvc submodule in order to avoid a deadlock under
    Xwayland.
    
    The 19.08 version of fd.o-sdk sadly only inclues v12.2 of pulseaudio,
    so we need to bring in a private copy so we can built the shell, as
    its not worth reverting the gvc commit as pulse's behavior is
    broken.
    
    The pulse elements added are adapted copies from the ones in
    fd.o-sdk 20.08. We could have got away with a single element
    but its simpler imo to copy-paste. There are only a couple months
    left in the supported lifepsan of 3.36 branch.
    
    See:
    
    https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3250
    
    https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3250

 elements/core-deps.bst                    |  2 +
 elements/core-deps/libpulse-13.bst        | 39 +++++++++++++++++
 elements/core-deps/pulseaudio-base-13.bst | 71 +++++++++++++++++++++++++++++++
 elements/core/gnome-shell.bst             |  1 +
 4 files changed, 113 insertions(+)
---
diff --git a/elements/core-deps.bst b/elements/core-deps.bst
index 11b5ced2..321a779b 100644
--- a/elements/core-deps.bst
+++ b/elements/core-deps.bst
@@ -82,6 +82,7 @@ depends:
 - core-deps/liboauth.bst
 - core-deps/libosinfo.bst
 - core-deps/libpeas.bst
+- core-deps/libpulse-13.bst
 - core-deps/libqmi.bst
 - core-deps/librest.bst
 - core-deps/libsigcplusplus-2.0.bst
@@ -111,6 +112,7 @@ depends:
 - core-deps/poppler.bst
 - core-deps/portablexdr.bst
 - core-deps/portaudio.bst
+- core-deps/pulseaudio-base-13.bst
 - core-deps/ppp.bst
 - core-deps/pyatspi2.bst
 - core-deps/rpcsvc-proto.bst
diff --git a/elements/core-deps/libpulse-13.bst b/elements/core-deps/libpulse-13.bst
new file mode 100644
index 00000000..6dfe9822
--- /dev/null
+++ b/elements/core-deps/libpulse-13.bst
@@ -0,0 +1,39 @@
+kind: filter
+
+build-depends:
+- core-deps/pulseaudio-base-13.bst
+
+runtime-depends:
+- freedesktop-sdk.bst:bootstrap-import.bst
+- freedesktop-sdk.bst:components/dbus.bst
+- freedesktop-sdk.bst:components/fftw.bst
+- freedesktop-sdk.bst:components/gdbm.bst
+- freedesktop-sdk.bst:components/libtool.bst
+- freedesktop-sdk.bst:components/orc.bst
+- freedesktop-sdk.bst:components/sndfile.bst
+- freedesktop-sdk.bst:components/speexdsp.bst
+- freedesktop-sdk.bst:components/webrtc-audio-processing.bst
+- freedesktop-sdk.bst:components/xorg-lib-ice.bst
+- freedesktop-sdk.bst:components/xorg-lib-sm.bst
+- freedesktop-sdk.bst:components/xorg-lib-xcb.bst
+- freedesktop-sdk.bst:components/xorg-lib-xtst.bst
+- sdk/glib.bst
+
+public:
+  bst:
+    # allow overlap to avoid rebuilding sdk/canberra and affecting the sdk,
+    # we only want the shell to build
+    overlap-whitelist:
+    - '**'
+    split-rules:
+      devel:
+        (>):
+        - '%{libdir}/libpulse.so'
+        - '%{libdir}/libpulse-simple.so'
+        - '%{libdir}/libpulse-mainloop-glib.so'
+
+config:
+  include:
+  - libpulse
+  include-orphans: False
+
diff --git a/elements/core-deps/pulseaudio-base-13.bst b/elements/core-deps/pulseaudio-base-13.bst
new file mode 100644
index 00000000..1c73a8ae
--- /dev/null
+++ b/elements/core-deps/pulseaudio-base-13.bst
@@ -0,0 +1,71 @@
+kind: meson
+
+build-depends:
+- freedesktop-sdk.bst:public-stacks/buildsystem-meson.bst
+- freedesktop-sdk.bst:components/git-minimal.bst
+- freedesktop-sdk.bst:components/m4.bst
+- freedesktop-sdk.bst:components/perl-xml-parser.bst
+- freedesktop-sdk.bst:components/systemd.bst
+
+depends:
+- freedesktop-sdk.bst:bootstrap-import.bst
+- freedesktop-sdk.bst:components/alsa-lib.bst
+- freedesktop-sdk.bst:components/dbus.bst
+- freedesktop-sdk.bst:components/fftw.bst
+- freedesktop-sdk.bst:components/gdbm.bst
+- freedesktop-sdk.bst:components/libtool.bst
+- freedesktop-sdk.bst:components/orc.bst
+- freedesktop-sdk.bst:components/sndfile.bst
+- freedesktop-sdk.bst:components/speexdsp.bst
+- freedesktop-sdk.bst:components/webrtc-audio-processing.bst
+- freedesktop-sdk.bst:components/xorg-lib-ice.bst
+- freedesktop-sdk.bst:components/xorg-lib-sm.bst
+- freedesktop-sdk.bst:components/xorg-lib-xcb.bst
+- freedesktop-sdk.bst:components/xorg-lib-xtst.bst
+- freedesktop-sdk.bst:components/bluez.bst
+- freedesktop-sdk.bst:components/sbc.bst
+- sdk/glib.bst
+- sdk/gtk+-3.bst
+
+variables:
+  meson-local: >-
+    -Dasyncns=disabled
+    -Davahi=disabled
+    -Dbluez5=true
+    -Ddatabase=gdbm
+    -Dfftw=disabled
+    -Dgtk=enabled
+    -Djack=disabled
+    -Dlirc=disabled
+    -Dsoxr=disabled
+    -Dsystemd=enabled
+    -Dtests=false
+    -Dudev=enabled
+    -Dudevrulesdir=$(pkg-config --variable=udevdir udev)/rules.d
+
+public:
+  bst:
+    split-rules:
+      libpulse:
+      - '%{debugdir}/**'
+      - '%{includedir}/**'
+      - '%{libdir}/cmake/**'
+      - '%{libdir}/pkgconfig/**'
+      - '%{libdir}/pulseaudio/lib*.so*'
+      - '%{libdir}/lib*.so*'
+      - '%{bindir}/pacat'
+      - '%{bindir}/pacmd'
+      - '%{bindir}/pactl'
+      - '%{bindir}/padsp'
+      - '%{bindir}/pa-info'
+      - '%{bindir}/pamon'
+      - '%{bindir}/paplay'
+      - '%{bindir}/parec'
+      - '%{bindir}/parecord'
+      - '%{bindir}/pax11publish'
+      - '%{sysconfdir}/pulse/client.conf'
+
+sources:
+- kind: tar
+  url: https://freedesktop.org/software/pulseaudio/releases/pulseaudio-13.0.tar.xz
+  ref: 961b23ca1acfd28f2bc87414c27bb40e12436efcf2158d29721b1e89f3f28057
diff --git a/elements/core/gnome-shell.bst b/elements/core/gnome-shell.bst
index 1be8016b..1b466545 100644
--- a/elements/core/gnome-shell.bst
+++ b/elements/core/gnome-shell.bst
@@ -35,6 +35,7 @@ depends:
 - sdk/gst-plugins-base.bst
 - sdk/gtk+-3.bst
 - sdk/libsoup.bst
+- core-deps/libpulse-13.bst
 - freedesktop-sdk.bst:components/gstreamer.bst
 - freedesktop-sdk.bst:bootstrap-import.bst
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]