summaryrefslogtreecommitdiffstats
path: root/audio
diff options
context:
space:
mode:
authorkwm <kwm@df743ca5-7f9a-e211-a948-0013205c9059>2009-11-20 20:17:14 +0800
committerkwm <kwm@df743ca5-7f9a-e211-a948-0013205c9059>2009-11-20 20:17:14 +0800
commit085701290395d57e3ac0b1844756b9faac06e3c7 (patch)
tree099689d55d5eec00bacbcc7169035a3950c0f99c /audio
parent06c08695ca06cba06b859e0ff1e5fbf1c8ba3370 (diff)
downloadmarcuscom-ports-085701290395d57e3ac0b1844756b9faac06e3c7.tar
marcuscom-ports-085701290395d57e3ac0b1844756b9faac06e3c7.tar.gz
marcuscom-ports-085701290395d57e3ac0b1844756b9faac06e3c7.tar.bz2
marcuscom-ports-085701290395d57e3ac0b1844756b9faac06e3c7.tar.lz
marcuscom-ports-085701290395d57e3ac0b1844756b9faac06e3c7.tar.xz
marcuscom-ports-085701290395d57e3ac0b1844756b9faac06e3c7.tar.zst
marcuscom-ports-085701290395d57e3ac0b1844756b9faac06e3c7.zip
Update to 0.9.20.
Tweak shm_open to set 0644 instead of 0444, shm_unlink() needs write permissions on the shared memory object. [1] Submitted by: Eric L. Chen <lihong@ieee.org> [1] git-svn-id: svn://creme-brulee.marcuscom.com/ports/trunk@13226 df743ca5-7f9a-e211-a948-0013205c9059
Diffstat (limited to 'audio')
-rw-r--r--audio/pulseaudio/Makefile120
-rw-r--r--audio/pulseaudio/distinfo3
-rw-r--r--audio/pulseaudio/files/extra-patch-src_daemon_main.c20
-rw-r--r--audio/pulseaudio/files/extra-patch-src_daemon_start-pulseaudio-x11.in11
-rw-r--r--audio/pulseaudio/files/extra-patch-src_pulse_context.c11
-rw-r--r--audio/pulseaudio/files/patch-configure36
-rw-r--r--audio/pulseaudio/files/patch-src_Makefile.in23
-rw-r--r--audio/pulseaudio/files/patch-src_daemon_default.pa.in17
-rw-r--r--audio/pulseaudio/files/patch-src_modules_module-cli.c15
-rw-r--r--audio/pulseaudio/files/patch-src_modules_oss_module-oss.c24
-rw-r--r--audio/pulseaudio/files/patch-src_modules_oss_oss-util.c25
-rw-r--r--audio/pulseaudio/files/patch-src_modules_rtp_rtsp_client.c12
-rw-r--r--audio/pulseaudio/files/patch-src_pulse_introspect.c11
-rw-r--r--audio/pulseaudio/files/patch-src_pulse_thread-mainloop.c12
-rw-r--r--audio/pulseaudio/files/patch-src_pulse_util.c20
-rw-r--r--audio/pulseaudio/files/patch-src_pulsecore_atomic.h116
-rw-r--r--audio/pulseaudio/files/patch-src_pulsecore_pstream.c23
-rw-r--r--audio/pulseaudio/files/patch-src_pulsecore_shm.c20
-rw-r--r--audio/pulseaudio/files/patch-src_tests_rtpoll-test.c18
-rw-r--r--audio/pulseaudio/pkg-descr8
-rw-r--r--audio/pulseaudio/pkg-plist267
21 files changed, 812 insertions, 0 deletions
diff --git a/audio/pulseaudio/Makefile b/audio/pulseaudio/Makefile
new file mode 100644
index 000000000..f2f8f9c65
--- /dev/null
+++ b/audio/pulseaudio/Makefile
@@ -0,0 +1,120 @@
+# New ports collection makefile for: polypaudio
+# Date created: 29 October 2004
+# Whom: Joe Marcus Clarke <marcus@FreeBSD.org>
+#
+# $FreeBSD$
+# $MCom$
+#
+
+PORTNAME= pulseaudio
+PORTVERSION= 0.9.20
+CATEGORIES= audio
+MASTER_SITES= http://0pointer.de/lennart/projects/${PORTNAME}/
+
+MAINTAINER= gnome@FreeBSD.org
+COMMENT= Sound server for UNIX
+
+LIB_DEPENDS= samplerate.1:${PORTSDIR}/audio/libsamplerate \
+ speexdsp.1:${PORTSDIR}/audio/speex \
+ dbus-1.3:${PORTSDIR}/devel/dbus \
+ gdbm.3:${PORTSDIR}/databases/gdbm \
+ execinfo:${PORTSDIR}/devel/libexecinfo
+
+USE_GNOME= gnometarget gnomehack glib20 intltool ltverhack
+USE_XORG= x11 sm xtst ice
+USE_LDCONFIG= yes
+USE_GETTEXT= yes
+GNU_CONFIGURE= yes
+USE_AUTOTOOLS= libltdl:22 libtool:22
+USE_GMAKE= yes
+MAKE_JOBS_UNSAFE=yes
+CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
+ LDFLAGS="-L${LOCALBASE}/lib" \
+ PTHREAD_CFLAGS="${PTHREAD_CFLAGS}" \
+ PTHREAD_LIBS="${PTHREAD_LIBS}" \
+ OPENSSL_CFLAGS="-I/usr/include" \
+ OPENSSL_LIBS="-lcrypto -lssl" \
+ LIBS="-lm -lintl"
+
+CONFIGURE_ARGS= --localstatedir=/var \
+ --with-database=gdbm \
+ --disable-lirc # untested
+
+USERS= pulse
+GROUPS= pulse pulse-access pulse-rt
+
+OPTIONS= JACK "JACK audio support" Off \
+ AVAHI "Enable Avahi mDNS support" On \
+ HAL "Enable HAL support" On \
+ GCONF "Enable GConf support" On
+
+PULSE_VERSION= ${PORTVERSION}
+PLIST_SUB= PULSE_VERSION=${PULSE_VERSION}
+
+MAN1= esdcompat.1 pabrowse.1 pacat.1 pacmd.1 pactl.1 padsp.1 \
+ paplay.1 pasuspender.1 pax11publish.1 pulseaudio.1
+MAN5= default.pa.5 pulse-client.conf.5 pulse-daemon.conf.5
+
+.include <bsd.port.pre.mk>
+
+#.if ${ARCH} == "sparc64"
+#BROKEN= Does not compile on sparc64
+#.endif
+
+.if ( ${OSVERSION} > 800000 && ${OSVERSION} < 800080 ) || \
+ ${OSVERSION} < 702000
+EXTRA_PATCHES+= ${FILESDIR}/extra-patch-src_daemon_main.c \
+ ${FILESDIR}/extra-patch-src_daemon_start-pulseaudio-x11.in \
+ ${FILESDIR}/extra-patch-src_pulse_context.c
+.endif
+
+.if defined(WITH_JACK)
+LIB_DEPENDS+= jack.0:${PORTSDIR}/audio/jack
+PLIST_SUB+= JACK=""
+.else
+PLIST_SUB+= JACK="@comment "
+CONFIGURE_ARGS+=--disable-jack
+.endif
+
+.if !defined(WITHOUT_AVAHI)
+LIB_DEPENDS+= avahi-client.3:${PORTSDIR}/net/avahi-app
+PLIST_SUB+= AVAHI=""
+.else
+CONFIGURE_ARGS+=--disable-avahi
+PLIST_SUB+= AVAHI="@comment "
+.endif
+
+.if !defined(WITHOUT_HAL)
+LIB_DEPENDS+= hal.1:${PORTSDIR}/sysutils/hal
+PLIST_SUB+= HAL=""
+.else
+CONFIGURE_ARGS+=--disable-hal \
+ --disable-polkit
+PLIST_SUB+= HAL="@comment "
+.endif
+
+.if !defined(WITHOUT_GCONF)
+USE_GNOME+= gconf2
+PLIST_SUB+= GCONF=""
+.else
+CONFIGURE_ARGS+=--disable-gconf
+PLIST_SUB+= GCONF="@comment "
+.endif
+
+post-patch:
+ @${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \
+ ${WRKSRC}/src/daemon/default.pa.in
+.if ${OSVERSION} < 700042
+ @${REINPLACE_CMD} -e 's|-Wl,-no-undefined||' \
+ ${WRKSRC}/src/Makefile.in
+.endif
+ @${REINPLACE_CMD} -e 's|-Wmissing-include-dirs||g' \
+ ${WRKSRC}/configure
+
+post-install:
+.for ii in default.pa daemon.conf client.conf system.pa
+ ${INSTALL_DATA} ${WRKSRC}/src/${ii} \
+ ${PREFIX}/etc/pulse/${ii}-dist
+.endfor
+
+.include <bsd.port.post.mk>
diff --git a/audio/pulseaudio/distinfo b/audio/pulseaudio/distinfo
new file mode 100644
index 000000000..62db3406c
--- /dev/null
+++ b/audio/pulseaudio/distinfo
@@ -0,0 +1,3 @@
+MD5 (pulseaudio-0.9.20.tar.gz) = c877d996bb6e13f2d6c36078e84c14f8
+SHA256 (pulseaudio-0.9.20.tar.gz) = 8d6070aa4d57ec224b300f9fad95f529841e55d0edb26587791239ad78875550
+SIZE (pulseaudio-0.9.20.tar.gz) = 2048332
diff --git a/audio/pulseaudio/files/extra-patch-src_daemon_main.c b/audio/pulseaudio/files/extra-patch-src_daemon_main.c
new file mode 100644
index 000000000..8c6ae410f
--- /dev/null
+++ b/audio/pulseaudio/files/extra-patch-src_daemon_main.c
@@ -0,0 +1,20 @@
+--- src/daemon/main.c.orig 2009-01-12 18:11:38.000000000 -0500
++++ src/daemon/main.c 2009-03-07 19:56:16.000000000 -0500
+@@ -689,7 +690,7 @@ int main(int argc, char *argv[]) {
+ * first take the autospawn lock to make things
+ * synchronous. */
+
+- if ((autospawn_fd = pa_autospawn_lock_init()) < 0) {
++ /*if ((autospawn_fd = pa_autospawn_lock_init()) < 0) {
+ pa_log("Failed to initialize autospawn lock");
+ goto finish;
+ }
+@@ -699,7 +700,7 @@ int main(int argc, char *argv[]) {
+ goto finish;
+ }
+
+- autospawn_locked = TRUE;
++ autospawn_locked = TRUE;*/
+ }
+
+ if (conf->daemonize) {
diff --git a/audio/pulseaudio/files/extra-patch-src_daemon_start-pulseaudio-x11.in b/audio/pulseaudio/files/extra-patch-src_daemon_start-pulseaudio-x11.in
new file mode 100644
index 000000000..65001b572
--- /dev/null
+++ b/audio/pulseaudio/files/extra-patch-src_daemon_start-pulseaudio-x11.in
@@ -0,0 +1,11 @@
+--- src/daemon/start-pulseaudio-x11.in.orig 2009-03-07 19:48:47.000000000 -0500
++++ src/daemon/start-pulseaudio-x11.in 2009-03-07 19:48:56.000000000 -0500
+@@ -19,7 +19,7 @@
+
+ set -e
+
+-@PA_BINARY@ --start "$@"
++@PA_BINARY@ -D "$@"
+
+ if [ x"$DISPLAY" != x ] ; then
+
diff --git a/audio/pulseaudio/files/extra-patch-src_pulse_context.c b/audio/pulseaudio/files/extra-patch-src_pulse_context.c
new file mode 100644
index 000000000..fda93a2a6
--- /dev/null
+++ b/audio/pulseaudio/files/extra-patch-src_pulse_context.c
@@ -0,0 +1,11 @@
+--- src/pulse/context.c.orig 2009-03-08 14:33:36.000000000 -0400
++++ src/pulse/context.c 2009-03-08 14:33:42.000000000 -0400
+@@ -664,7 +664,7 @@ static int context_autospawn(pa_context
+ n = 0;
+
+ argv[n++] = c->conf->daemon_binary;
+- argv[n++] = "--start";
++ argv[n++] = "-D";
+
+ while (n < MAX_ARGS) {
+ char *a;
diff --git a/audio/pulseaudio/files/patch-configure b/audio/pulseaudio/files/patch-configure
new file mode 100644
index 000000000..513081005
--- /dev/null
+++ b/audio/pulseaudio/files/patch-configure
@@ -0,0 +1,36 @@
+--- configure.orig 2008-07-26 15:15:12.000000000 -0400
++++ configure 2008-07-26 15:15:35.000000000 -0400
+@@ -25321,6 +25321,7 @@ $as_echo_n "checking whether to check fo
+ check_inconsistencies=yes
+ case "${host_cpu}-${host_os}" in
+ *-darwin*) check_inconsistencies=no ;;
++ *-freebsd*) check_inconsistencies=no ;;
+ esac
+ if test x"$GCC" != xyes -o "x$check_inconsistencies" != xyes ; then
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+@@ -32654,9 +32655,9 @@ _ACEOF
+
+ else
+
+- { { $as_echo "$as_me:$LINENO: error: *** libatomic-ops headers not found" >&5
+-$as_echo "$as_me: error: *** libatomic-ops headers not found" >&2;}
+- { (exit 1); exit 1; }; }
++# { { $as_echo "$as_me:$LINENO: error: *** libatomic-ops headers not found" >&5
++#$as_echo "$as_me: error: *** libatomic-ops headers not found" >&2;}
++# { (exit 1); exit 1; }; }
+
+ fi
+
+@@ -32664,9 +32665,9 @@ done
+
+
+ # Win32 does not need the lib and breaks horribly if we try to include it
+- if test "x$os_is_win32" != "x1" ; then
+- LIBS="$LIBS -latomic_ops"
+- fi
++# if test "x$os_is_win32" != "x1" ; then
++# LIBS="$LIBS -latomic_ops"
++# fi
+ else
+ { $as_echo "$as_me:$LINENO: result: no" >&5
+ $as_echo "no" >&6; }
diff --git a/audio/pulseaudio/files/patch-src_Makefile.in b/audio/pulseaudio/files/patch-src_Makefile.in
new file mode 100644
index 000000000..e77cc9f9a
--- /dev/null
+++ b/audio/pulseaudio/files/patch-src_Makefile.in
@@ -0,0 +1,23 @@
+--- src/Makefile.in.orig 2009-09-11 21:23:13.000000000 -0400
++++ src/Makefile.in 2009-09-11 21:24:41.000000000 -0400
+@@ -2890,7 +2890,7 @@ libpulsecommon_@PA_MAJORMINORMICRO@_la_C
+ libpulsecommon_@PA_MAJORMINORMICRO@_la_LDFLAGS = $(AM_LDFLAGS) \
+ -avoid-version $(am__append_14)
+ libpulsecommon_@PA_MAJORMINORMICRO@_la_LIBADD = $(AM_LIBADD) \
+- $(LIBWRAP_LIBS) $(WINSOCK_LIBS) $(LTLIBICONV) \
++ $(LIBWRAP_LIBS) $(WINSOCK_LIBS) $(LTLIBICONV) -lexecinfo \
+ $(LIBSNDFILE_LIBS) $(am__append_16) $(am__append_20)
+
+ ###################################
+@@ -7745,9 +7745,8 @@ info: info-am
+
+ info-am:
+
+-install-data-am: install-alsapathsDATA install-alsaprofilesetsDATA \
+- install-dbuspolicyDATA install-pulseconfDATA \
+- install-pulseincludeHEADERS install-udevrulesDATA \
++install-data-am: install-dbuspolicyDATA install-pulseconfDATA \
++ install-pulseincludeHEADERS \
+ install-xdgautostartDATA
+
+ install-dvi: install-dvi-am
diff --git a/audio/pulseaudio/files/patch-src_daemon_default.pa.in b/audio/pulseaudio/files/patch-src_daemon_default.pa.in
new file mode 100644
index 000000000..0ca5a64e5
--- /dev/null
+++ b/audio/pulseaudio/files/patch-src_daemon_default.pa.in
@@ -0,0 +1,17 @@
+--- src/daemon/default.pa.in.orig 2009-07-19 14:58:14.000000000 -0400
++++ src/daemon/default.pa.in 2009-07-19 14:58:41.000000000 -0400
+@@ -22,10 +22,10 @@
+ .nofail
+
+ ### Load something into the sample cache
+-#load-sample-lazy x11-bell /usr/share/sounds/gtk-events/activate.wav
+-#load-sample-lazy pulse-hotplug /usr/share/sounds/startup3.wav
+-#load-sample-lazy pulse-coldplug /usr/share/sounds/startup3.wav
+-#load-sample-lazy pulse-access /usr/share/sounds/generic.wav
++#load-sample-lazy x11-bell %%LOCALBASE%%/sounds/gtk-events/activate.wav
++#load-sample-lazy pulse-hotplug %%LOCALBASE%%/sounds/startup3.wav
++#load-sample-lazy pulse-coldplug %%LOCALBASE%%/sounds/startup3.wav
++#load-sample-lazy pulse-access %%LOCALBASE%%/sounds/generic.wav
+
+ .fail
+
diff --git a/audio/pulseaudio/files/patch-src_modules_module-cli.c b/audio/pulseaudio/files/patch-src_modules_module-cli.c
new file mode 100644
index 000000000..4b0fedcc8
--- /dev/null
+++ b/audio/pulseaudio/files/patch-src_modules_module-cli.c
@@ -0,0 +1,15 @@
+--- src/modules/module-cli.c.orig 2009-09-19 13:57:53.000000000 -0400
++++ src/modules/module-cli.c 2009-09-19 14:04:25.000000000 -0400
+@@ -105,7 +105,12 @@ int pa__init(pa_module*m) {
+ * of log messages, particularly because if stdout and stderr are
+ * dup'ed they share the same O_NDELAY, too. */
+
++#ifdef O_CLOEXEC
+ if ((fd = open("/dev/tty", O_RDWR|O_CLOEXEC|O_NONBLOCK)) >= 0) {
++#else
++ if ((fd = open("/dev/tty", O_RDWR|O_NONBLOCK)) >= 0 &&
++ fcntl(fd, F_SETFD, FD_CLOEXEC) != -1) {
++#endif
+ io = pa_iochannel_new(m->core->mainloop, fd, fd);
+ pa_log_debug("Managed to open /dev/tty.");
+ } else {
diff --git a/audio/pulseaudio/files/patch-src_modules_oss_module-oss.c b/audio/pulseaudio/files/patch-src_modules_oss_module-oss.c
new file mode 100644
index 000000000..a723999af
--- /dev/null
+++ b/audio/pulseaudio/files/patch-src_modules_oss_module-oss.c
@@ -0,0 +1,24 @@
+--- src/modules/oss/module-oss.c.orig 2009-04-13 17:11:32.000000000 -0400
++++ src/modules/oss/module-oss.c 2009-07-19 14:24:25.000000000 -0400
+@@ -1214,10 +1214,12 @@ int pa__init(pa_module*m) {
+ use_mmap = FALSE;
+ }
+
++#ifndef __FreeBSD__
+ if (use_mmap && mode == O_WRONLY) {
+ pa_log_info("Device opened for playback only, cannot do memory mapping, falling back to UNIX write() mode.");
+ use_mmap = FALSE;
+ }
++#endif
+
+ if (pa_oss_get_hw_description(dev, hwdesc, sizeof(hwdesc)) >= 0)
+ pa_log_info("Hardware name is '%s'.", hwdesc);
+@@ -1399,7 +1401,7 @@ int pa__init(pa_module*m) {
+ if ((u->mixer_fd = pa_oss_open_mixer_for_device(u->device_name)) >= 0) {
+ pa_bool_t do_close = TRUE;
+
+- if (ioctl(fd, SOUND_MIXER_READ_DEVMASK, &u->mixer_devmask) < 0)
++ if (ioctl(u->mixer_fd, SOUND_MIXER_READ_DEVMASK, &u->mixer_devmask) < 0)
+ pa_log_warn("SOUND_MIXER_READ_DEVMASK failed: %s", pa_cstrerror(errno));
+
+ else {
diff --git a/audio/pulseaudio/files/patch-src_modules_oss_oss-util.c b/audio/pulseaudio/files/patch-src_modules_oss_oss-util.c
new file mode 100644
index 000000000..5fe7ec329
--- /dev/null
+++ b/audio/pulseaudio/files/patch-src_modules_oss_oss-util.c
@@ -0,0 +1,25 @@
+--- src/modules/oss/oss-util.c.orig 2007-11-08 21:45:25.000000000 -0500
++++ src/modules/oss/oss-util.c 2008-01-09 17:00:45.000000000 -0500
+@@ -44,6 +44,22 @@
+
+ #include "oss-util.h"
+
++#ifndef DSP_CAP_COPROC
++#define DSP_CAP_COPROC 0x00000800
++#endif
++#ifndef DSP_CAP_TRIGGER
++#define DSP_CAP_TRIGGER 0x00001000
++#endif
++#ifndef DSP_CAP_MMAP
++#define DSP_CAP_MMAP 0x00002000
++#endif
++#ifndef DSP_CAP_MULTI
++#define DSP_CAP_MULTI 0x00004000
++#endif
++#ifndef DSP_CAP_BIND
++#define DSP_CAP_BIND 0x00008000
++#endif
++
+ int pa_oss_open(const char *device, int *mode, int* pcaps) {
+ int fd = -1;
+ int caps;
diff --git a/audio/pulseaudio/files/patch-src_modules_rtp_rtsp_client.c b/audio/pulseaudio/files/patch-src_modules_rtp_rtsp_client.c
new file mode 100644
index 000000000..2dbcad26a
--- /dev/null
+++ b/audio/pulseaudio/files/patch-src_modules_rtp_rtsp_client.c
@@ -0,0 +1,12 @@
+--- src/modules/rtp/rtsp_client.c.orig 2009-07-19 14:38:38.000000000 -0400
++++ src/modules/rtp/rtsp_client.c 2009-07-19 14:39:46.000000000 -0400
+@@ -23,6 +23,9 @@
+ #include <config.h>
+ #endif
+
++#include <sys/types.h>
++#include <sys/socket.h>
++#include <netinet/in.h>
+ #include <fcntl.h>
+ #include <stdlib.h>
+ #include <string.h>
diff --git a/audio/pulseaudio/files/patch-src_pulse_introspect.c b/audio/pulseaudio/files/patch-src_pulse_introspect.c
new file mode 100644
index 000000000..6681f70ca
--- /dev/null
+++ b/audio/pulseaudio/files/patch-src_pulse_introspect.c
@@ -0,0 +1,11 @@
+--- src/pulse/introspect.c.orig 2008-01-03 20:01:31.000000000 -0500
++++ src/pulse/introspect.c 2008-01-03 20:01:39.000000000 -0500
+@@ -26,6 +26,8 @@
+ #include <config.h>
+ #endif
+
++#include <string.h>
++
+ #include <pulse/context.h>
+
+ #include <pulsecore/gccmacro.h>
diff --git a/audio/pulseaudio/files/patch-src_pulse_thread-mainloop.c b/audio/pulseaudio/files/patch-src_pulse_thread-mainloop.c
new file mode 100644
index 000000000..72a0965dd
--- /dev/null
+++ b/audio/pulseaudio/files/patch-src_pulse_thread-mainloop.c
@@ -0,0 +1,12 @@
+--- src/pulse/thread-mainloop.c.orig 2008-01-01 17:23:28.000000000 -0500
++++ src/pulse/thread-mainloop.c 2008-01-01 17:25:00.000000000 -0500
+@@ -27,6 +27,9 @@
+ #endif
+
+ #include <signal.h>
++#ifndef OS_IS_WIN32
++#include <pthread.h>
++#endif
+ #include <stdio.h>
+
+ #ifdef HAVE_POLL_H
diff --git a/audio/pulseaudio/files/patch-src_pulse_util.c b/audio/pulseaudio/files/patch-src_pulse_util.c
new file mode 100644
index 000000000..2fa4de0bc
--- /dev/null
+++ b/audio/pulseaudio/files/patch-src_pulse_util.c
@@ -0,0 +1,20 @@
+--- src/pulse/util.c.orig 2008-01-01 17:29:31.000000000 -0500
++++ src/pulse/util.c 2008-01-01 17:29:00.000000000 -0500
+@@ -184,6 +184,17 @@ char *pa_get_binary_name(char *s, size_t
+ }
+
+ #endif
++#ifdef __FreeBSD__
++ {
++ char *rp;
++
++ if ((rp = pa_readlink("/proc/curproc/file"))) {
++ pa_strlcpy(s, pa_path_get_filename(rp), l);
++ pa_xfree(rp);
++ return s;
++ }
++ }
++#endif
+
+ #if defined(HAVE_SYS_PRCTL_H) && defined(PR_GET_NAME)
+ {
diff --git a/audio/pulseaudio/files/patch-src_pulsecore_atomic.h b/audio/pulseaudio/files/patch-src_pulsecore_atomic.h
new file mode 100644
index 000000000..06515b9f9
--- /dev/null
+++ b/audio/pulseaudio/files/patch-src_pulsecore_atomic.h
@@ -0,0 +1,116 @@
+--- src/pulsecore/atomic.h.orig 2008-01-23 19:44:20.000000000 -0500
++++ src/pulsecore/atomic.h 2008-03-15 14:48:41.000000000 -0400
+@@ -106,6 +106,113 @@ static inline int pa_atomic_ptr_cmpxchg(
+ return __sync_bool_compare_and_swap(&a->value, (long) old_p, (long) new_p);
+ }
+
++#elif defined(__FreeBSD__)
++
++#include <sys/cdefs.h>
++#include <sys/types.h>
++#include <sys/param.h>
++#include <machine/atomic.h>
++
++#if __FreeBSD_version < 600000
++#if defined(__i386__) || defined(__amd64__)
++#if defined(__amd64__)
++#define atomic_load_acq_64 atomic_load_acq_long
++#endif
++static inline u_int
++atomic_fetchadd_int(volatile u_int *p, u_int v)
++{
++ __asm __volatile(
++ " " __XSTRING(MPLOCKED) " "
++ " xaddl %0, %1 ; "
++ "# atomic_fetchadd_int"
++ : "+r" (v),
++ "=m" (*p)
++ : "m" (*p));
++
++ return (v);
++}
++#elif defined(__sparc64__)
++#define atomic_load_acq_64 atomic_load_acq_long
++#define atomic_fetchadd_int atomic_add_int
++#elif defined(__ia64__)
++#define atomic_load_acq_64 atomic_load_acq_long
++static inline uint32_t
++atomic_fetchadd_int(volatile uint32_t *p, uint32_t v)
++{
++ uint32_t value;
++
++ do {
++ value = *p;
++ } while (!atomic_cmpset_32(p, value, value + v));
++ return (value);
++}
++#endif
++#endif
++
++typedef struct pa_atomic {
++ volatile unsigned long value;
++} pa_atomic_t;
++
++#define PA_ATOMIC_INIT(v) { .value = (v) }
++
++static inline int pa_atomic_load(const pa_atomic_t *a) {
++ return (int) atomic_load_acq_int((unsigned int *) &a->value);
++}
++
++static inline void pa_atomic_store(pa_atomic_t *a, int i) {
++ atomic_store_rel_int((unsigned int *) &a->value, i);
++}
++
++static inline int pa_atomic_add(pa_atomic_t *a, int i) {
++ return atomic_fetchadd_int((unsigned int *) &a->value, i);
++}
++
++static inline int pa_atomic_sub(pa_atomic_t *a, int i) {
++ return atomic_fetchadd_int((unsigned int *) &a->value, -(i));
++}
++
++static inline int pa_atomic_inc(pa_atomic_t *a) {
++ return atomic_fetchadd_int((unsigned int *) &a->value, 1);
++}
++
++static inline int pa_atomic_dec(pa_atomic_t *a) {
++ return atomic_fetchadd_int((unsigned int *) &a->value, -1);
++}
++
++static inline int pa_atomic_cmpxchg(pa_atomic_t *a, int old_i, int new_i) {
++ return atomic_cmpset_int((unsigned int *) &a->value, old_i, new_i);
++}
++
++typedef struct pa_atomic_ptr {
++ volatile unsigned long value;
++} pa_atomic_ptr_t;
++
++#define PA_ATOMIC_PTR_INIT(v) { .value = (unsigned long) (v) }
++
++static inline void* pa_atomic_ptr_load(const pa_atomic_ptr_t *a) {
++#ifdef atomic_load_acq_64
++ return (void*) atomic_load_acq_ptr((unsigned long *) &a->value);
++#else
++ return (void*) atomic_load_acq_ptr((unsigned int *) &a->value);
++#endif
++}
++
++static inline void pa_atomic_ptr_store(pa_atomic_ptr_t *a, void *p) {
++#ifdef atomic_load_acq_64
++ atomic_store_rel_ptr(&a->value, (unsigned long) p);
++#else
++ atomic_store_rel_ptr((unsigned int *) &a->value, (unsigned int) p);
++#endif
++}
++
++static inline int pa_atomic_ptr_cmpxchg(pa_atomic_ptr_t *a, void *old_p, void* new_p) {
++#ifdef atomic_load_acq_64
++ return atomic_cmpset_ptr(&a->value, (unsigned long) old_p, (unsigned long) new_p);
++#else
++ return atomic_cmpset_ptr((unsigned int *) &a->value, (unsigned int) old_p, (unsigned int) new_p);
++#endif
++}
++
+ #elif defined(__GNUC__) && (defined(__amd64__) || defined(__x86_64__))
+
+ #error "The native atomic operations implementation for AMD64 has not been tested. libatomic_ops is known to not work properly on AMD64 and your gcc version is too old for the gcc-builtin atomic ops support. You have three options now: make the native atomic operations implementation for AMD64 work, fix libatomic_ops, or upgrade your GCC."
diff --git a/audio/pulseaudio/files/patch-src_pulsecore_pstream.c b/audio/pulseaudio/files/patch-src_pulsecore_pstream.c
new file mode 100644
index 000000000..b242e2e41
--- /dev/null
+++ b/audio/pulseaudio/files/patch-src_pulsecore_pstream.c
@@ -0,0 +1,23 @@
+--- src/pulsecore/pstream.c.orig 2007-10-28 15:13:53.000000000 -0400
++++ src/pulsecore/pstream.c 2008-01-01 16:14:18.000000000 -0500
+@@ -183,14 +183,17 @@ static void do_something(pa_pstream *p)
+ p->mainloop->defer_enable(p->defer_event, 0);
+
+ if (!p->dead && pa_iochannel_is_readable(p->io)) {
+- if (do_read(p) < 0)
++ if (do_read(p) < 0) {
+ goto fail;
+- } else if (!p->dead && pa_iochannel_is_hungup(p->io))
++ }
++ } else if (!p->dead && pa_iochannel_is_hungup(p->io)) {
+ goto fail;
++ }
+
+ if (!p->dead && pa_iochannel_is_writable(p->io)) {
+- if (do_write(p) < 0)
++ if (do_write(p) < 0) {
+ goto fail;
++ }
+ }
+
+ pa_pstream_unref(p);
diff --git a/audio/pulseaudio/files/patch-src_pulsecore_shm.c b/audio/pulseaudio/files/patch-src_pulsecore_shm.c
new file mode 100644
index 000000000..4dfa3a3a9
--- /dev/null
+++ b/audio/pulseaudio/files/patch-src_pulsecore_shm.c
@@ -0,0 +1,20 @@
+--- src/pulsecore/shm.c.orig 2009-08-19 10:17:06.000000000 +0800
++++ src/pulsecore/shm.c 2009-11-11 21:25:03.000000000 +0800
+@@ -91,7 +91,7 @@
+ #define SHM_MARKER_SIZE PA_ALIGN(sizeof(struct shm_marker))
+
+ static char *segment_name(char *fn, size_t l, unsigned id) {
+- pa_snprintf(fn, l, "/pulse-shm-%u", id);
++ pa_snprintf(fn, l, "/tmp/pulse-shm-%u", id);
+ return fn;
+ }
+
+@@ -142,7 +142,7 @@
+ pa_random(&m->id, sizeof(m->id));
+ segment_name(fn, sizeof(fn), m->id);
+
+- if ((fd = shm_open(fn, O_RDWR|O_CREAT|O_EXCL, mode & 0444)) < 0) {
++ if ((fd = shm_open(fn, O_RDWR|O_CREAT|O_EXCL, mode & 0644)) < 0) {
+ pa_log("shm_open() failed: %s", pa_cstrerror(errno));
+ goto fail;
+ }
diff --git a/audio/pulseaudio/files/patch-src_tests_rtpoll-test.c b/audio/pulseaudio/files/patch-src_tests_rtpoll-test.c
new file mode 100644
index 000000000..365ca8d2b
--- /dev/null
+++ b/audio/pulseaudio/files/patch-src_tests_rtpoll-test.c
@@ -0,0 +1,18 @@
+--- src/tests/rtpoll-test.c.orig 2008-01-03 20:03:03.000000000 -0500
++++ src/tests/rtpoll-test.c 2008-01-03 20:03:25.000000000 -0500
+@@ -45,6 +45,7 @@ static int worker(pa_rtpoll_item *w) {
+ }
+
+ int main(int argc, char *argv[]) {
++#ifdef SIGRTMIN
+ pa_rtpoll *p;
+ pa_rtpoll_item *i, *w;
+ struct pollfd *pollfd;
+@@ -86,6 +87,7 @@ int main(int argc, char *argv[]) {
+ pa_rtpoll_item_free(w);
+
+ pa_rtpoll_free(p);
++#endif
+
+ return 0;
+ }
diff --git a/audio/pulseaudio/pkg-descr b/audio/pulseaudio/pkg-descr
new file mode 100644
index 000000000..45634a1f7
--- /dev/null
+++ b/audio/pulseaudio/pkg-descr
@@ -0,0 +1,8 @@
+PulseAudio, previously known as Polypaudio, is a sound server for POSIX and
+Win32 systems. A sound server is basically a proxy for your sound applications.
+It allows you to do advanced operations on your sound data as it passes between
+your application and your hardware. Things like transferring the audio to a
+different machine, changing the sample format or channel count and mixing
+several sounds into one are easily achieved using a sound server.
+
+WWW: http://pulseaudio.org/
diff --git a/audio/pulseaudio/pkg-plist b/audio/pulseaudio/pkg-plist
new file mode 100644
index 000000000..a8f4206a6
--- /dev/null
+++ b/audio/pulseaudio/pkg-plist
@@ -0,0 +1,267 @@
+bin/esdcompat
+%%AVAHI%%bin/pabrowse
+bin/pacat
+bin/pacmd
+bin/pactl
+bin/padsp
+bin/pamon
+bin/paplay
+bin/parec
+bin/parecord
+bin/pasuspender
+bin/pax11publish
+bin/pulseaudio
+bin/start-pulseaudio-x11
+etc/dbus-1/system.d/pulseaudio-system.conf
+@unexec if cmp -s %D/etc/pulse/client.conf %D/etc/pulse/client.conf-dist; then rm -f %D/etc/pulse/client.conf; fi
+etc/pulse/client.conf-dist
+@exec [ -f %B/client.conf ] || cp %B/%f %B/client.conf
+@unexec if cmp -s %D/etc/pulse/daemon.conf %D/etc/pulse/daemon.conf-dist; then rm -f %D/etc/pulse/daemon.conf; fi
+etc/pulse/daemon.conf-dist
+@exec [ -f %B/daemon.conf ] || cp %B/%f %B/daemon.conf
+@unexec if cmp -s %D/etc/pulse/default.pa %D/etc/pulse/default.pa-dist; then rm -f %D/etc/pulse/default.pa; fi
+etc/pulse/default.pa-dist
+@exec [ -f %B/default.pa ] || cp %B/%f %B/default.pa
+@unexec if cmp -s %D/etc/pulse/system.pa %D/etc/pulse/system.pa-dist; then rm -f %D/etc/pulse/system.pa; fi
+etc/pulse/system.pa-dist
+@exec [ -f %B/system.pa ] || cp %B/%f %B/system.pa
+etc/xdg/autostart/pulseaudio.desktop
+%%AVAHI%%include/pulse/browser.h
+include/pulse/cdecl.h
+include/pulse/channelmap.h
+include/pulse/context.h
+include/pulse/def.h
+include/pulse/error.h
+include/pulse/ext-stream-restore.h
+include/pulse/gccmacro.h
+include/pulse/glib-mainloop.h
+include/pulse/introspect.h
+include/pulse/mainloop-api.h
+include/pulse/mainloop-signal.h
+include/pulse/mainloop.h
+include/pulse/operation.h
+include/pulse/proplist.h
+include/pulse/pulseaudio.h
+include/pulse/rtclock.h
+include/pulse/sample.h
+include/pulse/scache.h
+include/pulse/simple.h
+include/pulse/stream.h
+include/pulse/subscribe.h
+include/pulse/thread-mainloop.h
+include/pulse/timeval.h
+include/pulse/utf8.h
+include/pulse/util.h
+include/pulse/version.h
+include/pulse/volume.h
+include/pulse/xmalloc.h
+%%AVAHI%%lib/libpulse-browse.a
+%%AVAHI%%lib/libpulse-browse.la
+%%AVAHI%%lib/libpulse-browse.so
+%%AVAHI%%lib/libpulse-browse.so.0
+lib/libpulse-mainloop-glib.a
+lib/libpulse-mainloop-glib.la
+lib/libpulse-mainloop-glib.so
+lib/libpulse-mainloop-glib.so.0
+lib/libpulse-simple.a
+lib/libpulse-simple.la
+lib/libpulse-simple.so
+lib/libpulse-simple.so.0
+lib/libpulse.a
+lib/libpulse.la
+lib/libpulse.so
+lib/libpulse.so.0
+lib/libpulsecommon-%%PULSE_VERSION%%.a
+lib/libpulsecommon-%%PULSE_VERSION%%.la
+lib/libpulsecommon-%%PULSE_VERSION%%.so
+lib/libpulsecore-%%PULSE_VERSION%%.a
+lib/libpulsecore-%%PULSE_VERSION%%.la
+lib/libpulsecore-%%PULSE_VERSION%%.so
+lib/libpulsedsp.a
+lib/libpulsedsp.so
+%%AVAHI%%lib/pulse-%%PULSE_VERSION%%/modules/libavahi-wrap.a
+%%AVAHI%%lib/pulse-%%PULSE_VERSION%%/modules/libavahi-wrap.so
+lib/pulse-%%PULSE_VERSION%%/modules/libcli.a
+lib/pulse-%%PULSE_VERSION%%/modules/libcli.so
+lib/pulse-%%PULSE_VERSION%%/modules/liboss-util.a
+lib/pulse-%%PULSE_VERSION%%/modules/liboss-util.so
+lib/pulse-%%PULSE_VERSION%%/modules/libprotocol-cli.a
+lib/pulse-%%PULSE_VERSION%%/modules/libprotocol-cli.so
+lib/pulse-%%PULSE_VERSION%%/modules/libprotocol-esound.a
+lib/pulse-%%PULSE_VERSION%%/modules/libprotocol-esound.so
+lib/pulse-%%PULSE_VERSION%%/modules/libprotocol-http.a
+lib/pulse-%%PULSE_VERSION%%/modules/libprotocol-http.so
+lib/pulse-%%PULSE_VERSION%%/modules/libprotocol-native.a
+lib/pulse-%%PULSE_VERSION%%/modules/libprotocol-native.so
+lib/pulse-%%PULSE_VERSION%%/modules/libprotocol-simple.a
+lib/pulse-%%PULSE_VERSION%%/modules/libprotocol-simple.so
+lib/pulse-%%PULSE_VERSION%%/modules/libraop.a
+lib/pulse-%%PULSE_VERSION%%/modules/libraop.so
+lib/pulse-%%PULSE_VERSION%%/modules/librtp.a
+lib/pulse-%%PULSE_VERSION%%/modules/librtp.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-always-sink.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-always-sink.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-augment-properties.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-augment-properties.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-card-restore.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-card-restore.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-cli-protocol-tcp.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-cli-protocol-tcp.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-cli-protocol-unix.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-cli-protocol-unix.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-cli.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-cli.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-combine.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-combine.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-console-kit.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-console-kit.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-cork-music-on-phone.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-cork-music-on-phone.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-default-device-restore.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-default-device-restore.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-detect.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-detect.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-device-restore.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-device-restore.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-esound-compat-spawnfd.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-esound-compat-spawnfd.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-esound-compat-spawnpid.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-esound-compat-spawnpid.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-esound-protocol-tcp.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-esound-protocol-tcp.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-esound-protocol-unix.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-esound-protocol-unix.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-esound-sink.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-esound-sink.so
+%%GCONF%%lib/pulse-%%PULSE_VERSION%%/modules/module-gconf.a
+%%GCONF%%lib/pulse-%%PULSE_VERSION%%/modules/module-gconf.so
+%%HAL%%lib/pulse-%%PULSE_VERSION%%/modules/module-hal-detect.a
+%%HAL%%lib/pulse-%%PULSE_VERSION%%/modules/module-hal-detect.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-http-protocol-tcp.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-http-protocol-tcp.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-http-protocol-unix.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-http-protocol-unix.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-intended-roles.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-intended-roles.so
+%%JACK%%lib/pulse-%%PULSE_VERSION%%/modules/module-jack-sink.a
+%%JACK%%lib/pulse-%%PULSE_VERSION%%/modules/module-jack-sink.so
+%%JACK%%lib/pulse-%%PULSE_VERSION%%/modules/module-jack-source.a
+%%JACK%%lib/pulse-%%PULSE_VERSION%%/modules/module-jack-source.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-ladspa-sink.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-ladspa-sink.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-loopback.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-loopback.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-match.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-match.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-native-protocol-fd.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-native-protocol-fd.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-native-protocol-tcp.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-native-protocol-tcp.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-native-protocol-unix.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-native-protocol-unix.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-null-sink.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-null-sink.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-oss.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-oss.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-pipe-sink.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-pipe-sink.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-pipe-source.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-pipe-source.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-position-event-sounds.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-position-event-sounds.so
+%%AVAHI%%lib/pulse-%%PULSE_VERSION%%/modules/module-raop-discover.a
+%%AVAHI%%lib/pulse-%%PULSE_VERSION%%/modules/module-raop-discover.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-raop-sink.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-raop-sink.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-remap-sink.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-remap-sink.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-rescue-streams.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-rescue-streams.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-rtp-recv.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-rtp-recv.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-rtp-send.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-rtp-send.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-rygel-media-server.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-rygel-media-server.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-simple-protocol-tcp.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-simple-protocol-tcp.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-simple-protocol-unix.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-simple-protocol-unix.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-sine.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-sine.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-sine-source.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-sine-source.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-stream-restore.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-stream-restore.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-suspend-on-idle.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-suspend-on-idle.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-tunnel-sink.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-tunnel-sink.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-tunnel-source.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-tunnel-source.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-volume-restore.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-volume-restore.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-x11-bell.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-x11-bell.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-x11-cork-request.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-x11-cork-request.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-x11-publish.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-x11-publish.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-x11-xsmp.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-x11-xsmp.so
+%%AVAHI%%lib/pulse-%%PULSE_VERSION%%/modules/module-zeroconf-discover.a
+%%AVAHI%%lib/pulse-%%PULSE_VERSION%%/modules/module-zeroconf-discover.so
+%%AVAHI%%lib/pulse-%%PULSE_VERSION%%/modules/module-zeroconf-publish.a
+%%AVAHI%%lib/pulse-%%PULSE_VERSION%%/modules/module-zeroconf-publish.so
+%%AVAHI%%libdata/pkgconfig/libpulse-browse.pc
+libdata/pkgconfig/libpulse-mainloop-glib.pc
+libdata/pkgconfig/libpulse-simple.pc
+libdata/pkgconfig/libpulse.pc
+%%GCONF%%libexec/pulse/gconf-helper
+share/locale/as/LC_MESSAGES/pulseaudio.mo
+share/locale/bn_IN/LC_MESSAGES/pulseaudio.mo
+share/locale/ca/LC_MESSAGES/pulseaudio.mo
+share/locale/cs/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/es/LC_MESSAGES/pulseaudio.mo
+share/locale/fi/LC_MESSAGES/pulseaudio.mo
+share/locale/fr/LC_MESSAGES/pulseaudio.mo
+share/locale/gu/LC_MESSAGES/pulseaudio.mo
+share/locale/hi/LC_MESSAGES/pulseaudio.mo
+share/locale/hu/LC_MESSAGES/pulseaudio.mo
+share/locale/it/LC_MESSAGES/pulseaudio.mo
+share/locale/ja/LC_MESSAGES/pulseaudio.mo
+share/locale/kn/LC_MESSAGES/pulseaudio.mo
+share/locale/ml/LC_MESSAGES/pulseaudio.mo
+share/locale/mr/LC_MESSAGES/pulseaudio.mo
+share/locale/nl/LC_MESSAGES/pulseaudio.mo
+share/locale/or/LC_MESSAGES/pulseaudio.mo
+share/locale/pa/LC_MESSAGES/pulseaudio.mo
+share/locale/pl/LC_MESSAGES/pulseaudio.mo
+share/locale/pt/LC_MESSAGES/pulseaudio.mo
+share/locale/pt_BR/LC_MESSAGES/pulseaudio.mo
+share/locale/sr/LC_MESSAGES/pulseaudio.mo
+share/locale/sr@latin/LC_MESSAGES/pulseaudio.mo
+share/locale/sv/LC_MESSAGES/pulseaudio.mo
+share/locale/ta/LC_MESSAGES/pulseaudio.mo
+share/locale/te/LC_MESSAGES/pulseaudio.mo
+share/locale/uk/LC_MESSAGES/pulseaudio.mo
+share/locale/zh_CN/LC_MESSAGES/pulseaudio.mo
+share/vala/vapi/libpulse.vapi
+%%GCONF%%@dirrm libexec/pulse
+@dirrm lib/pulse-%%PULSE_VERSION%%/modules
+@dirrm lib/pulse-%%PULSE_VERSION%%
+@dirrm include/pulse
+@dirrm etc/pulse
+@dirrmtry share/locale/sr@latin/LC_MESSAGES
+@dirrmtry share/locale/sr@latin
+@dirrmtry share/locale/mr/LC_MESSAGES
+@dirrmtry share/locale/mr
+@dirrmtry share/locale/de_CH/LC_MESSAGES
+@dirrmtry share/locale/de_CH
+@dirrmtry share/locale/bn_IN/LC_MESSAGES
+@dirrmtry share/locale/bn_IN
+@dirrmtry share/locale/as/LC_MESSAGES
+@dirrmtry share/locale/as