25126078 Upgrade pulseaudio to 9.0
authorJay Cotton <Jay.Cotton@Oracle.com>
Wed, 11 Jan 2017 10:37:16 -0800
changeset 7557 d7e607817552
parent 7556 51e515988b39
child 7560 9732971b7855
25126078 Upgrade pulseaudio to 9.0
components/desktop/pulseaudio/Makefile
components/desktop/pulseaudio/patches/01-ld-nodelete.patch
components/desktop/pulseaudio/patches/02-glibc.patch
components/desktop/pulseaudio/patches/03-solaris-audio.patch
components/desktop/pulseaudio/patches/04-stream-header-conflict.patch
components/desktop/pulseaudio/patches/06-largefile.patch
components/desktop/pulseaudio/pulseaudio.license
components/desktop/pulseaudio/pulseaudio.p5m
components/desktop/pulseaudio/test/results-i386-32.master
components/desktop/pulseaudio/test/results-i386-64.master
components/desktop/pulseaudio/test/results-sparc-32.master
components/desktop/pulseaudio/test/results-sparc-64.master
--- a/components/desktop/pulseaudio/Makefile	Wed Jan 11 07:38:41 2017 -0800
+++ b/components/desktop/pulseaudio/Makefile	Wed Jan 11 10:37:16 2017 -0800
@@ -20,7 +20,7 @@
 #
 
 #
-# Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2015, 2017, Oracle and/or its affiliates. All rights reserved.
 #
 
 BUILD_BITS = 		32_and_64
@@ -28,15 +28,15 @@
 include ../../../make-rules/shared-macros.mk
 
 COMPONENT_NAME=		pulseaudio
-COMPONENT_VERSION=	6.0
+COMPONENT_VERSION=	9.0
 COMPONENT_PROJECT_URL=	http://freedesktop.org/software/pulseaudio
 COMPONENT_ARCHIVE=	$(COMPONENT_SRC).tar.xz
 COMPONENT_ARCHIVE_HASH= \
-	sha256:b50640e0b80b1607600accfad2e45aabb79d379bf6354c9671efa2065477f6f6
+	sha256:c3d3d66b827f18fbe903fe3df647013f09fc1e2191c035be1ee2d82a9e404686
 COMPONENT_ARCHIVE_URL=	http://freedesktop.org/software/$(COMPONENT_NAME)/releases/$(COMPONENT_ARCHIVE)
 COMPONENT_BUGDB=	gnome/multimedia
 
-TPNO=			25017
+TPNO=			32882	
 
 # Only build for 2.7 for now as we need 32-bit and 64-bit support; all of the
 # GNOME and desktop components must be built for Python 2.7 for now.
@@ -87,7 +87,7 @@
 unexport SHELLOPTS
 COMPONENT_PRE_CONFIGURE_ACTION += ($(CLONEY) $(SOURCE_DIR) $(@D));
 COMPONENT_TEST_MASTER = $(COMPONENT_TEST_RESULTS_DIR)/results-$(MACH)-$(BITS).master
-COMPONENT_TEST_ARGS =   -k -i
+COMPONENT_TEST_ARGS = -k -i
 COMPONENT_TEST_TRANSFORMS += \
         '-n ' \
         '-e "/TOTAL:/p" ' \
@@ -104,15 +104,14 @@
 REQUIRED_PACKAGES += library/glib2
 REQUIRED_PACKAGES += library/json-c
 REQUIRED_PACKAGES += library/libsndfile
-REQUIRED_PACKAGES += library/pcre
+REQUIRED_PACKAGES += library/libtool/libltdl
 REQUIRED_PACKAGES += library/security/openssl
-REQUIRED_PACKAGES += runtime/python-27
+REQUIRED_PACKAGES += shell/ksh93
+REQUIRED_PACKAGES += system/library/libdbus
 REQUIRED_PACKAGES += system/library/math
 REQUIRED_PACKAGES += system/network/avahi
-REQUIRED_PACKAGES += system/library/gcc/gcc-c-runtime
-REQUIRED_PACKAGES += system/library/libdbus
 REQUIRED_PACKAGES += x11/library/libice
 REQUIRED_PACKAGES += x11/library/libsm
+REQUIRED_PACKAGES += x11/library/libx11
 REQUIRED_PACKAGES += x11/library/libxcb
-REQUIRED_PACKAGES += x11/library/libx11
 REQUIRED_PACKAGES += x11/library/libxtst
