Version bump

This commit is contained in:
Gerben Jan Dijkman 2024-07-04 17:15:21 +02:00
parent a0dd07d22f
commit 2a76167293
5 changed files with 276 additions and 3 deletions

View File

@ -1,2 +1,6 @@
DIST pipewire-1.0.0-docs.tar.xz 33632 BLAKE2B be06aa7242f7d2f8627b3bf2a2ae491dbda456a24811a767218eb89b1fd5961a461697e5d8ae2782323fdb927985fa4fd5dd40c21268b1c7939f4cd3c9e1a9ab SHA512 14f794c4152d7d9a4a7d9d4d5c2ff381c2a8262deaff034f993c4d28629fca8cc3d71d3a7c02982703e449fae5f58257fea0c20db02bf95b5aed88a4d99d2c58
DIST pipewire-1.0.5.tar.bz2 1698291 BLAKE2B 0f919a01b5f84060fb2ce560a7790a0d59374671f52a941492930fe21ac39178688f27f00cad649d239901f88b392e16895648efae2ec2785c394c1f6d186ddf SHA512 18fbbe36c8752eb0f1df5ee3f3fffee279addcec9825281bd165ad8316f17af7e91bb5759f63c16139c074b03e5a77ef9d596a87f584d1580bbb754101b70a0f
DIST pipewire-1.0.6.tar.bz2 1698889 BLAKE2B f782efa2aa8fa0976fd3025f58041f450505c63acd9028c3d79368d0c41465a51b4472059a1c13092aa72dc6110fc12589b03de653d7eac3c93bc5498cc17154 SHA512 09e5c951c835dcc2654ec284aaaad6be4254744e943f95556c494cd22a4fc67bdc481982856f2aa439e33ec84e7fbdb6df45a1d4b9ced261b01cd91b0ee4d2ed
DIST pipewire-1.0.7.tar.bz2 1698775 BLAKE2B be075eb82fe516116de0a6a4d390dd99d7ea3b41e53c9079219978649845df4e9c16cb8e2dcfe594c2ace65fe63976ec432e9ce97eb048df5103d17f3e8ff353 SHA512 3fb46376cdf061b3ea7be55249399d0036c2728bb4deeb6f5c6d708141234e75f563e6a3dc749fbd40dadba72ad2db5fda358b368a480479157731cc67f3303d
DIST pipewire-1.2.0-docs.tar.xz 58528 BLAKE2B b7abdfecd46239050ab80695c8f3d1a4e6a2aded3f9d64c435c64c7dc54a4e6ae32c3526da0fb4f6e2a22a6dbc8c768450ac2c0824b685022284eb1e1990c038 SHA512 25792090f258acc6cd52231be3918f0edaefeeb6c757acc748710a2e6f40ff7861a44e376dc9651742173c40153d3f848c9532257036ab874940270559d9c7f3
DIST pipewire-1.2.0.tar.bz2 1810104 BLAKE2B a20caae515d800f80f607aeba585609ce9f47d0a38c48cc2eb3534f64049f774c119e36d27a585b5f7537e4eef6b2a56881e7db1e2ca2eedd52248ee9f331209 SHA512 3b9ceb02d3ea9fcadd2e009750d0c5b2435c8648c79f2fa9dc8dc83c772759985b140a02381a6c7be819b23d2a5a7671e456e81cf9b5be3437e994ef610bda59

View File

