summaryrefslogtreecommitdiff
path: root/audio/pulseaudio
diff options
context:
space:
mode:
authorryoon <ryoon@pkgsrc.org>2021-07-30 12:21:06 +0000
committerryoon <ryoon@pkgsrc.org>2021-07-30 12:21:06 +0000
commit9924f01e968cacebbf60526a39f1c9e2bea7332a (patch)
tree12417feedcdf4ebcdeee55c6bba8251ea602a708 /audio/pulseaudio
parent3271be5389b05757657552cf5c02db7677b542b2 (diff)
downloadpkgsrc-9924f01e968cacebbf60526a39f1c9e2bea7332a.tar.gz
pulseaudio: Update to 15.0
* Convert to use meson to build. Changelog: 1. Notes for end users 1. Support for LDAC and AptX bluetooth codecs, plus "SBC XQ" (SBC with higher-quality parameters) 2. Support for HFP bluetooth profiles 3. Support for Bluetooth A2DP AVRCP Absolute Volume 4. ALSA path configuration files can now be placed in user home directory 5. module-virtual-surround-sink rewritten 6. More options for module-jackdbus-detect 7. Improved hardware support 1. SteelSeries Arctis 9 2. HP Thunderbolt Dock 120W G2 3. Behringer U-Phoria UMC22 4. OnePlus Type-C Bullets 5. Sennheiser GSX 1000/1200 PRO 8. New udev variable: PULSE_MODARGS 9. max_latency_msec argument added to module-null-source 10. module-filter-apply can take filter parameters from device properties 11. module-match can now be loaded multiple times 12. Improvements to FreeBSD support 13. Windows support added to Meson 14. Additional commands for pactl 15. Card profiles can be set to sticky 2. Notes for application developers 1. New API for sending messages from clients to PulseAudio objects 2. New mechanism for applications to disable shared memory on their connection to PulseAudio 3. Notes for packagers 1. Autotools build system have been dropped 2. The startup script can now read additional configuration from the /etc/ pulse/default.pa.d/ directory 3. Option to build client library and utilities only 4. Avoid loading X11 modules on Wayland (GNOME-only for now) 5. OSS support is now configurable in Meson 6. Valgrind support is now configurable in Meson
Diffstat (limited to 'audio/pulseaudio')
-rw-r--r--audio/pulseaudio/Makefile55
-rw-r--r--audio/pulseaudio/PLIST269
-rw-r--r--audio/pulseaudio/distinfo22
-rw-r--r--audio/pulseaudio/options.mk4
-rw-r--r--audio/pulseaudio/patches/patch-configure.ac104
-rw-r--r--audio/pulseaudio/patches/patch-meson.build16
-rw-r--r--audio/pulseaudio/patches/patch-src_Makefile.am24
-rw-r--r--audio/pulseaudio/patches/patch-src_daemon_meson.build55
-rw-r--r--audio/pulseaudio/patches/patch-src_modules_module-detect.c15
-rw-r--r--audio/pulseaudio/patches/patch-src_modules_oss_module-oss.c4
-rw-r--r--audio/pulseaudio/patches/patch-src_pulse_meson.build11
-rw-r--r--audio/pulseaudio/patches/patch-src_pulsecore_creds.h15
-rw-r--r--audio/pulseaudio/patches/patch-src_utils_padsp.c38
13 files changed, 245 insertions, 387 deletions
diff --git a/audio/pulseaudio/Makefile b/audio/pulseaudio/Makefile
index f505ebc73d6..af143f28786 100644
--- a/audio/pulseaudio/Makefile
+++ b/audio/pulseaudio/Makefile
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.160 2021/07/13 16:18:10 schmonz Exp $
+# $NetBSD: Makefile,v 1.161 2021/07/30 12:21:06 ryoon Exp $
-DISTNAME= pulseaudio-14.2
-PKGREVISION= 3
+DISTNAME= pulseaudio-15.0
CATEGORIES= audio
MASTER_SITES= https://freedesktop.org/software/pulseaudio/releases/
EXTRACT_SUFX= .tar.xz
@@ -20,6 +19,13 @@ SUBST_FILES.oss+= src/modules/oss/module-oss.c
SUBST_FILES.oss+= src/modules/module-detect.c
SUBST_VARS.oss+= DEVOSSAUDIO
+SUBST_CLASSES+= egdir
+SUBST_STAGE.egdir= pre-configure
+SUBST_MESSAGE.egdir= Set EGDIR for config file installation for pkgsrc
+SUBST_FILES.egdir+= src/pulse/meson.build
+SUBST_FILES.egdir+= src/daemon/meson.build
+SUBST_VARS.egdir+= EGDIR
+
# Requires --desktop in msgfmt.
_TOOLS_USE_PKGSRC.msgfmt= yes
@@ -29,13 +35,13 @@ GCC_REQD+= 4.8
USE_LANGUAGES= c c++
USE_LIBTOOL= yes
USE_PKGLOCALEDIR= yes
-USE_TOOLS+= aclocal autoheader autoconf automake bash:run gmake gm4
+USE_TOOLS+= bash:run gmake gm4
USE_TOOLS+= msgfmt perl:build pkg-config
-GNU_CONFIGURE= yes
-CONFIGURE_ARGS+= --disable-tcpwrap
-CONFIGURE_ARGS+= --localstatedir=${VARBASE}
-CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFBASEDIR}
-CONFIGURE_ARGS+= --without-fftw
+MESON_ARGS+= -Dtcpwrap=disabled
+MESON_ARGS+= --localstatedir=${VARBASE}
+MESON_ARGS+= --sysconfdir=${PKG_SYSCONFBASEDIR}
+MESON_ARGS+= -Dfftw=disabled
+MESON_ARGS+= -Ddoxygen=false
CONFIGURE_ENV+= DATADIRNAME=${PKGLOCALEDIR}
PKGCONFIG_OVERRIDE+= libpulse-mainloop-glib.pc.in
PKGCONFIG_OVERRIDE+= libpulse-simple.pc.in
@@ -49,7 +55,9 @@ REPLACE_BASH+= src/utils/pa-info
.include "../../mk/bsd.prefs.mk"
# Some tests are incompatible for NetBSD at least
-CONFIGURE_ARGS.NetBSD+= --disable-default-build-tests
+.if ${OPSYS} == "NetBSD"
+MESON_ARGS+= -Dtests=false
+.endif
# broken test for TLS
.if ((${OPSYS} == "NetBSD" && !empty(OS_VERSION:M[45].*)) || \
@@ -58,19 +66,11 @@ CONFIGURE_ENV+= ac_cv_tls=none
.endif
# Wrong sys/capability.h assumptions, incompatible implementation:
-CONFIGURE_ARGS.FreeBSD+= --without-caps
CONFIGURE_ENV+= EGDIR=${EGDIR}
-MAKE_ENV+= EGDIR=${EGDIR}
MAKE_FLAGS+= bashcompletiondir=${PREFIX}/share/bash-completion/completions
-# Disable NEON on NetBSD/aarch64 (does not build with pulseaudio 11.1)
-# use of q0 register in aarch64 is considered not valid
-.if !empty(PKGSRC_COMPILER:Mclang) && (${OPSYS} == "NetBSD" || ${OPSYS} == "Darwin") && ${MACHINE_CPU} == "aarch64"
-CONFIGURE_ARGS+= --disable-neon-opt
-.endif
-
# Use native atomic ops on NetBSD >= 5.0, otherwise
# fallback to libatomic_ops
.if !(${OPSYS} == "NetBSD" && exists(/usr/include/sys/atomic.h))
@@ -78,7 +78,7 @@ CONFIGURE_ARGS+= --disable-neon-opt
.endif
# Version number in patch-configure.ac.must be changed too.
-PLIST_SUBST+= PULSELIBVER=14.2
+PLIST_SUBST+= PULSELIBVER=15.0
PLIST_VARS+= alsa bonjour coreaudio evdev oss sun
# Build module-mmkbd-evdev.so under Linux
@@ -106,7 +106,12 @@ PLIST.oss= yes
.include "options.mk"
-LIBS.NetBSD+= ${LIBOSSAUDIO}
+# LIBS is not passed to meson build system. Use LDFLAGS instead.
+LDFLAGS.NetBSD+= ${LIBOSSAUDIO}
+
+# Do not depend on RPATH $ORIGIN.
+LDFLAGS+= ${COMPILER_RPATH_FLAG}${PREFIX}/lib/pulseaudio
+LDFLAGS+= ${COMPILER_RPATH_FLAG}${PREFIX}/lib/pulse-${PKGVERSION_NOREV}/modules
INSTALLATION_DIRS= share/examples/pulse
@@ -123,7 +128,7 @@ CONF_FILES= ${EGDIR}/client.conf ${PKG_SYSCONFDIR}/client.conf
CONF_FILES+= ${EGDIR}/daemon.conf ${PKG_SYSCONFDIR}/daemon.conf
CONF_FILES+= ${EGDIR}/default.pa ${PKG_SYSCONFDIR}/default.pa
CONF_FILES+= ${EGDIR}/system.pa ${PKG_SYSCONFDIR}/system.pa
-CONF_FILES+= ${EGDIR}/pulseaudio-system.conf \
+CONF_FILES+= ${EGDIR}/dbus-1/system.d/pulseaudio-system.conf \
${PKG_SYSCONFBASE}/dbus-1/system.d/pulseaudio-system.conf
PKG_GROUPS= ${PULSE_GROUP}
@@ -131,16 +136,14 @@ PKG_GROUPS+= ${PULSE_GROUP_REALTIME}
PKG_GROUPS+= ${PULSE_GROUP_ACCESS}
PKG_USERS= ${PULSE_USER}:${PULSE_GROUP}
-pre-configure:
- set -e; cd ${WRKSRC}; \
- aclocal; autoheader; automake -a --foreign -i; autoconf
-
+.include "../../devel/meson/build.mk"
.if ${OPSYS} != Linux && ${OPSYS} != "Darwin"
.include "../../sysutils/consolekit/buildlink3.mk"
.endif
.include "../../audio/libsndfile/buildlink3.mk"
.include "../../audio/speexdsp/buildlink3.mk"
-.include "../../databases/gdbm/buildlink3.mk"
+.include "../../databases/tdb/buildlink3.mk"
+.include "../../devel/check/buildlink3.mk"
.include "../../devel/glib2/buildlink3.mk"
.include "../../devel/libltdl/buildlink3.mk"
.include "../../security/openssl/buildlink3.mk"
diff --git a/audio/pulseaudio/PLIST b/audio/pulseaudio/PLIST
index a5b872762da..3785569f6c6 100644
--- a/audio/pulseaudio/PLIST
+++ b/audio/pulseaudio/PLIST
@@ -1,5 +1,4 @@
-@comment $NetBSD: PLIST,v 1.35 2021/02/02 10:31:31 markd Exp $
-bin/esdcompat
+@comment $NetBSD: PLIST,v 1.36 2021/07/30 12:21:06 ryoon Exp $
bin/pa-info
bin/pacat
bin/pacmd
@@ -47,201 +46,108 @@ include/pulse/volume.h
include/pulse/xmalloc.h
lib/cmake/PulseAudio/PulseAudioConfig.cmake
lib/cmake/PulseAudio/PulseAudioConfigVersion.cmake
-lib/libpulse-mainloop-glib.la
-lib/libpulse-simple.la
-lib/libpulse.la
+lib/libpulse-mainloop-glib.so
+lib/libpulse-mainloop-glib.so.0
+lib/libpulse-mainloop-glib.so.0.0.6
+lib/libpulse-simple.so
+lib/libpulse-simple.so.0
+lib/libpulse-simple.so.0.1.1
+lib/libpulse.so
+lib/libpulse.so.0
+lib/libpulse.so.0.24.0
lib/pkgconfig/libpulse-mainloop-glib.pc
lib/pkgconfig/libpulse-simple.pc
lib/pkgconfig/libpulse.pc
-${PLIST.alsa}lib/pulse-${PULSELIBVER}/modules/libalsa-util.a
${PLIST.alsa}lib/pulse-${PULSELIBVER}/modules/libalsa-util.so
-${PLIST.avahi}lib/pulse-${PULSELIBVER}/modules/libavahi-wrap.a
${PLIST.avahi}lib/pulse-${PULSELIBVER}/modules/libavahi-wrap.so
-lib/pulse-${PULSELIBVER}/modules/libcli.a
-lib/pulse-${PULSELIBVER}/modules/libcli.so
-${PLIST.oss}lib/pulse-${PULSELIBVER}/modules/liboss-util.a
+lib/pulse-${PKGVERSION}/modules/libavahi-wrap.so
+lib/pulse-${PKGVERSION}/modules/libcli.so
${PLIST.oss}lib/pulse-${PULSELIBVER}/modules/liboss-util.so
-lib/pulse-${PULSELIBVER}/modules/libprotocol-cli.a
-lib/pulse-${PULSELIBVER}/modules/libprotocol-cli.so
-lib/pulse-${PULSELIBVER}/modules/libprotocol-esound.a
-lib/pulse-${PULSELIBVER}/modules/libprotocol-esound.so
-lib/pulse-${PULSELIBVER}/modules/libprotocol-http.a
-lib/pulse-${PULSELIBVER}/modules/libprotocol-http.so
-lib/pulse-${PULSELIBVER}/modules/libprotocol-native.a
-lib/pulse-${PULSELIBVER}/modules/libprotocol-native.so
-lib/pulse-${PULSELIBVER}/modules/libprotocol-simple.a
-lib/pulse-${PULSELIBVER}/modules/libprotocol-simple.so
-lib/pulse-${PULSELIBVER}/modules/libraop.a
-lib/pulse-${PULSELIBVER}/modules/libraop.so
-lib/pulse-${PULSELIBVER}/modules/librtp.a
-lib/pulse-${PULSELIBVER}/modules/librtp.so
-lib/pulse-${PULSELIBVER}/modules/module-allow-passthrough.a
-lib/pulse-${PULSELIBVER}/modules/module-allow-passthrough.so
-${PLIST.alsa}lib/pulse-${PULSELIBVER}/modules/module-alsa-card.a
+lib/pulse-${PKGVERSION}/modules/libprotocol-cli.so
+lib/pulse-${PKGVERSION}/modules/libprotocol-http.so
+lib/pulse-${PKGVERSION}/modules/libprotocol-native.so
+lib/pulse-${PKGVERSION}/modules/libprotocol-simple.so
+lib/pulse-${PKGVERSION}/modules/libraop.so
+lib/pulse-${PKGVERSION}/modules/librtp.so
+lib/pulse-${PKGVERSION}/modules/module-allow-passthrough.so
${PLIST.alsa}lib/pulse-${PULSELIBVER}/modules/module-alsa-card.so
-${PLIST.alsa}lib/pulse-${PULSELIBVER}/modules/module-alsa-sink.a
${PLIST.alsa}lib/pulse-${PULSELIBVER}/modules/module-alsa-sink.so
-${PLIST.alsa}lib/pulse-${PULSELIBVER}/modules/module-alsa-source.a
${PLIST.alsa}lib/pulse-${PULSELIBVER}/modules/module-alsa-source.so
-lib/pulse-${PULSELIBVER}/modules/module-always-sink.a
-lib/pulse-${PULSELIBVER}/modules/module-always-sink.so
-lib/pulse-${PULSELIBVER}/modules/module-always-source.a
-lib/pulse-${PULSELIBVER}/modules/module-always-source.so
-lib/pulse-${PULSELIBVER}/modules/module-augment-properties.a
-lib/pulse-${PULSELIBVER}/modules/module-augment-properties.so
-${PLIST.bonjour}lib/pulse-${PULSELIBVER}/modules/module-bonjour-publish.a
+lib/pulse-${PKGVERSION}/modules/module-always-sink.so
+lib/pulse-${PKGVERSION}/modules/module-always-source.so
+lib/pulse-${PKGVERSION}/modules/module-augment-properties.so
${PLIST.bonjour}lib/pulse-${PULSELIBVER}/modules/module-bonjour-publish.so
-lib/pulse-${PULSELIBVER}/modules/module-card-restore.a
-lib/pulse-${PULSELIBVER}/modules/module-card-restore.so
-lib/pulse-${PULSELIBVER}/modules/module-cli-protocol-tcp.a
-lib/pulse-${PULSELIBVER}/modules/module-cli-protocol-tcp.so
-lib/pulse-${PULSELIBVER}/modules/module-cli-protocol-unix.a
-lib/pulse-${PULSELIBVER}/modules/module-cli-protocol-unix.so
-lib/pulse-${PULSELIBVER}/modules/module-cli.a
-lib/pulse-${PULSELIBVER}/modules/module-cli.so
-lib/pulse-${PULSELIBVER}/modules/module-combine-sink.a
-lib/pulse-${PULSELIBVER}/modules/module-combine-sink.so
-lib/pulse-${PULSELIBVER}/modules/module-combine.a
-lib/pulse-${PULSELIBVER}/modules/module-combine.so
-lib/pulse-${PULSELIBVER}/modules/module-console-kit.a
-lib/pulse-${PULSELIBVER}/modules/module-console-kit.so
-${PLIST.coreaudio}lib/pulse-${PULSELIBVER}/modules/module-coreaudio-detect.a
+lib/pulse-${PKGVERSION}/modules/module-card-restore.so
+lib/pulse-${PKGVERSION}/modules/module-cli-protocol-tcp.so
+lib/pulse-${PKGVERSION}/modules/module-cli-protocol-unix.so
+lib/pulse-${PKGVERSION}/modules/module-cli.so
+lib/pulse-${PKGVERSION}/modules/module-combine-sink.so
+lib/pulse-${PKGVERSION}/modules/module-combine.so
+lib/pulse-${PKGVERSION}/modules/module-console-kit.so
${PLIST.coreaudio}lib/pulse-${PULSELIBVER}/modules/module-coreaudio-detect.so
-${PLIST.coreaudio}lib/pulse-${PULSELIBVER}/modules/module-coreaudio-device.a
${PLIST.coreaudio}lib/pulse-${PULSELIBVER}/modules/module-coreaudio-device.so
-lib/pulse-${PULSELIBVER}/modules/module-dbus-protocol.a
-lib/pulse-${PULSELIBVER}/modules/module-dbus-protocol.so
-lib/pulse-${PULSELIBVER}/modules/module-default-device-restore.a
-lib/pulse-${PULSELIBVER}/modules/module-default-device-restore.so
-lib/pulse-${PULSELIBVER}/modules/module-detect.a
-lib/pulse-${PULSELIBVER}/modules/module-detect.so
-lib/pulse-${PULSELIBVER}/modules/module-device-manager.a
-lib/pulse-${PULSELIBVER}/modules/module-device-manager.so
-lib/pulse-${PULSELIBVER}/modules/module-device-restore.a
-lib/pulse-${PULSELIBVER}/modules/module-device-restore.so
-lib/pulse-${PULSELIBVER}/modules/module-echo-cancel.a
-lib/pulse-${PULSELIBVER}/modules/module-echo-cancel.so
-lib/pulse-${PULSELIBVER}/modules/module-esound-compat-spawnfd.a
-lib/pulse-${PULSELIBVER}/modules/module-esound-compat-spawnfd.so
-lib/pulse-${PULSELIBVER}/modules/module-esound-compat-spawnpid.a
-lib/pulse-${PULSELIBVER}/modules/module-esound-compat-spawnpid.so
-lib/pulse-${PULSELIBVER}/modules/module-esound-protocol-tcp.a
-lib/pulse-${PULSELIBVER}/modules/module-esound-protocol-tcp.so
-lib/pulse-${PULSELIBVER}/modules/module-esound-protocol-unix.a
-lib/pulse-${PULSELIBVER}/modules/module-esound-protocol-unix.so
-lib/pulse-${PULSELIBVER}/modules/module-esound-sink.a
-lib/pulse-${PULSELIBVER}/modules/module-esound-sink.so
-lib/pulse-${PULSELIBVER}/modules/module-filter-apply.a
-lib/pulse-${PULSELIBVER}/modules/module-filter-apply.so
-lib/pulse-${PULSELIBVER}/modules/module-filter-heuristics.a
-lib/pulse-${PULSELIBVER}/modules/module-filter-heuristics.so
-${PLIST.gsettings}lib/pulse-${PULSELIBVER}/modules/module-gsettings.a
+lib/pulse-${PKGVERSION}/modules/module-dbus-protocol.so
+lib/pulse-${PKGVERSION}/modules/module-default-device-restore.so
+lib/pulse-${PKGVERSION}/modules/module-detect.so
+lib/pulse-${PKGVERSION}/modules/module-device-manager.so
+lib/pulse-${PKGVERSION}/modules/module-device-restore.so
+lib/pulse-${PKGVERSION}/modules/module-echo-cancel.so
+lib/pulse-${PKGVERSION}/modules/module-filter-apply.so
+lib/pulse-${PKGVERSION}/modules/module-filter-heuristics.so
${PLIST.gsettings}lib/pulse-${PULSELIBVER}/modules/module-gsettings.so
-lib/pulse-${PULSELIBVER}/modules/module-http-protocol-tcp.a
-lib/pulse-${PULSELIBVER}/modules/module-http-protocol-tcp.so
-lib/pulse-${PULSELIBVER}/modules/module-http-protocol-unix.a
-lib/pulse-${PULSELIBVER}/modules/module-http-protocol-unix.so
-lib/pulse-${PULSELIBVER}/modules/module-intended-roles.a
-lib/pulse-${PULSELIBVER}/modules/module-intended-roles.so
-lib/pulse-${PULSELIBVER}/modules/module-ladspa-sink.a
-lib/pulse-${PULSELIBVER}/modules/module-ladspa-sink.so
-${PLIST.lirc}lib/pulse-${PULSELIBVER}/modules/module-lirc.a
+lib/pulse-${PKGVERSION}/modules/module-http-protocol-tcp.so
+lib/pulse-${PKGVERSION}/modules/module-http-protocol-unix.so
+lib/pulse-${PKGVERSION}/modules/module-intended-roles.so
+lib/pulse-${PKGVERSION}/modules/module-ladspa-sink.so
${PLIST.lirc}lib/pulse-${PULSELIBVER}/modules/module-lirc.so
-lib/pulse-${PULSELIBVER}/modules/module-loopback.a
-lib/pulse-${PULSELIBVER}/modules/module-loopback.so
-lib/pulse-${PULSELIBVER}/modules/module-match.a
-lib/pulse-${PULSELIBVER}/modules/module-match.so
-${PLIST.evdev}lib/pulse-${PULSELIBVER}/modules/module-mmkbd-evdev.a
+lib/pulse-${PKGVERSION}/modules/module-loopback.so
+lib/pulse-${PKGVERSION}/modules/module-match.so
${PLIST.evdev}lib/pulse-${PULSELIBVER}/modules/module-mmkbd-evdev.so
-lib/pulse-${PULSELIBVER}/modules/module-native-protocol-fd.a
-lib/pulse-${PULSELIBVER}/modules/module-native-protocol-fd.so
-lib/pulse-${PULSELIBVER}/modules/module-native-protocol-tcp.a
-lib/pulse-${PULSELIBVER}/modules/module-native-protocol-tcp.so
-lib/pulse-${PULSELIBVER}/modules/module-native-protocol-unix.a
-lib/pulse-${PULSELIBVER}/modules/module-native-protocol-unix.so
-lib/pulse-${PULSELIBVER}/modules/module-null-sink.a
-lib/pulse-${PULSELIBVER}/modules/module-null-sink.so
-lib/pulse-${PULSELIBVER}/modules/module-null-source.a
-lib/pulse-${PULSELIBVER}/modules/module-null-source.so
-${PLIST.oss}lib/pulse-${PULSELIBVER}/modules/module-oss.a
+lib/pulse-${PKGVERSION}/modules/module-native-protocol-fd.so
+lib/pulse-${PKGVERSION}/modules/module-native-protocol-tcp.so
+lib/pulse-${PKGVERSION}/modules/module-native-protocol-unix.so
+lib/pulse-${PKGVERSION}/modules/module-null-sink.so
+lib/pulse-${PKGVERSION}/modules/module-null-source.so
${PLIST.oss}lib/pulse-${PULSELIBVER}/modules/module-oss.so
-lib/pulse-${PULSELIBVER}/modules/module-pipe-sink.a
-lib/pulse-${PULSELIBVER}/modules/module-pipe-sink.so
-lib/pulse-${PULSELIBVER}/modules/module-pipe-source.a
-lib/pulse-${PULSELIBVER}/modules/module-pipe-source.so
-lib/pulse-${PULSELIBVER}/modules/module-position-event-sounds.a
-lib/pulse-${PULSELIBVER}/modules/module-position-event-sounds.so
-${PLIST.avahi}lib/pulse-${PULSELIBVER}/modules/module-raop-discover.a
+lib/pulse-${PKGVERSION}/modules/module-pipe-sink.so
+lib/pulse-${PKGVERSION}/modules/module-pipe-source.so
+lib/pulse-${PKGVERSION}/modules/module-position-event-sounds.so
${PLIST.avahi}lib/pulse-${PULSELIBVER}/modules/module-raop-discover.so
-lib/pulse-${PULSELIBVER}/modules/module-raop-sink.a
-lib/pulse-${PULSELIBVER}/modules/module-raop-sink.so
-lib/pulse-${PULSELIBVER}/modules/module-remap-sink.a
-lib/pulse-${PULSELIBVER}/modules/module-remap-sink.so
-lib/pulse-${PULSELIBVER}/modules/module-remap-source.a
-lib/pulse-${PULSELIBVER}/modules/module-remap-source.so
-lib/pulse-${PULSELIBVER}/modules/module-rescue-streams.a
-lib/pulse-${PULSELIBVER}/modules/module-rescue-streams.so
-lib/pulse-${PULSELIBVER}/modules/module-role-cork.a
-lib/pulse-${PULSELIBVER}/modules/module-role-cork.so
-lib/pulse-${PULSELIBVER}/modules/module-role-ducking.a
-lib/pulse-${PULSELIBVER}/modules/module-role-ducking.so
-lib/pulse-${PULSELIBVER}/modules/module-rtp-recv.a
-lib/pulse-${PULSELIBVER}/modules/module-rtp-recv.so
-lib/pulse-${PULSELIBVER}/modules/module-rtp-send.a
-lib/pulse-${PULSELIBVER}/modules/module-rtp-send.so
-lib/pulse-${PULSELIBVER}/modules/module-rygel-media-server.a
-lib/pulse-${PULSELIBVER}/modules/module-rygel-media-server.so
-lib/pulse-${PULSELIBVER}/modules/module-simple-protocol-tcp.a
-lib/pulse-${PULSELIBVER}/modules/module-simple-protocol-tcp.so
-lib/pulse-${PULSELIBVER}/modules/module-simple-protocol-unix.a
-lib/pulse-${PULSELIBVER}/modules/module-simple-protocol-unix.so
-lib/pulse-${PULSELIBVER}/modules/module-sine-source.a
-lib/pulse-${PULSELIBVER}/modules/module-sine-source.so
-lib/pulse-${PULSELIBVER}/modules/module-sine.a
-lib/pulse-${PULSELIBVER}/modules/module-sine.so
-${PLIST.sun}lib/pulse-${PULSELIBVER}/modules/module-solaris.a
+lib/pulse-${PKGVERSION}/modules/module-raop-sink.so
+lib/pulse-${PKGVERSION}/modules/module-remap-sink.so
+lib/pulse-${PKGVERSION}/modules/module-remap-source.so
+lib/pulse-${PKGVERSION}/modules/module-rescue-streams.so
+lib/pulse-${PKGVERSION}/modules/module-role-cork.so
+lib/pulse-${PKGVERSION}/modules/module-role-ducking.so
+lib/pulse-${PKGVERSION}/modules/module-rtp-recv.so
+lib/pulse-${PKGVERSION}/modules/module-rtp-send.so
+lib/pulse-${PKGVERSION}/modules/module-rygel-media-server.so
+lib/pulse-${PKGVERSION}/modules/module-simple-protocol-tcp.so
+lib/pulse-${PKGVERSION}/modules/module-simple-protocol-unix.so
+lib/pulse-${PKGVERSION}/modules/module-sine-source.so
+lib/pulse-${PKGVERSION}/modules/module-sine.so
${PLIST.sun}lib/pulse-${PULSELIBVER}/modules/module-solaris.so
-lib/pulse-${PULSELIBVER}/modules/module-stream-restore.a
-lib/pulse-${PULSELIBVER}/modules/module-stream-restore.so
-lib/pulse-${PULSELIBVER}/modules/module-suspend-on-idle.a
-lib/pulse-${PULSELIBVER}/modules/module-suspend-on-idle.so
-lib/pulse-${PULSELIBVER}/modules/module-switch-on-connect.a
-lib/pulse-${PULSELIBVER}/modules/module-switch-on-connect.so
-lib/pulse-${PULSELIBVER}/modules/module-switch-on-port-available.a
-lib/pulse-${PULSELIBVER}/modules/module-switch-on-port-available.so
-lib/pulse-${PULSELIBVER}/modules/module-tunnel-sink-new.a
-lib/pulse-${PULSELIBVER}/modules/module-tunnel-sink-new.so
-lib/pulse-${PULSELIBVER}/modules/module-tunnel-sink.a
-lib/pulse-${PULSELIBVER}/modules/module-tunnel-sink.so
-lib/pulse-${PULSELIBVER}/modules/module-tunnel-source-new.a
-lib/pulse-${PULSELIBVER}/modules/module-tunnel-source-new.so
-lib/pulse-${PULSELIBVER}/modules/module-tunnel-source.a
-lib/pulse-${PULSELIBVER}/modules/module-tunnel-source.so
-lib/pulse-${PULSELIBVER}/modules/module-virtual-sink.a
-lib/pulse-${PULSELIBVER}/modules/module-virtual-sink.so
-lib/pulse-${PULSELIBVER}/modules/module-virtual-source.a
-lib/pulse-${PULSELIBVER}/modules/module-virtual-source.so
-lib/pulse-${PULSELIBVER}/modules/module-virtual-surround-sink.a
-lib/pulse-${PULSELIBVER}/modules/module-virtual-surround-sink.so
-lib/pulse-${PULSELIBVER}/modules/module-volume-restore.a
-lib/pulse-${PULSELIBVER}/modules/module-volume-restore.so
-${PLIST.x11}lib/pulse-${PULSELIBVER}/modules/module-x11-bell.a
-${PLIST.x11}lib/pulse-${PULSELIBVER}/modules/module-x11-bell.so
-${PLIST.x11}lib/pulse-${PULSELIBVER}/modules/module-x11-cork-request.a
-${PLIST.x11}lib/pulse-${PULSELIBVER}/modules/module-x11-cork-request.so
-${PLIST.x11}lib/pulse-${PULSELIBVER}/modules/module-x11-publish.a
-${PLIST.x11}lib/pulse-${PULSELIBVER}/modules/module-x11-publish.so
-${PLIST.x11}lib/pulse-${PULSELIBVER}/modules/module-x11-xsmp.a
-${PLIST.x11}lib/pulse-${PULSELIBVER}/modules/module-x11-xsmp.so
-${PLIST.avahi}lib/pulse-${PULSELIBVER}/modules/module-zeroconf-discover.a
-${PLIST.avahi}lib/pulse-${PULSELIBVER}/modules/module-zeroconf-discover.so
-${PLIST.avahi}lib/pulse-${PULSELIBVER}/modules/module-zeroconf-publish.a
-${PLIST.avahi}lib/pulse-${PULSELIBVER}/modules/module-zeroconf-publish.so
-lib/pulseaudio/libpulsecommon-${PULSELIBVER}.la
-lib/pulseaudio/libpulsecore-${PULSELIBVER}.la
-${PLIST.oss}lib/pulseaudio/libpulsedsp.la
+lib/pulse-${PKGVERSION}/modules/module-stream-restore.so
+lib/pulse-${PKGVERSION}/modules/module-suspend-on-idle.so
+lib/pulse-${PKGVERSION}/modules/module-switch-on-connect.so
+lib/pulse-${PKGVERSION}/modules/module-switch-on-port-available.so
+lib/pulse-${PKGVERSION}/modules/module-tunnel-sink-new.so
+lib/pulse-${PKGVERSION}/modules/module-tunnel-sink.so
+lib/pulse-${PKGVERSION}/modules/module-tunnel-source-new.so
+lib/pulse-${PKGVERSION}/modules/module-tunnel-source.so
+lib/pulse-${PKGVERSION}/modules/module-virtual-sink.so
+lib/pulse-${PKGVERSION}/modules/module-virtual-source.so
+lib/pulse-${PKGVERSION}/modules/module-volume-restore.so
+${PLIST.x11}lib/pulse-${PKGVERSION}/modules/module-x11-bell.so
+${PLIST.x11}lib/pulse-${PKGVERSION}/modules/module-x11-cork-request.so
+${PLIST.x11}lib/pulse-${PKGVERSION}/modules/module-x11-publish.so
+${PLIST.x11}lib/pulse-${PKGVERSION}/modules/module-x11-xsmp.so
+${PLIST.avahi}lib/pulse-${PKGVERSION}/modules/module-zeroconf-discover.so
+${PLIST.avahi}lib/pulse-${PKGVERSION}/modules/module-zeroconf-publish.so
+lib/pulseaudio/libpulsecommon-${PKGVERSION}.so
+lib/pulseaudio/libpulsecore-${PKGVERSION}.so
+${PLIST.oss}lib/pulseaudio/libpulsedsp.so
${PLIST.gsettings}libexec/pulse/gsettings-helper
-man/man1/esdcompat.1
man/man1/pacat.1
man/man1/pacmd.1
man/man1/pactl.1
@@ -268,13 +174,14 @@ share/bash-completion/completions/parec
share/bash-completion/completions/parecord
share/bash-completion/completions/pasuspender
share/bash-completion/completions/pulseaudio
+share/examples/pulseaudio/dbus-1/system.d/pulseaudio-system.conf
share/examples/pulseaudio/client.conf
share/examples/pulseaudio/daemon.conf
share/examples/pulseaudio/default.pa
-share/examples/pulseaudio/pulseaudio-system.conf
-${PLIST.x11}share/examples/pulseaudio/pulseaudio.desktop
share/examples/pulseaudio/system.pa
${PLIST.gsettings}share/glib-2.0/schemas/org.freedesktop.pulseaudio.gschema.xml
+${PLIST.x11}share/examples/pulseaudio/xdg/Xwayland-session.d/00-pulseaudio-x11
+${PLIST.x11}share/examples/pulseaudio/xdg/autostart/pulseaudio.desktop
share/locale/af/LC_MESSAGES/pulseaudio.mo
share/locale/as/LC_MESSAGES/pulseaudio.mo
share/locale/be/LC_MESSAGES/pulseaudio.mo
@@ -286,6 +193,7 @@ share/locale/da/LC_MESSAGES/pulseaudio.mo
share/locale/de/LC_MESSAGES/pulseaudio.mo
share/locale/de_CH/LC_MESSAGES/pulseaudio.mo
share/locale/el/LC_MESSAGES/pulseaudio.mo
+share/locale/eo/LC_MESSAGES/pulseaudio.mo
share/locale/es/LC_MESSAGES/pulseaudio.mo
share/locale/fi/LC_MESSAGES/pulseaudio.mo
share/locale/fr/LC_MESSAGES/pulseaudio.mo
@@ -313,6 +221,7 @@ share/locale/pl/LC_MESSAGES/pulseaudio.mo
share/locale/pt/LC_MESSAGES/pulseaudio.mo
share/locale/pt_BR/LC_MESSAGES/pulseaudio.mo
share/locale/ru/LC_MESSAGES/pulseaudio.mo
+share/locale/si/LC_MESSAGES/pulseaudio.mo
share/locale/sk/LC_MESSAGES/pulseaudio.mo
share/locale/sr/LC_MESSAGES/pulseaudio.mo
share/locale/sr@latin/LC_MESSAGES/pulseaudio.mo
diff --git a/audio/pulseaudio/distinfo b/audio/pulseaudio/distinfo
index 235cef0bd78..293ed6ffe9a 100644
--- a/audio/pulseaudio/distinfo
+++ b/audio/pulseaudio/distinfo
@@ -1,15 +1,17 @@
-$NetBSD: distinfo,v 1.78 2021/03/30 18:09:45 wiz Exp $
+$NetBSD: distinfo,v 1.79 2021/07/30 12:21:06 ryoon Exp $
-SHA1 (pulseaudio-14.2.tar.xz) = 5dfc46595e981f0eb6308d07666f4108a69b2106
-RMD160 (pulseaudio-14.2.tar.xz) = 5e52b8549a0ece2b52df854b5edaa2998c438ccd
-SHA512 (pulseaudio-14.2.tar.xz) = 196338cbb26c542301b6d0579070dfbcc42e76dc17405f3e216af70519bec2003089b80c573a32d5f96bdab078631ca09ce89998ab7a0a8ffa26955a9bcb3c4a
-Size (pulseaudio-14.2.tar.xz) = 1951300 bytes
-SHA1 (patch-configure.ac) = c7088a6cde0898942806a7d0871cf24f16df3cf6
-SHA1 (patch-src_Makefile.am) = 5d136002c12016a8b451e84103a627685ec403de
-SHA1 (patch-src_modules_module-detect.c) = 860529fef9a14cbaa3979d985f5fde391b121484
-SHA1 (patch-src_modules_oss_module-oss.c) = d254f6c346d34470c9e178199c485e929bfd84c5
+SHA1 (pulseaudio-15.0.tar.xz) = 41e9f001770ccf7b47dc228311a99a09bb579563
+RMD160 (pulseaudio-15.0.tar.xz) = ed6607183e7c137e5df10cee31e1567c76aa6da1
+SHA512 (pulseaudio-15.0.tar.xz) = 352ef20384c76c631c0faa73b08e2318902a433712e0c086a5ac7a0ae58873c8d4be8f35879bdec71a93b19ae8e2ba073cacac4d56215bcf58375a0cd9d88833
+Size (pulseaudio-15.0.tar.xz) = 1521760 bytes
+SHA1 (patch-meson.build) = f5916ceee1e17923073c009778c4d9dd7b3fae74
+SHA1 (patch-src_daemon_meson.build) = 20f2909ceaea27d43ef2cb5fb228952f8376fb3c
+SHA1 (patch-src_modules_module-detect.c) = 72605c7d9392be7217dab2fbd9ecc85ed02021aa
+SHA1 (patch-src_modules_oss_module-oss.c) = d373b855138a931640be7bf5271a33b402b549e5
SHA1 (patch-src_modules_raop_raop-client.h) = 9fb7ae86a6852022f53aee3765777bd136250ffb
+SHA1 (patch-src_pulse_meson.build) = 56b5f1d4fc9d617a9bee95f9cbaa8a6d529996e6
+SHA1 (patch-src_pulsecore_creds.h) = a73c9669e00ff7625bc645c54e45403f20ac389b
SHA1 (patch-src_pulsecore_mix__neon.c) = 6f6d33d38024d65045d637d48276e1ba92b81342
SHA1 (patch-src_pulsecore_shm.c) = c7079e8ac3461f5069e1415a2816784781aaa59c
SHA1 (patch-src_tests_rtpoll-test.c) = 3584aeda2b6f7eb14af9cb5c665a31d972a306ae
-SHA1 (patch-src_utils_padsp.c) = e893d6848e2a2f6ef0cc11d1b1f5fb51abbc26a7
+SHA1 (patch-src_utils_padsp.c) = 42be17be4dc94e8b96652a9f32a52902af261497
diff --git a/audio/pulseaudio/options.mk b/audio/pulseaudio/options.mk
index d2de2c97890..4f89876df40 100644
--- a/audio/pulseaudio/options.mk
+++ b/audio/pulseaudio/options.mk
@@ -1,4 +1,4 @@
-# $NetBSD: options.mk,v 1.13 2019/10/27 12:44:28 kamil Exp $
+# $NetBSD: options.mk,v 1.14 2021/07/30 12:21:06 ryoon Exp $
.include "../../comms/lirc/available.mk"
@@ -16,7 +16,7 @@ PLIST_VARS+= avahi gsettings x11 lirc
.include "../../net/avahi/buildlink3.mk"
PLIST.avahi= yes
.else
-CONFIGURE_ARGS+= --disable-avahi
+MESON_ARGS+= -Davahi=disabled
.endif
.if !empty(PKG_OPTIONS:Mgsettings)
diff --git a/audio/pulseaudio/patches/patch-configure.ac b/audio/pulseaudio/patches/patch-configure.ac
deleted file mode 100644
index e736d9c55c9..00000000000
--- a/audio/pulseaudio/patches/patch-configure.ac
+++ /dev/null
@@ -1,104 +0,0 @@
-$NetBSD: patch-configure.ac,v 1.17 2021/03/30 18:09:45 wiz Exp $
-
-* Don't assume sys/capability.h is guaranteed present on Linux.
-* Fix NetBSD detection for libatomics_ops check.
-* Fix unportable test(1) construct.
-* Adapt /var-paths for pkgsrc defaults.
-* Install default config files in example directory; pkgsrc config
- file framework will install them in the right place.
-* Avoid hardcoded SDK paths on Darwin.
-* Check for memfd_create instead of assuming libc does not define it.
- (Will be included in next release after 11.1)
-* On Darwin, do not use macosx-version-min, and remove old NSIG
- workaround.
-
---- configure.ac.orig 2021-01-16 17:26:36.000000000 +0000
-+++ configure.ac
-@@ -21,7 +21,7 @@
-
- AC_PREREQ(2.63)
-
--AC_INIT([pulseaudio],[m4_esyscmd(./git-version-gen .tarball-version)],[pulseaudio-discuss (at) lists (dot) freedesktop (dot) org],[pulseaudio],[http://pulseaudio.org/])
-+AC_INIT([pulseaudio],[14.2],[pulseaudio-discuss (at) lists (dot) freedesktop (dot) org],[pulseaudio],[http://pulseaudio.org/])
- AC_CONFIG_SRCDIR([src/daemon/main.c])
- AC_CONFIG_MACRO_DIR([m4])
- AC_CONFIG_HEADERS([config.h])
-@@ -120,7 +120,6 @@ AC_MSG_CHECKING([host operating system])
- case "$host_os" in
- linux*)
- AC_MSG_RESULT([linux])
-- host_has_caps=1
- os_is_linux=1
- ;;
- freebsd*)
-@@ -151,9 +150,6 @@ AC_SUBST([OS_IS_WIN32], [$os_is_win32])
-
- # Platform specific hacks
- case "$host_os" in
-- darwin* )
-- AC_DEFINE([_DARWIN_C_SOURCE], [200112L], [Needed to get NSIG on Mac OS X])
-- ;;
- mingw* )
- AC_DEFINE([WIN32_LEAN_AND_MEAN], 1, [Needed to avoid including unnecessary headers on Windows])
- ;;
-@@ -617,6 +613,9 @@ AS_IF([test "x$enable_memfd" = "xyes" &&
- AS_IF([test "x$HAVE_MEMFD" = "x1"],
- AC_CHECK_FUNCS([memfd_create]))
-
-+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.]))
-@@ -1375,9 +1374,9 @@ fi
-
- PA_SYSTEM_RUNTIME_PATH="${localstatedir}/run/pulse"
- AX_DEFINE_DIR(PA_SYSTEM_RUNTIME_PATH, PA_SYSTEM_RUNTIME_PATH, [System runtime dir])
--PA_SYSTEM_CONFIG_PATH="${localstatedir}/lib/pulse"
-+PA_SYSTEM_CONFIG_PATH="${localstatedir}/db/pulse"
- AX_DEFINE_DIR(PA_SYSTEM_CONFIG_PATH, PA_SYSTEM_CONFIG_PATH, [System config dir])
--PA_SYSTEM_STATE_PATH="${localstatedir}/lib/pulse"
-+PA_SYSTEM_STATE_PATH="${localstatedir}/db/pulse"
- AX_DEFINE_DIR(PA_SYSTEM_STATE_PATH, PA_SYSTEM_STATE_PATH, [System state dir])
-
- PA_BINARY=${bindir}/pulseaudio${EXEEXT}
-@@ -1389,8 +1388,9 @@ AX_DEFINE_DIR(PACTL_BINARY, PACTL_BINARY
- AC_SUBST(PA_SOEXT, [.so])
- AC_DEFINE(PA_SOEXT, [".so"], [Shared object extension])
-
--AC_SUBST(pulseconfdir, ["${sysconfdir}/pulse"])
--AX_DEFINE_DIR(PA_DEFAULT_CONFIG_DIR, pulseconfdir, [Location of configuration files])
-+AC_SUBST(pulseconfdirreal, ["${sysconfdir}/pulse"])
-+AC_SUBST(pulseconfdir, ["${EGDIR}"])
-+AX_DEFINE_DIR(PA_DEFAULT_CONFIG_DIR, pulseconfdirreal, [Location of configuration files])
-
- #### Mac OSX specific stuff #####
-
-@@ -1407,8 +1407,6 @@ AC_ARG_WITH(mac-sysroot,
- mac_sysroot=$withval)
-
- if test "x$os_is_darwin" = "x1" ; then
-- LDFLAGS="$LDFLAGS -mmacosx-version-min=$mac_version_min"
-- CFLAGS="$CFLAGS -mmacosx-version-min=$mac_version_min"
-
- if test "x$mac_sysroot" != "x" ; then
- LDFLAGS="$LDFLAGS -isysroot $mac_sysroot"
-@@ -1478,7 +1476,7 @@ fi
-
- AC_ARG_ENABLE([stream-restore-clear-old-devices],
- AS_HELP_STRING([--enable-stream-restore-clear-old-devices], [Forget per-stream routing settings that have been set before version 14.0. Recommended when using GNOME. See https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/issues/832]))
--if test "x$enable_stream_restore_clear_old_devices" == "xyes" ; then
-+if test "x$enable_stream_restore_clear_old_devices" = "xyes" ; then
- AC_DEFINE(STREAM_RESTORE_CLEAR_OLD_DEVICES, [1], [module-stream-restore: Clear old devices])
- fi
-
-@@ -1658,7 +1656,7 @@ AS_IF([test "x$HAVE_ESOUND" = "x1" -a "x
- AS_IF([test "x$HAVE_GCOV" = "x1"], ENABLE_GCOV=yes, ENABLE_GCOV=no)
- AS_IF([test "x$HAVE_LIBCHECK" = "x1"], ENABLE_TESTS=yes, ENABLE_TESTS=no)
- AS_IF([test "x$enable_legacy_database_entry_format" != "xno"], ENABLE_LEGACY_DATABASE_ENTRY_FORMAT=yes, ENABLE_LEGACY_DATABASE_ENTRY_FORMAT=no)
--AS_IF([test "x$enable_stream_restore_clear_old_devices" == "xyes"], ENABLE_STREAM_RESTORE_CLEAR_OLD_DEVICES=yes, ENABLE_STREAM_RESTORE_CLEAR_OLD_DEVICES=no)
-+AS_IF([test "x$enable_stream_restore_clear_old_devices" = "xyes"], ENABLE_STREAM_RESTORE_CLEAR_OLD_DEVICES=yes, ENABLE_STREAM_RESTORE_CLEAR_OLD_DEVICES=no)
-
- echo "
- ---{ $PACKAGE_NAME $VERSION }---
diff --git a/audio/pulseaudio/patches/patch-meson.build b/audio/pulseaudio/patches/patch-meson.build
new file mode 100644
index 00000000000..65d6c348e2a
--- /dev/null
+++ b/audio/pulseaudio/patches/patch-meson.build
@@ -0,0 +1,16 @@
+$NetBSD: patch-meson.build,v 1.1 2021/07/30 12:21:06 ryoon Exp $
+
+* Non-MS Windows case uses libintl for dgettext.
+ Fix build under NetBSD.
+
+--- meson.build.orig 2021-07-27 20:02:27.711868000 +0000
++++ meson.build
+@@ -348,7 +349,7 @@ if cc.has_header_symbol('sys/syscall.h',
+ endif
+
+ if cc.has_function('dgettext')
+- if host_machine.system() != 'windows'
++ if host_machine.system() == 'windows'
+ libintl_dep = []
+ else
+ libintl_dep = cc.find_library('intl')
diff --git a/audio/pulseaudio/patches/patch-src_Makefile.am b/audio/pulseaudio/patches/patch-src_Makefile.am
deleted file mode 100644
index ac372fb8edc..00000000000
--- a/audio/pulseaudio/patches/patch-src_Makefile.am
+++ /dev/null
@@ -1,24 +0,0 @@
-$NetBSD: patch-src_Makefile.am,v 1.3 2021/01/01 09:50:40 ryoon Exp $
-
-Install files into pkgsrc example paths; will be correctly
-installed by pkgsrc configuration file framework.
-
---- src/Makefile.am.orig 2020-11-11 02:07:46.000000000 +0000
-+++ src/Makefile.am
-@@ -25,14 +25,14 @@ pulseincludedir=$(includedir)/pulse
- pulsecoreincludedir=$(includedir)/pulsecore
- pulselibexecdir=$(libexecdir)/pulse
- if HAVE_X11
--xdgautostartdir=$(sysconfdir)/xdg/autostart
-+xdgautostartdir=${EGDIR}
- endif
- if HAVE_ALSA
- alsaprofilesetsdir=$(alsadatadir)/profile-sets
- alsapathsdir=$(alsadatadir)/paths
- endif
- if HAVE_DBUS
--dbuspolicydir=$(sysconfdir)/dbus-1/system.d
-+dbuspolicydir=${EGDIR}
- endif
- if HAVE_GSETTINGS
- gsettingsdataconvertdir=$(datadir)/GConf/gsettings
diff --git a/audio/pulseaudio/patches/patch-src_daemon_meson.build b/audio/pulseaudio/patches/patch-src_daemon_meson.build
new file mode 100644
index 00000000000..4339fcfad0f
--- /dev/null
+++ b/audio/pulseaudio/patches/patch-src_daemon_meson.build
@@ -0,0 +1,55 @@
+$NetBSD: patch-src_daemon_meson.build,v 1.1 2021/07/30 12:21:06 ryoon Exp $
+
+--- src/daemon/meson.build.orig 2021-07-27 20:02:27.738868200 +0000
++++ src/daemon/meson.build
+@@ -52,7 +52,7 @@ if x11_dep.found()
+ output : '00-pulseaudio-x11',
+ configuration : conf,
+ install : true,
+- install_dir : join_paths(sysconfdir, 'xdg', 'Xwayland-session.d'),
++ install_dir : join_paths('@EGDIR@', 'xdg', 'Xwayland-session.d'),
+ )
+
+ desktop_file = i18n.merge_file(
+@@ -61,7 +61,7 @@ if x11_dep.found()
+ po_dir : po_dir,
+ type : 'desktop',
+ install : true,
+- install_dir : join_paths(sysconfdir, 'xdg', 'autostart'),
++ install_dir : join_paths('@EGDIR@', 'xdg', 'autostart'),
+ )
+
+ desktop_utils = find_program('desktop-file-validate', required: false)
+@@ -93,7 +93,7 @@ custom_target('daemon.conf',
+ command : [m4, '@INPUT@'],
+ build_by_default : true,
+ install : true,
+- install_dir : pulsesysconfdir,
++ install_dir : '@EGDIR@',
+ )
+
+ default_conf = configuration_data()
+@@ -117,7 +117,7 @@ custom_target('default.pa',
+ command : [m4, '@INPUT@'],
+ build_by_default : true,
+ install : true,
+- install_dir : pulsesysconfdir,
++ install_dir : '@EGDIR@',
+ )
+
+ system_conf = configuration_data()
+@@ -136,12 +136,12 @@ custom_target('system.pa',
+ command : [m4, '@INPUT@'],
+ build_by_default : true,
+ install : true,
+- install_dir : pulsesysconfdir,
++ install_dir : '@EGDIR@',
+ )
+
+ if dbus_dep.found()
+ install_data('pulseaudio-system.conf',
+- install_dir : join_paths(sysconfdir, 'dbus-1', 'system.d')
++ install_dir : join_paths('@EGDIR@', 'dbus-1', 'system.d')
+ )
+ endif
+
diff --git a/audio/pulseaudio/patches/patch-src_modules_module-detect.c b/audio/pulseaudio/patches/patch-src_modules_module-detect.c
index f602a16f6da..cba229b150a 100644
--- a/audio/pulseaudio/patches/patch-src_modules_module-detect.c
+++ b/audio/pulseaudio/patches/patch-src_modules_module-detect.c
@@ -1,10 +1,10 @@
-$NetBSD: patch-src_modules_module-detect.c,v 1.7 2021/02/20 22:10:39 ryoon Exp $
+$NetBSD: patch-src_modules_module-detect.c,v 1.8 2021/07/30 12:21:06 ryoon Exp $
Hack to set proper sound device on NetBSD.
---- src/modules/module-detect.c.orig 2019-07-05 00:06:47.000000000 +0000
+--- src/modules/module-detect.c.orig 2021-07-27 20:02:27.767868500 +0000
+++ src/modules/module-detect.c
-@@ -121,7 +121,27 @@ static int detect_alsa(pa_core *c, int j
+@@ -121,7 +121,28 @@ static int detect_alsa(pa_core *c, int j
static int detect_oss(pa_core *c, int just_one) {
FILE *f;
int n = 0, b = 0;
@@ -20,19 +20,20 @@ Hack to set proper sound device on NetBSD.
+ pa_snprintf(args, sizeof(args), "mmap=0 device=@DEVOSSAUDIO@");
+ if (pa_module_load(&m, c, "module-oss", args) < 0)
+ return 0;
++ n = 1;
+
+ for (int i = 0; i < 4; i++) {
+ pa_snprintf(args, sizeof(args), "mmap=0 device=@DEVOSSAUDIO@%d", i);
+ if (pa_module_load(&m, c, "module-oss", args) < 0)
-+ return i + 1;
++ return n;
++ n++;
+ }
+
-+ n = 5;
+#else /* __linux__ or __FreeBSD__ */
if (!(f = pa_fopen_cloexec("/dev/sndstat", "r")) &&
!(f = pa_fopen_cloexec("/proc/sndstat", "r")) &&
!(f = pa_fopen_cloexec("/proc/asound/oss/sndstat", "r"))) {
-@@ -135,7 +155,6 @@ static int detect_oss(pa_core *c, int ju
+@@ -135,7 +156,6 @@ static int detect_oss(pa_core *c, int ju
while (!feof(f)) {
char line[256], args[64];
unsigned device;
@@ -40,7 +41,7 @@ Hack to set proper sound device on NetBSD.
if (!fgets(line, sizeof(line), f))
break;
-@@ -174,6 +193,7 @@ static int detect_oss(pa_core *c, int ju
+@@ -203,6 +223,7 @@ static int detect_oss(pa_core *c, int ju
}
fclose(f);
diff --git a/audio/pulseaudio/patches/patch-src_modules_oss_module-oss.c b/audio/pulseaudio/patches/patch-src_modules_oss_module-oss.c
index fe58b903f05..c8979a5ea9c 100644
--- a/audio/pulseaudio/patches/patch-src_modules_oss_module-oss.c
+++ b/audio/pulseaudio/patches/patch-src_modules_oss_module-oss.c
@@ -1,8 +1,8 @@
-$NetBSD: patch-src_modules_oss_module-oss.c,v 1.3 2021/02/20 22:10:39 ryoon Exp $
+$NetBSD: patch-src_modules_oss_module-oss.c,v 1.4 2021/07/30 12:21:06 ryoon Exp $
Set DEVOSSAUDIO value to fix default device on NetBSD at least.
---- src/modules/oss/module-oss.c.orig 2021-01-16 17:26:36.000000000 +0000
+--- src/modules/oss/module-oss.c.orig 2021-07-27 20:02:27.777868700 +0000
+++ src/modules/oss/module-oss.c
@@ -95,7 +95,7 @@ PA_MODULE_USAGE(
PA_MODULE_DEPRECATED("Please use module-alsa-card instead of module-oss!");
diff --git a/audio/pulseaudio/patches/patch-src_pulse_meson.build b/audio/pulseaudio/patches/patch-src_pulse_meson.build
new file mode 100644
index 00000000000..f19d416cf9a
--- /dev/null
+++ b/audio/pulseaudio/patches/patch-src_pulse_meson.build
@@ -0,0 +1,11 @@
+$NetBSD: patch-src_pulse_meson.build,v 1.1 2021/07/30 12:21:06 ryoon Exp $
+
+--- src/pulse/meson.build.orig 2021-07-27 20:02:27.811869100 +0000
++++ src/pulse/meson.build
+@@ -134,5 +134,5 @@ client_conf_file = configure_file(
+ input : 'client.conf.in',
+ output : 'client.conf',
+ configuration : client_conf,
+- install_dir : pulsesysconfdir,
++ install_dir : '@EGDIR@',
+ )
diff --git a/audio/pulseaudio/patches/patch-src_pulsecore_creds.h b/audio/pulseaudio/patches/patch-src_pulsecore_creds.h
new file mode 100644
index 00000000000..5c054f793ec
--- /dev/null
+++ b/audio/pulseaudio/patches/patch-src_pulsecore_creds.h
@@ -0,0 +1,15 @@
+$NetBSD: patch-src_pulsecore_creds.h,v 1.1 2021/07/30 12:21:06 ryoon Exp $
+
+* Disable ucred for NetBSD.
+
+--- src/pulsecore/creds.h.orig 2021-07-27 20:02:27.821869100 +0000
++++ src/pulsecore/creds.h
+@@ -34,7 +34,7 @@
+ typedef struct pa_creds pa_creds;
+ typedef struct pa_cmsg_ancil_data pa_cmsg_ancil_data;
+
+-#if defined(SCM_CREDENTIALS) || defined(SCM_CREDS)
++#if (defined(SCM_CREDENTIALS) || defined(SCM_CREDS)) && !defined(__NetBSD__)
+
+ #define HAVE_CREDS 1
+
diff --git a/audio/pulseaudio/patches/patch-src_utils_padsp.c b/audio/pulseaudio/patches/patch-src_utils_padsp.c
index cb8d720bf7d..8eb767f6f19 100644
--- a/audio/pulseaudio/patches/patch-src_utils_padsp.c
+++ b/audio/pulseaudio/patches/patch-src_utils_padsp.c
@@ -1,4 +1,4 @@
-$NetBSD: patch-src_utils_padsp.c,v 1.2 2018/09/11 16:39:42 jperkin Exp $
+$NetBSD: patch-src_utils_padsp.c,v 1.3 2021/07/30 12:21:06 ryoon Exp $
ioctl() takes u_long argument on NetBSD.
On NetBSD<6 and 6.99.0-6.99.7, use third parameter in ioctl instead of varargs.
@@ -6,7 +6,7 @@ stat() system call has been versioned, use latest version when dlopen()ing.
Try more typical device names.
SOUND_PCM_* is not available on SunOS.
---- src/utils/padsp.c.orig 2018-07-13 19:06:13.000000000 +0000
+--- src/utils/padsp.c.orig 2021-07-27 20:02:27.853869700 +0000
+++ src/utils/padsp.c
@@ -48,6 +48,10 @@
#include <linux/sockios.h>
@@ -105,42 +105,16 @@ SOUND_PCM_* is not available on SunOS.
case SOUND_PCM_READ_BITS:
debug(DEBUG_LEVEL_NORMAL, __FILE__": SOUND_PCM_READ_BITS\n");
-@@ -2394,21 +2422,33 @@ fail:
+@@ -2394,7 +2422,7 @@ fail:
return ret;
}
--#ifndef __GLIBC__
-+/* NetBSD < 6 and 6.99.0 - 6.99.6 used a different ioctl() definition */
-+#if defined(__NetBSD__) && (__NetBSD_Version__ < 600000000 || \
-+ (__NetBSD_Version__ > 699000000 && __NetBSD_Version__ < 699000700) )
-+# define OLD_NETBSD_IOCTL_CALL
-+#endif
-+
-+#if !defined(__GLIBC__) && !defined(__NetBSD__)
+-#if !defined(__GLIBC__) && !defined(__FreeBSD__)
++#if !defined(__GLIBC__) && !defined(__FreeBSD__) && !defined(__NetBSD__)
int ioctl(int fd, int request, ...) {
-+#elif defined(OLD_NETBSD_IOCTL_CALL)
-+int ioctl(int fd, u_long request, void *_argp) {
#else
int ioctl(int fd, unsigned long request, ...) {
- #endif
- fd_info *i;
-+#if !defined(OLD_NETBSD_IOCTL_CALL)
- va_list args;
-+#endif
- void *argp;
- int r, _errno = 0;
-
- debug(DEBUG_LEVEL_VERBOSE, __FILE__": ioctl()\n");
-
-+#if defined(OLD_NETBSD_IOCTL_CALL)
- va_start(args, request);
- argp = va_arg(args, void *);
- va_end(args);
-+#endif
-
- if (!function_enter()) {
- LOAD_IOCTL_FUNC();
-@@ -2536,7 +2576,7 @@ int stat(const char *pathname, struct st
+@@ -2536,7 +2564,7 @@ int stat(const char *pathname, struct st
}
#ifdef HAVE_OPEN64
#undef stat64