Gentoo Archives: gentoo-commits

From: Sam James <sam@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-sound/pulseaudio/, media-sound/pulseaudio/files/
Date: Sun, 31 Jul 2022 03:40:32
Message-Id: 1659238773.c185146b40b6665533f7235a5d88dee258dc05fd.sam@gentoo
1 commit: c185146b40b6665533f7235a5d88dee258dc05fd
2 Author: Sam James <sam <AT> gentoo <DOT> org>
3 AuthorDate: Sun Jul 31 03:36:19 2022 +0000
4 Commit: Sam James <sam <AT> gentoo <DOT> org>
5 CommitDate: Sun Jul 31 03:39:33 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c185146b
7
8 media-sound/pulseaudio: drop 13.0-r1, 15.0-r2, 15.0-r3
9
10 This should make things a bit less confusing when
11 looking at packages.gentoo.org, 'equery u', etc
12 wrt libpulse split.
13
14 media-sound/pulseaudio is now just a meta.
15
16 Signed-off-by: Sam James <sam <AT> gentoo.org>
17
18 media-sound/pulseaudio/Manifest | 2 -
19 .../pulseaudio-11.1-disable-flat-volumes.patch | 48 ---
20 .../pulseaudio/files/pulseaudio-13.0-clang.patch | 25 --
21 ...dio-14.99.2-require-GIO-for-RTP-GStreamer.patch | 51 ---
22 ...lseaudio-14.99.2-require-bluez-dependency.patch | 89 -----
23 ...pulseaudio-15.0-xice-xsm-xtst-daemon-only.patch | 25 --
24 media-sound/pulseaudio/files/pulseaudio.conf.d | 6 -
25 media-sound/pulseaudio/files/pulseaudio.init.d-5 | 80 -----
26 media-sound/pulseaudio/files/pulseaudio.service | 10 -
27 media-sound/pulseaudio/files/pulseaudio.tmpfiles | 1 -
28 media-sound/pulseaudio/metadata.xml | 69 ----
29 media-sound/pulseaudio/pulseaudio-13.0-r1.ebuild | 355 -------------------
30 media-sound/pulseaudio/pulseaudio-15.0-r2.ebuild | 375 --------------------
31 media-sound/pulseaudio/pulseaudio-15.0-r3.ebuild | 382 ---------------------
32 14 files changed, 1518 deletions(-)
33
34 diff --git a/media-sound/pulseaudio/Manifest b/media-sound/pulseaudio/Manifest
35 deleted file mode 100644
36 index 39535c6a45ad..000000000000
37 --- a/media-sound/pulseaudio/Manifest
38 +++ /dev/null
39 @@ -1,2 +0,0 @@
40 -DIST pulseaudio-13.0.tar.xz 1901768 BLAKE2B 651a80f54525f196bcb036d893fedd4d9f34e10459918281397a45f498c31bff0d0c836f4e64aab5ac2612ffd5a0cab1a41ea710bbee5fd34dfc9ea1236deea9 SHA512 d445b8ccd43029a0ca0e456fc9291a79d3434d6496ead7eb329ab348d5249235e8bde6cf2be68765d8f761452dbe1486fb10c739e40b1e67ed75787bbd24ac0c
41 -DIST pulseaudio-15.0.tar.xz 1521760 BLAKE2B a6f7b74fdcfe7f2a993eafb9f465946915a24b6801d3077971b9377290d6c70b3f8640a800abd09d5901db96a20349f31b1beedd9da2249f69b591fb8392f489 SHA512 352ef20384c76c631c0faa73b08e2318902a433712e0c086a5ac7a0ae58873c8d4be8f35879bdec71a93b19ae8e2ba073cacac4d56215bcf58375a0cd9d88833
42
43 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
44 deleted file mode 100644
45 index 40b23ec05f2e..000000000000
46 --- a/media-sound/pulseaudio/files/pulseaudio-11.1-disable-flat-volumes.patch
47 +++ /dev/null
48 @@ -1,48 +0,0 @@
49 -diff -up a/man/pulse-daemon.conf.5.xml.in b/man/pulse-daemon.conf.5.xml.in
50 ---- a/man/pulse-daemon.conf.5.xml.in 2016-05-26 23:21:17.000000000 -0500
51 -+++ b/man/pulse-daemon.conf.5.xml.in 2016-05-31 10:01:55.679976730 -0500
52 -@@ -220,7 +220,7 @@ License along with PulseAudio; if not, s
53 - <p><opt>flat-volumes=</opt> Enable 'flat' volumes, i.e. where
54 - possible let the sink volume equal the maximum of the volumes of
55 - the inputs connected to it. Takes a boolean argument, defaults
56 -- to <opt>yes</opt>.</p>
57 -+ to <opt>no</opt>.</p>
58 - </option>
59 -
60 - </section>
61 -diff -up a/src/daemon/daemon-conf.c b/src/daemon/daemon-conf.c
62 ---- a/src/daemon/daemon-conf.c 2016-05-26 23:21:17.000000000 -0500
63 -+++ b/src/daemon/daemon-conf.c 2016-05-31 10:01:55.680976735 -0500
64 -@@ -68,7 +68,7 @@ static const pa_daemon_conf default_conf
65 - .realtime_priority = 5, /* Half of JACK's default rtprio */
66 - .disallow_module_loading = false,
67 - .disallow_exit = false,
68 -- .flat_volumes = true,
69 -+ .flat_volumes = false,
70 - .exit_idle_time = 20,
71 - .scache_idle_time = 20,
72 - .script_commands = NULL,
73 -diff -up a/src/daemon/daemon.conf.in b/src/daemon/daemon.conf.in
74 ---- a/src/daemon/daemon.conf.in 2016-05-31 10:01:55.680976735 -0500
75 -+++ b/src/daemon/daemon.conf.in 2016-05-31 10:02:28.048133267 -0500
76 -@@ -57,7 +57,7 @@ ifelse(@HAVE_DBUS@, 1, [dnl
77 - ; enable-lfe-remixing = no
78 - ; lfe-crossover-freq = 0
79 -
80 --; flat-volumes = yes
81 -+; flat-volumes = no
82 -
83 - ifelse(@HAVE_SYS_RESOURCE_H@, 1, [dnl
84 - ; rlimit-fsize = -1
85 -diff -up a/src/pulsecore/core.c b/src/pulsecore/core.c
86 ---- a/src/pulsecore/core.c 2016-05-26 23:21:17.000000000 -0500
87 -+++ b/src/pulsecore/core.c 2016-05-31 10:01:55.681976740 -0500
88 -@@ -135,7 +135,7 @@ pa_core* pa_core_new(pa_mainloop_api *m,
89 - c->exit_idle_time = -1;
90 - c->scache_idle_time = 20;
91 -
92 -- c->flat_volumes = true;
93 -+ c->flat_volumes = false;
94 - c->disallow_module_loading = false;
95 - c->disallow_exit = false;
96 - c->running_as_daemon = false;
97
98 diff --git a/media-sound/pulseaudio/files/pulseaudio-13.0-clang.patch b/media-sound/pulseaudio/files/pulseaudio-13.0-clang.patch
99 deleted file mode 100644
100 index d7b81de0313e..000000000000
101 --- a/media-sound/pulseaudio/files/pulseaudio-13.0-clang.patch
102 +++ /dev/null
103 @@ -1,25 +0,0 @@
104 -From e4450d8b586103ec1414e2d6245ff34a9096d97a Mon Sep 17 00:00:00 2001
105 -From: Peter Levine <plevine457@×××××.com>
106 -Date: Thu, 26 Sep 2019 07:24:40 +0000
107 -Subject: [PATCH] atomic: Explicitly cast void* to unsigned long
108 -
109 ----
110 - src/pulsecore/atomic.h | 2 +-
111 - 1 file changed, 1 insertion(+), 1 deletion(-)
112 -
113 -diff --git a/src/pulsecore/atomic.h b/src/pulsecore/atomic.h
114 -index a82ca83c5..e5c140109 100644
115 ---- a/src/pulsecore/atomic.h
116 -+++ b/src/pulsecore/atomic.h
117 -@@ -117,7 +117,7 @@ static inline void* pa_atomic_ptr_load(const pa_atomic_ptr_t *a) {
118 - }
119 -
120 - static inline void pa_atomic_ptr_store(pa_atomic_ptr_t *a, void* p) {
121 -- __atomic_store_n(&a->value, p, __ATOMIC_SEQ_CST);
122 -+ __atomic_store_n(&a->value, (unsigned long) p, __ATOMIC_SEQ_CST);
123 - }
124 -
125 - #else
126 ---
127 -GitLab
128 -
129
130 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
131 deleted file mode 100644
132 index a6554178da60..000000000000
133 --- a/media-sound/pulseaudio/files/pulseaudio-14.99.2-require-GIO-for-RTP-GStreamer.patch
134 +++ /dev/null
135 @@ -1,51 +0,0 @@
136 -From 58052e0e04ee1b5fdb1027ebc19717e7766825ec Mon Sep 17 00:00:00 2001
137 -From: "Igor V. Kovalenko" <igor.v.kovalenko@×××××.com>
138 -Date: Mon, 21 Jun 2021 02:32:41 +0300
139 -Subject: [PATCH] build-sys: meson: require GIO dependency for RTP-GStreamer
140 -
141 -Part-of: <https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/merge_requests/584>
142 ----
143 - meson.build | 6 ++++--
144 - src/modules/meson.build | 2 +-
145 - 2 files changed, 5 insertions(+), 3 deletions(-)
146 -
147 -diff --git a/meson.build b/meson.build
148 -index fdd8bf655..61660b981 100644
149 ---- a/meson.build
150 -+++ b/meson.build
151 -@@ -614,8 +614,9 @@ if dbus_dep.found()
152 - cdata.set('HAVE_DBUS', 1)
153 - endif
154 -
155 --gio_dep = dependency('gio-2.0', version : '>= 2.26.0', required : get_option('gsettings'))
156 --if gio_dep.found()
157 -+gio_dep = dependency('gio-2.0', version : '>= 2.26.0')
158 -+if get_option('gsettings').enabled()
159 -+ assert(gio_dep.found(), 'GSettings support needs glib I/O library (GIO)')
160 - cdata.set('HAVE_GSETTINGS', 1)
161 - endif
162 -
163 -@@ -760,6 +761,7 @@ gstrtp_dep = dependency('gstreamer-rtp-1.0', required : get_option('gstreamer'))
164 -
165 - have_gstreamer = false
166 - if gst_dep.found() and gstapp_dep.found() and gstrtp_dep.found()
167 -+ assert(gio_dep.found(), 'GStreamer-based RTP needs glib I/O library (GIO)')
168 - have_gstreamer = true
169 - endif
170 -
171 -diff --git a/src/modules/meson.build b/src/modules/meson.build
172 -index 9c498a4e1..e7db573b6 100644
173 ---- a/src/modules/meson.build
174 -+++ b/src/modules/meson.build
175 -@@ -161,7 +161,7 @@ if dbus_dep.found() and fftw_dep.found()
176 - ]
177 - endif
178 -
179 --if gio_dep.found()
180 -+if get_option('gsettings').enabled() and gio_dep.found()
181 - subdir('gsettings')
182 - all_modules += [
183 - [ 'module-gsettings',
184 ---
185 -GitLab
186 -
187
188 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
189 deleted file mode 100644
190 index 5983a05ea4a9..000000000000
191 --- a/media-sound/pulseaudio/files/pulseaudio-14.99.2-require-bluez-dependency.patch
192 +++ /dev/null
193 @@ -1,89 +0,0 @@
194 -From c817dfb5a438055c98449a4a2f34eb4ec341ccde Mon Sep 17 00:00:00 2001
195 -From: "Igor V. Kovalenko" <igor.v.kovalenko@×××××.com>
196 -Date: Fri, 18 Jun 2021 20:48:12 +0300
197 -Subject: [PATCH] build-sys: meson: Require bluez dependency if bluez5 feature
198 - is enabled
199 -
200 -Build breaks if bluez5 and bluez5-native-headset are both enabled
201 -but bluez headers are not available.
202 -
203 -Fix this by changing `bluez5` to Meson feature requiring `bluez` dependency.
204 -
205 -Part-of: <https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/merge_requests/583>
206 ----
207 - meson.build | 10 ++++++----
208 - meson_options.txt | 2 +-
209 - src/modules/bluetooth/meson.build | 2 +-
210 - src/modules/meson.build | 2 +-
211 - 4 files changed, 9 insertions(+), 7 deletions(-)
212 -
213 -diff --git a/meson.build b/meson.build
214 -index 61660b981..92ceef706 100644
215 ---- a/meson.build
216 -+++ b/meson.build
217 -@@ -706,7 +706,9 @@ endif
218 -
219 - sbc_dep = dependency('sbc', version : '>= 1.0', required : false)
220 -
221 --if get_option('bluez5')
222 -+bluez_dep = dependency('bluez', required : get_option('bluez5'))
223 -+
224 -+if bluez_dep.found()
225 - assert(dbus_dep.found(), 'BlueZ requires D-Bus support')
226 - assert(sbc_dep.found(), 'BlueZ requires SBC support')
227 - cdata.set('HAVE_SBC', 1)
228 -@@ -914,9 +916,9 @@ summary = [
229 - 'Enable Async DNS: @0@'.format(asyncns_dep.found()),
230 - 'Enable LIRC: @0@'.format(lirc_dep.found()),
231 - 'Enable D-Bus: @0@'.format(dbus_dep.found()),
232 -- ' Enable BlueZ 5: @0@'.format(get_option('bluez5')),
233 -- ' Enable native headsets: @0@'.format(get_option('bluez5-native-headset')),
234 -- ' Enable ofono headsets: @0@'.format(get_option('bluez5-ofono-headset')),
235 -+ ' Enable BlueZ 5: @0@'.format(cdata.has('HAVE_BLUEZ_5')),
236 -+ ' Enable native headsets: @0@'.format(cdata.has('HAVE_BLUEZ_5_NATIVE_HEADSET')),
237 -+ ' Enable ofono headsets: @0@'.format(cdata.has('HAVE_BLUEZ_5_OFONO_HEADSET')),
238 - ' Enable GStreamer based codecs: @0@'.format(have_bluez5_gstreamer),
239 - 'Enable udev: @0@'.format(udev_dep.found()),
240 - ' Enable HAL->udev compat: @0@'.format(get_option('hal-compat')),
241 -diff --git a/meson_options.txt b/meson_options.txt
242 -index cdb3c6787..bb41a42a7 100644
243 ---- a/meson_options.txt
244 -+++ b/meson_options.txt
245 -@@ -85,7 +85,7 @@ option('avahi',
246 - type : 'feature', value : 'auto',
247 - description : 'Optional Avahi support')
248 - option('bluez5',
249 -- type : 'boolean', value : 'true',
250 -+ type : 'feature', value : 'auto',
251 - description : 'Optional BlueZ 5 support')
252 - option('bluez5-gstreamer',
253 - type : 'feature', value: 'auto',
254 -diff --git a/src/modules/bluetooth/meson.build b/src/modules/bluetooth/meson.build
255 -index 99263bb5a..ca77ee6aa 100644
256 ---- a/src/modules/bluetooth/meson.build
257 -+++ b/src/modules/bluetooth/meson.build
258 -@@ -35,7 +35,7 @@ libbluez5_util = shared_library('bluez5-util',
259 - c_args : [pa_c_args, server_c_args],
260 - link_args : [nodelete_link_args],
261 - include_directories : [configinc, topinc],
262 -- dependencies : [libpulse_dep, libpulsecommon_dep, libpulsecore_dep, dbus_dep, sbc_dep, libintl_dep, bluez5_gst_dep, bluez5_gstapp_dep],
263 -+ dependencies : [libpulse_dep, libpulsecommon_dep, libpulsecore_dep, bluez_dep, dbus_dep, sbc_dep, libintl_dep, bluez5_gst_dep, bluez5_gstapp_dep],
264 - install : true,
265 - install_rpath : privlibdir,
266 - install_dir : modlibexecdir,
267 -diff --git a/src/modules/meson.build b/src/modules/meson.build
268 -index e7db573b6..be72c3b9b 100644
269 ---- a/src/modules/meson.build
270 -+++ b/src/modules/meson.build
271 -@@ -118,7 +118,7 @@ if avahi_dep.found()
272 - ]
273 - endif
274 -
275 --if get_option('bluez5')
276 -+if cdata.has('HAVE_BLUEZ_5')
277 - subdir('bluetooth')
278 - all_modules += [
279 - [ 'module-bluetooth-discover', 'bluetooth/module-bluetooth-discover.c' ],
280 ---
281 -GitLab
282 -
283
284 diff --git a/media-sound/pulseaudio/files/pulseaudio-15.0-xice-xsm-xtst-daemon-only.patch b/media-sound/pulseaudio/files/pulseaudio-15.0-xice-xsm-xtst-daemon-only.patch
285 deleted file mode 100644
286 index f3df62031d34..000000000000
287 --- a/media-sound/pulseaudio/files/pulseaudio-15.0-xice-xsm-xtst-daemon-only.patch
288 +++ /dev/null
289 @@ -1,25 +0,0 @@
290 -https://bugs.gentoo.org/806052
291 -
292 -commit 42af3ee08381faa5807fde68d4c8ec0d7ad5e9a5
293 -Author: Igor V. Kovalenko <igor.v.kovalenko@×××××.com>
294 -Date: Tue Aug 3 09:43:32 2021 +0300
295 -
296 - build-sys: meson: Require xice, xsm and xtst for daemon only
297 -
298 - Part-of: <https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/merge_requests/613>
299 -
300 ---- a/meson.build
301 -+++ b/meson.build
302 -@@ -681,9 +681,9 @@ endif
303 - x11_dep = dependency('x11-xcb', required : get_option('x11'))
304 - if x11_dep.found()
305 - xcb_dep = dependency('xcb', required : true, version : '>= 1.6')
306 -- ice_dep = dependency('ice', required : true)
307 -- sm_dep = dependency('sm', required : true)
308 -- xtst_dep = dependency('xtst', required : true)
309 -+ ice_dep = dependency('ice', required : get_option('daemon'))
310 -+ sm_dep = dependency('sm', required : get_option('daemon'))
311 -+ xtst_dep = dependency('xtst', required : get_option('daemon'))
312 - cdata.set('HAVE_X11', 1)
313 - if cc.has_function('XSetIOErrorExitHandler', dependencies: x11_dep)
314 - cdata.set('HAVE_XSETIOERROREXITHANDLER', 1)
315
316 diff --git a/media-sound/pulseaudio/files/pulseaudio.conf.d b/media-sound/pulseaudio/files/pulseaudio.conf.d
317 deleted file mode 100644
318 index 9e7245344a57..000000000000
319 --- a/media-sound/pulseaudio/files/pulseaudio.conf.d
320 +++ /dev/null
321 @@ -1,6 +0,0 @@
322 -# Config file for /etc/init.d/pulseaudio
323 -
324 -# For more see "pulseaudio -h".
325 -
326 -# Startup options
327 -PA_OPTS="--log-target=syslog --disallow-module-loading=1"
328
329 diff --git a/media-sound/pulseaudio/files/pulseaudio.init.d-5 b/media-sound/pulseaudio/files/pulseaudio.init.d-5
330 deleted file mode 100644
331 index d5415d6987d8..000000000000
332 --- a/media-sound/pulseaudio/files/pulseaudio.init.d-5
333 +++ /dev/null
334 @@ -1,80 +0,0 @@
335 -#!/sbin/openrc-run
336 -# Copyright 1999-2011 Gentoo Foundation
337 -# Distributed under the terms of the GNU General Public License v2
338 -
339 -depend() {
340 - need localmount
341 - use net
342 -
343 - local script="/etc/pulse/system.pa"
344 -
345 - for opt in ${PA_OPTS}; do
346 - case "$opt" in
347 - --file=*) script="${opt#*=}" ;;
348 - -F*) script="${opt#-F}" ;;
349 - esac
350 - done
351 -
352 - config "$script"
353 -
354 - local needs="$(get_options need)"
355 - if [ -n "${needs}" ]; then
356 - need ${needs}
357 - return
358 - fi
359 -
360 - if egrep -q '^[[:space:]]*load-module[[:space:]]+module-console-kit' "$script"; then
361 - needs="${needs} consolekit"
362 - fi
363 -
364 -#ifdef UDEV
365 - if egrep -q '^[[:space:]]*load-module[[:space:]]+module-udev-detect' "$script"; then
366 - needs="${needs} udev"
367 - fi
368 -#endif
369 -
370 -#ifdef AVAHI
371 - if egrep -q '^[[:space:]]*load-module[[:space:]]+module-zeroconf-publish' "$script"; then
372 - needs="${needs} avahi-daemon"
373 - fi
374 -#endif
375 -
376 -#ifdef BLUETOOTH
377 - if egrep -q '^[[:space:]]*load-module[[:space:]]+module-bt-proximity' "$script"; then
378 - needs="${needs} bluetooth"
379 - fi
380 -#endif
381 -
382 -#ifdef ALSA
383 - if egrep -q '^[[:space:]]*load-module[[:space:]]+module-alsa-(sink|source)' "$script" ||
384 - egrep -q '^[[:space:]]*load-module[[:space:]]+module-(udev-)?detect' "$script" ||
385 - egrep -q '^[[:space:]]*add-autoload-source[[:space:]]+(input|output)[[:space:]]+module-alsa-(sink|source)' "$script"; then
386 - needs="${needs} alsasound"
387 - fi
388 -#endif
389 -
390 - need "${needs}"
391 - save_options need "${needs}"
392 -}
393 -
394 -start() {
395 - if [ -z "${PULSEAUDIO_SHOULD_NOT_GO_SYSTEMWIDE}" ]; then
396 - eerror "Please don't use system wide PulseAudio unless you read the"
397 - eerror "documentation available at http://www.pulseaudio.org/wiki/WhatIsWrongWithSystemMode"
398 - eerror ""
399 - eerror "When you're done, please set the variable PULSEAUDIO_SHOULD_NOT_GO_SYSTEMWIDE in"
400 - eerror "/etc/conf.d/pulseaudio . Please remember that upstream does not support this mode"
401 - eerror "when used for standard desktop configurations."
402 - return 1
403 - fi
404 - ebegin "Starting pulseaudio"
405 - PA_ALL_OPTS="${PA_OPTS} --fail=1 --daemonize=1 --system"
406 - start-stop-daemon --start --exec /usr/bin/pulseaudio -- ${PA_ALL_OPTS}
407 - eend $?
408 -}
409 -
410 -stop() {
411 - ebegin "Stopping pulseaudio"
412 - start-stop-daemon --stop --quiet --exec /usr/bin/pulseaudio --pidfile /var/run/pulse/pid
413 - eend $?
414 -}
415
416 diff --git a/media-sound/pulseaudio/files/pulseaudio.service b/media-sound/pulseaudio/files/pulseaudio.service
417 deleted file mode 100644
418 index c5f0d5799929..000000000000
419 --- a/media-sound/pulseaudio/files/pulseaudio.service
420 +++ /dev/null
421 @@ -1,10 +0,0 @@
422 -[Unit]
423 -Description=System wide PulseAudio instance
424 -After=syslog.target network.target alsasound.service
425 -
426 -[Service]
427 -Restart=always
428 -ExecStart=/usr/bin/pulseaudio --system --log-target=syslog
429 -
430 -[Install]
431 -WantedBy=multi-user.target
432
433 diff --git a/media-sound/pulseaudio/files/pulseaudio.tmpfiles b/media-sound/pulseaudio/files/pulseaudio.tmpfiles
434 deleted file mode 100644
435 index 88374e35574b..000000000000
436 --- a/media-sound/pulseaudio/files/pulseaudio.tmpfiles
437 +++ /dev/null
438 @@ -1 +0,0 @@
439 -d /var/run/pulse 0755 pulse audio -
440
441 diff --git a/media-sound/pulseaudio/metadata.xml b/media-sound/pulseaudio/metadata.xml
442 index b2a077b71249..9810b94f531c 100644
443 --- a/media-sound/pulseaudio/metadata.xml
444 +++ b/media-sound/pulseaudio/metadata.xml
445 @@ -14,83 +14,14 @@
446 <name>Mart Raudsepp</name>
447 </maintainer>
448 <use>
449 - <flag name="X">
450 - Build the X11 publish module to export PulseAudio information
451 - through X11 protocol for clients to make use. Don't enable this
452 - flag if you want to use a system wide instance. If unsure, enable
453 - this flag.
454 - </flag>
455 - <flag name="alsa-plugin">
456 - Request installing <pkg>media-plugins/alsa-plugins</pkg> with
457 - PulseAudio plugin enabled. This ensures that clients supporting
458 - ALSA only will use PulseAudio.
459 - </flag>
460 <flag name="daemon">Build the pulseaudio binary (not-needed for pipewire-pulse)</flag>
461 - <flag name="elogind">Use <pkg>sys-auth/elogind</pkg> for giving each session a PA client</flag>
462 - <flag name="gconf">
463 - Ensure <pkg>gnome-base/gconf</pkg> is present for pulseaudio GConf
464 - to GSettings module automatic migration (keeping the user configuration)
465 - </flag>
466 - <flag name="oss">
467 - Enable OSS sink/source (output/input). Deprecated, upstream does
468 - not support this on systems where other sink/source systems are
469 - available (i.e.: Linux). The padsp wrapper is now always build
470 - if the system supports OSS at all.
471 - </flag>
472 <flag name="glib">
473 Add support to <pkg>dev-libs/glib</pkg>-based mainloop for the
474 libpulse client library, to allow using libpulse on glib-based
475 programs. Build the GSettings PA module.
476 </flag>
477 - <flag name="system-wide">
478 - Allow preparation and installation of the system-wide init
479 - script for PulseAudio. Since this support is only supported for
480 - embedded situations, do not enable without reading the upstream
481 - instructions at
482 - https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/WhatIsWrongWithSystemWide/ .
483 - </flag>
484 - <flag name="asyncns">Use libasyncns for asynchronous name resolution.</flag>
485 - <flag name="doc">Build the doxygen-described API documentation.</flag>
486 - <flag name="realtime">
487 - Makes PulseAudio use RealtimeKit (<pkg>sys-auth/rtkit</pkg>) to get
488 - real-time priority while running.
489 - </flag>
490 - <flag name="equalizer">
491 - Enable the equalizer module (requires <pkg>sci-libs/fftw</pkg>).
492 - </flag>
493 - <flag name="ssl">
494 - Use <pkg>dev-libs/openssl</pkg> to provide support for RAOP
495 - (AirPort) streaming.
496 - </flag>
497 - <flag name="gdbm">
498 - Use <pkg>sys-libs/gdbm</pkg> to store PulseAudio
499 - databases. Recommended for desktop usage. This flag causes the
500 - whole package to be licensed under GPL-2 or later.
501 - </flag>
502 - <flag name="webrtc-aec">
503 - Uses the webrtc.org AudioProcessing library for enhancing VoIP calls
504 - greatly in applications that support it by performing acoustic echo
505 - cancellation, analog gain control, noise suppression and other processing.
506 - </flag>
507 - <flag name="systemd">
508 - Build with <pkg>sys-apps/systemd</pkg> support to replace standalone
509 - ConsoleKit.
510 - </flag>
511 - <flag name="native-headset">
512 - Build with native HSP backend for bluez 5.
513 - </flag>
514 <flag name="ofono-headset">
515 Build with oFono HFP backend for bluez 5, requires <pkg>net-misc/ofono</pkg>.
516 </flag>
517 - <flag name="gstreamer">
518 - Build with support for gstreamer including ability to use bluetooth codecs.
519 - For bluetooth codecs see USE ldac and aptx.
520 - </flag>
521 - <flag name="aptx">
522 - aptX (HD) over Bluetooth (many Android compatible headphones), requires <pkg>media-plugins/gst-plugins-openaptx</pkg>.
523 - </flag>
524 - <flag name="ldac">
525 - LDAC over Bluetooth (primarily Sony headphones), requires <pkg>media-plugins/gst-plugins-ldac</pkg>.
526 - </flag>
527 </use>
528 </pkgmetadata>
529
530 diff --git a/media-sound/pulseaudio/pulseaudio-13.0-r1.ebuild b/media-sound/pulseaudio/pulseaudio-13.0-r1.ebuild
531 deleted file mode 100644
532 index 5c3f45966c18..000000000000
533 --- a/media-sound/pulseaudio/pulseaudio-13.0-r1.ebuild
534 +++ /dev/null
535 @@ -1,355 +0,0 @@
536 -# Copyright 1999-2022 Gentoo Authors
537 -# Distributed under the terms of the GNU General Public License v2
538 -
539 -EAPI=7
540 -inherit autotools bash-completion-r1 flag-o-matic gnome2-utils linux-info systemd toolchain-funcs udev multilib-minimal tmpfiles
541 -
542 -DESCRIPTION="A networked sound server with an advanced plugin system"
543 -HOMEPAGE="https://www.freedesktop.org/wiki/Software/PulseAudio/"
544 -SRC_URI="https://freedesktop.org/software/pulseaudio/releases/${P}.tar.xz"
545 -
546 -# libpulse-simple and libpulse link to libpulse-core; this is daemon's
547 -# library and can link to gdbm and other GPL-only libraries. In this
548 -# cases, we have a fully GPL-2 package. Leaving the rest of the
549 -# GPL-forcing USE flags for those who use them.
550 -LICENSE="!gdbm? ( LGPL-2.1 ) gdbm? ( GPL-2 )"
551 -
552 -SLOT="0"
553 -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 sparc x86 ~amd64-linux ~x86-linux"
554 -
555 -# +alsa-plugin as discussed in bug #519530
556 -IUSE="+alsa +alsa-plugin +asyncns bluetooth +caps dbus doc equalizer elogind gconf
557 -+gdbm +glib gtk ipv6 jack libsamplerate lirc native-headset cpu_flags_arm_neon
558 -ofono-headset +orc oss qt5 realtime selinux sox ssl systemd system-wide tcpd test
559 -+udev +webrtc-aec +X zeroconf"
560 -
561 -RESTRICT="!test? ( test )"
562 -# See "*** BLUEZ support not found (requires D-Bus)" in configure.ac
563 -REQUIRED_USE="
564 - ?? ( elogind systemd )
565 - bluetooth? ( dbus )
566 - equalizer? ( dbus )
567 - ofono-headset? ( bluetooth )
568 - native-headset? ( bluetooth )
569 - realtime? ( dbus )
570 - udev? ( || ( alsa oss ) )
571 -"
572 -
573 -# libpcre needed in some cases, bug #472228
574 -RDEPEND="
575 - || (
576 - elibc_glibc? ( virtual/libc )
577 - dev-libs/libpcre
578 - )
579 - >=media-libs/libsndfile-1.0.20[${MULTILIB_USEDEP}]
580 - X? (
581 - >=x11-libs/libX11-1.4.0[${MULTILIB_USEDEP}]
582 - >=x11-libs/libxcb-1.6[${MULTILIB_USEDEP}]
583 - x11-libs/libSM[${MULTILIB_USEDEP}]
584 - x11-libs/libICE[${MULTILIB_USEDEP}]
585 - x11-libs/libXtst[${MULTILIB_USEDEP}]
586 - )
587 - caps? ( >=sys-libs/libcap-2.22-r2[${MULTILIB_USEDEP}] )
588 - libsamplerate? ( >=media-libs/libsamplerate-0.1.1-r1 )
589 - alsa? ( >=media-libs/alsa-lib-1.0.19 )
590 - glib? ( >=dev-libs/glib-2.26.0:2[${MULTILIB_USEDEP}] )
591 - zeroconf? ( >=net-dns/avahi-0.6.12[dbus] )
592 - jack? ( virtual/jack )
593 - tcpd? ( sys-apps/tcp-wrappers[${MULTILIB_USEDEP}] )
594 - lirc? ( app-misc/lirc )
595 - dbus? ( >=sys-apps/dbus-1.0.0[${MULTILIB_USEDEP}] )
596 - gtk? ( x11-libs/gtk+:3 )
597 - bluetooth? (
598 - >=net-wireless/bluez-5
599 - >=sys-apps/dbus-1.0.0
600 - media-libs/sbc
601 - )
602 - asyncns? ( net-libs/libasyncns[${MULTILIB_USEDEP}] )
603 - udev? ( >=virtual/udev-143[hwdb(+)] )
604 - equalizer? ( sci-libs/fftw:3.0 )
605 - ofono-headset? ( >=net-misc/ofono-1.13 )
606 - orc? ( >=dev-lang/orc-0.4.15 )
607 - sox? ( >=media-libs/soxr-0.1.1 )
608 - ssl? ( dev-libs/openssl:0= )
609 - media-libs/speexdsp
610 - gdbm? ( sys-libs/gdbm:= )
611 - webrtc-aec? ( >=media-libs/webrtc-audio-processing-0.2:0 )
612 - elogind? ( sys-auth/elogind )
613 - systemd? ( sys-apps/systemd:0=[${MULTILIB_USEDEP}] )
614 - dev-libs/libltdl:0
615 - selinux? ( sec-policy/selinux-pulseaudio )
616 - realtime? ( sys-auth/rtkit )
617 - gconf? ( >=gnome-base/gconf-3.2.6 )
618 -" # libltdl is a valid RDEPEND, libltdl.so is used for native abi in pulsecore and daemon
619 -
620 -DEPEND="${RDEPEND}
621 - X? (
622 - x11-base/xorg-proto
623 - >=x11-libs/libXtst-1.0.99.2[${MULTILIB_USEDEP}]
624 - )
625 - dev-libs/libatomic_ops
626 -"
627 -# This is a PDEPEND to avoid a circular dep
628 -PDEPEND="
629 - alsa? ( alsa-plugin? ( >=media-plugins/alsa-plugins-1.0.27-r1[pulseaudio,${MULTILIB_USEDEP}] ) )
630 -"
631 -
632 -# alsa-utils dep is for the alsasound init.d script (see bug #155707)
633 -# bluez dep is for the bluetooth init.d script
634 -# PyQt5 dep is for the qpaeq script
635 -RDEPEND="${RDEPEND}
636 - equalizer? ( qt5? ( dev-python/PyQt5[dbus,widgets] ) )
637 - system-wide? (
638 - alsa? ( media-sound/alsa-utils )
639 - bluetooth? ( >=net-wireless/bluez-5 )
640 - acct-user/pulse
641 - acct-group/pulse-access
642 - )
643 - acct-group/audio
644 -"
645 -
646 -BDEPEND="
647 - doc? ( app-doc/doxygen )
648 - orc? ( >=dev-lang/orc-0.4.15 )
649 - system-wide? ( dev-util/unifdef )
650 - test? ( >=dev-libs/check-0.9.10 )
651 - sys-devel/gettext
652 - sys-devel/m4
653 - virtual/pkgconfig
654 -"
655 -
656 -PATCHES=(
657 - "${FILESDIR}"/pulseaudio-11.1-disable-flat-volumes.patch # bug 627894
658 - "${FILESDIR}"/${P}-clang.patch
659 -)
660 -
661 -pkg_pretend() {
662 - CONFIG_CHECK="~HIGH_RES_TIMERS"
663 - WARNING_HIGH_RES_TIMERS="CONFIG_HIGH_RES_TIMERS:\tis not set (required for enabling timer-based scheduling in pulseaudio)\n"
664 - check_extra_config
665 -
666 - if linux_config_exists; then
667 - local snd_hda_prealloc_size=$(linux_chkconfig_string SND_HDA_PREALLOC_SIZE)
668 - if [ -n "${snd_hda_prealloc_size}" ] && [ "${snd_hda_prealloc_size}" -lt 2048 ]; then
669 - ewarn "A preallocated buffer-size of 2048 (kB) or higher is recommended for the HD-audio driver!"
670 - ewarn "CONFIG_SND_HDA_PREALLOC_SIZE=${snd_hda_prealloc_size}"
671 - fi
672 - fi
673 -}
674 -
675 -pkg_setup() {
676 - linux-info_pkg_setup
677 - gnome2_environment_reset #543364
678 -}
679 -
680 -src_prepare() {
681 - default
682 -
683 - # Skip test that cannot work with sandbox, bug #501846
684 - sed -i -e '/lock-autospawn-test /d' src/Makefile.am || die
685 - sed -i -e 's/lock-autospawn-test$(EXEEXT) //' src/Makefile.in || die
686 -
687 - eautoreconf
688 -}
689 -
690 -multilib_src_configure() {
691 - local myconf=(
692 - --disable-adrian-aec
693 - --disable-esound
694 - --disable-gconf
695 - --disable-solaris
696 - --enable-largefile
697 - --localstatedir="${EPREFIX}"/var
698 - --with-systemduserunitdir=$(systemd_get_userunitdir)
699 - --with-udev-rules-dir="${EPREFIX}/$(get_udevdir)"/rules.d
700 - $(multilib_native_use_enable alsa)
701 - $(multilib_native_use_enable bluetooth bluez5)
702 - $(multilib_native_use_enable glib gsettings)
703 - $(multilib_native_use_enable gtk gtk3)
704 - $(multilib_native_use_enable jack)
705 - $(multilib_native_use_enable libsamplerate samplerate)
706 - $(multilib_native_use_enable lirc)
707 - $(multilib_native_use_enable orc)
708 - $(multilib_native_use_enable oss oss-output)
709 - $(multilib_native_use_enable ssl openssl)
710 - # tests involve random modules, so just do them for the native
711 - $(multilib_native_use_enable test default-build-tests)
712 - $(multilib_native_use_enable udev)
713 - $(multilib_native_use_enable webrtc-aec)
714 - $(multilib_native_use_enable zeroconf avahi)
715 - $(multilib_native_use_with equalizer fftw)
716 - $(multilib_native_use_with sox soxr)
717 - $(multilib_native_usex gdbm '--with-database=gdbm' '--with-database=simple')
718 - $(multilib_native_usex orc "ORCC=${BROOT}/usr/bin/orcc" '')
719 - $(use_enable glib glib2)
720 - $(use_enable asyncns)
721 - $(use_enable cpu_flags_arm_neon neon-opt)
722 - $(use_enable tcpd tcpwrap)
723 - $(use_enable dbus)
724 - $(use_enable X x11)
725 - $(use_enable systemd systemd-daemon)
726 - # 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
727 - $(use_enable systemd systemd-login)
728 - $(use_enable systemd systemd-journal)
729 - $(use_enable ipv6)
730 - $(use_with caps)
731 - )
732 -
733 - if use elogind && multilib_is_native_abi; then
734 - local PKGCONFIG="$(tc-getPKG_CONFIG)"
735 - myconf+=(
736 - --enable-systemd-login
737 - SYSTEMDLOGIN_CFLAGS="$(${PKGCONFIG} --cflags "libelogind")"
738 - SYSTEMDLOGIN_LIBS="$(${PKGCONFIG} --libs "libelogind")"
739 - )
740 - fi
741 -
742 - if use bluetooth; then
743 - myconf+=(
744 - $(multilib_native_use_enable native-headset bluez5-native-headset)
745 - $(multilib_native_use_enable ofono-headset bluez5-ofono-headset)
746 - )
747 - fi
748 -
749 - if ! multilib_is_native_abi; then
750 - myconf+=(
751 - # hack around unnecessary checks
752 - # (results don't matter, we're not building anything using it)
753 - ac_cv_lib_ltdl_lt_dladvise_init=yes
754 - LIBSPEEX_CFLAGS=' '
755 - LIBSPEEX_LIBS=' '
756 - )
757 - else
758 - # 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
759 - if use elibc_glibc ; then
760 - myconf+=( --with-pulsedsp-location="${EPREFIX}"'/usr/\\$$LIB/pulseaudio' )
761 - fi
762 - fi
763 -
764 - ECONF_SOURCE=${S} \
765 - econf "${myconf[@]}"
766 -}
767 -
768 -multilib_src_compile() {
769 - if multilib_is_native_abi; then
770 - emake
771 - use doc && emake doxygen
772 - else
773 - local targets=( libpulse.la libpulsedsp.la libpulse-simple.la )
774 - use glib && targets+=( libpulse-mainloop-glib.la )
775 - emake -C src ${targets[*]}
776 - fi
777 -}
778 -
779 -multilib_src_test() {
780 - # We avoid running the toplevel check target because that will run
781 - # po/'s tests too, and they are broken. Officially, it should work
782 - # with intltool 0.41, but that doesn't look like a stable release.
783 - if multilib_is_native_abi; then
784 - emake -C src check
785 - fi
786 -}
787 -
788 -multilib_src_install() {
789 - if multilib_is_native_abi; then
790 - emake -j1 DESTDIR="${D}" bashcompletiondir="$(get_bashcompdir)" install
791 - if use doc ; then
792 - docinto html
793 - dodoc -r doxygen/html/
794 - fi
795 - else
796 - local targets=( libpulse.la libpulse-simple.la )
797 - use glib && targets+=( libpulse-mainloop-glib.la )
798 - emake DESTDIR="${D}" install-pkgconfigDATA
799 - emake DESTDIR="${D}" -C src \
800 - install-libLTLIBRARIES \
801 - install-padsplibLTLIBRARIES \
802 - lib_LTLIBRARIES="${targets[*]}" \
803 - install-pulseincludeHEADERS
804 - fi
805 -}
806 -
807 -multilib_src_install_all() {
808 - if use system-wide; then
809 - newconfd "${FILESDIR}/pulseaudio.conf.d" pulseaudio
810 -
811 - use_define() {
812 - local define=${2:-$(echo $1 | tr '[:lower:]' '[:upper:]')}
813 -
814 - use "$1" && echo "-D$define" || echo "-U$define"
815 - }
816 -
817 - unifdef $(use_define zeroconf AVAHI) \
818 - $(use_define alsa) \
819 - $(use_define bluetooth) \
820 - $(use_define udev) \
821 - "${FILESDIR}/pulseaudio.init.d-5" \
822 - > "${T}/pulseaudio"
823 -
824 - doinitd "${T}/pulseaudio"
825 -
826 - systemd_dounit "${FILESDIR}/${PN}.service"
827 -
828 - # We need /var/run/pulse, bug #442852
829 - newtmpfiles "${FILESDIR}/${PN}.tmpfiles" "${PN}.conf"
830 - else
831 - # Prevent warnings when system-wide is not used, bug #447694
832 - if use dbus ; then
833 - rm "${ED}"/etc/dbus-1/system.d/pulseaudio-system.conf || die
834 - fi
835 - fi
836 -
837 - if use zeroconf ; then
838 - sed -e '/module-zeroconf-publish/s:^#::' \
839 - -i "${ED}/etc/pulse/default.pa" || die
840 - fi
841 -
842 - dodoc NEWS README todo
843 -
844 - find "${ED}" \( -name '*.a' -o -name '*.la' \) -delete || die
845 -}
846 -
847 -pkg_postinst() {
848 - gnome2_schemas_update
849 - if use system-wide; then
850 - tmpfiles_process "${PN}.conf"
851 -
852 - elog "You have enabled the 'system-wide' USE flag for pulseaudio."
853 - elog "This mode should only be used on headless servers, embedded systems,"
854 - elog "or thin clients. It will usually require manual configuration, and is"
855 - elog "incompatible with many expected pulseaudio features."
856 - elog "On normal desktop systems, system-wide mode is STRONGLY DISCOURAGED."
857 - elog "For more information, see"
858 - elog " https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/WhatIsWrongWithSystemWide/"
859 - elog " https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/SystemWide/"
860 - elog " https://wiki.gentoo.org/wiki/PulseAudio#Headless_server"
861 - fi
862 -
863 - if use equalizer && ! use qt5; then
864 - elog "You've enabled the 'equalizer' USE-flag but not the 'qt5' USE-flag."
865 - elog "This will build the equalizer module, but the 'qpaeq' tool"
866 - elog "which is required to set equalizer levels will not work."
867 - fi
868 -
869 - if use equalizer && use qt5; then
870 - elog "You will need to load some extra modules to make qpaeq work."
871 - elog "You can do that by adding the following two lines in"
872 - elog "/etc/pulse/default.pa and restarting pulseaudio:"
873 - elog "load-module module-equalizer-sink"
874 - elog "load-module module-dbus-protocol"
875 - fi
876 -
877 - if use native-headset && use ofono-headset; then
878 - elog "You have enabled both native and ofono headset profiles. The runtime decision"
879 - elog "which to use is done via the 'headset' argument of module-bluetooth-discover."
880 - fi
881 -
882 - if use libsamplerate; then
883 - elog "The libsamplerate based resamplers are now deprecated, because they offer no"
884 - elog "particular advantage over speex. Upstream suggests disabling them."
885 - fi
886 -}
887 -
888 -pkg_postrm() {
889 - gnome2_schemas_update
890 -}
891
892 diff --git a/media-sound/pulseaudio/pulseaudio-15.0-r2.ebuild b/media-sound/pulseaudio/pulseaudio-15.0-r2.ebuild
893 deleted file mode 100644
894 index 91cc01e8a068..000000000000
895 --- a/media-sound/pulseaudio/pulseaudio-15.0-r2.ebuild
896 +++ /dev/null
897 @@ -1,375 +0,0 @@
898 -# Copyright 1999-2021 Gentoo Authors
899 -# Distributed under the terms of the GNU General Public License v2
900 -
901 -EAPI="7"
902 -
903 -MY_PV="${PV/_pre*}"
904 -MY_P="${PN}-${MY_PV}"
905 -
906 -inherit bash-completion-r1 gnome2-utils meson-multilib optfeature systemd tmpfiles udev
907 -
908 -DESCRIPTION="A networked sound server with an advanced plugin system"
909 -HOMEPAGE="https://www.freedesktop.org/wiki/Software/PulseAudio/"
910 -
911 -if [[ ${PV} = 9999 ]]; then
912 - inherit git-r3
913 - EGIT_BRANCH="master"
914 - EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}"
915 -else
916 - SRC_URI="https://freedesktop.org/software/${PN}/releases/${MY_P}.tar.xz"
917 - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux"
918 -fi
919 -
920 -# libpulse-simple and libpulse link to libpulse-core; this is daemon's
921 -# library and can link to gdbm and other GPL-only libraries. In this
922 -# cases, we have a fully GPL-2 package. Leaving the rest of the
923 -# GPL-forcing USE flags for those who use them.
924 -LICENSE="!gdbm? ( LGPL-2.1 ) gdbm? ( GPL-2 )"
925 -
926 -SLOT="0"
927 -
928 -# +alsa-plugin as discussed in bug #519530
929 -# TODO: Deal with bluez5-gstreamer - requires ldacenc and rtpldacpay gstreamer elements
930 -# TODO: Find out why webrtc-aec is + prefixed - there's already the always available speexdsp-aec
931 -# NOTE: The current ebuild sets +X almost certainly just for the pulseaudio.desktop file
932 -IUSE="+alsa +alsa-plugin +asyncns bluetooth dbus +daemon doc elogind equalizer +gdbm
933 -gstreamer +glib gtk ipv6 jack lirc native-headset ofono-headset +orc oss selinux sox ssl systemd
934 -system-wide tcpd test +udev +webrtc-aec +X zeroconf"
935 -
936 -RESTRICT="!test? ( test )"
937 -
938 -# See "*** BLUEZ support not found (requires D-Bus)" in configure.ac
939 -# Basically all IUSE are either ${MULTILIB_USEDEP} for client libs or they belong under !daemon ()
940 -# We duplicate alsa-plugin, {native,ofono}-headset under daemon to let users deal with them at once
941 -REQUIRED_USE="
942 - alsa-plugin? ( alsa )
943 - bluetooth? ( dbus )
944 - daemon? ( ?? ( elogind systemd ) )
945 - !daemon? (
946 - !alsa
947 - !alsa-plugin
948 - !bluetooth
949 - !equalizer
950 - !gdbm
951 - !gstreamer
952 - !gtk
953 - !jack
954 - !lirc
955 - !native-headset
956 - !ofono-headset
957 - !orc
958 - !oss
959 - !sox
960 - !ssl
961 - !system-wide
962 - !udev
963 - !webrtc-aec
964 - !zeroconf
965 - )
966 - equalizer? ( dbus )
967 - native-headset? ( bluetooth )
968 - ofono-headset? ( bluetooth )
969 - udev? ( || ( alsa oss ) )
970 - zeroconf? ( dbus )
971 -"
972 -
973 -BDEPEND="
974 - dev-lang/perl
975 - dev-perl/XML-Parser
976 - sys-devel/gettext
977 - sys-devel/m4
978 - virtual/libiconv
979 - virtual/libintl
980 - virtual/pkgconfig
981 - doc? ( app-doc/doxygen )
982 - orc? ( >=dev-lang/orc-0.4.15 )
983 - system-wide? ( dev-util/unifdef )
984 -"
985 -
986 -# NOTE:
987 -# - libpcre needed in some cases, bug #472228
988 -# - media-libs/speexdsp is providing echo canceller implementation
989 -COMMON_DEPEND="
990 - >=media-libs/libsndfile-1.0.20[${MULTILIB_USEDEP}]
991 - >=media-libs/speexdsp-1.2[${MULTILIB_USEDEP}]
992 - virtual/libc
993 - alsa? ( >=media-libs/alsa-lib-1.0.24 )
994 - asyncns? ( >=net-libs/libasyncns-0.1[${MULTILIB_USEDEP}] )
995 - bluetooth? (
996 - >=net-wireless/bluez-5
997 - media-libs/sbc
998 - )
999 - daemon? (
1000 - dev-libs/libltdl
1001 - sys-kernel/linux-headers
1002 - >=sys-libs/libcap-2.22-r2
1003 - )
1004 - dbus? ( >=sys-apps/dbus-1.4.12[${MULTILIB_USEDEP}] )
1005 - elogind? ( sys-auth/elogind )
1006 - equalizer? (
1007 - sci-libs/fftw:3.0
1008 - )
1009 - gdbm? ( sys-libs/gdbm:= )
1010 - glib? ( >=dev-libs/glib-2.28.0:2[${MULTILIB_USEDEP}] )
1011 - gstreamer? (
1012 - media-libs/gst-plugins-base
1013 - >=media-libs/gstreamer-1.14
1014 - )
1015 - gtk? ( x11-libs/gtk+:3 )
1016 - jack? ( virtual/jack )
1017 - lirc? ( app-misc/lirc )
1018 - ofono-headset? ( >=net-misc/ofono-1.13 )
1019 - orc? ( >=dev-lang/orc-0.4.15 )
1020 - selinux? ( sec-policy/selinux-pulseaudio )
1021 - sox? ( >=media-libs/soxr-0.1.1 )
1022 - ssl? ( dev-libs/openssl:= )
1023 - systemd? ( sys-apps/systemd:= )
1024 - tcpd? ( sys-apps/tcp-wrappers )
1025 - udev? ( >=virtual/udev-143[hwdb(+)] )
1026 - webrtc-aec? ( >=media-libs/webrtc-audio-processing-0.2:0 )
1027 - X? (
1028 - x11-libs/libX11[${MULTILIB_USEDEP}]
1029 - >=x11-libs/libxcb-1.6[${MULTILIB_USEDEP}]
1030 - daemon? (
1031 - x11-libs/libICE
1032 - x11-libs/libSM
1033 - >=x11-libs/libX11-1.4.0
1034 - >=x11-libs/libXtst-1.0.99.2
1035 - )
1036 - )
1037 - zeroconf? ( >=net-dns/avahi-0.6.12[dbus] )
1038 -"
1039 -
1040 -# pulseaudio ships a bundle xmltoman, which uses XML::Parser
1041 -DEPEND="
1042 - ${COMMON_DEPEND}
1043 - dev-libs/libatomic_ops
1044 - dev-libs/libpcre:*
1045 - test? ( >=dev-libs/check-0.9.10 )
1046 - X? ( x11-base/xorg-proto )
1047 -"
1048 -
1049 -# alsa-utils dep is for the alsasound init.d script (see bug 155707); TODO: read it
1050 -# NOTE: Only system-wide needs acct-group/audio unless elogind/systemd is not used
1051 -RDEPEND="
1052 - ${COMMON_DEPEND}
1053 - system-wide? (
1054 - alsa? ( media-sound/alsa-utils )
1055 - acct-user/pulse
1056 - acct-group/audio
1057 - acct-group/pulse-access
1058 - )
1059 -"
1060 -
1061 -# This is a PDEPEND to avoid a circular dep
1062 -PDEPEND="
1063 - alsa? ( alsa-plugin? ( >=media-plugins/alsa-plugins-1.0.27-r1[pulseaudio,${MULTILIB_USEDEP}] ) )
1064 -"
1065 -
1066 -DOCS=( NEWS README )
1067 -
1068 -S="${WORKDIR}/${MY_P}"
1069 -
1070 -PATCHES=(
1071 - "${FILESDIR}"/pulseaudio-15.0-xice-xsm-xtst-daemon-only.patch
1072 -)
1073 -
1074 -src_prepare() {
1075 - default
1076 -
1077 - gnome2_environment_reset
1078 -}
1079 -
1080 -multilib_src_configure() {
1081 - local emesonargs=(
1082 - --localstatedir="${EPREFIX}"/var
1083 -
1084 - $(meson_native_use_bool daemon)
1085 - $(meson_native_use_bool doc doxygen)
1086 - -Dgcov=false
1087 - # tests involve random modules, so just do them for the native # TODO: tests should run always
1088 - $(meson_native_use_bool test tests)
1089 - -Ddatabase=$(multilib_native_usex gdbm gdbm simple) # tdb is also an option but no one cares about it
1090 - -Dstream-restore-clear-old-devices=true
1091 - -Drunning-from-build-tree=false
1092 -
1093 - # Paths
1094 - -Dmodlibexecdir="${EPREFIX}/usr/$(get_libdir)/${PN}/modules" # Was $(get_libdir)/${P}
1095 - -Dsystemduserunitdir=$(systemd_get_userunitdir)
1096 - -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d"
1097 - -Dbashcompletiondir="$(get_bashcompdir)" # Alternatively DEPEND on app-shells/bash-completion for pkg-config to provide the value
1098 -
1099 - # Optional features
1100 - $(meson_native_use_feature alsa)
1101 - $(meson_feature asyncns)
1102 - $(meson_native_use_feature zeroconf avahi)
1103 - $(meson_native_use_feature bluetooth bluez5)
1104 - -Dbluez5-gstreamer=disabled # no ldacenc/rtpldacpay gst elements packaged yet
1105 - $(meson_native_use_bool native-headset bluez5-native-headset)
1106 - $(meson_native_use_bool ofono-headset bluez5-ofono-headset)
1107 - $(meson_feature dbus)
1108 - $(meson_native_use_feature elogind)
1109 - $(meson_native_use_feature equalizer fftw)
1110 - $(meson_feature glib) # WARNING: toggling this likely changes ABI
1111 - $(meson_native_use_feature glib gsettings) # Supposedly correct?
1112 - $(meson_native_use_feature gstreamer)
1113 - $(meson_native_use_feature gtk)
1114 - -Dhal-compat=true # Consider disabling on next revbump
1115 - $(meson_use ipv6)
1116 - $(meson_native_use_feature jack)
1117 - $(meson_native_use_feature lirc)
1118 - $(meson_native_use_feature ssl openssl)
1119 - $(meson_native_use_feature orc)
1120 - $(meson_native_use_feature oss oss-output)
1121 - -Dsamplerate=disabled # Matches upstream
1122 - $(meson_native_use_feature sox soxr)
1123 - -Dspeex=enabled
1124 - $(meson_native_use_feature systemd)
1125 - $(meson_native_use_feature tcpd tcpwrap) # TODO: This should technically be enabled for 32bit too, but at runtime it probably is never used without daemon?
1126 - $(meson_native_use_feature udev)
1127 - -Dvalgrind=auto
1128 - $(meson_feature X x11)
1129 -
1130 - # Echo cancellation
1131 - -Dadrian-aec=false # Not packaged?
1132 - $(meson_native_use_feature webrtc-aec)
1133 - )
1134 -
1135 - if multilib_is_native_abi; then
1136 - # Make padsp work for non-native ABI, supposedly only possible with glibc;
1137 - # this is used by /usr/bin/padsp that comes from native build, thus we need
1138 - # this argument for native build
1139 - if use elibc_glibc; then
1140 - emesonargs+=( -Dpulsedsp-location="${EPREFIX}"'/usr/\\$$LIB/pulseaudio' )
1141 - fi
1142 - else
1143 - emesonargs+=( -Dman=false )
1144 - if ! use elibc_glibc; then
1145 - # Non-glibc multilib is probably non-existent but just in case:
1146 - ewarn "padsp wrapper for OSS emulation will only work with native ABI applications!"
1147 - fi
1148 - fi
1149 -
1150 - meson_src_configure
1151 -}
1152 -
1153 -multilib_src_compile() {
1154 - meson_src_compile
1155 -
1156 - if multilib_is_native_abi; then
1157 - if use doc; then
1158 - einfo "Generating documentation ..."
1159 - meson_src_compile doxygen
1160 - fi
1161 - fi
1162 -}
1163 -
1164 -multilib_src_install() {
1165 - # The files referenced in the DOCS array do not exist in the multilib source directory,
1166 - # therefore clear the variable when calling the function that will access it.
1167 - DOCS= meson_src_install
1168 -
1169 - if multilib_is_native_abi; then
1170 - if use doc; then
1171 - einfo "Installing documentation ..."
1172 - docinto html
1173 - dodoc -r doxygen/html/.
1174 - fi
1175 - fi
1176 -}
1177 -
1178 -multilib_src_install_all() {
1179 - einstalldocs
1180 -
1181 - if use system-wide; then
1182 - newconfd "${FILESDIR}"/pulseaudio.conf.d pulseaudio
1183 -
1184 - use_define() {
1185 - local define=${2:-$(echo ${1} | tr '[:lower:]' '[:upper:]')}
1186 -
1187 - use "${1}" && echo "-D${define}" || echo "-U${define}"
1188 - }
1189 -
1190 - unifdef -x 1 \
1191 - $(use_define zeroconf AVAHI) \
1192 - $(use_define alsa) \
1193 - $(use_define bluetooth) \
1194 - $(use_define udev) \
1195 - "${FILESDIR}"/pulseaudio.init.d-5 \
1196 - > "${T}"/pulseaudio \
1197 - || die
1198 -
1199 - doinitd "${T}"/pulseaudio
1200 -
1201 - systemd_dounit "${FILESDIR}"/${PN}.service
1202 -
1203 - # We need /var/run/pulse, bug 442852
1204 - newtmpfiles "${FILESDIR}"/${PN}.tmpfiles ${PN}.conf
1205 - else
1206 - # Prevent warnings when system-wide is not used, bug 447694
1207 - if use dbus && use daemon; then
1208 - rm "${ED}"/etc/dbus-1/system.d/pulseaudio-system.conf || die
1209 - fi
1210 - fi
1211 -
1212 - if use zeroconf; then
1213 - sed -i \
1214 - -e '/module-zeroconf-publish/s:^#::' \
1215 - "${ED}/etc/pulse/default.pa" \
1216 - || die
1217 - fi
1218 -
1219 - find "${ED}" \( -name '*.a' -o -name '*.la' \) -delete || die
1220 -}
1221 -
1222 -pkg_postinst() {
1223 - gnome2_schemas_update
1224 -
1225 - if use system-wide; then
1226 - tmpfiles_process "${PN}.conf"
1227 -
1228 - elog "You have enabled the 'system-wide' USE flag for pulseaudio."
1229 - elog "This mode should only be used on headless servers, embedded systems,"
1230 - elog "or thin clients. It will usually require manual configuration, and is"
1231 - elog "incompatible with many expected pulseaudio features."
1232 - elog "On normal desktop systems, system-wide mode is STRONGLY DISCOURAGED."
1233 - elog ""
1234 - elog "For more information, see"
1235 - elog " https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/WhatIsWrongWithSystemWide/"
1236 - elog " https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/SystemWide/"
1237 - elog " https://wiki.gentoo.org/wiki/PulseAudio#Headless_server"
1238 - elog ""
1239 - fi
1240 -
1241 - if use equalizer; then
1242 - elog "You will need to load some extra modules to make qpaeq work."
1243 - elog "You can do that by adding the following two lines in"
1244 - elog "/etc/pulse/default.pa and restarting pulseaudio:"
1245 - elog "load-module module-equalizer-sink"
1246 - elog "load-module module-dbus-protocol"
1247 - elog ""
1248 - fi
1249 -
1250 - if use native-headset && use ofono-headset; then
1251 - elog "You have enabled both native and ofono headset profiles. The runtime decision"
1252 - elog "which to use is done via the 'headset' argument of module-bluetooth-discover."
1253 - elog ""
1254 - fi
1255 -
1256 - if use systemd && use daemon; then
1257 - elog "It's recommended to start pulseaudio via its systemd user units:"
1258 - elog ""
1259 - elog " systemctl --user enable pulseaudio.service pulseaudio.socket"
1260 - elog ""
1261 - elog "The change from autospawn to user units will take effect after restarting."
1262 - elog ""
1263 - fi
1264 -
1265 - optfeature_header "PulseAudio can be enhanced by installing the following:"
1266 - use equalizer && optfeature "using the qpaeq script" dev-python/PyQt5[dbus,widgets]
1267 - use dbus && optfeature "restricted realtime capabilities via D-Bus" sys-auth/rtkit
1268 -}
1269 -
1270 -pkg_postrm() {
1271 - gnome2_schemas_update
1272 -}
1273
1274 diff --git a/media-sound/pulseaudio/pulseaudio-15.0-r3.ebuild b/media-sound/pulseaudio/pulseaudio-15.0-r3.ebuild
1275 deleted file mode 100644
1276 index 85f1d2a7a9a7..000000000000
1277 --- a/media-sound/pulseaudio/pulseaudio-15.0-r3.ebuild
1278 +++ /dev/null
1279 @@ -1,382 +0,0 @@
1280 -# Copyright 1999-2022 Gentoo Authors
1281 -# Distributed under the terms of the GNU General Public License v2
1282 -
1283 -EAPI="7"
1284 -
1285 -MY_PV="${PV/_pre*}"
1286 -MY_P="${PN}-${MY_PV}"
1287 -
1288 -inherit bash-completion-r1 gnome2-utils meson-multilib optfeature systemd tmpfiles udev
1289 -
1290 -DESCRIPTION="A networked sound server with an advanced plugin system"
1291 -HOMEPAGE="https://www.freedesktop.org/wiki/Software/PulseAudio/"
1292 -
1293 -if [[ ${PV} = 9999 ]]; then
1294 - inherit git-r3
1295 - EGIT_BRANCH="master"
1296 - EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}"
1297 -else
1298 - SRC_URI="https://freedesktop.org/software/${PN}/releases/${MY_P}.tar.xz"
1299 - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux"
1300 -fi
1301 -
1302 -# libpulse-simple and libpulse link to libpulse-core; this is daemon's
1303 -# library and can link to gdbm and other GPL-only libraries. In this
1304 -# cases, we have a fully GPL-2 package. Leaving the rest of the
1305 -# GPL-forcing USE flags for those who use them.
1306 -LICENSE="!gdbm? ( LGPL-2.1 ) gdbm? ( GPL-2 )"
1307 -
1308 -SLOT="0"
1309 -
1310 -# +alsa-plugin as discussed in bug #519530
1311 -# TODO: Find out why webrtc-aec is + prefixed - there's already the always available speexdsp-aec
1312 -# NOTE: The current ebuild sets +X almost certainly just for the pulseaudio.desktop file
1313 -IUSE="+alsa +alsa-plugin aptx +asyncns bluetooth dbus +daemon doc elogind equalizer +gdbm
1314 -gstreamer +glib gtk ipv6 jack ldac lirc native-headset ofono-headset +orc oss selinux sox ssl systemd
1315 -system-wide tcpd test +udev +webrtc-aec +X zeroconf"
1316 -
1317 -RESTRICT="!test? ( test )"
1318 -
1319 -# See "*** BLUEZ support not found (requires D-Bus)" in configure.ac
1320 -# Basically all IUSE are either ${MULTILIB_USEDEP} for client libs or they belong under !daemon ()
1321 -# We duplicate alsa-plugin, {native,ofono}-headset under daemon to let users deal with them at once
1322 -REQUIRED_USE="
1323 - alsa-plugin? ( alsa )
1324 - bluetooth? ( dbus )
1325 - daemon? ( ?? ( elogind systemd ) )
1326 - !daemon? (
1327 - !alsa
1328 - !alsa-plugin
1329 - !bluetooth
1330 - !equalizer
1331 - !gdbm
1332 - !gstreamer
1333 - !gtk
1334 - !jack
1335 - !lirc
1336 - !native-headset
1337 - !ofono-headset
1338 - !orc
1339 - !oss
1340 - !sox
1341 - !ssl
1342 - !system-wide
1343 - !udev
1344 - !webrtc-aec
1345 - !zeroconf
1346 - )
1347 - equalizer? ( dbus )
1348 - native-headset? ( bluetooth )
1349 - ofono-headset? ( bluetooth )
1350 - udev? ( || ( alsa oss ) )
1351 - zeroconf? ( dbus )
1352 -"
1353 -
1354 -BDEPEND="
1355 - dev-lang/perl
1356 - dev-perl/XML-Parser
1357 - sys-devel/gettext
1358 - sys-devel/m4
1359 - virtual/libiconv
1360 - virtual/libintl
1361 - virtual/pkgconfig
1362 - doc? ( app-doc/doxygen )
1363 - orc? ( >=dev-lang/orc-0.4.15 )
1364 - system-wide? ( dev-util/unifdef )
1365 -"
1366 -
1367 -# NOTE:
1368 -# - libpcre needed in some cases, bug #472228
1369 -# - media-libs/speexdsp is providing echo canceller implementation
1370 -COMMON_DEPEND="
1371 - >=media-libs/libsndfile-1.0.20[${MULTILIB_USEDEP}]
1372 - >=media-libs/speexdsp-1.2[${MULTILIB_USEDEP}]
1373 - virtual/libc
1374 - alsa? ( >=media-libs/alsa-lib-1.0.24 )
1375 - asyncns? ( >=net-libs/libasyncns-0.1[${MULTILIB_USEDEP}] )
1376 - bluetooth? (
1377 - >=net-wireless/bluez-5
1378 - media-libs/sbc
1379 - )
1380 - daemon? (
1381 - dev-libs/libltdl
1382 - sys-kernel/linux-headers
1383 - >=sys-libs/libcap-2.22-r2
1384 - )
1385 - dbus? ( >=sys-apps/dbus-1.4.12[${MULTILIB_USEDEP}] )
1386 - elogind? ( sys-auth/elogind )
1387 - equalizer? (
1388 - sci-libs/fftw:3.0
1389 - )
1390 - gdbm? ( sys-libs/gdbm:= )
1391 - glib? ( >=dev-libs/glib-2.28.0:2[${MULTILIB_USEDEP}] )
1392 - gstreamer? (
1393 - media-libs/gst-plugins-base
1394 - >=media-libs/gstreamer-1.14
1395 - )
1396 - gtk? ( x11-libs/gtk+:3 )
1397 - jack? ( virtual/jack )
1398 - lirc? ( app-misc/lirc )
1399 - ofono-headset? ( >=net-misc/ofono-1.13 )
1400 - orc? ( >=dev-lang/orc-0.4.15 )
1401 - selinux? ( sec-policy/selinux-pulseaudio )
1402 - sox? ( >=media-libs/soxr-0.1.1 )
1403 - ssl? ( dev-libs/openssl:= )
1404 - systemd? ( sys-apps/systemd:= )
1405 - tcpd? ( sys-apps/tcp-wrappers )
1406 - udev? ( >=virtual/udev-143[hwdb(+)] )
1407 - webrtc-aec? ( >=media-libs/webrtc-audio-processing-0.2:0 )
1408 - X? (
1409 - x11-libs/libX11[${MULTILIB_USEDEP}]
1410 - >=x11-libs/libxcb-1.6[${MULTILIB_USEDEP}]
1411 - daemon? (
1412 - x11-libs/libICE
1413 - x11-libs/libSM
1414 - >=x11-libs/libX11-1.4.0
1415 - >=x11-libs/libXtst-1.0.99.2
1416 - )
1417 - )
1418 - zeroconf? ( >=net-dns/avahi-0.6.12[dbus] )
1419 -"
1420 -
1421 -# pulseaudio ships a bundle xmltoman, which uses XML::Parser
1422 -DEPEND="
1423 - ${COMMON_DEPEND}
1424 - dev-libs/libatomic_ops
1425 - dev-libs/libpcre:*
1426 - test? ( >=dev-libs/check-0.9.10 )
1427 - X? ( x11-base/xorg-proto )
1428 -"
1429 -
1430 -# alsa-utils dep is for the alsasound init.d script (see bug 155707); TODO: read it
1431 -# NOTE: Only system-wide needs acct-group/audio unless elogind/systemd is not used
1432 -RDEPEND="
1433 - ${COMMON_DEPEND}
1434 - system-wide? (
1435 - alsa? ( media-sound/alsa-utils )
1436 - acct-user/pulse
1437 - acct-group/audio
1438 - acct-group/pulse-access
1439 - )
1440 - daemon? (
1441 - bluetooth? (
1442 - gstreamer? (
1443 - ldac? ( media-plugins/gst-plugins-ldac )
1444 - aptx? ( media-plugins/gst-plugins-openaptx )
1445 - )
1446 - )
1447 - )
1448 -"
1449 -
1450 -# This is a PDEPEND to avoid a circular dep
1451 -PDEPEND="
1452 - alsa? ( alsa-plugin? ( >=media-plugins/alsa-plugins-1.0.27-r1[pulseaudio,${MULTILIB_USEDEP}] ) )
1453 -"
1454 -
1455 -DOCS=( NEWS README )
1456 -
1457 -S="${WORKDIR}/${MY_P}"
1458 -
1459 -PATCHES=(
1460 - "${FILESDIR}"/pulseaudio-15.0-xice-xsm-xtst-daemon-only.patch
1461 -)
1462 -
1463 -src_prepare() {
1464 - default
1465 -
1466 - gnome2_environment_reset
1467 -}
1468 -
1469 -multilib_src_configure() {
1470 - local emesonargs=(
1471 - --localstatedir="${EPREFIX}"/var
1472 -
1473 - $(meson_native_use_bool daemon)
1474 - $(meson_native_use_bool doc doxygen)
1475 - -Dgcov=false
1476 - # tests involve random modules, so just do them for the native # TODO: tests should run always
1477 - $(meson_native_use_bool test tests)
1478 - -Ddatabase=$(multilib_native_usex gdbm gdbm simple) # tdb is also an option but no one cares about it
1479 - -Dstream-restore-clear-old-devices=true
1480 - -Drunning-from-build-tree=false
1481 -
1482 - # Paths
1483 - -Dmodlibexecdir="${EPREFIX}/usr/$(get_libdir)/${PN}/modules" # Was $(get_libdir)/${P}
1484 - -Dsystemduserunitdir=$(systemd_get_userunitdir)
1485 - -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d"
1486 - -Dbashcompletiondir="$(get_bashcompdir)" # Alternatively DEPEND on app-shells/bash-completion for pkg-config to provide the value
1487 -
1488 - # Optional features
1489 - $(meson_native_use_feature alsa)
1490 - $(meson_feature asyncns)
1491 - $(meson_native_use_feature zeroconf avahi)
1492 - $(meson_native_use_feature bluetooth bluez5)
1493 - $(meson_native_use_feature gstreamer bluez5-gstreamer)
1494 - $(meson_native_use_bool native-headset bluez5-native-headset)
1495 - $(meson_native_use_bool ofono-headset bluez5-ofono-headset)
1496 - $(meson_feature dbus)
1497 - $(meson_native_use_feature elogind)
1498 - $(meson_native_use_feature equalizer fftw)
1499 - $(meson_feature glib) # WARNING: toggling this likely changes ABI
1500 - $(meson_native_use_feature glib gsettings) # Supposedly correct?
1501 - $(meson_native_use_feature gstreamer)
1502 - $(meson_native_use_feature gtk)
1503 - -Dhal-compat=true # Consider disabling on next revbump
1504 - $(meson_use ipv6)
1505 - $(meson_native_use_feature jack)
1506 - $(meson_native_use_feature lirc)
1507 - $(meson_native_use_feature ssl openssl)
1508 - $(meson_native_use_feature orc)
1509 - $(meson_native_use_feature oss oss-output)
1510 - -Dsamplerate=disabled # Matches upstream
1511 - $(meson_native_use_feature sox soxr)
1512 - -Dspeex=enabled
1513 - $(meson_native_use_feature systemd)
1514 - $(meson_native_use_feature tcpd tcpwrap) # TODO: This should technically be enabled for 32bit too, but at runtime it probably is never used without daemon?
1515 - $(meson_native_use_feature udev)
1516 - -Dvalgrind=auto
1517 - $(meson_feature X x11)
1518 -
1519 - # Echo cancellation
1520 - -Dadrian-aec=false # Not packaged?
1521 - $(meson_native_use_feature webrtc-aec)
1522 - )
1523 -
1524 - if multilib_is_native_abi; then
1525 - # Make padsp work for non-native ABI, supposedly only possible with glibc;
1526 - # this is used by /usr/bin/padsp that comes from native build, thus we need
1527 - # this argument for native build
1528 - if use elibc_glibc; then
1529 - emesonargs+=( -Dpulsedsp-location="${EPREFIX}"'/usr/\\$$LIB/pulseaudio' )
1530 - fi
1531 - else
1532 - emesonargs+=( -Dman=false )
1533 - if ! use elibc_glibc; then
1534 - # Non-glibc multilib is probably non-existent but just in case:
1535 - ewarn "padsp wrapper for OSS emulation will only work with native ABI applications!"
1536 - fi
1537 - fi
1538 -
1539 - meson_src_configure
1540 -}
1541 -
1542 -multilib_src_compile() {
1543 - meson_src_compile
1544 -
1545 - if multilib_is_native_abi; then
1546 - if use doc; then
1547 - einfo "Generating documentation ..."
1548 - meson_src_compile doxygen
1549 - fi
1550 - fi
1551 -}
1552 -
1553 -multilib_src_install() {
1554 - # The files referenced in the DOCS array do not exist in the multilib source directory,
1555 - # therefore clear the variable when calling the function that will access it.
1556 - DOCS= meson_src_install
1557 -
1558 - if multilib_is_native_abi; then
1559 - if use doc; then
1560 - einfo "Installing documentation ..."
1561 - docinto html
1562 - dodoc -r doxygen/html/.
1563 - fi
1564 - fi
1565 -}
1566 -
1567 -multilib_src_install_all() {
1568 - einstalldocs
1569 -
1570 - if use system-wide; then
1571 - newconfd "${FILESDIR}"/pulseaudio.conf.d pulseaudio
1572 -
1573 - use_define() {
1574 - local define=${2:-$(echo ${1} | tr '[:lower:]' '[:upper:]')}
1575 -
1576 - use "${1}" && echo "-D${define}" || echo "-U${define}"
1577 - }
1578 -
1579 - unifdef -x 1 \
1580 - $(use_define zeroconf AVAHI) \
1581 - $(use_define alsa) \
1582 - $(use_define bluetooth) \
1583 - $(use_define udev) \
1584 - "${FILESDIR}"/pulseaudio.init.d-5 \
1585 - > "${T}"/pulseaudio \
1586 - || die
1587 -
1588 - doinitd "${T}"/pulseaudio
1589 -
1590 - systemd_dounit "${FILESDIR}"/${PN}.service
1591 -
1592 - # We need /var/run/pulse, bug 442852
1593 - newtmpfiles "${FILESDIR}"/${PN}.tmpfiles ${PN}.conf
1594 - else
1595 - # Prevent warnings when system-wide is not used, bug 447694
1596 - if use dbus && use daemon; then
1597 - rm "${ED}"/etc/dbus-1/system.d/pulseaudio-system.conf || die
1598 - fi
1599 - fi
1600 -
1601 - if use zeroconf; then
1602 - sed -i \
1603 - -e '/module-zeroconf-publish/s:^#::' \
1604 - "${ED}/etc/pulse/default.pa" \
1605 - || die
1606 - fi
1607 -
1608 - find "${ED}" \( -name '*.a' -o -name '*.la' \) -delete || die
1609 -}
1610 -
1611 -pkg_postinst() {
1612 - gnome2_schemas_update
1613 -
1614 - if use system-wide; then
1615 - tmpfiles_process "${PN}.conf"
1616 -
1617 - elog "You have enabled the 'system-wide' USE flag for pulseaudio."
1618 - elog "This mode should only be used on headless servers, embedded systems,"
1619 - elog "or thin clients. It will usually require manual configuration, and is"
1620 - elog "incompatible with many expected pulseaudio features."
1621 - elog "On normal desktop systems, system-wide mode is STRONGLY DISCOURAGED."
1622 - elog ""
1623 - elog "For more information, see"
1624 - elog " https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/WhatIsWrongWithSystemWide/"
1625 - elog " https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/SystemWide/"
1626 - elog " https://wiki.gentoo.org/wiki/PulseAudio#Headless_server"
1627 - elog ""
1628 - fi
1629 -
1630 - if use equalizer; then
1631 - elog "You will need to load some extra modules to make qpaeq work."
1632 - elog "You can do that by adding the following two lines in"
1633 - elog "/etc/pulse/default.pa and restarting pulseaudio:"
1634 - elog "load-module module-equalizer-sink"
1635 - elog "load-module module-dbus-protocol"
1636 - elog ""
1637 - fi
1638 -
1639 - if use native-headset && use ofono-headset; then
1640 - elog "You have enabled both native and ofono headset profiles. The runtime decision"
1641 - elog "which to use is done via the 'headset' argument of module-bluetooth-discover."
1642 - elog ""
1643 - fi
1644 -
1645 - if use systemd && use daemon; then
1646 - elog "It's recommended to start pulseaudio via its systemd user units:"
1647 - elog ""
1648 - elog " systemctl --user enable pulseaudio.service pulseaudio.socket"
1649 - elog ""
1650 - elog "The change from autospawn to user units will take effect after restarting."
1651 - elog ""
1652 - fi
1653 -
1654 - optfeature_header "PulseAudio can be enhanced by installing the following:"
1655 - use equalizer && optfeature "using the qpaeq script" dev-python/PyQt5[dbus,widgets]
1656 - use dbus && optfeature "restricted realtime capabilities via D-Bus" sys-auth/rtkit
1657 -}
1658 -
1659 -pkg_postrm() {
1660 - gnome2_schemas_update
1661 -}