--- a/components/desktop/pulseaudio/patches/01-ld-nodelete.patch	Wed Jan 11 07:38:41 2017 -0800
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,152 +0,0 @@
-Fixes the application of -znodelete, both at configure time and build time;
-submitted upstream, accepted for next release
-
-  90878 nodelete linker configure test is wrong and is wrongly applied to executables
-  https://bugs.freedesktop.org/show_bug.cgi?id=90878
-
---- pulseaudio-6.0/configure.ac	2015-02-12 13:40:53.687711343 -0700
-+++ pulseaudio-6.0/configure.ac	2015-06-05 06:10:35.000000000 -0800
[email protected]@ -212,7 +212,7 @@
- # On ELF systems we don't want the libraries to be unloaded since we don't clean them up properly,
- # so we request the nodelete flag to be enabled.
- # On other systems, we don't really know how to do that, but it's welcome if somebody can tell.
--AX_APPEND_LINK_FLAGS([-Wl,-z,nodelete], [NODELETE_LDFLAGS])
-+AX_APPEND_LINK_FLAGS([-Wl,-z,nodelete], [NODELETE_LDFLAGS], [-shared])
- AC_SUBST([NODELETE_LDFLAGS])
- 
- # Check for the proper way to build libraries that have no undefined symbols
---- pulseaudio-6.0/src/Makefile.am	2015-02-12 06:10:35.000000000 -0800
-+++ pulseaudio-6.0/src/Makefile.am	2015-06-05 16:05:06.407285790 -0700
[email protected]@ -54,7 +54,9 @@
- 
- AM_LIBADD = $(PTHREAD_LIBS) $(INTLLIBS)
- AM_LDADD = $(PTHREAD_LIBS) $(INTLLIBS)
--AM_LDFLAGS = $(NODELETE_LDFLAGS)
-+AM_LDFLAGS =
-+# Should only be applied to libraries.
-+AM_LIBLDFLAGS = $(NODELETE_LDFLAGS)
- 
- if HAVE_GCOV
- AM_CFLAGS+=$(GCOV_CFLAGS)
[email protected]@ -77,7 +79,7 @@
- 
- FOREIGN_CFLAGS = -w
- 
--MODULE_LDFLAGS = $(AM_LDFLAGS) -module -disable-static -avoid-version $(NOUNDEFINED_LDFLAGS)
-+MODULE_LDFLAGS = $(AM_LDFLAGS) $(AM_LIBLDFLAGS) -module -disable-static -avoid-version $(NOUNDEFINED_LDFLAGS)
- MODULE_LIBADD = $(AM_LIBADD) [email protected][email protected] [email protected][email protected] libpulse.la
- 
- ###################################
[email protected]@ -712,7 +714,7 @@
- endif
- 
- [email protected][email protected]_la_CFLAGS = $(AM_CFLAGS) $(LIBJSON_CFLAGS) $(LIBSNDFILE_CFLAGS)
[email protected][email protected]_la_LDFLAGS = $(AM_LDFLAGS) -avoid-version
[email protected][email protected]_la_LDFLAGS = $(AM_LDFLAGS) $(AM_LIBLDFLAGS) -avoid-version
- [email protected][email protected]_la_LIBADD = $(AM_LIBADD) $(LIBJSON_LIBS)  $(LIBWRAP_LIBS) $(WINSOCK_LIBS) $(LTLIBICONV) $(LIBSNDFILE_LIBS)
- 
- if HAVE_X11
[email protected]@ -862,7 +864,7 @@
- 
- libpulse_la_CFLAGS = $(AM_CFLAGS) $(LIBJSON_CFLAGS)
- libpulse_la_LIBADD = $(AM_LIBADD) $(WINSOCK_LIBS) $(LTLIBICONV) $(LIBJSON_LIBS) [email protected][email protected]
--libpulse_la_LDFLAGS = $(AM_LDFLAGS) $(VERSIONING_LDFLAGS) -version-info $(LIBPULSE_VERSION_INFO)
-+libpulse_la_LDFLAGS = $(AM_LDFLAGS) $(AM_LIBLDFLAGS) $(VERSIONING_LDFLAGS) -version-info $(LIBPULSE_VERSION_INFO)
- 
- if HAVE_DBUS
- li1Gbpulse_la_CFLAGS += $(DBUS_CFLAGS)
[email protected]@ -872,12 +874,12 @@
- libpulse_simple_la_SOURCES = pulse/simple.c pulse/simple.h
- 1Glibpulse_simple_la_CFLAGS = $(AM_CFLAGS)
- libpulse_simple_la_LIBADD = $(AM_LIBADD) libpulse.la [email protected][email protected]
--libpulse_simple_la_LDFLAGS = $(AM_LDFLAGS) $(VERSIONING_LDFLAGS) -version-info $(LIBPULSE_SIMPLE_VERSION_INFO)
-+libpulse_simple_la_LDFLAGS = $(AM_LDFLAGS) $(AM_LIBLDFLAGS) $(VERSIONING_LDFLAGS) -version-info $(LIBPULSE_SIMPLE_VERSION_INFO)
- 
- libpulse_mainloop_glib_la_SOURCES = pulse/glib-mainloop.h pulse/glib-mainloop.c
- libpulse_mainloop_glib_la_CFLAGS = $(AM_CFLAGS) $(GLIB20_CFLAGS)
- libpulse_mainloop_glib_la_LIBADD = $(AM_LIBADD) libpulse.la [email protected][email protected] $(GLIB20_LIBS)
--libpulse_mainloop_glib_la_LDFLAGS = $(AM_LDFLAGS) $(VERSIONING_LDFLAGS) -version-info $(LIBPULSE_MAINLOOP_GLIB_VERSION_INFO)
-+libpulse_mainloop_glib_la_LDFLAGS = $(AM_LDFLAGS) $(AM_LIBLDFLAGS) $(VERSIONING_LDFLAGS) -version-info $(LIBPULSE_MAINLOOP_GLIB_VERSION_INFO)
- 
- ###################################
- #         OSS emulation           #
[email protected]@ -901,7 +903,7 @@
- libpulsedsp_la_SOURCES = utils/padsp.c
- libpulsedsp_la_CFLAGS = $(AM_CFLAGS)
- libpulsedsp_la_LIBADD = $(AM_LIBADD) libpulse.la [email protected][email protected]
--libpulsedsp_la_LDFLAGS = $(AM_LDFLAGS) -avoid-version -disable-static
-+libpulsedsp_la_LDFLAGS = $(AM_LDFLAGS) $(AM_LIBLDFLAGS) -avoid-version -disable-static
- 
- ###################################
- #      Daemon core library        #
[email protected]@ -961,7 +963,7 @@
- 		pulsecore/database.h
- 
- [email protected][email protected]_la_CFLAGS = $(AM_CFLAGS) $(SERVER_CFLAGS) $(LIBSNDFILE_CFLAGS) $(WINSOCK_CFLAGS)
[email protected][email protected]_la_LDFLAGS = $(AM_LDFLAGS) -avoid-version
[email protected][email protected]_la_LDFLAGS = $(AM_LDFLAGS) $(AM_LIBLDFLAGS) -avoid-version
- [email protected][email protected]_la_LIBADD = $(AM_LIBADD) $(LIBLTDL) $(LIBSNDFILE_LIBS) $(WINSOCK_LIBS) $(LTLIBICONV) [email protected][email protected] libpulse.la libpulsecore-foreign.la
- 
- if HAVE_NEON
[email protected]@ -1070,24 +1072,24 @@
- endif
- 
- libprotocol_simple_la_SOURCES = pulsecore/protocol-simple.c pulsecore/protocol-simple.h
--libprotocol_simple_la_LDFLAGS = $(AM_LDFLAGS) -avoid-version
-+libprotocol_simple_la_LDFLAGS = $(AM_LDFLAGS) $(AM_LIBLDFLAGS) -avoid-version
- libprotocol_simple_la_LIBADD = $(AM_LIBADD) [email protected][email protected] [email protected][email protected] libpulse.la
- 
- libcli_la_SOURCES = pulsecore/cli.c pulsecore/cli.h
--libcli_la_LDFLAGS = $(AM_LDFLAGS) -avoid-version
-+libcli_la_LDFLAGS = $(AM_LDFLAGS) $(AM_LIBLDFLAGS) -avoid-version
- libcli_la_LIBADD = $(AM_LIBADD) [email protected][email protected] [email protected][email protected] libpulse.la
- 
- libprotocol_cli_la_SOURCES = pulsecore/protocol-cli.c pulsecore/protocol-cli.h
--libprotocol_cli_la_LDFLAGS = $(AM_LDFLAGS) -avoid-version
-+libprotocol_cli_la_LDFLAGS = $(AM_LDFLAGS) $(AM_LIBLDFLAGS) -avoid-version
- libprotocol_cli_la_LIBADD = $(AM_LIBADD) [email protected][email protected] [email protected][email protected] libpulse.la libcli.la
- 
- libprotocol_http_la_SOURCES = pulsecore/protocol-http.c pulsecore/protocol-http.h pulsecore/mime-type.c pulsecore/mime-type.h
--libprotocol_http_la_LDFLAGS = $(AM_LDFLAGS) -avoid-version
-+libprotocol_http_la_LDFLAGS = $(AM_LDFLAGS) $(AM_LIBLDFLAGS) -avoid-version
- libprotocol_http_la_LIBADD = $(AM_LIBADD) [email protected][email protected] [email protected][email protected] libpulse.la
- 
- libprotocol_native_la_SOURCES = pulsecore/protocol-native.c pulsecore/protocol-native.h pulsecore/native-common.h
- libprotocol_native_la_CFLAGS = $(AM_CFLAGS) $(SERVER_CFLAGS)
--libprotocol_native_la_LDFLAGS = $(AM_LDFLAGS) -avoid-version
-+libprotocol_native_la_LDFLAGS = $(AM_LDFLAGS) $(AM_LIBLDFLAGS) -avoid-version
- libprotocol_native_la_LIBADD = $(AM_LIBADD) [email protected][email protected] [email protected][email protected] libpulse.la
- if HAVE_DBUS
- libprotocol_native_la_CFLAGS += $(DBUS_CFLAGS)
[email protected]@ -1096,7 +1098,7 @@
- 
- if HAVE_ESOUND
- libprotocol_esound_la_SOURCES = pulsecore/protocol-esound.c pulsecore/protocol-esound.h pulsecore/esound.h
--libprotocol_esound_la_LDFLAGS = $(AM_LDFLAGS) -avoid-version
-+libprotocol_esound_la_LDFLAGS = $(AM_LDFLAGS) $(AM_LIBLDFLAGS) -avoid-version
- libprotocol_esound_la_LIBADD = $(AM_LIBADD) [email protected][email protected] [email protected][email protected] libpulse.la
- endif
- 
[email protected]@ -1106,19 +1108,19 @@
- 		modules/rtp/sap.c modules/rtp/sap.h \
- 		modules/rtp/rtsp_client.c modules/rtp/rtsp_client.h \
- 		modules/rtp/headerlist.c modules/rtp/headerlist.h
--librtp_la_LDFLAGS = $(AM_LDFLAGS) -avoid-version
-+librtp_la_LDFLAGS = $(AM_LDFLAGS) $(AM_LIBLDFLAGS) -avoid-version
- librtp_la_LIBADD = $(AM_LIBADD) [email protected][email protected] [email protected][email protected] libpulse.la
- 
- libraop_la_SOURCES = \
-         modules/raop/raop_client.c modules/raop/raop_client.h \
-         modules/raop/base64.c modules/raop/base64.h
- libraop_la_CFLAGS = $(AM_CFLAGS) $(OPENSSL_CFLAGS) -I$(top_srcdir)/src/modules/rtp
--libraop_la_LDFLAGS = $(AM_LDFLAGS) -avoid-version
-+libraop_la_LDFLAGS = $(AM_LDFLAGS) $(AM_LIBLDFLAGS) -avoid-version
- libraop_la_LIBADD = $(AM_LIBADD) $(OPENSSL_LIBS) [email protected][email protected] librtp.la [email protected][email protected] libpulse.la
- 
- # Avahi
- libavahi_wrap_la_SOURCES = pulsecore/avahi-wrap.c pulsecore/avahi-wrap.h
--libavahi_wrap_la_LDFLAGS = $(AM_LDFLAGS) -avoid-version
-+libavahi_wrap_la_LDFLAGS = $(AM_LDFLAGS) $(AM_LIBLDFLAGS) -avoid-version
- libavahi_wrap_la_CFLAGS = $(AM_CFLAGS) $(AVAHI_CFLAGS)
- libavahi_wrap_la_LIBADD = $(AM_LIBADD) $(AVAHI_CFLAGS) [email protected][email protected] [email protected][email protected] libpulse.la
- 
--- a/components/desktop/pulseaudio/patches/02-glibc.patch	Wed Jan 11 07:38:41 2017 -0800
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,23 +0,0 @@
-Waiting for upstream resolution:
-
-  90880 builds can fail due to non-portable glibc-specific internal macro usage
-  https://bugs.freedesktop.org/show_bug.cgi?id=90880
-
---- pulseaudio-6.0/src/pulsecore/sample-util.h	2015-02-12 06:10:35.000000000 -0800
-+++ pulseaudio-6.0/src/pulsecore/sample-util.h	2015-06-05 14:13:16.767036433 -0700
[email protected]@ -32,6 +32,15 @@
- #include <pulsecore/memblock.h>
- #include <pulsecore/memchunk.h>
- 
-+/* __WORDSIZE is a non-portable glibc-specific internal macro. */
-+#if !defined(__WORDSIZE)
-+# if defined(__LP64__)
-+#  define __WORDSIZE	64
-+# else
-+#  define __WORDSIZE	32
-+# endif
-+#endif
-+
- typedef struct pa_silence_cache {
-     pa_memblock* blocks[PA_SAMPLE_MAX];
- } pa_silence_cache;
--- a/components/desktop/pulseaudio/patches/03-solaris-audio.patch	Wed Jan 11 07:38:41 2017 -0800
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,39 +0,0 @@
-Fixes compilation of Solaris backend, but unclear if the fixes are complete or
-if the resulting code works as expected.
-
-Needs further investigation.
-
-XXX file upstream bug
-
---- pulseaudio-6.0/src/modules/module-solaris.c	2015-06-05 14:16:44.723061189 -0700
-+++ pulseaudio-6.0/src/modules/module-solaris.c	2015-06-05 14:28:00.409910003 -0700
[email protected]@ -412,10 +412,11 @@
-                         pa_smoother_resume(u->smoother, pa_rtclock_now(), true);
- 
-                         if (!u->source || u->source_suspended) {
-+                            bool mute;
-                             if (unsuspend(u) < 0)
-                                 return -1;
-                             u->sink->get_volume(u->sink);
--                            u->sink->get_mute(u->sink);
-+                            u->sink->get_mute(u->sink, &mute);
-                         }
-                         u->sink_suspended = false;
-                     }
[email protected]@ -1026,6 +1027,7 @@
- 
-     /* Read mixer settings */
-     if (u->sink) {
-+        bool mute;
-         if (sink_new_data.volume_is_set)
-             u->sink->set_volume(u->sink);
-         else
[email protected]@ -1034,7 +1036,7 @@
-         if (sink_new_data.muted_is_set)
-             u->sink->set_mute(u->sink);
-         else
--            u->sink->get_mute(u->sink);
-+            u->sink->get_mute(u->sink, &mute);
- 
-         pa_sink_put(u->sink);
-     }
--- a/components/desktop/pulseaudio/patches/04-stream-header-conflict.patch	Wed Jan 11 07:38:41 2017 -0800
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,106 +0,0 @@
-module_info is already defined in /usr/include/sys/stream.h; 
-submitted upstream, accepted for next release
-
-  41823 some pulseaudio modules use data type that conflicts with a system data type
-  https://bugs.freedesktop.org/show_bug.cgi?id=41823
-
---- pulseaudio-6.0/src/modules/bluetooth/module-bluez4-discover.c	2015-02-12 06:10:35.000000000 -0800
-+++ pulseaudio-6.0/src/modules/bluetooth/module-bluez4-discover.c	2015-06-05 15:38:18.312248116 -0700
[email protected]@ -58,13 +58,13 @@
-     pa_hashmap *hashmap;
- };
- 
--struct module_info {
-+struct pa_module_info {
-     char *path;
-     uint32_t module;
- };
- 
- static pa_hook_result_t load_module_for_device(pa_bluez4_discovery *y, const pa_bluez4_device *d, struct userdata *u) {
--    struct module_info *mi;
-+    struct pa_module_info *mi;
- 
-     pa_assert(u);
-     pa_assert(d);
[email protected]@ -97,7 +97,7 @@
-             pa_xfree(args);
- 
-             if (m) {
--                mi = pa_xnew(struct module_info, 1);
-+                mi = pa_xnew(struct pa_module_info, 1);
-                 mi->module = m->index;
-                 mi->path = pa_xstrdup(d->path);
- 
[email protected]@ -175,7 +175,7 @@
-         pa_bluez4_discovery_unref(u->discovery);
- 
-     if (u->hashmap) {
--        struct module_info *mi;
-+        struct pa_module_info *mi;
- 
-         while ((mi = pa_hashmap_steal_first(u->hashmap))) {
-             pa_xfree(mi->path);
---- pulseaudio-6.0/src/modules/gconf/module-gconf.c	2015-02-12 06:10:35.000000000 -0800
-+++ pulseaudio-6.0/src/modules/gconf/module-gconf.c	2015-06-05 15:40:25.841105525 -0700
[email protected]@ -56,7 +56,7 @@
-     uint32_t index;
- };
- 
--struct module_info {
-+struct pa_module_info {
-     struct userdata *userdata;
-     char *name;
- 
[email protected]@ -129,7 +129,7 @@
-     }
- }
- 
--static void unload_one_module(struct module_info *m, unsigned i) {
-+static void unload_one_module(struct pa_module_info *m, unsigned i) {
-     struct userdata *u;
- 
-     pa_assert(m);
[email protected]@ -148,7 +148,7 @@
-     m->items[i].name = m->items[i].args = NULL;
- }
- 
--static void unload_all_modules(struct module_info *m) {
-+static void unload_all_modules(struct pa_module_info *m) {
-     unsigned i;
- 
-     pa_assert(m);
[email protected]@ -160,7 +160,7 @@
- }
- 
- static void load_module(
--        struct module_info *m,
-+        struct pa_module_info *m,
-         unsigned i,
-         const char *name,
-         const char *args,
[email protected]@ -199,7 +199,7 @@
- }
- 
- static void module_info_free(void *p) {
--    struct module_info *m = p;
-+    struct pa_module_info *m = p;
- 
-     pa_assert(m);
- 
[email protected]@ -227,14 +227,14 @@
- 
-             case '+': {
-                 char *name;
--                struct module_info *m;
-+                struct pa_module_info *m;
-                 unsigned i, j;
- 
-                 if (!(name = read_string(u)))
-                     goto fail;
- 
-                 if (!(m = pa_hashmap_get(u->module_infos, name))) {
--                    m = pa_xnew(struct module_info, 1);
-+                    m = pa_xnew(struct pa_module_info, 1);
-                     m->userdata = u;
-                     m->name = name;
-                     m->n_items = 0;
--- a/components/desktop/pulseaudio/patches/06-largefile.patch	Wed Jan 11 07:38:41 2017 -0800
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,16 +0,0 @@
-Needed to build on Solaris for largefile support.
-
-XXX file upstream bug
---- a/src/modules/echo-cancel/adrian-aec.c
-+++ b/src/modules/echo-cancel/adrian-aec.c
[email protected]@ -14,6 +14,10 @@
- #define _GNU_SOURCE
- #endif
- 
-+#ifdef HAVE_CONFIG_H
-+#include <config.h>
-+#endif
-+
- #include <math.h>
- #include <string.h>
- #include <stdint.h>
--- a/components/desktop/pulseaudio/pulseaudio.license	Wed Jan 11 07:38:41 2017 -0800
+++ b/components/desktop/pulseaudio/pulseaudio.license	Wed Jan 11 10:37:16 2017 -0800
@@ -623,3 +623,31 @@
 or obtained by writing to the Free Software Foundation, Inc., 
 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 
 
+--
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1.  Redistributions of source code must retain the above copyright
+ *     notice, this list of conditions and the following disclaimer.
+ * 2.  Redistributions in binary form must reproduce the above copyright
+ *     notice, this list of conditions and the following disclaimer in the
+ *     documentation and/or other materials provided with the distribution.
+ * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
+ *     its contributors may be used to endorse or promote products derived
+ *     from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
--- a/components/desktop/pulseaudio/pulseaudio.p5m	Wed Jan 11 07:38:41 2017 -0800
+++ b/components/desktop/pulseaudio/pulseaudio.p5m	Wed Jan 11 10:37:16 2017 -0800
@@ -20,7 +20,7 @@
 #
 
 #
-# Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2015, 2017, Oracle and/or its affiliates. All rights reserved.
 #
 
 <transform file path=usr.*/man/.+ -> \
@@ -38,15 +38,10 @@
 set name=info.upstream-url value=$(COMPONENT_PROJECT_URL)
 set name=org.opensolaris.arc-caseid value=PSARC/2016/389
 set name=org.opensolaris.consolidation value=$(CONSOLIDATION)
-link path=etc/bash_completion.d/pacat target=pulseaudio
-link path=etc/bash_completion.d/pacmd target=pulseaudio
-link path=etc/bash_completion.d/pactl target=pulseaudio
-link path=etc/bash_completion.d/padsp target=pulseaudio
-link path=etc/bash_completion.d/paplay target=pulseaudio
-link path=etc/bash_completion.d/parec target=pulseaudio
-link path=etc/bash_completion.d/parecord target=pulseaudio
-link path=etc/bash_completion.d/pasuspender target=pulseaudio
-file path=etc/bash_completion.d/pulseaudio
+
+# removed with bugid 24288657.
+# gmake sample-config tries to pull this in.
+#file path=etc/dbus-1/system.d/pulseaudio-system.conf
 file path=etc/pulse/client.conf
 file path=etc/pulse/daemon.conf
 file path=etc/pulse/default.pa
@@ -118,10 +113,9 @@
 link path=usr/lib/$(MACH64)/libpulse-simple.so target=libpulse-simple.so.0.1.0
 link path=usr/lib/$(MACH64)/libpulse-simple.so.0 target=libpulse-simple.so.0.1.0
 file path=usr/lib/$(MACH64)/libpulse-simple.so.0.1.0
-link path=usr/lib/$(MACH64)/libpulse.so target=libpulse.so.0.18.0
-link path=usr/lib/$(MACH64)/libpulse.so.0 target=libpulse.so.0.18.0
-file path=usr/lib/$(MACH64)/libpulse.so.0.18.0
-file path=usr/lib/$(MACH64)/libpulsecore-$(COMPONENT_VERSION).so
+link path=usr/lib/$(MACH64)/libpulse.so target=libpulse.so.0.20.0
+link path=usr/lib/$(MACH64)/libpulse.so.0 target=libpulse.so.0.20.0
+file path=usr/lib/$(MACH64)/libpulse.so.0.20.0
 file path=usr/lib/$(MACH64)/pkgconfig/libpulse-mainloop-glib.pc
 file path=usr/lib/$(MACH64)/pkgconfig/libpulse-simple.pc
 file path=usr/lib/$(MACH64)/pkgconfig/libpulse.pc
@@ -201,6 +195,7 @@
 file path=usr/lib/$(MACH64)/pulse-$(COMPONENT_VERSION)/modules/module-zeroconf-discover.so
 file path=usr/lib/$(MACH64)/pulse-$(COMPONENT_VERSION)/modules/module-zeroconf-publish.so
 file path=usr/lib/$(MACH64)/pulseaudio/libpulsecommon-$(COMPONENT_VERSION).so
+file path=usr/lib/$(MACH64)/pulseaudio/libpulsecore-$(COMPONENT_VERSION).so
 file path=usr/lib/cmake/PulseAudio/PulseAudioConfig.cmake
 file path=usr/lib/cmake/PulseAudio/PulseAudioConfigVersion.cmake
 link path=usr/lib/libpulse-mainloop-glib.so \
@@ -211,10 +206,9 @@
 link path=usr/lib/libpulse-simple.so target=libpulse-simple.so.0.1.0
 link path=usr/lib/libpulse-simple.so.0 target=libpulse-simple.so.0.1.0
 file path=usr/lib/libpulse-simple.so.0.1.0
-link path=usr/lib/libpulse.so target=libpulse.so.0.18.0
-link path=usr/lib/libpulse.so.0 target=libpulse.so.0.18.0
-file path=usr/lib/libpulse.so.0.18.0
-file path=usr/lib/libpulsecore-$(COMPONENT_VERSION).so
+link path=usr/lib/libpulse.so target=libpulse.so.0.20.0
+link path=usr/lib/libpulse.so.0 target=libpulse.so.0.20.0
+file path=usr/lib/libpulse.so.0.20.0
 file path=usr/lib/pkgconfig/libpulse-mainloop-glib.pc
 file path=usr/lib/pkgconfig/libpulse-simple.pc
 file path=usr/lib/pkgconfig/libpulse.pc
@@ -294,13 +288,22 @@
 file path=usr/lib/pulse-$(COMPONENT_VERSION)/modules/module-zeroconf-discover.so
 file path=usr/lib/pulse-$(COMPONENT_VERSION)/modules/module-zeroconf-publish.so
 file path=usr/lib/pulseaudio/libpulsecommon-$(COMPONENT_VERSION).so
+file path=usr/lib/pulseaudio/libpulsecore-$(COMPONENT_VERSION).so
+link path=usr/share/bash-completion/completions/pacat target=pulseaudio
+link path=usr/share/bash-completion/completions/pacmd target=pulseaudio
+link path=usr/share/bash-completion/completions/pactl target=pulseaudio
+link path=usr/share/bash-completion/completions/padsp target=pulseaudio
+link path=usr/share/bash-completion/completions/paplay target=pulseaudio
+link path=usr/share/bash-completion/completions/parec target=pulseaudio
+link path=usr/share/bash-completion/completions/parecord target=pulseaudio
+link path=usr/share/bash-completion/completions/pasuspender target=pulseaudio
+file path=usr/share/bash-completion/completions/pulseaudio
 file path=usr/share/locale/as/LC_MESSAGES/pulseaudio.mo
 file path=usr/share/locale/bn_IN/LC_MESSAGES/pulseaudio.mo
 file path=usr/share/locale/ca/LC_MESSAGES/pulseaudio.mo
 file path=usr/share/locale/cs/LC_MESSAGES/pulseaudio.mo
 file path=usr/share/locale/de/LC_MESSAGES/pulseaudio.mo
-# Conflicts with system/locale link de_CH -> de
-# file path=usr/share/locale/de_CH/LC_MESSAGES/pulseaudio.mo
+file path=usr/share/locale/de_CH/LC_MESSAGES/pulseaudio.mo
 file path=usr/share/locale/el/LC_MESSAGES/pulseaudio.mo
 file path=usr/share/locale/es/LC_MESSAGES/pulseaudio.mo
 file path=usr/share/locale/fi/LC_MESSAGES/pulseaudio.mo
@@ -313,9 +316,11 @@
 file path=usr/share/locale/it/LC_MESSAGES/pulseaudio.mo
 file path=usr/share/locale/ja/LC_MESSAGES/pulseaudio.mo
 file path=usr/share/locale/kn/LC_MESSAGES/pulseaudio.mo
+file path=usr/share/locale/ko/LC_MESSAGES/pulseaudio.mo
 file path=usr/share/locale/ml/LC_MESSAGES/pulseaudio.mo
 file path=usr/share/locale/mr/LC_MESSAGES/pulseaudio.mo
 file path=usr/share/locale/nl/LC_MESSAGES/pulseaudio.mo
+file path=usr/share/locale/oc/LC_MESSAGES/pulseaudio.mo
 file path=usr/share/locale/or/LC_MESSAGES/pulseaudio.mo
 file path=usr/share/locale/pa/LC_MESSAGES/pulseaudio.mo
 file path=usr/share/locale/pl/LC_MESSAGES/pulseaudio.mo
@@ -337,7 +342,10 @@
 file path=usr/share/man/man1/pacmd.1
 file path=usr/share/man/man1/pactl.1
 file path=usr/share/man/man1/padsp.1
-file path=usr/share/man/man1/paplay.1
+link path=usr/share/man/man1/pamon.1 target=pacat.1
+link path=usr/share/man/man1/paplay.1 target=pacat.1
+link path=usr/share/man/man1/parec.1 target=pacat.1
+link path=usr/share/man/man1/parecord.1 target=pacat.1
 file path=usr/share/man/man1/pasuspender.1
 file path=usr/share/man/man1/pax11publish.1
 file path=usr/share/man/man1/pulseaudio.1
@@ -354,3 +362,4 @@
 file path=usr/share/vala/vapi/libpulse.vapi
 file path=usr/share/zsh/5.2/functions/Completion/Unix/_pulseaudio
 license pulseaudio.license license="GPLv2, LGPLv2.1"
+
--- a/components/desktop/pulseaudio/test/results-i386-32.master	Wed Jan 11 07:38:41 2017 -0800
+++ b/components/desktop/pulseaudio/test/results-i386-32.master	Wed Jan 11 10:37:16 2017 -0800
@@ -25,12 +25,13 @@
 FAIL: cpu-volume-test
 PASS: lock-autospawn-test
 PASS: mult-s16-test
+PASS: lfe-filter-test
 PASS: sigbus-test
 PASS: usergroup-test
 PASS: once-test
 PASS: mainloop-test-glib
-# TOTAL: 31
-# PASS:  30
+# TOTAL: 32
+# PASS:  31
 # SKIP:  0
 # XFAIL: 0
 # FAIL:  1
--- a/components/desktop/pulseaudio/test/results-i386-64.master	Wed Jan 11 07:38:41 2017 -0800
+++ b/components/desktop/pulseaudio/test/results-i386-64.master	Wed Jan 11 10:37:16 2017 -0800
@@ -25,12 +25,13 @@
 PASS: cpu-volume-test
 PASS: lock-autospawn-test
 PASS: mult-s16-test
+PASS: lfe-filter-test
 PASS: sigbus-test
 PASS: usergroup-test
 PASS: once-test
 PASS: mainloop-test-glib
-# TOTAL: 31
-# PASS:  31
+# TOTAL: 32
+# PASS:  32
 # SKIP:  0
 # XFAIL: 0
 # FAIL:  0
--- a/components/desktop/pulseaudio/test/results-sparc-32.master	Wed Jan 11 07:38:41 2017 -0800
+++ b/components/desktop/pulseaudio/test/results-sparc-32.master	Wed Jan 11 10:37:16 2017 -0800
@@ -25,12 +25,13 @@
 PASS: cpu-volume-test
 PASS: lock-autospawn-test
 PASS: mult-s16-test
+PASS: lfe-filter-test
 PASS: sigbus-test
 PASS: usergroup-test
 PASS: once-test
 PASS: mainloop-test-glib
-# TOTAL: 31
-# PASS:  31
+# TOTAL: 32
+# PASS:  32
 # SKIP:  0
 # XFAIL: 0
 # FAIL:  0
--- a/components/desktop/pulseaudio/test/results-sparc-64.master	Wed Jan 11 07:38:41 2017 -0800
+++ b/components/desktop/pulseaudio/test/results-sparc-64.master	Wed Jan 11 10:37:16 2017 -0800
@@ -25,12 +25,13 @@
 PASS: cpu-volume-test
 PASS: lock-autospawn-test
 PASS: mult-s16-test
+PASS: lfe-filter-test
 PASS: sigbus-test
 PASS: usergroup-test
 PASS: once-test
 PASS: mainloop-test-glib
-# TOTAL: 31
-# PASS:  31
+# TOTAL: 32
+# PASS:  32
 # SKIP:  0
 # XFAIL: 0
 # FAIL:  0