public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: media-sound/pulseaudio/files/, media-sound/pulseaudio/
@ 2018-06-02 17:09 Andreas Sturmlechner
  0 siblings, 0 replies; 4+ messages in thread
From: Andreas Sturmlechner @ 2018-06-02 17:09 UTC (permalink / raw
  To: gentoo-commits

commit:     80fdc7def4a6fefb711f282435ebc14f10078422
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Mon May 28 22:16:41 2018 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Jun  2 17:06:37 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=80fdc7de

media-sound/pulseaudio: Fix build with glibc-2.27

Closes: https://bugs.gentoo.org/646566
Package-Manager: Portage-2.3.40, Repoman-2.3.9

 .../files/pulseaudio-11.1-glibc-2.27.patch         | 59 ++++++++++++++++++++++
 media-sound/pulseaudio/pulseaudio-11.1-r1.ebuild   |  5 +-
 2 files changed, 63 insertions(+), 1 deletion(-)

diff --git a/media-sound/pulseaudio/files/pulseaudio-11.1-glibc-2.27.patch b/media-sound/pulseaudio/files/pulseaudio-11.1-glibc-2.27.patch
new file mode 100644
index 00000000000..a89167b603d
--- /dev/null
+++ b/media-sound/pulseaudio/files/pulseaudio-11.1-glibc-2.27.patch
@@ -0,0 +1,59 @@
+From: Tanu Kaskinen <tanuk@iki.fi>
+Date: Wed, 24 Jan 2018 03:51:49 +0200
+Subject: memfd-wrappers: only define memfd_create() if not already defined
+
+glibc 2.27 is to be released soon, and it will provide memfd_create().
+If glibc provides the function, we must not define it ourselves,
+otherwise building fails due to conflict between the two implementations
+of the same function.
+
+BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=104733
+(cherry picked from commit dfb0460fb4743aec047cdf755a660a9ac2d0f3fb)
+---
+ configure.ac                   | 3 +++
+ src/pulsecore/memfd-wrappers.h | 7 ++++---
+ 2 files changed, 7 insertions(+), 3 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 77b5ff5..3a71fd8 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -607,6 +607,9 @@ AS_IF([test "x$enable_memfd" = "xyes" && test "x$HAVE_MEMFD" = "x0"],
+     [AC_MSG_ERROR([*** Your Linux kernel does not support memfd shared memory.
+                   *** Use linux v3.17 or higher for such a feature.])])
+ 
++AS_IF([test "x$HAVE_MEMFD" = "x1"],
++    AC_CHECK_FUNCS([memfd_create]))
++
+ AC_SUBST(HAVE_MEMFD)
+ AM_CONDITIONAL([HAVE_MEMFD], [test "x$HAVE_MEMFD" = x1])
+ AS_IF([test "x$HAVE_MEMFD" = "x1"], AC_DEFINE([HAVE_MEMFD], 1, [Have memfd shared memory.]))
+diff --git a/src/pulsecore/memfd-wrappers.h b/src/pulsecore/memfd-wrappers.h
+index 3bed9b2..c7aadfd 100644
+--- a/src/pulsecore/memfd-wrappers.h
++++ b/src/pulsecore/memfd-wrappers.h
+@@ -20,13 +20,14 @@
+   License along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
+ ***/
+ 
+-#ifdef HAVE_MEMFD
++#if defined(HAVE_MEMFD) && !defined(HAVE_MEMFD_CREATE)
+ 
+ #include <sys/syscall.h>
+ #include <fcntl.h>
+ 
+ /*
+- * No glibc wrappers exist for memfd_create(2), so provide our own.
++ * Before glibc version 2.27 there was no wrapper for memfd_create(2),
++ * so we have to provide our own.
+  *
+  * Also define memfd fcntl sealing macros. While they are already
+  * defined in the kernel header file <linux/fcntl.h>, that file as
+@@ -63,6 +64,6 @@ static inline int memfd_create(const char *name, unsigned int flags) {
+ #define F_SEAL_WRITE    0x0008  /* prevent writes */
+ #endif
+ 
+-#endif /* HAVE_MEMFD */
++#endif /* HAVE_MEMFD && !HAVE_MEMFD_CREATE */
+ 
+ #endif

diff --git a/media-sound/pulseaudio/pulseaudio-11.1-r1.ebuild b/media-sound/pulseaudio/pulseaudio-11.1-r1.ebuild
index f9aee0517a3..1a8c69657dd 100644
--- a/media-sound/pulseaudio/pulseaudio-11.1-r1.ebuild
+++ b/media-sound/pulseaudio/pulseaudio-11.1-r1.ebuild
@@ -116,7 +116,10 @@ RDEPEND="${RDEPEND}
 	)
 "
 