@ -0,0 +1,80 @@
From acc75b21f653873ec1da68bfa08f2945a8dd09d2 Mon Sep 17 00:00:00 2001
From: Eli Schwartz <eschwartz93@gmail.com>
Date: Sun, 30 Jun 2024 13:44:06 -0400
Subject: [PATCH] meson: fix conflicting use of feature-based dependency
lookups
When spa-plugins is enabled, the gio-2.0 global dependency is
overwritten.
When bluez support is enabled, OR when gsettings is enabled, the gio-2.0
dependency is then detected as found. This means that
pipewire-module-protocol-pulse can end up enabling gsettings support
even if it has been forcibly turned off.
Rename the meson variables to ensure they are looked up separately.
(cherry picked from commit b5f031bc15524bbfde577290ad9bbadeab77ae8b)
Signed-off-by: Eli Schwartz <eschwartz93@gmail.com>
---
meson.build | 4 ++--
spa/meson.build | 6 +++---
src/modules/meson.build | 4 ++--
3 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/meson.build b/meson.build
index 0ea256e9b..3353a2aec 100644
--- a/meson.build
+++ b/meson.build
@@ -343,8 +343,8 @@ summary({'GLib-2.0 (Flatpak support)': glib2_dep.found()}, bool_yn: true, sectio
flatpak_support = glib2_dep.found()
cdata.set('HAVE_GLIB2', flatpak_support)
-gio_dep = dependency('gio-2.0', version : '>= 2.26.0', required : get_option('gsettings'))
-summary({'GIO (GSettings)': gio_dep.found()}, bool_yn: true, section: 'Misc dependencies')
+gsettings_gio_dep = dependency('gio-2.0', version : '>= 2.26.0', required : get_option('gsettings'))
+summary({'GIO (GSettings)': gsettings_gio_dep.found()}, bool_yn: true, section: 'Misc dependencies')
gst_option = get_option('gstreamer')
gst_deps_def = {
diff --git a/spa/meson.build b/spa/meson.build
index db0a84425..e37744b08 100644
--- a/spa/meson.build
+++ b/spa/meson.build
@@ -43,12 +43,12 @@ if get_option('spa-plugins').allowed()
summary({'ALSA': alsa_dep.found()}, bool_yn: true, section: 'Backend')
bluez_dep = dependency('bluez', version : '>= 4.101', required: get_option('bluez5'))
- gio_dep = dependency('gio-2.0', required : get_option('bluez5'))
- gio_unix_dep = dependency('gio-unix-2.0', required : get_option('bluez5'))
+ bluez_gio_dep = dependency('gio-2.0', required : get_option('bluez5'))
+ bluez_gio_unix_dep = dependency('gio-unix-2.0', required : get_option('bluez5'))
bluez_glib2_dep = dependency('glib-2.0', required : get_option('bluez5'))
sbc_dep = dependency('sbc', required: get_option('bluez5'))
summary({'SBC': sbc_dep.found()}, bool_yn: true, section: 'Bluetooth audio codecs')
- bluez5_deps = [ mathlib, dbus_dep, sbc_dep, bluez_dep, bluez_glib2_dep, gio_dep, gio_unix_dep ]
+ bluez5_deps = [ mathlib, dbus_dep, sbc_dep, bluez_dep, bluez_glib2_dep, bluez_gio_dep, bluez_gio_unix_dep ]
bluez_deps_found = get_option('bluez5').allowed()
foreach dep: bluez5_deps
if get_option('bluez5').enabled() and not dep.found()
diff --git a/src/modules/meson.build b/src/modules/meson.build
index 1b434b7f6..52660253e 100644
--- a/src/modules/meson.build
+++ b/src/modules/meson.build
@@ -409,11 +409,11 @@ if avahi_dep.found()
cdata.set('HAVE_AVAHI', true)
endif
-if gio_dep.found()
+if gsettings_gio_dep.found()
pipewire_module_protocol_pulse_sources += [
'module-protocol-pulse/modules/module-gsettings.c',
]
- pipewire_module_protocol_pulse_deps += gio_dep
+ pipewire_module_protocol_pulse_deps += gsettings_gio_dep
cdata.set('HAVE_GIO', true)
endif
--
2.44.2

View File

@ -0,0 +1,95 @@
From acd5bf60b9d4a35d00c90bfdca7f89e4ff4a4ff7 Mon Sep 17 00:00:00 2001
From: Eli Schwartz <eschwartz93@gmail.com>
Date: Thu, 30 May 2024 19:44:38 -0400
Subject: [PATCH] meson: fix webrtc-audio-processing dependency ignoring
configure args
Most dependencies use meson "feature" options for optional
functionality. This allows people to disable them, if they don't want
them, through the power of tristate decision-making.
This particular dependency does something a bit more complicated than
can be described by simply passing feature options to the required
kwarg. It:
- tries to look for two different names of the dependency
- selects different version ranges, depending on the dependency name
- has a hole in the middle of the versions
Unfortunately, `required: false` for the first dependency isn't
equivalent to a tristate decision-making process. We have to manually
code the logic ourselves.
The problem is that when we look up the first name, we cannot pass the
feature option in because if the option is force enabled, then the
dependency lookup fails and configuration never tries to find the older
version instead.
But also, we can't just say it *isn't* required, because if the option
is force *disabled* but it is installed on the system, we still find it
and build against it.
One solution would be using meson 0.60's support for multiple dependency
names:
```
dependency('webrtc-audio-processing-1', 'webrtc-audio-processing',
version : ['>= 0.2'],
required: get_option('echo-cancel-webrtc'),
)
```
Unfortunately, this too doesn't work since we could end up detecting 1.1
(the hole in the middle) which is invalid.
Instead, we do a bit of checking for tristate values before deciding to
invoke `dependency()`. This lets us guarantee that disabled dependencies
are well and truly disabled.
Bug: https://bugs.gentoo.org/933218
Fixes: #3678
---
meson.build | 25 +++++++++++++++----------
1 file changed, 15 insertions(+), 10 deletions(-)
diff --git a/meson.build b/meson.build
index cda60112f..72d275086 100644
--- a/meson.build
+++ b/meson.build
@@ -393,18 +393,23 @@ cdata.set('HAVE_GSTREAMER_DEVICE_PROVIDER', get_option('gstreamer-device-provide
summary({'gstreamer DMA_DRM support': gst_dma_drm_found}, bool_yn: true, section: 'Backend')
cdata.set('HAVE_GSTREAMER_DMA_DRM', gst_dma_drm_found)
-webrtc_dep = dependency('webrtc-audio-processing-1',
- version : ['>= 1.2' ],
- required : false)
-cdata.set('HAVE_WEBRTC1', webrtc_dep.found())
-if webrtc_dep.found()
+if get_option('echo-cancel-webrtc').disabled()
+ webrtc_dep = dependency('', required: false)
summary({'WebRTC Echo Canceling >= 1.2': webrtc_dep.found()}, bool_yn: true, section: 'Misc dependencies')
else
- webrtc_dep = dependency('webrtc-audio-processing',
- version : ['>= 0.2', '< 1.0'],
- required : get_option('echo-cancel-webrtc'))
- cdata.set('HAVE_WEBRTC', webrtc_dep.found())
- summary({'WebRTC Echo Canceling < 1.0': webrtc_dep.found()}, bool_yn: true, section: 'Misc dependencies')
+ webrtc_dep = dependency('webrtc-audio-processing-1',
+ version : ['>= 1.2' ],
+ required : false)
+ cdata.set('HAVE_WEBRTC1', webrtc_dep.found())
+ if webrtc_dep.found()
+ summary({'WebRTC Echo Canceling >= 1.2': webrtc_dep.found()}, bool_yn: true, section: 'Misc dependencies')
+ else
+ webrtc_dep = dependency('webrtc-audio-processing',
+ version : ['>= 0.2', '< 1.0'],
+ required : get_option('echo-cancel-webrtc'))
+ cdata.set('HAVE_WEBRTC', webrtc_dep.found())
+ summary({'WebRTC Echo Canceling < 1.0': webrtc_dep.found()}, bool_yn: true, section: 'Misc dependencies')
+ endif
endif
# On FreeBSD and MidnightBSD, epoll-shim library is required for eventfd() and timerfd()
--
GitLab

View File

@ -0,0 +1,79 @@
From b5f031bc15524bbfde577290ad9bbadeab77ae8b Mon Sep 17 00:00:00 2001
From: Eli Schwartz <eschwartz93@gmail.com>
Date: Sun, 30 Jun 2024 13:44:06 -0400
Subject: [PATCH] meson: fix conflicting use of feature-based dependency
lookups
When spa-plugins is enabled, the gio-2.0 global dependency is
overwritten.
When bluez support is enabled, OR when gsettings is enabled, the gio-2.0
dependency is then detected as found. This means that
pipewire-module-protocol-pulse can end up enabling gsettings support
even if it has been forcibly turned off.
Rename the meson variables to ensure they are looked up separately.
---
meson.build | 6 +++---
spa/meson.build | 6 +++---
src/modules/meson.build | 4 ++--
3 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/meson.build b/meson.build
index 2607c5c8f4..38b6b59d00 100644
--- a/meson.build
+++ b/meson.build
@@ -346,9 +346,9 @@ summary({'GLib-2.0 (Flatpak support)': glib2_dep.found()}, bool_yn: true, sectio
flatpak_support = glib2_dep.found()
cdata.set('HAVE_GLIB2', flatpak_support)
-gio_dep = dependency('gio-2.0', version : '>= 2.26.0', required : get_option('gsettings'))
-summary({'GIO (GSettings)': gio_dep.found()}, bool_yn: true, section: 'Misc dependencies')
-if not gio_dep.found() and get_option('gsettings-pulse-schema').enabled()
+gsettings_gio_dep = dependency('gio-2.0', version : '>= 2.26.0', required : get_option('gsettings'))
+summary({'GIO (GSettings)': gsettings_gio_dep.found()}, bool_yn: true, section: 'Misc dependencies')
+if not gsettings_gio_dep.found() and get_option('gsettings-pulse-schema').enabled()
error('`gsettings-pulse-schema` is enabled but `gio` was not found.')
endif
diff --git a/spa/meson.build b/spa/meson.build
index 67e4b5c506..cf25609dab 100644
--- a/spa/meson.build
+++ b/spa/meson.build
@@ -47,12 +47,12 @@ if get_option('spa-plugins').allowed()
summary({'ALSA': alsa_dep.found()}, bool_yn: true, section: 'Backend')
bluez_dep = dependency('bluez', version : '>= 4.101', required: get_option('bluez5'))
- gio_dep = dependency('gio-2.0', required : get_option('bluez5'))
- gio_unix_dep = dependency('gio-unix-2.0', required : get_option('bluez5'))
+ bluez_gio_dep = dependency('gio-2.0', required : get_option('bluez5'))
+ bluez_gio_unix_dep = dependency('gio-unix-2.0', required : get_option('bluez5'))
bluez_glib2_dep = dependency('glib-2.0', required : get_option('bluez5'))
sbc_dep = dependency('sbc', required: get_option('bluez5'))
summary({'SBC': sbc_dep.found()}, bool_yn: true, section: 'Bluetooth audio codecs')
- bluez5_deps = [ mathlib, dbus_dep, sbc_dep, bluez_dep, bluez_glib2_dep, gio_dep, gio_unix_dep ]
+ bluez5_deps = [ mathlib, dbus_dep, sbc_dep, bluez_dep, bluez_glib2_dep, bluez_gio_dep, bluez_gio_unix_dep ]
bluez_deps_found = get_option('bluez5').allowed()
foreach dep: bluez5_deps
if get_option('bluez5').enabled() and not dep.found()
diff --git a/src/modules/meson.build b/src/modules/meson.build
index ceaa7013d9..3f400f0877 100644
--- a/src/modules/meson.build
+++ b/src/modules/meson.build
@@ -433,11 +433,11 @@ if avahi_dep.found()
cdata.set('HAVE_AVAHI', true)
endif
-if gio_dep.found()
+if gsettings_gio_dep.found()
pipewire_module_protocol_pulse_sources += [
'module-protocol-pulse/modules/module-gsettings.c',
]
- pipewire_module_protocol_pulse_deps += gio_dep
+ pipewire_module_protocol_pulse_deps += gsettings_gio_dep
cdata.set('HAVE_GIO', true)
if get_option('gsettings-pulse-schema').enabled()
install_data(['module-protocol-pulse/modules/org.freedesktop.pulseaudio.gschema.xml'],
--
GitLab

View File

@ -23,7 +23,7 @@ EAPI=8
: ${PIPEWIRE_DOCS_PREBUILT:=1}
PIPEWIRE_DOCS_PREBUILT_DEV=sam
PIPEWIRE_DOCS_VERSION=$(ver_cut 1-2).0
PIPEWIRE_DOCS_VERSION="${PV}"
# Default to generating docs (inc. man pages) if no prebuilt; overridden later
PIPEWIRE_DOCS_USEFLAG="+man"
PYTHON_COMPAT=( python3_{10..12} )
@ -98,7 +98,7 @@ BDEPEND="
)
"
# * While udev could technically be optional, it's needed for a number of options,
# and not really worth it, bug #877769.
# and not really worth it, bug #877769.libcamera
#
# * Supports both legacy webrtc-audio-processing:0 and new webrtc-audio-processing:1.
# We depend on :1 as it prefers that, it's not legacy, and to avoid automagic.
@ -124,7 +124,7 @@ RDEPEND="
virtual/libusb:1
)
dbus? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
echo-cancel? ( media-libs/webrtc-audio-processing:1 )
echo-cancel? ( >=media-libs/webrtc-audio-processing-1.2:1 )
extra? ( >=media-libs/libsndfile-1.0.20 )
ffmpeg? ( media-video/ffmpeg:= )
flatpak? ( dev-libs/glib )
@ -176,6 +176,8 @@ PDEPEND=">=media-video/wireplumber-0.5.2"
PATCHES=(
"${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch
# https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/2061
"${FILESDIR}"/${P}-automagic-gsettings.patch
"${FILESDIR}"/0001-Use-libcamera-by-default-if-it-s-found-and-supported.patch
)
@ -276,8 +278,21 @@ multilib_src_configure() {
$(meson_native_use_feature X x11)
$(meson_native_use_feature X x11-xfixes)
$(meson_native_use_feature X libcanberra)
# TODO
-Dsnap=disabled
)
# This installs the schema file for pulseaudio-daemon, iff we are replacing
# the official sound-server
if use !sound-server; then
emesonargs+=( '-Dgsettings-pulse-schema=disabled' )
else
emesonargs+=(
$(meson_native_use_feature gsettings gsettings-pulse-schema)
)
fi
meson_src_configure
}