summaryrefslogtreecommitdiff
path: root/audio
diff options
context:
space:
mode:
authorschmonz <schmonz@pkgsrc.org>2021-09-17 06:47:29 +0000
committerschmonz <schmonz@pkgsrc.org>2021-09-17 06:47:29 +0000
commit842643109ed8ad9a94581c47c3aa735c758db426 (patch)
tree87d7fb8532a26e42b5f0d88587cff627de9b615b /audio
parent07940c5b2f8d73838b75961ebbba6fca90205783 (diff)
downloadpkgsrc-842643109ed8ad9a94581c47c3aa735c758db426.tar.gz
Fix macOS build. NFCI elsewhere.
Diffstat (limited to 'audio')
-rw-r--r--audio/pulseaudio/Makefile15
-rw-r--r--audio/pulseaudio/PLIST175
-rw-r--r--audio/pulseaudio/distinfo7
-rw-r--r--audio/pulseaudio/patches/patch-src_meson.build14
-rw-r--r--audio/pulseaudio/patches/patch-src_pulse_meson.build21
-rw-r--r--audio/pulseaudio/patches/patch-src_pulsecore_core-rtclock.c20
-rw-r--r--audio/pulseaudio/patches/patch-src_pulsecore_meson.build19
7 files changed, 171 insertions, 100 deletions
diff --git a/audio/pulseaudio/Makefile b/audio/pulseaudio/Makefile
index 7c7516dae76..4f34e0986d9 100644
--- a/audio/pulseaudio/Makefile
+++ b/audio/pulseaudio/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.164 2021/08/26 13:20:40 jperkin Exp $
+# $NetBSD: Makefile,v 1.165 2021/09/17 06:47:29 schmonz Exp $
DISTNAME= pulseaudio-15.0
CATEGORIES= audio
@@ -75,7 +75,13 @@ MAKE_FLAGS+= bashcompletiondir=${PREFIX}/share/bash-completion/completions
# Version number in patch-configure.ac.must be changed too.
PLIST_SUBST+= PULSELIBVER=15.0
-PLIST_VARS+= alsa bonjour coreaudio evdev oss
+PLIST_VARS+= alsa evdev oss
+
+.if ${SHLIB_TYPE} == "dylib"
+PLIST_SUBST+= SOEXT=dylib
+.else
+PLIST_SUBST+= SOEXT=so
+.endif
# Build module-mmkbd-evdev.so under Linux
.if ${OPSYS} == "Linux"
@@ -93,10 +99,7 @@ CPPFLAGS+= -D_XOPEN_SOURCE=600 -D__EXTENSIONS__ -DBSD_COMP
. if ${OS_VERSION} == "5.11"
PLIST.oss= yes
. endif
-.elif ${OPSYS} == "Darwin"
-PLIST.bonjour= yes
-PLIST.coreaudio= yes
-.else
+.elif ${OPSYS} != "Darwin"
PLIST.oss= yes
.endif
diff --git a/audio/pulseaudio/PLIST b/audio/pulseaudio/PLIST
index 5a4ae6b2100..1cfdc10096f 100644
--- a/audio/pulseaudio/PLIST
+++ b/audio/pulseaudio/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.38 2021/08/26 13:20:40 jperkin Exp $
+@comment $NetBSD: PLIST,v 1.39 2021/09/17 06:47:29 schmonz Exp $
bin/pa-info
bin/pacat
bin/pacmd
@@ -58,91 +58,88 @@ 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.so
-${PLIST.avahi}lib/pulse-${PULSELIBVER}/modules/libavahi-wrap.so
-lib/pulse-${PKGVERSION}/modules/libavahi-wrap.so
-lib/pulse-${PKGVERSION}/modules/libcli.so
-${PLIST.oss}lib/pulse-${PULSELIBVER}/modules/liboss-util.so
-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.so
-${PLIST.alsa}lib/pulse-${PULSELIBVER}/modules/module-alsa-source.so
-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-${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.so
-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-${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-${PKGVERSION}/modules/module-loopback.so
-lib/pulse-${PKGVERSION}/modules/module-match.so
-${PLIST.evdev}lib/pulse-${PULSELIBVER}/modules/module-mmkbd-evdev.so
-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-${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-${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
-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
+${PLIST.alsa}lib/pulse-${PULSELIBVER}/modules/libalsa-util.${SOEXT}
+${PLIST.avahi}lib/pulse-${PULSELIBVER}/modules/libavahi-wrap.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/libavahi-wrap.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/libcli.${SOEXT}
+${PLIST.oss}lib/pulse-${PULSELIBVER}/modules/liboss-util.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/libprotocol-cli.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/libprotocol-http.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/libprotocol-native.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/libprotocol-simple.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/libraop.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/librtp.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-allow-passthrough.${SOEXT}
+${PLIST.alsa}lib/pulse-${PULSELIBVER}/modules/module-alsa-card.${SOEXT}
+${PLIST.alsa}lib/pulse-${PULSELIBVER}/modules/module-alsa-sink.${SOEXT}
+${PLIST.alsa}lib/pulse-${PULSELIBVER}/modules/module-alsa-source.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-always-sink.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-always-source.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-augment-properties.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-card-restore.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-cli-protocol-tcp.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-cli-protocol-unix.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-cli.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-combine-sink.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-combine.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-console-kit.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-dbus-protocol.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-default-device-restore.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-detect.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-device-manager.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-device-restore.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-echo-cancel.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-filter-apply.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-filter-heuristics.${SOEXT}
+${PLIST.gsettings}lib/pulse-${PULSELIBVER}/modules/module-gsettings.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-http-protocol-tcp.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-http-protocol-unix.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-intended-roles.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-ladspa-sink.${SOEXT}
+${PLIST.lirc}lib/pulse-${PULSELIBVER}/modules/module-lirc.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-loopback.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-match.${SOEXT}
+${PLIST.evdev}lib/pulse-${PULSELIBVER}/modules/module-mmkbd-evdev.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-native-protocol-fd.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-native-protocol-tcp.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-native-protocol-unix.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-null-sink.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-null-source.${SOEXT}
+${PLIST.oss}lib/pulse-${PULSELIBVER}/modules/module-oss.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-pipe-sink.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-pipe-source.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-position-event-sounds.${SOEXT}
+${PLIST.avahi}lib/pulse-${PULSELIBVER}/modules/module-raop-discover.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-raop-sink.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-remap-sink.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-remap-source.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-rescue-streams.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-role-cork.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-role-ducking.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-rtp-recv.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-rtp-send.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-rygel-media-server.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-simple-protocol-tcp.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-simple-protocol-unix.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-sine-source.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-sine.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-stream-restore.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-suspend-on-idle.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-switch-on-connect.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-switch-on-port-available.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-tunnel-sink-new.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-tunnel-sink.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-tunnel-source-new.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-tunnel-source.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-virtual-sink.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-virtual-source.${SOEXT}
+lib/pulse-${PKGVERSION}/modules/module-volume-restore.${SOEXT}
+${PLIST.x11}lib/pulse-${PKGVERSION}/modules/module-x11-bell.${SOEXT}
+${PLIST.x11}lib/pulse-${PKGVERSION}/modules/module-x11-cork-request.${SOEXT}
+${PLIST.x11}lib/pulse-${PKGVERSION}/modules/module-x11-publish.${SOEXT}
+${PLIST.x11}lib/pulse-${PKGVERSION}/modules/module-x11-xsmp.${SOEXT}
+${PLIST.avahi}lib/pulse-${PKGVERSION}/modules/module-zeroconf-discover.${SOEXT}
+${PLIST.avahi}lib/pulse-${PKGVERSION}/modules/module-zeroconf-publish.${SOEXT}
lib/pulseaudio/libpulsecommon-${PKGVERSION}.so
lib/pulseaudio/libpulsecore-${PKGVERSION}.so
${PLIST.oss}lib/pulseaudio/libpulsedsp.so
@@ -150,7 +147,7 @@ ${PLIST.gsettings}libexec/pulse/gsettings-helper
man/man1/pacat.1
man/man1/pacmd.1
man/man1/pactl.1
-man/man1/padsp.1
+${PLIST.oss}man/man1/padsp.1
man/man1/pamon.1
man/man1/paplay.1
man/man1/parec.1
@@ -173,14 +170,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/dbus-1/system.d/pulseaudio-system.conf
share/examples/pulseaudio/default.pa
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
+${PLIST.gsettings}share/glib-2.0/schemas/org.freedesktop.pulseaudio.gschema.xml
share/locale/af/LC_MESSAGES/pulseaudio.mo
share/locale/as/LC_MESSAGES/pulseaudio.mo
share/locale/be/LC_MESSAGES/pulseaudio.mo
diff --git a/audio/pulseaudio/distinfo b/audio/pulseaudio/distinfo
index 86789700f7f..0f922521e7c 100644
--- a/audio/pulseaudio/distinfo
+++ b/audio/pulseaudio/distinfo
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.80 2021/09/16 13:02:34 schmonz Exp $
+$NetBSD: distinfo,v 1.81 2021/09/17 06:47:29 schmonz Exp $
SHA1 (pulseaudio-15.0.tar.xz) = 41e9f001770ccf7b47dc228311a99a09bb579563
RMD160 (pulseaudio-15.0.tar.xz) = ed6607183e7c137e5df10cee31e1567c76aa6da1
@@ -6,12 +6,15 @@ SHA512 (pulseaudio-15.0.tar.xz) = 352ef20384c76c631c0faa73b08e2318902a433712e0c0
Size (pulseaudio-15.0.tar.xz) = 1521760 bytes
SHA1 (patch-meson.build) = e8414f6b3246ce0fc9fe3957f14826dabdad851c
SHA1 (patch-src_daemon_meson.build) = 20f2909ceaea27d43ef2cb5fb228952f8376fb3c
+SHA1 (patch-src_meson.build) = 91781da6bdad6f526d8c05aa0221d38067a1b8c4
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_pulse_meson.build) = c17321e03fd03034b1974ff51a900ef379342ffd
+SHA1 (patch-src_pulsecore_core-rtclock.c) = f621124e0ae8704ddcbbdf1a03a8c898ba6468e2
SHA1 (patch-src_pulsecore_creds.h) = a22cd7fa038cb3424f3ce6e4ce48fd86de6f0d9d
SHA1 (patch-src_pulsecore_iochannel.c) = d227e379d9b09612f84b9071f9378dbc66cfa4ac
+SHA1 (patch-src_pulsecore_meson.build) = a841a2c670464f971f7f2efe489c58f31fd6c5cb
SHA1 (patch-src_pulsecore_mix__neon.c) = 6f6d33d38024d65045d637d48276e1ba92b81342
SHA1 (patch-src_pulsecore_shm.c) = c7079e8ac3461f5069e1415a2816784781aaa59c
SHA1 (patch-src_tests_rtpoll-test.c) = 3584aeda2b6f7eb14af9cb5c665a31d972a306ae
diff --git a/audio/pulseaudio/patches/patch-src_meson.build b/audio/pulseaudio/patches/patch-src_meson.build
new file mode 100644
index 00000000000..1b3efa68e0c
--- /dev/null
+++ b/audio/pulseaudio/patches/patch-src_meson.build
@@ -0,0 +1,14 @@
+$NetBSD: patch-src_meson.build,v 1.1 2021/09/17 06:47:30 schmonz Exp $
+
+Add missing source file in the non-Windows case. Needed for macOS.
+
+--- src/meson.build.orig 2021-07-27 20:02:27.000000000 +0000
++++ src/meson.build
+@@ -182,6 +182,7 @@ if host_machine.system() == 'windows'
+ else
+ libpulsecommon_sources += [
+ 'pulsecore/mutex-posix.c',
++ 'pulsecore/poll-posix.c',
+ 'pulsecore/semaphore-posix.c',
+ 'pulsecore/thread-posix.c'
+ ]
diff --git a/audio/pulseaudio/patches/patch-src_pulse_meson.build b/audio/pulseaudio/patches/patch-src_pulse_meson.build
index f19d416cf9a..2aa237fa707 100644
--- a/audio/pulseaudio/patches/patch-src_pulse_meson.build
+++ b/audio/pulseaudio/patches/patch-src_pulse_meson.build
@@ -1,8 +1,23 @@
-$NetBSD: patch-src_pulse_meson.build,v 1.1 2021/07/30 12:21:06 ryoon Exp $
+$NetBSD: patch-src_pulse_meson.build,v 1.2 2021/09/17 06:47:30 schmonz Exp $
---- src/pulse/meson.build.orig 2021-07-27 20:02:27.811869100 +0000
+Avoid unsupported flags with the macOS linker.
+
+--- src/pulse/meson.build.orig 2021-07-27 20:02:27.000000000 +0000
+++ src/pulse/meson.build
-@@ -134,5 +134,5 @@ client_conf_file = configure_file(
+@@ -74,7 +74,11 @@ run_target('update-map-file',
+ command : [ join_paths(meson.source_root(), 'scripts/generate-map-file.sh'), 'map-file',
+ [ libpulse_headers, 'simple.h', join_paths(meson.build_root(), 'src', 'pulse', 'version.h') ] ])
+
+-versioning_link_args = '-Wl,-version-script=' + join_paths(meson.source_root(), 'src', 'pulse', 'map-file')
++if host_machine.system() != 'darwin'
++ versioning_link_args = '-Wl,-version-script=' + join_paths(meson.source_root(), 'src', 'pulse', 'map-file')
++else
++ versioning_link_args = ''
++endif
+
+ libpulse = shared_library('pulse',
+ libpulse_sources,
+@@ -134,5 +138,5 @@ client_conf_file = configure_file(
input : 'client.conf.in',
output : 'client.conf',
configuration : client_conf,
diff --git a/audio/pulseaudio/patches/patch-src_pulsecore_core-rtclock.c b/audio/pulseaudio/patches/patch-src_pulsecore_core-rtclock.c
new file mode 100644
index 00000000000..dfb64f54590
--- /dev/null
+++ b/audio/pulseaudio/patches/patch-src_pulsecore_core-rtclock.c
@@ -0,0 +1,20 @@
+$NetBSD: patch-src_pulsecore_core-rtclock.c,v 1.1 2021/09/17 06:47:30 schmonz Exp $
+
+macOS build fix: AbsoluteToNanoseconds is long deprecated, and
+apparently mach_absolute_time() already returns nanoseconds.
+
+--- src/pulsecore/core-rtclock.c.orig 2021-07-27 20:02:27.000000000 +0000
++++ src/pulsecore/core-rtclock.c
+@@ -66,11 +66,7 @@ pa_usec_t pa_rtclock_age(const struct ti
+ struct timeval *pa_rtclock_get(struct timeval *tv) {
+
+ #if defined(OS_IS_DARWIN)
+- uint64_t val, abs_time = mach_absolute_time();
+- Nanoseconds nanos;
+-
+- nanos = AbsoluteToNanoseconds(*(AbsoluteTime *) &abs_time);
+- val = *(uint64_t *) &nanos;
++ uint64_t val = mach_absolute_time();
+
+ tv->tv_sec = val / PA_NSEC_PER_SEC;
+ tv->tv_usec = (val % PA_NSEC_PER_SEC) / PA_NSEC_PER_USEC;
diff --git a/audio/pulseaudio/patches/patch-src_pulsecore_meson.build b/audio/pulseaudio/patches/patch-src_pulsecore_meson.build
new file mode 100644
index 00000000000..966ec343fcd
--- /dev/null
+++ b/audio/pulseaudio/patches/patch-src_pulsecore_meson.build
@@ -0,0 +1,19 @@
+$NetBSD: patch-src_pulsecore_meson.build,v 1.1 2021/09/17 06:47:30 schmonz Exp $
+
+Avoid selecting whatever this is on macOS ARM (it gives assembler
+errors).
+
+--- src/pulsecore/meson.build.orig 2021-07-27 20:02:27.000000000 +0000
++++ src/pulsecore/meson.build
+@@ -175,8 +175,10 @@ simd = import('unstable-simd')
+ simd_variants = [
+ { 'mmx' : ['remap_mmx.c', 'svolume_mmx.c'] },
+ { 'sse' : ['remap_sse.c', 'sconv_sse.c', 'svolume_sse.c'] },
+- { 'neon' : ['remap_neon.c', 'sconv_neon.c', 'mix_neon.c'] },
+ ]
++if host_machine.system() != 'darwin'
++ simd_variants.append({ 'neon' : ['remap_neon.c', 'sconv_neon.c', 'mix_neon.c'] })
++endif
+
+ libpulsecore_simd_lib = []
+