-PATCHES=( "${FILESDIR}/${P}"-qpaeq-pyqt5-{1,2}.patch )
+PATCHES=(
+	"${FILESDIR}/${P}"-qpaeq-pyqt5-{1,2}.patch
+	"${FILESDIR}/${P}"-glibc-2.27.patch
+)
 
 pkg_pretend() {
 	CONFIG_CHECK="~HIGH_RES_TIMERS"


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-sound/pulseaudio/files/, media-sound/pulseaudio/
@ 2018-06-02 17:09 Andreas Sturmlechner
  0 siblings, 0 replies; 4+ messages in thread
From: Andreas Sturmlechner @ 2018-06-02 17:09 UTC (permalink / raw
  To: gentoo-commits

commit:     02ec89fdd26b67f56ecce2d0747e4653e27db47b
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Mon May 28 22:24:32 2018 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Jun  2 17:06:38 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=02ec89fd

media-sound/pulseaudio: Set flat-volumes=no by default

Bug: https://bugs.gentoo.org/627894
Package-Manager: Portage-2.3.40, Repoman-2.3.9

 .../pulseaudio-11.1-disable-flat-volumes.patch     | 48 ++++++++++++++++++++++
 media-sound/pulseaudio/pulseaudio-11.1-r1.ebuild   |  1 +
 2 files changed, 49 insertions(+)

diff --git a/media-sound/pulseaudio/files/pulseaudio-11.1-disable-flat-volumes.patch b/media-sound/pulseaudio/files/pulseaudio-11.1-disable-flat-volumes.patch
new file mode 100644
index 00000000000..40b23ec05f2
--- /dev/null
+++ b/media-sound/pulseaudio/files/pulseaudio-11.1-disable-flat-volumes.patch
@@ -0,0 +1,48 @@
+diff -up a/man/pulse-daemon.conf.5.xml.in b/man/pulse-daemon.conf.5.xml.in
+--- a/man/pulse-daemon.conf.5.xml.in	2016-05-26 23:21:17.000000000 -0500
++++ b/man/pulse-daemon.conf.5.xml.in	2016-05-31 10:01:55.679976730 -0500
+@@ -220,7 +220,7 @@ License along with PulseAudio; if not, s
+       <p><opt>flat-volumes=</opt> Enable 'flat' volumes, i.e. where
+       possible let the sink volume equal the maximum of the volumes of
+       the inputs connected to it. Takes a boolean argument, defaults
+-      to <opt>yes</opt>.</p>
++      to <opt>no</opt>.</p>
+     </option>
+ 
+   </section>
+diff -up a/src/daemon/daemon-conf.c b/src/daemon/daemon-conf.c
+--- a/src/daemon/daemon-conf.c	2016-05-26 23:21:17.000000000 -0500
++++ b/src/daemon/daemon-conf.c	2016-05-31 10:01:55.680976735 -0500
+@@ -68,7 +68,7 @@ static const pa_daemon_conf default_conf
+     .realtime_priority = 5,  /* Half of JACK's default rtprio */
+     .disallow_module_loading = false,
+     .disallow_exit = false,
+-    .flat_volumes = true,
++    .flat_volumes = false,
+     .exit_idle_time = 20,
+     .scache_idle_time = 20,
+     .script_commands = NULL,
+diff -up a/src/daemon/daemon.conf.in b/src/daemon/daemon.conf.in
+--- a/src/daemon/daemon.conf.in	2016-05-31 10:01:55.680976735 -0500
++++ b/src/daemon/daemon.conf.in	2016-05-31 10:02:28.048133267 -0500
+@@ -57,7 +57,7 @@ ifelse(@HAVE_DBUS@, 1, [dnl
+ ; enable-lfe-remixing = no
+ ; lfe-crossover-freq = 0
+ 
+-; flat-volumes = yes
++; flat-volumes = no
+ 
+ ifelse(@HAVE_SYS_RESOURCE_H@, 1, [dnl
+ ; rlimit-fsize = -1
+diff -up a/src/pulsecore/core.c b/src/pulsecore/core.c
+--- a/src/pulsecore/core.c	2016-05-26 23:21:17.000000000 -0500
++++ b/src/pulsecore/core.c	2016-05-31 10:01:55.681976740 -0500
+@@ -135,7 +135,7 @@ pa_core* pa_core_new(pa_mainloop_api *m,
+     c->exit_idle_time = -1;
+     c->scache_idle_time = 20;
+ 
+-    c->flat_volumes = true;
++    c->flat_volumes = false;
+     c->disallow_module_loading = false;
+     c->disallow_exit = false;
+     c->running_as_daemon = false;

diff --git a/media-sound/pulseaudio/pulseaudio-11.1-r1.ebuild b/media-sound/pulseaudio/pulseaudio-11.1-r1.ebuild
index 1a8c69657dd..4b5a65ba72d 100644
--- a/media-sound/pulseaudio/pulseaudio-11.1-r1.ebuild
+++ b/media-sound/pulseaudio/pulseaudio-11.1-r1.ebuild
@@ -119,6 +119,7 @@ RDEPEND="${RDEPEND}
 PATCHES=(
 	"${FILESDIR}/${P}"-qpaeq-pyqt5-{1,2}.patch
 	"${FILESDIR}/${P}"-glibc-2.27.patch
+	"${FILESDIR}/${P}"-disable-flat-volumes.patch # bug 627894
 )
 
 pkg_pretend() {


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-sound/pulseaudio/files/, media-sound/pulseaudio/
@ 2020-01-11 19:24 Mart Raudsepp
  0 siblings, 0 replies; 4+ messages in thread
From: Mart Raudsepp @ 2020-01-11 19:24 UTC (permalink / raw
  To: gentoo-commits

commit:     734f0b473b6600353940ebc6acb175d6cf14617c
Author:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 11 19:10:59 2020 +0000
Commit:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Sat Jan 11 19:13:23 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=734f0b47

media-sound/pulseaudio: remove old

Package-Manager: Portage-2.3.79, Repoman-2.3.12
Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>

 media-sound/pulseaudio/Manifest                    |   1 -
 .../files/pulseaudio-12.2-alsa-header-path.patch   | 130 --------
 .../files/pulseaudio-12.2-alsa-header-path2.patch  |  45 ---
 .../files/pulseaudio-12.2-exit-time-session.patch  | 181 -----------
 media-sound/pulseaudio/pulseaudio-12.2-r1.ebuild   | 361 ---------------------
 5 files changed, 718 deletions(-)

diff --git a/media-sound/pulseaudio/Manifest b/media-sound/pulseaudio/Manifest
index 5780ad7256e..8c2628da203 100644
--- a/media-sound/pulseaudio/Manifest
+++ b/media-sound/pulseaudio/Manifest
@@ -1,2 +1 @@
-DIST pulseaudio-12.2.tar.xz 1665092 BLAKE2B 2e36efc5142c1e379cc2b135f4126f03a31831b26efe60f7cdf128af6e23fab25706a5609644d0b387530021055f87525fe60d527cd3a087f51bfd58e810644f SHA512 877754c1838b3cb042dbc18a5f1cc3cf313ffcaee7a64703330406d1f86279c34f1107634ac3083b158365e6757fbacf5ec406bc3c5788d291de67b77a561a4e
 DIST pulseaudio-13.0.tar.xz 1901768 BLAKE2B 651a80f54525f196bcb036d893fedd4d9f34e10459918281397a45f498c31bff0d0c836f4e64aab5ac2612ffd5a0cab1a41ea710bbee5fd34dfc9ea1236deea9 SHA512 d445b8ccd43029a0ca0e456fc9291a79d3434d6496ead7eb329ab348d5249235e8bde6cf2be68765d8f761452dbe1486fb10c739e40b1e67ed75787bbd24ac0c

diff --git a/media-sound/pulseaudio/files/pulseaudio-12.2-alsa-header-path.patch b/media-sound/pulseaudio/files/pulseaudio-12.2-alsa-header-path.patch
deleted file mode 100644
index 334af3ee755..00000000000
--- a/media-sound/pulseaudio/files/pulseaudio-12.2-alsa-header-path.patch
+++ /dev/null
@@ -1,130 +0,0 @@
-From 993d3fd89e5611997f1e165bf03edefb0204b0a4 Mon Sep 17 00:00:00 2001
-From: Olaf Hering <olaf@aepfle.de>
-Date: Wed, 27 Mar 2019 09:35:05 +0100
-Subject: [PATCH 287/375] alsa: Use correct header path
-
-Consumers are expected to use <alsa/asoundlib.h> instead of
-<asoundlib.h>.
-
-This is in preparation of an change to pkgconfig(alsa) to
-not pollute CFLAGS with -I/usr/include/alsa anymore.
-
-Signed-off-by: Olaf Hering <olaf@aepfle.de>
----
- src/modules/alsa/alsa-mixer.c         | 2 +-
- src/modules/alsa/alsa-mixer.h         | 2 +-
- src/modules/alsa/alsa-sink.c          | 2 +-
- src/modules/alsa/alsa-source.c        | 2 +-
- src/modules/alsa/alsa-ucm.c           | 2 +-
- src/modules/alsa/alsa-util.c          | 2 +-
- src/modules/alsa/alsa-util.h          | 2 +-
- src/modules/alsa/module-alsa-source.c | 2 +-
- 8 files changed, 8 insertions(+), 8 deletions(-)
-
-diff --git a/src/modules/alsa/alsa-mixer.c b/src/modules/alsa/alsa-mixer.c
-index 5cb99c8fd..cd99a75f8 100644
---- a/src/modules/alsa/alsa-mixer.c
-+++ b/src/modules/alsa/alsa-mixer.c
-@@ -23,7 +23,7 @@
- #endif
- 
- #include <sys/types.h>
--#include <asoundlib.h>
-+#include <alsa/asoundlib.h>
- #include <math.h>
- 
- #ifdef HAVE_VALGRIND_MEMCHECK_H
-diff --git a/src/modules/alsa/alsa-mixer.h b/src/modules/alsa/alsa-mixer.h
-index 3ea4d7329..65b071165 100644
---- a/src/modules/alsa/alsa-mixer.h
-+++ b/src/modules/alsa/alsa-mixer.h
-@@ -21,7 +21,7 @@
-   along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
- ***/
- 
--#include <asoundlib.h>
-+#include <alsa/asoundlib.h>
- 
- #include <pulse/sample.h>
- #include <pulse/mainloop-api.h>
-diff --git a/src/modules/alsa/alsa-sink.c b/src/modules/alsa/alsa-sink.c
-index 28143402a..4b46708ce 100644
---- a/src/modules/alsa/alsa-sink.c
-+++ b/src/modules/alsa/alsa-sink.c
-@@ -25,7 +25,7 @@
- #include <signal.h>
- #include <stdio.h>
- 
--#include <asoundlib.h>
-+#include <alsa/asoundlib.h>
- 
- #ifdef HAVE_VALGRIND_MEMCHECK_H
- #include <valgrind/memcheck.h>
-diff --git a/src/modules/alsa/alsa-source.c b/src/modules/alsa/alsa-source.c
-index 8129220b0..c8bf649e1 100644
---- a/src/modules/alsa/alsa-source.c
-+++ b/src/modules/alsa/alsa-source.c
-@@ -25,7 +25,7 @@
- #include <signal.h>
- #include <stdio.h>
- 
--#include <asoundlib.h>
-+#include <alsa/asoundlib.h>
- 
- #include <pulse/rtclock.h>
- #include <pulse/timeval.h>
-diff --git a/src/modules/alsa/alsa-ucm.c b/src/modules/alsa/alsa-ucm.c
-index 341c8012e..0a40ca8fe 100644
---- a/src/modules/alsa/alsa-ucm.c
-+++ b/src/modules/alsa/alsa-ucm.c
-@@ -27,7 +27,7 @@
- #include <ctype.h>
- #include <sys/types.h>
- #include <limits.h>
--#include <asoundlib.h>
-+#include <alsa/asoundlib.h>
- 
- #ifdef HAVE_VALGRIND_MEMCHECK_H
- #include <valgrind/memcheck.h>
-diff --git a/src/modules/alsa/alsa-util.c b/src/modules/alsa/alsa-util.c
-index e8d712e72..bd0a47e50 100644
---- a/src/modules/alsa/alsa-util.c
-+++ b/src/modules/alsa/alsa-util.c
-@@ -23,7 +23,7 @@
- #endif
- 
- #include <sys/types.h>
--#include <asoundlib.h>
-+#include <alsa/asoundlib.h>
- 
- #include <pulse/sample.h>
- #include <pulse/xmalloc.h>
-diff --git a/src/modules/alsa/alsa-util.h b/src/modules/alsa/alsa-util.h
-index 6b27339ec..4ceaa06ee 100644
---- a/src/modules/alsa/alsa-util.h
-+++ b/src/modules/alsa/alsa-util.h
-@@ -21,7 +21,7 @@
-   along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
- ***/
- 
--#include <asoundlib.h>
-+#include <alsa/asoundlib.h>
- 
- #include <pulse/sample.h>
- #include <pulse/channelmap.h>
-diff --git a/src/modules/alsa/module-alsa-source.c b/src/modules/alsa/module-alsa-source.c
-index af6800dd2..747ba9342 100644
---- a/src/modules/alsa/module-alsa-source.c
-+++ b/src/modules/alsa/module-alsa-source.c
-@@ -24,7 +24,7 @@
- 
- #include <stdio.h>
- 
--#include <asoundlib.h>
-+#include <alsa/asoundlib.h>
- 
- #ifdef HAVE_VALGRIND_MEMCHECK_H
- #include <valgrind/memcheck.h>
--- 
-2.21.0
-

diff --git a/media-sound/pulseaudio/files/pulseaudio-12.2-alsa-header-path2.patch b/media-sound/pulseaudio/files/pulseaudio-12.2-alsa-header-path2.patch
deleted file mode 100644
index c592da2205e..00000000000
--- a/media-sound/pulseaudio/files/pulseaudio-12.2-alsa-header-path2.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From b89d33bb182c42db5ad3987b0e91b7bf62f421e8 Mon Sep 17 00:00:00 2001
-From: Takashi Iwai <tiwai@suse.de>
-Date: Sun, 21 Apr 2019 11:59:30 +0200
-Subject: [PATCH 304/375] alsa: Fix inclusion of use-case.h
-
-The recent change in ALSA upstream stripped -I$include/alsa path from
-pkgconfig.  We already fixed for this change in some places but still
-the code for UCM was overlooked, and this resulted in the unresolved
-symbols in alsa card module. Fix them as well.
-
-Signed-off-by: Takashi Iwai <tiwai@suse.de>
----
- configure.ac                | 2 +-
- src/modules/alsa/alsa-ucm.h | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index c004bd70d..b44ed1595 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -826,7 +826,7 @@ AS_IF([test "x$enable_alsa" = "xyes" && test "x$HAVE_ALSA" = "x0"],
- AS_IF([test "x$HAVE_ALSA" = "x1"],
-     [
-         save_CPPFLAGS="$CPPFLAGS"; CPPFLAGS="$CPPFLAGS $ASOUNDLIB_CFLAGS"
--        AC_CHECK_HEADERS([use-case.h], HAVE_ALSA_UCM=1, HAVE_ALSA_UCM=0)
-+        AC_CHECK_HEADERS([alsa/use-case.h], HAVE_ALSA_UCM=1, HAVE_ALSA_UCM=0)
-         CPPFLAGS="$save_CPPFLAGS"
-     ],
-     HAVE_ALSA_UCM=0)
-diff --git a/src/modules/alsa/alsa-ucm.h b/src/modules/alsa/alsa-ucm.h
-index 53abf3f90..c926f3cc3 100644
---- a/src/modules/alsa/alsa-ucm.h
-+++ b/src/modules/alsa/alsa-ucm.h
-@@ -23,7 +23,7 @@
- ***/
- 
- #ifdef HAVE_ALSA_UCM
--#include <use-case.h>
-+#include <alsa/use-case.h>
- #else
- typedef void snd_use_case_mgr_t;
- #endif
--- 
-2.21.0
-

diff --git a/media-sound/pulseaudio/files/pulseaudio-12.2-exit-time-session.patch b/media-sound/pulseaudio/files/pulseaudio-12.2-exit-time-session.patch
deleted file mode 100644
index 045ab5567d8..00000000000
--- a/media-sound/pulseaudio/files/pulseaudio-12.2-exit-time-session.patch
+++ /dev/null
@@ -1,181 +0,0 @@
-From de705a0eeaa27a8ac1abdc2625e639340323595a Mon Sep 17 00:00:00 2001
-From: Tanu Kaskinen <tanuk@iki.fi>
-Date: Tue, 6 Mar 2018 15:09:06 +0200
-Subject: [PATCH 08/77] set exit_idle_time to 0 when we detect a session
-
-As the comments explain, this fixes relogin problems on some systems
-that remove our sockets on logout without terminating the daemon.
----
- man/pulse-daemon.conf.5.xml.in     | 15 ++++++++++++---
- man/pulseaudio.1.xml.in            | 17 +++++++++++++++--
- src/modules/module-console-kit.c   | 13 +++++++++++++
- src/modules/module-systemd-login.c | 14 ++++++++++++++
- src/modules/x11/module-x11-xsmp.c  | 13 +++++++++++++
- src/pulsecore/core.c               | 10 ++++++++++
- src/pulsecore/core.h               |  2 ++
- 7 files changed, 79 insertions(+), 5 deletions(-)
-
-diff --git a/man/pulse-daemon.conf.5.xml.in b/man/pulse-daemon.conf.5.xml.in
-index f0550f3b..f49fa9b0 100644
---- a/man/pulse-daemon.conf.5.xml.in
-+++ b/man/pulse-daemon.conf.5.xml.in
-@@ -292,9 +292,18 @@ License along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
-     <option>
-       <p><opt>exit-idle-time=</opt> Terminate the daemon after the
-       last client quit and this time in seconds passed. Use a negative value to
--      disable this feature. Defaults to 20. The
--      <opt>--exit-idle-time</opt> command line option takes
--      precedence.</p>
-+      disable this feature. Defaults to 20. The <opt>--exit-idle-time</opt>
-+      command line option takes precedence.</p>
-+
-+      <p>When PulseAudio runs in the per-user mode and detects a login
-+      session, then any positive value will be reset to 0 so that PulseAudio
-+      will terminate immediately on logout. A positive value therefore has
-+      effect only in environments where there's no support for login session
-+      tracking. A negative value can still be used to disable any automatic
-+      exit.</p>
-+
-+      <p>When PulseAudio runs in the system mode, automatic exit is always
-+      disabled, so this option does nothing.</p>
-     </option>
- 
-     <option>
-diff --git a/man/pulseaudio.1.xml.in b/man/pulseaudio.1.xml.in
-index f732b8ae..824eddb4 100644
---- a/man/pulseaudio.1.xml.in
-+++ b/man/pulseaudio.1.xml.in
-@@ -189,8 +189,21 @@ License along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
-     <option>
-       <p><opt>--exit-idle-time</opt><arg>=SECS</arg></p>
- 
--      <optdesc><p>Terminate the daemon when idle and the specified
--      number of seconds passed.</p></optdesc>
-+      <optdesc>
-+        <p>Terminate the daemon after the last client quit and this time in
-+        seconds passed. Use a negative value to disable this feature. Defaults
-+        to 20.</p>
-+
-+        <p>When PulseAudio runs in the per-user mode and detects a login
-+        session, then any positive value will be reset to 0 so that PulseAudio
-+        will terminate immediately on logout. A positive value therefore has
-+        effect only in environments where there's no support for login session
-+        tracking. A negative value can still be used to disable any automatic
-+        exit.</p>
-+
-+        <p>When PulseAudio runs in the system mode, automatic exit is always
-+        disabled, so this option does nothing.</p>
-+      </optdesc>
-     </option>
- 
-     <option>
-diff --git a/src/modules/module-console-kit.c b/src/modules/module-console-kit.c
-index c7938849..c8fe2ed2 100644
---- a/src/modules/module-console-kit.c
-+++ b/src/modules/module-console-kit.c
-@@ -118,6 +118,19 @@ static void add_session(struct userdata *u, const char *id) {
- 
-     pa_log_debug("Added new session %s", id);
- 
-+    /* Positive exit_idle_time is only useful when we have no session tracking
-+     * capability, so we can set it to 0 now that we have detected a session.
-+     * The benefit of setting exit_idle_time to 0 is that pulseaudio will exit
-+     * immediately when the session ends. That in turn is useful, because some
-+     * systems (those that use pam_systemd but don't use systemd for managing
-+     * pulseaudio) clean $XDG_RUNTIME_DIR on logout, but fail to terminate all
-+     * services that depend on the files in $XDG_RUNTIME_DIR. The directory
-+     * contains our sockets, and if the sockets are removed without terminating
-+     * pulseaudio, a quick relogin will likely cause trouble, because a new
-+     * instance will be spawned while the old instance is still running. */
-+    if (u->core->exit_idle_time > 0)
-+        pa_core_set_exit_idle_time(u->core, 0);
-+
- fail:
- 
-     if (m)
-diff --git a/src/modules/module-systemd-login.c b/src/modules/module-systemd-login.c
-index 87981592..51401575 100644
---- a/src/modules/module-systemd-login.c
-+++ b/src/modules/module-systemd-login.c
-@@ -84,6 +84,20 @@ static int add_session(struct userdata *u, const char *id) {
-     pa_hashmap_put(u->sessions, session->id, session);
- 
-     pa_log_debug("Added new session %s", id);
-+
-+    /* Positive exit_idle_time is only useful when we have no session tracking
-+     * capability, so we can set it to 0 now that we have detected a session.
-+     * The benefit of setting exit_idle_time to 0 is that pulseaudio will exit
-+     * immediately when the session ends. That in turn is useful, because some
-+     * systems (those that use pam_systemd but don't use systemd for managing
-+     * pulseaudio) clean $XDG_RUNTIME_DIR on logout, but fail to terminate all
-+     * services that depend on the files in $XDG_RUNTIME_DIR. The directory
-+     * contains our sockets, and if the sockets are removed without terminating
-+     * pulseaudio, a quick relogin will likely cause trouble, because a new
-+     * instance will be spawned while the old instance is still running. */
-+    if (u->core->exit_idle_time > 0)
-+        pa_core_set_exit_idle_time(u->core, 0);
-+
-     return 0;
- }
- 
-diff --git a/src/modules/x11/module-x11-xsmp.c b/src/modules/x11/module-x11-xsmp.c
-index 0238e516..6f801237 100644
---- a/src/modules/x11/module-x11-xsmp.c
-+++ b/src/modules/x11/module-x11-xsmp.c
-@@ -206,6 +206,19 @@ int pa__init(pa_module*m) {
-     if (!u->client)
-         goto fail;
- 
-+    /* Positive exit_idle_time is only useful when we have no session tracking
-+     * capability, so we can set it to 0 now that we have detected a session.
-+     * The benefit of setting exit_idle_time to 0 is that pulseaudio will exit
-+     * immediately when the session ends. That in turn is useful, because some
-+     * systems (those that use pam_systemd but don't use systemd for managing
-+     * pulseaudio) clean $XDG_RUNTIME_DIR on logout, but fail to terminate all
-+     * services that depend on the files in $XDG_RUNTIME_DIR. The directory
-+     * contains our sockets, and if the sockets are removed without terminating
-+     * pulseaudio, a quick relogin will likely cause trouble, because a new
-+     * instance will be spawned while the old instance is still running. */
-+    if (u->core->exit_idle_time > 0)
-+        pa_core_set_exit_idle_time(u->core, 0);
-+
-     pa_modargs_free(ma);
- 
-     return 0;
-diff --git a/src/pulsecore/core.c b/src/pulsecore/core.c
-index 79abbc04..da42a13e 100644
---- a/src/pulsecore/core.c
-+++ b/src/pulsecore/core.c
-@@ -426,6 +426,16 @@ void pa_core_update_default_source(pa_core *core) {
-     pa_hook_fire(&core->hooks[PA_CORE_HOOK_DEFAULT_SOURCE_CHANGED], core->default_source);
- }
- 
-+void pa_core_set_exit_idle_time(pa_core *core, int time) {
-+    pa_assert(core);
-+
-+    if (time == core->exit_idle_time)
-+        return;
-+
-+    pa_log_info("exit_idle_time: %i -> %i", core->exit_idle_time, time);
-+    core->exit_idle_time = time;
-+}
-+
- static void exit_callback(pa_mainloop_api *m, pa_time_event *e, const struct timeval *t, void *userdata) {
-     pa_core *c = userdata;
-     pa_assert(c->exit_event == e);
-diff --git a/src/pulsecore/core.h b/src/pulsecore/core.h
-index 213964ce..38622f61 100644
---- a/src/pulsecore/core.h
-+++ b/src/pulsecore/core.h
-@@ -258,6 +258,8 @@ void pa_core_set_configured_default_source(pa_core *core, const char *source);
- void pa_core_update_default_sink(pa_core *core);
- void pa_core_update_default_source(pa_core *core);
- 
-+void pa_core_set_exit_idle_time(pa_core *core, int time);
-+
- /* Check whether no one is connected to this core */
- void pa_core_check_idle(pa_core *c);
- 
--- 
-2.17.1
-

diff --git a/media-sound/pulseaudio/pulseaudio-12.2-r1.ebuild b/media-sound/pulseaudio/pulseaudio-12.2-r1.ebuild
deleted file mode 100644
index 10ddfaa15a6..00000000000
--- a/media-sound/pulseaudio/pulseaudio-12.2-r1.ebuild
+++ /dev/null
@@ -1,361 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit bash-completion-r1 flag-o-matic gnome2-utils linux-info systemd user udev multilib-minimal
-
-DESCRIPTION="A networked sound server with an advanced plugin system"
-HOMEPAGE="https://www.freedesktop.org/wiki/Software/PulseAudio/"
-SRC_URI="https://freedesktop.org/software/pulseaudio/releases/${P}.tar.xz"
-
-# libpulse-simple and libpulse link to libpulse-core; this is daemon's
-# library and can link to gdbm and other GPL-only libraries. In this
-# cases, we have a fully GPL-2 package. Leaving the rest of the
-# GPL-forcing USE flags for those who use them.
-LICENSE="!gdbm? ( LGPL-2.1 ) gdbm? ( GPL-2 )"
-
-SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 ~hppa ia64 ppc ppc64 ~sh ~sparc x86 ~amd64-linux ~x86-linux"
-
-# +alsa-plugin as discussed in bug #519530
-IUSE="+alsa +alsa-plugin +asyncns bluetooth +caps dbus doc equalizer elogind gconf
-+gdbm +glib gtk ipv6 jack libsamplerate libressl lirc native-headset neon
-ofono-headset +orc oss qt5 realtime selinux sox ssl systemd system-wide tcpd test
-+udev +webrtc-aec +X zeroconf"
-
-RESTRICT="!test? ( test )"
-# See "*** BLUEZ support not found (requires D-Bus)" in configure.ac
-REQUIRED_USE="
-	?? ( elogind systemd )
-	bluetooth? ( dbus )
-	equalizer? ( dbus )
-	ofono-headset? ( bluetooth )
-	native-headset? ( bluetooth )
-	realtime? ( dbus )
-	udev? ( || ( alsa oss ) )
-"
-
-# libpcre needed in some cases, bug #472228
-CDEPEND="
-	|| (
-		elibc_glibc? ( virtual/libc )
-		elibc_uclibc? ( virtual/libc )
-		dev-libs/libpcre
-	)
-	>=media-libs/libsndfile-1.0.20[${MULTILIB_USEDEP}]
-	X? (
-		>=x11-libs/libX11-1.4.0[${MULTILIB_USEDEP}]
-		>=x11-libs/libxcb-1.6[${MULTILIB_USEDEP}]
-		x11-libs/libSM[${MULTILIB_USEDEP}]
-		x11-libs/libICE[${MULTILIB_USEDEP}]
-		x11-libs/libXtst[${MULTILIB_USEDEP}]
-	)
-	caps? ( >=sys-libs/libcap-2.22-r2[${MULTILIB_USEDEP}] )
-	libsamplerate? ( >=media-libs/libsamplerate-0.1.1-r1 )
-	alsa? ( >=media-libs/alsa-lib-1.0.19 )
-	glib? ( >=dev-libs/glib-2.26.0:2[${MULTILIB_USEDEP}] )
-	zeroconf? ( >=net-dns/avahi-0.6.12[dbus] )
-	jack? ( virtual/jack )
-	tcpd? ( sys-apps/tcp-wrappers[${MULTILIB_USEDEP}] )
-	lirc? ( app-misc/lirc )
-	dbus? ( >=sys-apps/dbus-1.0.0[${MULTILIB_USEDEP}] )
-	gtk? ( x11-libs/gtk+:3 )
-	bluetooth? (
-		>=net-wireless/bluez-5
-		>=sys-apps/dbus-1.0.0
-		media-libs/sbc
-	)
-	asyncns? ( net-libs/libasyncns[${MULTILIB_USEDEP}] )
-	udev? ( >=virtual/udev-143[hwdb(+)] )
-	equalizer? ( sci-libs/fftw:3.0 )
-	ofono-headset? ( >=net-misc/ofono-1.13 )
-	orc? ( >=dev-lang/orc-0.4.15 )
-	sox? ( >=media-libs/soxr-0.1.1 )
-	ssl? (
-		!libressl? ( dev-libs/openssl:0= )
-		libressl? ( dev-libs/libressl:= )
-	)
-	media-libs/speexdsp
-	gdbm? ( sys-libs/gdbm:= )
-	webrtc-aec? ( >=media-libs/webrtc-audio-processing-0.2 )
-	elogind? ( sys-auth/elogind )
-	systemd? ( sys-apps/systemd:0=[${MULTILIB_USEDEP}] )
-	dev-libs/libltdl:0
-	selinux? ( sec-policy/selinux-pulseaudio )
-" # libltdl is a valid RDEPEND, libltdl.so is used for native abi in pulsecore and daemon
-
-RDEPEND="${CDEPEND}
-	realtime? ( sys-auth/rtkit )
-	gconf? ( >=gnome-base/gconf-3.2.6 )
-"
-
-DEPEND="${RDEPEND}
-	sys-devel/m4
-	doc? ( app-doc/doxygen )
-	test? ( >=dev-libs/check-0.9.10 )
-	X? (
-		x11-base/xorg-proto
-		>=x11-libs/libXtst-1.0.99.2[${MULTILIB_USEDEP}]
-	)
-	dev-libs/libatomic_ops
-	virtual/pkgconfig
-	system-wide? ( || ( dev-util/unifdef sys-freebsd/freebsd-ubin ) )
-	dev-util/intltool
-	>=sys-devel/gettext-0.18.1
-"
-# This is a PDEPEND to avoid a circular dep
-PDEPEND="
-	alsa? ( alsa-plugin? ( >=media-plugins/alsa-plugins-1.0.27-r1[pulseaudio,${MULTILIB_USEDEP}] ) )
-"
-
-# alsa-utils dep is for the alsasound init.d script (see bug #155707)
-# bluez dep is for the bluetooth init.d script
-# PyQt5 dep is for the qpaeq script
-RDEPEND="${RDEPEND}
-	equalizer? ( qt5? ( dev-python/PyQt5[dbus,widgets] ) )
-	system-wide? (
-		alsa? ( media-sound/alsa-utils )
-		bluetooth? ( >=net-wireless/bluez-5 )
-	)
-"
-
-PATCHES=(
-	"${FILESDIR}"/pulseaudio-11.1-disable-flat-volumes.patch # bug 627894
-)
-
-pkg_pretend() {
-	CONFIG_CHECK="~HIGH_RES_TIMERS"
-	WARNING_HIGH_RES_TIMERS="CONFIG_HIGH_RES_TIMERS:\tis not set (required for enabling timer-based scheduling in pulseaudio)\n"
-	check_extra_config
-
-	if linux_config_exists; then
-		local snd_hda_prealloc_size=$(linux_chkconfig_string SND_HDA_PREALLOC_SIZE)
-		if [ -n "${snd_hda_prealloc_size}" ] && [ "${snd_hda_prealloc_size}" -lt 2048 ]; then
-			ewarn "A preallocated buffer-size of 2048 (kB) or higher is recommended for the HD-audio driver!"
-			ewarn "CONFIG_SND_HDA_PREALLOC_SIZE=${snd_hda_prealloc_size}"
-		fi
-	fi
-}
-
-pkg_setup() {
-	linux-info_pkg_setup
-	gnome2_environment_reset #543364
-
-	enewgroup audio 18 # Just make sure it exists
-
-	if use system-wide; then
-		enewgroup pulse-access
-		enewgroup pulse
-		enewuser pulse -1 -1 /var/run/pulse pulse,audio
-	fi
-}
-
-src_prepare() {
-	default
-
-	# Skip test that cannot work with sandbox, bug #501846
-	sed -i -e '/lock-autospawn-test /d' src/Makefile.am || die
-	sed -i -e 's/lock-autospawn-test$(EXEEXT) //' src/Makefile.in || die
-}
-
-multilib_src_configure() {
-	local myconf=(
-		--disable-adrian-aec
-		--disable-bluez4
-		--disable-esound
-		--disable-gconf
-		--disable-solaris
-		--enable-largefile
-		--localstatedir="${EPREFIX}"/var
-		--with-systemduserunitdir=$(systemd_get_userunitdir)
-		--with-udev-rules-dir="${EPREFIX}/$(get_udevdir)"/rules.d
-		$(multilib_native_use_enable alsa)
-		$(multilib_native_use_enable bluetooth bluez5)
-		$(multilib_native_use_enable glib gsettings)
-		$(multilib_native_use_enable gtk gtk3)
-		$(multilib_native_use_enable jack)
-		$(multilib_native_use_enable libsamplerate samplerate)
-		$(multilib_native_use_enable lirc)
-		$(multilib_native_use_enable orc)
-		$(multilib_native_use_enable oss oss-output)
-		$(multilib_native_use_enable ssl openssl)
-		# tests involve random modules, so just do them for the native
-		$(multilib_native_use_enable test default-build-tests)
-		$(multilib_native_use_enable udev)
-		$(multilib_native_use_enable webrtc-aec)
-		$(multilib_native_use_enable zeroconf avahi)
-		$(multilib_native_use_with equalizer fftw)
-		$(multilib_native_use_with sox soxr)
-		$(multilib_native_usex gdbm '--with-database=gdbm' '--with-database=simple')
-		$(use_enable glib glib2)
-		$(use_enable asyncns)
-		$(use_enable neon neon-opt)
-		$(use_enable tcpd tcpwrap)
-		$(use_enable dbus)
-		$(use_enable X x11)
-		$(use_enable systemd systemd-daemon)
-		# systemd-login isn't necessary for non-native, but the rest of systemd are; not changing it at this point close to a meson port
-		$(use_enable systemd systemd-login)
-		$(use_enable systemd systemd-journal)
-		$(use_enable ipv6)
-		$(use_with caps)
-	)
-
-	if use elogind && multilib_is_native_abi; then
-		myconf+=(
-			--enable-systemd-login
-			SYSTEMDLOGIN_CFLAGS=`pkg-config --cflags "libelogind" 2>/dev/null`
-			SYSTEMDLOGIN_LIBS=`pkg-config --libs "libelogind" 2>/dev/null`
-		)
-	fi
-
-	if use bluetooth; then
-		myconf+=(
-			$(multilib_native_use_enable native-headset bluez5-native-headset)
-			$(multilib_native_use_enable ofono-headset bluez5-ofono-headset)
-		)
-	fi
-
-	if ! multilib_is_native_abi; then
-		myconf+=(
-			# hack around unnecessary checks
-			# (results don't matter, we're not building anything using it)
-			ac_cv_lib_ltdl_lt_dladvise_init=yes
-			LIBSPEEX_CFLAGS=' '
-			LIBSPEEX_LIBS=' '
-		)
-	else
-		# Make padsp work for non-native ABI, supposedly only possible with glibc; this is used by /usr/bin/padsp that comes from native build, thus we need this argument for native build
-		if use elibc_glibc ; then
-			myconf+=( --with-pulsedsp-location="${EPREFIX}"'/usr/\\$$LIB/pulseaudio' )
-		fi
-	fi
-
-	ECONF_SOURCE=${S} \
-	econf "${myconf[@]}"
-}
-
-multilib_src_compile() {
-	if multilib_is_native_abi; then
-		emake
-		use doc && emake doxygen
-	else
-		local targets=( libpulse.la libpulsedsp.la libpulse-simple.la )
-		use glib && targets+=( libpulse-mainloop-glib.la )
-		emake -C src ${targets[*]}
-	fi
-}
-
-multilib_src_test() {
-	# We avoid running the toplevel check target because that will run
-	# po/'s tests too, and they are broken. Officially, it should work
-	# with intltool 0.41, but that doesn't look like a stable release.
-	if multilib_is_native_abi; then
-		emake -C src check
-	fi
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		emake -j1 DESTDIR="${D}" bashcompletiondir="$(get_bashcompdir)" install
-		if use doc ; then
-			docinto html
-			dodoc -r doxygen/html/
-		fi
-	else
-		local targets=( libpulse.la libpulse-simple.la )
-		use glib && targets+=( libpulse-mainloop-glib.la )
-		emake DESTDIR="${D}" install-pkgconfigDATA
-		emake DESTDIR="${D}" -C src \
-			install-libLTLIBRARIES \
-			install-padsplibLTLIBRARIES \
-			lib_LTLIBRARIES="${targets[*]}" \
-			install-pulseincludeHEADERS
-	fi
-}
-
-multilib_src_install_all() {
-	if use system-wide; then
-		newconfd "${FILESDIR}/pulseaudio.conf.d" pulseaudio
-
-		use_define() {
-			local define=${2:-$(echo $1 | tr '[:lower:]' '[:upper:]')}
-
-			use "$1" && echo "-D$define" || echo "-U$define"
-		}
-
-		unifdef $(use_define zeroconf AVAHI) \
-			$(use_define alsa) \
-			$(use_define bluetooth) \
-			$(use_define udev) \
-			"${FILESDIR}/pulseaudio.init.d-5" \
-			> "${T}/pulseaudio"
-
-		doinitd "${T}/pulseaudio"
-
-		systemd_dounit "${FILESDIR}/${PN}.service"
-
-		# We need /var/run/pulse, bug #442852
-		systemd_newtmpfilesd "${FILESDIR}/${PN}.tmpfiles" "${PN}.conf"
-	else
-		# Prevent warnings when system-wide is not used, bug #447694
-		if use dbus ; then
-			rm "${ED%/}"/etc/dbus-1/system.d/pulseaudio-system.conf || die
-		fi
-	fi
-
-	if use zeroconf ; then
-		sed -e '/module-zeroconf-publish/s:^#::' \
-			-i "${ED%/}/etc/pulse/default.pa" || die
-	fi
-
-	dodoc NEWS README todo
-
-	# Create the state directory
-	use prefix || diropts -o pulse -g pulse -m0755
-
-	find "${ED}" \( -name '*.a' -o -name '*.la' \) -delete || die
-}
-
-pkg_postinst() {
-	gnome2_schemas_update
-	if use system-wide; then
-		elog "You have enabled the 'system-wide' USE flag for pulseaudio."
-		elog "This mode should only be used on headless servers, embedded systems,"
-		elog "or thin clients. It will usually require manual configuration, and is"
-		elog "incompatible with many expected pulseaudio features."
-		elog "On normal desktop systems, system-wide mode is STRONGLY DISCOURAGED."
-		elog "For more information, see"
-		elog "    https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/WhatIsWrongWithSystemWide/"
-		elog "    https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/SystemWide/"
-		elog "    https://wiki.gentoo.org/wiki/PulseAudio#Headless_server"
-	fi
-
-	if use equalizer && ! use qt5; then
-		elog "You've enabled the 'equalizer' USE-flag but not the 'qt5' USE-flag."
-		elog "This will build the equalizer module, but the 'qpaeq' tool"
-		elog "which is required to set equalizer levels will not work."
-	fi
-
-	if use equalizer && use qt5; then
-		elog "You will need to load some extra modules to make qpaeq work."
-		elog "You can do that by adding the following two lines in"
-		elog "/etc/pulse/default.pa and restarting pulseaudio:"
-		elog "load-module module-equalizer-sink"
-		elog "load-module module-dbus-protocol"
-	fi
-
-	if use native-headset && use ofono-headset; then
-		elog "You have enabled both native and ofono headset profiles. The runtime decision"
-		elog "which to use is done via the 'headset' argument of module-bluetooth-discover."
-	fi
-
-	if use libsamplerate; then
-		elog "The libsamplerate based resamplers are now deprecated, because they offer no"
-		elog "particular advantage over speex. Upstream suggests disabling them."
-	fi
-}
-
-pkg_postrm() {
-	gnome2_schemas_update
-}


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-sound/pulseaudio/files/, media-sound/pulseaudio/
@ 2021-06-21 11:10 Thomas Deutschmann
  0 siblings, 0 replies; 4+ messages in thread
From: Thomas Deutschmann @ 2021-06-21 11:10 UTC (permalink / raw
  To: gentoo-commits

commit:     7e57bf3a902a03e850534c6f3ce090ce8ed5c482
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Mon Jun 21 11:08:38 2021 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Mon Jun 21 11:08:46 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7e57bf3a

media-sound/pulseaudio: minor fixes

- Update GIO build patch to what got merged.

- Add bluez build batch.

Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>

 ...dio-14.99.2-require-GIO-for-RTP-GStreamer.patch | 21 ++++-
 ...lseaudio-14.99.2-require-bluez-dependency.patch | 89 ++++++++++++++++++++++
 .../pulseaudio/pulseaudio-14.99.2_pre.ebuild       |  7 +-
 3 files changed, 112 insertions(+), 5 deletions(-)

diff --git a/media-sound/pulseaudio/files/pulseaudio-14.99.2-require-GIO-for-RTP-GStreamer.patch b/media-sound/pulseaudio/files/pulseaudio-14.99.2-require-GIO-for-RTP-GStreamer.patch
index dfce2488156..a6554178da6 100644
--- a/media-sound/pulseaudio/files/pulseaudio-14.99.2-require-GIO-for-RTP-GStreamer.patch
+++ b/media-sound/pulseaudio/files/pulseaudio-14.99.2-require-GIO-for-RTP-GStreamer.patch
@@ -1,11 +1,13 @@
-From fe25df45d5742f20a225e9d9cd790156a7f05943 Mon Sep 17 00:00:00 2001
+From 58052e0e04ee1b5fdb1027ebc19717e7766825ec Mon Sep 17 00:00:00 2001
 From: "Igor V. Kovalenko" <igor.v.kovalenko@gmail.com>
 Date: Mon, 21 Jun 2021 02:32:41 +0300
 Subject: [PATCH] build-sys: meson: require GIO dependency for RTP-GStreamer
 
+Part-of: <https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/merge_requests/584>
 ---
- meson.build | 6 ++++--
- 1 file changed, 4 insertions(+), 2 deletions(-)
+ meson.build             | 6 ++++--
+ src/modules/meson.build | 2 +-
+ 2 files changed, 5 insertions(+), 3 deletions(-)
 
 diff --git a/meson.build b/meson.build
 index fdd8bf655..61660b981 100644
@@ -31,6 +33,19 @@ index fdd8bf655..61660b981 100644
    have_gstreamer = true
  endif
  
+diff --git a/src/modules/meson.build b/src/modules/meson.build
+index 9c498a4e1..e7db573b6 100644
+--- a/src/modules/meson.build
++++ b/src/modules/meson.build
+@@ -161,7 +161,7 @@ if dbus_dep.found() and fftw_dep.found()
+   ]
+ endif
+ 
+-if gio_dep.found()
++if get_option('gsettings').enabled() and gio_dep.found()
+   subdir('gsettings')
+   all_modules += [
+     [ 'module-gsettings',
 -- 
 GitLab
 

diff --git a/media-sound/pulseaudio/files/pulseaudio-14.99.2-require-bluez-dependency.patch b/media-sound/pulseaudio/files/pulseaudio-14.99.2-require-bluez-dependency.patch
new file mode 100644
index 00000000000..5983a05ea4a
--- /dev/null
+++ b/media-sound/pulseaudio/files/pulseaudio-14.99.2-require-bluez-dependency.patch
@@ -0,0 +1,89 @@
+From c817dfb5a438055c98449a4a2f34eb4ec341ccde Mon Sep 17 00:00:00 2001
+From: "Igor V. Kovalenko" <igor.v.kovalenko@gmail.com>
+Date: Fri, 18 Jun 2021 20:48:12 +0300
+Subject: [PATCH] build-sys: meson: Require bluez dependency if bluez5 feature
+ is enabled
+
+Build breaks if bluez5 and bluez5-native-headset are both enabled
+but bluez headers are not available.
+
+Fix this by changing `bluez5` to Meson feature requiring `bluez` dependency.
+
+Part-of: <https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/merge_requests/583>
+---
+ meson.build                       | 10 ++++++----
+ meson_options.txt                 |  2 +-
+ src/modules/bluetooth/meson.build |  2 +-
+ src/modules/meson.build           |  2 +-
+ 4 files changed, 9 insertions(+), 7 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index 61660b981..92ceef706 100644
+--- a/meson.build
++++ b/meson.build
+@@ -706,7 +706,9 @@ endif
+ 
+ sbc_dep = dependency('sbc', version : '>= 1.0', required : false)
+ 
+-if get_option('bluez5')
++bluez_dep = dependency('bluez', required : get_option('bluez5'))
++
++if bluez_dep.found()
+   assert(dbus_dep.found(), 'BlueZ requires D-Bus support')
+   assert(sbc_dep.found(), 'BlueZ requires SBC support')
+   cdata.set('HAVE_SBC', 1)
+@@ -914,9 +916,9 @@ summary = [
+   'Enable Async DNS:              @0@'.format(asyncns_dep.found()),
+   'Enable LIRC:                   @0@'.format(lirc_dep.found()),
+   'Enable D-Bus:                  @0@'.format(dbus_dep.found()),
+-  '  Enable BlueZ 5:              @0@'.format(get_option('bluez5')),
+-  '    Enable native headsets:    @0@'.format(get_option('bluez5-native-headset')),
+-  '    Enable  ofono headsets:    @0@'.format(get_option('bluez5-ofono-headset')),
++  '  Enable BlueZ 5:              @0@'.format(cdata.has('HAVE_BLUEZ_5')),
++  '    Enable native headsets:    @0@'.format(cdata.has('HAVE_BLUEZ_5_NATIVE_HEADSET')),
++  '    Enable  ofono headsets:    @0@'.format(cdata.has('HAVE_BLUEZ_5_OFONO_HEADSET')),
+   '    Enable GStreamer based codecs: @0@'.format(have_bluez5_gstreamer),
+   'Enable udev:                   @0@'.format(udev_dep.found()),
+   '  Enable HAL->udev compat:     @0@'.format(get_option('hal-compat')),
+diff --git a/meson_options.txt b/meson_options.txt
+index cdb3c6787..bb41a42a7 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -85,7 +85,7 @@ option('avahi',
+        type : 'feature', value : 'auto',
+        description : 'Optional Avahi support')
+ option('bluez5',
+-       type : 'boolean', value : 'true',
++       type : 'feature', value : 'auto',
+        description : 'Optional BlueZ 5 support')
+ option('bluez5-gstreamer',
+        type : 'feature', value: 'auto',
+diff --git a/src/modules/bluetooth/meson.build b/src/modules/bluetooth/meson.build
+index 99263bb5a..ca77ee6aa 100644
+--- a/src/modules/bluetooth/meson.build
++++ b/src/modules/bluetooth/meson.build
+@@ -35,7 +35,7 @@ libbluez5_util = shared_library('bluez5-util',
+   c_args : [pa_c_args, server_c_args],
+   link_args : [nodelete_link_args],
+   include_directories : [configinc, topinc],
+-  dependencies : [libpulse_dep, libpulsecommon_dep, libpulsecore_dep, dbus_dep, sbc_dep, libintl_dep, bluez5_gst_dep, bluez5_gstapp_dep],
++  dependencies : [libpulse_dep, libpulsecommon_dep, libpulsecore_dep, bluez_dep, dbus_dep, sbc_dep, libintl_dep, bluez5_gst_dep, bluez5_gstapp_dep],
+   install : true,
+   install_rpath : privlibdir,
+   install_dir : modlibexecdir,
+diff --git a/src/modules/meson.build b/src/modules/meson.build
+index e7db573b6..be72c3b9b 100644
+--- a/src/modules/meson.build
++++ b/src/modules/meson.build
+@@ -118,7 +118,7 @@ if avahi_dep.found()
+   ]
+ endif
+ 
+-if get_option('bluez5')
++if cdata.has('HAVE_BLUEZ_5')
+   subdir('bluetooth')
+   all_modules += [
+     [ 'module-bluetooth-discover', 'bluetooth/module-bluetooth-discover.c' ],
+-- 
+GitLab
+

diff --git a/media-sound/pulseaudio/pulseaudio-14.99.2_pre.ebuild b/media-sound/pulseaudio/pulseaudio-14.99.2_pre.ebuild
index 203ebb43b87..5e4d232b4c4 100644
--- a/media-sound/pulseaudio/pulseaudio-14.99.2_pre.ebuild
+++ b/media-sound/pulseaudio/pulseaudio-14.99.2_pre.ebuild
@@ -164,7 +164,10 @@ DOCS=( NEWS README )
 
 S="${WORKDIR}/${MY_P}"
 
-PATCHES=( "${FILESDIR}"/${MY_P}-require-GIO-for-RTP-GStreamer.patch )
+PATCHES=(
+	"${FILESDIR}"/${MY_P}-require-GIO-for-RTP-GStreamer.patch
+	"${FILESDIR}"/${MY_P}-require-bluez-dependency.patch
+)
 
 src_prepare() {
 	default
@@ -181,7 +184,7 @@ multilib_src_configure() {
 		-Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d"
 		-Dbashcompletiondir="$(get_bashcompdir)" # Alternatively DEPEND on app-shells/bash-completion for pkg-config to provide the value
 		$(meson_native_use_feature alsa)
-		$(meson_native_use_bool bluetooth bluez5)
+		$(meson_native_use_feature bluetooth bluez5)
 		$(meson_native_use_bool daemon)
 		$(meson_native_use_bool doc doxygen)
 		$(meson_native_use_bool native-headset bluez5-native-headset)


^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2021-06-21 11:10 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-06-02 17:09 [gentoo-commits] repo/gentoo:master commit in: media-sound/pulseaudio/files/, media-sound/pulseaudio/ Andreas Sturmlechner
  -- strict thread matches above, loose matches on Subject: below --
2021-06-21 11:10 Thomas Deutschmann
2020-01-11 19:24 Mart Raudsepp
2018-06-02 17:09 Andreas Sturmlechner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox