[153196] trunk/dports/audio/pulseaudio

ionic at macports.org ionic at macports.org
Mon Sep 26 20:10:13 PDT 2016


Revision: 153196
          https://trac.macports.org/changeset/153196
Author:   ionic at macports.org
Date:     2016-09-26 20:10:12 -0700 (Mon, 26 Sep 2016)
Log Message:
-----------
pulseaudio: update to 9.0. Fixes: #52386.

Changes:
  - Now uses C11, some compilers were blacklisted.
  - Refresh patches, drop upstreamed patches, rework the others.

Modified Paths:
--------------
    trunk/dports/audio/pulseaudio/Portfile
    trunk/dports/audio/pulseaudio/files/autogen.sh
    trunk/dports/audio/pulseaudio/files/patch-src_daemon_default.pa.in-skip-consolekit-and-systemdlogin.diff
    trunk/dports/audio/pulseaudio/files/patch-src_modules_macosx_module_coreaudio_detect_device.c-add-record-playback-modarg.diff
    trunk/dports/audio/pulseaudio/files/patch-src_modules_macosx_module_coreaudio_device.c-respect-PA_NAME_MAX.diff

Removed Paths:
-------------
    trunk/dports/audio/pulseaudio/files/patch-configure.ac-coreservices.diff
    trunk/dports/audio/pulseaudio/files/patch-src_modules_macosx_module_coreaudio_device.c-dynamically-allocate-C-string-when-converting-from-CFString.patch
    trunk/dports/audio/pulseaudio/files/patch-src_modules_macosx_module_coreaudio_device.c-skip-unsupported-channels-count.diff

Property Changed:
----------------
    trunk/dports/audio/pulseaudio/files/autogen.sh

Modified: trunk/dports/audio/pulseaudio/Portfile
===================================================================
--- trunk/dports/audio/pulseaudio/Portfile	2016-09-26 22:56:08 UTC (rev 153195)
+++ trunk/dports/audio/pulseaudio/Portfile	2016-09-27 03:10:12 UTC (rev 153196)
@@ -6,10 +6,11 @@
 
 PortSystem          1.0
 PortGroup           active_variants 1.1
+PortGroup           compiler_blacklist_versions 1.0
 
 name                pulseaudio
-version             8.0
-revision            2
+version             9.0
+revision            0
 license             LGPL-2.1
 categories          audio
 maintainers         ionic openmaintainer
@@ -28,8 +29,8 @@
 
 use_xz              yes
 
-checksums           rmd160  fc2700ec34ae9cbecd85c1ad6253b4c224541c96 \
-                    sha256  690eefe28633466cfd1ab9d85ebfa9376f6b622deec6bfee5091ac9737cd1989
+checksums           rmd160  bab63483ff39e462a0701fcd612fea9f1ebe1173 \
+                    sha256  c3d3d66b827f18fbe903fe3df647013f09fc1e2191c035be1ee2d82a9e404686
 
 set perl_branch     5.24
 
@@ -75,9 +76,6 @@
 # and posts on the mailing list.
 patchfiles          patch-man-Makefile.am.diff \
                     i386.patch \
-                    patch-configure.ac-coreservices.diff \
-                    patch-src_modules_macosx_module_coreaudio_device.c-dynamically-allocate-C-string-when-converting-from-CFString.patch \
-                    patch-src_modules_macosx_module_coreaudio_device.c-skip-unsupported-channels-count.diff \
                     patch-src_modules_macosx_module_coreaudio_device.c-respect-PA_NAME_MAX.diff \
                     patch-src_daemon_default.pa.in-skip-consolekit-and-systemdlogin.diff \
                     patch-src_modules_macosx_module_coreaudio_detect_device.c-add-record-playback-modarg.diff
@@ -88,6 +86,9 @@
     reinplace "s|@@MP_PERL@@|${prefix}/bin/perl${perl_branch}|" ${worksrcpath}/man/Makefile.am
 }
 
+# Blacklist compilers that do not support C11.
+compiler.blacklist  {*gcc-3*} {*gcc-4.[0-8]} {clang < 300} cc
+
 configure.cmd       ./autogen.sh
 
 configure.args      --with-mac-version-min=$macosx_deployment_target \

Modified: trunk/dports/audio/pulseaudio/files/autogen.sh
===================================================================
--- trunk/dports/audio/pulseaudio/files/autogen.sh	2016-09-26 22:56:08 UTC (rev 153195)
+++ trunk/dports/audio/pulseaudio/files/autogen.sh	2016-09-27 03:10:12 UTC (rev 153196)
@@ -13,8 +13,7 @@
 # General Public License for more details.
 #
 # You should have received a copy of the GNU Lesser General Public License
-# along with PulseAudio; if not, write to the Free Software Foundation,
-# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+# along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
 
 # Only there to make jhbuild happy
 


Property changes on: trunk/dports/audio/pulseaudio/files/autogen.sh
___________________________________________________________________
Added: svn:executable
   + *

Deleted: trunk/dports/audio/pulseaudio/files/patch-configure.ac-coreservices.diff
===================================================================
--- trunk/dports/audio/pulseaudio/files/patch-configure.ac-coreservices.diff	2016-09-26 22:56:08 UTC (rev 153195)
+++ trunk/dports/audio/pulseaudio/files/patch-configure.ac-coreservices.diff	2016-09-27 03:10:12 UTC (rev 153196)
@@ -1,18 +0,0 @@
---- configure.ac.old	2016-01-22 08:33:38.000000000 +0100
-+++ configure.ac	2016-02-22 21:15:46.000000000 +0100
-@@ -533,13 +533,9 @@ AC_SEARCH_LIBS([backtrace], [execinfo ub
- # Darwin/OS X
- if test "x$os_is_darwin" = "x1" ; then
-     AC_MSG_CHECKING([looking for Apple CoreService Framework])
--    # How do I check a framework "library" - AC_CHECK_LIB prob. won't work??, just assign LIBS & hope
--    AC_CHECK_HEADER([/Developer/Headers/FlatCarbon/CoreServices.h],
-+    AC_CHECK_HEADER([CoreServices/CoreServices.h],
-         [LIBS="$LIBS -framework CoreServices"],
--        [AC_CHECK_HEADERS([/System/Library/Frameworks/CoreServices.framework/Headers/CoreServices.h],
--            [LIBS="$LIBS -framework CoreServices"],
--            [AC_MSG_ERROR([CoreServices.h header file not found])]
--        )]
-+        [AC_MSG_ERROR([CoreServices.h header file not found])]
-     )
- 
-     AC_MSG_RESULT([ok])

Modified: trunk/dports/audio/pulseaudio/files/patch-src_daemon_default.pa.in-skip-consolekit-and-systemdlogin.diff
===================================================================
--- trunk/dports/audio/pulseaudio/files/patch-src_daemon_default.pa.in-skip-consolekit-and-systemdlogin.diff	2016-09-26 22:56:08 UTC (rev 153195)
+++ trunk/dports/audio/pulseaudio/files/patch-src_daemon_default.pa.in-skip-consolekit-and-systemdlogin.diff	2016-09-27 03:10:12 UTC (rev 153196)
@@ -1,6 +1,6 @@
---- src/daemon/default.pa.in.old	2016-01-18 11:14:20.000000000 +0100
-+++ src/daemon/default.pa.in	2016-02-22 21:31:10.000000000 +0100
-@@ -153,12 +153,14 @@ load-module module-suspend-on-idle
+--- src/daemon/default.pa.in.old	2016-05-03 08:17:39.000000000 +0200
++++ src/daemon/default.pa.in	2016-09-27 03:23:14.000000000 +0200
+@@ -140,12 +140,14 @@ load-module module-suspend-on-idle
  
  ### If autoexit on idle is enabled we want to make sure we only quit
  ### when no local session needs us anymore.

Modified: trunk/dports/audio/pulseaudio/files/patch-src_modules_macosx_module_coreaudio_detect_device.c-add-record-playback-modarg.diff
===================================================================
--- trunk/dports/audio/pulseaudio/files/patch-src_modules_macosx_module_coreaudio_detect_device.c-add-record-playback-modarg.diff	2016-09-26 22:56:08 UTC (rev 153195)
+++ trunk/dports/audio/pulseaudio/files/patch-src_modules_macosx_module_coreaudio_detect_device.c-add-record-playback-modarg.diff	2016-09-27 03:10:12 UTC (rev 153196)
@@ -1,5 +1,5 @@
---- src/modules/macosx/module-coreaudio-detect.c.old	2015-09-10 06:51:41.000000000 +0200
-+++ src/modules/macosx/module-coreaudio-detect.c	2016-02-23 00:59:31.000000000 +0100
+--- src/modules/macosx/module-coreaudio-detect.c.old	2016-05-03 08:17:39.000000000 +0200
++++ src/modules/macosx/module-coreaudio-detect.c	2016-09-27 03:27:05.000000000 +0200
 @@ -39,10 +39,14 @@ PA_MODULE_AUTHOR("Daniel Mack");
  PA_MODULE_DESCRIPTION("CoreAudio device detection");
  PA_MODULE_VERSION(PACKAGE_VERSION);
@@ -69,8 +69,8 @@
      pa_modargs_get_value_u32(ma, "ioproc_frames", &u->ioproc_frames);
  
      property_address.mSelector = kAudioHardwarePropertyDevices;
---- src/modules/macosx/module-coreaudio-device.c.old	2016-02-23 00:57:43.000000000 +0100
-+++ src/modules/macosx/module-coreaudio-device.c	2016-02-23 00:59:31.000000000 +0100
+--- src/modules/macosx/module-coreaudio-device.c.old	2016-09-27 03:14:04.000000000 +0200
++++ src/modules/macosx/module-coreaudio-device.c	2016-09-27 03:27:05.000000000 +0200
 @@ -58,11 +58,15 @@ PA_MODULE_DESCRIPTION("CoreAudio device"
  PA_MODULE_VERSION(PACKAGE_VERSION);
  PA_MODULE_LOAD_ONCE(false);
@@ -88,7 +88,7 @@
      NULL
  };
  
-@@ -772,6 +776,7 @@ int pa__init(pa_module *m) {
+@@ -766,6 +770,7 @@ int pa__init(pa_module *m) {
      UInt32 size, frames;
      struct userdata *u = NULL;
      pa_modargs *ma = NULL;
@@ -96,7 +96,7 @@
      char tmp[64];
      pa_card_new_data card_new_data;
      pa_card_profile *p;
-@@ -786,6 +791,16 @@ int pa__init(pa_module *m) {
+@@ -780,6 +785,16 @@ int pa__init(pa_module *m) {
          goto fail;
      }
  
@@ -113,7 +113,7 @@
      u = pa_xnew0(struct userdata, 1);
      u->module = m;
      m->userdata = u;
-@@ -845,10 +860,12 @@ int pa__init(pa_module *m) {
+@@ -839,10 +854,12 @@ int pa__init(pa_module *m) {
      PA_LLIST_HEAD_INIT(coreaudio_sink, u->sinks);
  
      /* create sinks */

Deleted: trunk/dports/audio/pulseaudio/files/patch-src_modules_macosx_module_coreaudio_device.c-dynamically-allocate-C-string-when-converting-from-CFString.patch
===================================================================
--- trunk/dports/audio/pulseaudio/files/patch-src_modules_macosx_module_coreaudio_device.c-dynamically-allocate-C-string-when-converting-from-CFString.patch	2016-09-26 22:56:08 UTC (rev 153195)
+++ trunk/dports/audio/pulseaudio/files/patch-src_modules_macosx_module_coreaudio_device.c-dynamically-allocate-C-string-when-converting-from-CFString.patch	2016-09-27 03:10:12 UTC (rev 153196)
@@ -1,121 +0,0 @@
---- src/modules/macosx/module-coreaudio-device.c.old	2016-01-18 11:14:20.000000000 +0100
-+++ src/modules/macosx/module-coreaudio-device.c	2016-02-23 00:53:21.000000000 +0100
-@@ -376,23 +376,23 @@ static int ca_sink_set_state(pa_sink *s,
- }
- 
- /* Caveat: The caller is responsible to get rid of the CFString(Ref). */
--static bool CFString_to_cstr_n(CFStringRef cfstr, char *buf, long n) {
--    bool ret;
--
--    pa_assert (buf);
--
--    ret = false;
-+static char * CFString_to_cstr(CFStringRef cfstr) {
-+    char *ret = NULL;
- 
-     if (cfstr != NULL) {
-         const char *tmp = CFStringGetCStringPtr(cfstr, kCFStringEncodingUTF8);
-+        CFIndex n = CFStringGetLength(cfstr) + 1 /* for the terminating NULL */;
-+
-+        ret = pa_xmalloc(n);
- 
-         if (tmp == NULL) {
--            if (CFStringGetCString(cfstr, buf, n, kCFStringEncodingUTF8))
--                ret = true;
-+            if (!CFStringGetCString(cfstr, ret, n, kCFStringEncodingUTF8)) {
-+                pa_xfree(ret);
-+                ret = NULL;
-+            }
-         } else {
--            strncpy(buf, tmp, n);
--            buf[n - 1] = 0;
--            ret = true;
-+            strncpy(ret, tmp, n - 1);
-+            ret[n - 1] = '\0';
-         }
-     }
- 
-@@ -408,7 +408,7 @@ static int ca_device_create_sink(pa_modu
-     coreaudio_sink *ca_sink;
-     pa_sink *sink;
-     unsigned int i;
--    char tmp[255];
-+    char *tmp;
-     pa_strbuf *strbuf;
-     AudioObjectPropertyAddress property_address;
-     CFStringRef tmp_cfstr = NULL;
-@@ -425,23 +425,24 @@ static int ca_device_create_sink(pa_modu
-         property_address.mSelector = kAudioObjectPropertyElementName;
-         property_address.mScope = kAudioDevicePropertyScopeOutput;
-         property_address.mElement = channel_idx + i + 1;
--        size = sizeof(tmp);
-+        size = sizeof(tmp_cfstr);
-         err = AudioObjectGetPropertyData(u->object_id, &property_address, 0, NULL, &size, &tmp_cfstr);
-         if (err == 0) {
--            err = !(CFString_to_cstr_n(tmp_cfstr, tmp, sizeof(tmp)));
-+            tmp = CFString_to_cstr(tmp_cfstr);
- 
--            if (tmp_cfstr) {
-+            if (tmp_cfstr)
-                 CFRelease(tmp_cfstr);
--            }
-         }
- 
--        if (err || !strlen(tmp))
--            snprintf(tmp, sizeof(tmp), "Channel %d", (int) property_address.mElement);
--
-         if (i > 0)
-             pa_strbuf_puts(strbuf, ", ");
- 
--        pa_strbuf_puts(strbuf, tmp);
-+        if (err || !tmp || !strlen(tmp))
-+            pa_strbuf_printf(strbuf, "Channel %d", (int) property_address.mElement);
-+        else
-+            pa_strbuf_puts(strbuf, tmp);
-+
-+        pa_xfree(tmp);
-     }
- 
-     ca_sink->name = pa_strbuf_to_string_free(strbuf);
-@@ -535,7 +536,7 @@ static int ca_device_create_source(pa_mo
-     coreaudio_source *ca_source;
-     pa_source *source;
-     unsigned int i;
--    char tmp[255];
-+    char *tmp;
-     pa_strbuf *strbuf;
-     AudioObjectPropertyAddress property_address;
-     CFStringRef tmp_cfstr = NULL;
-@@ -552,23 +553,24 @@ static int ca_device_create_source(pa_mo
-         property_address.mSelector = kAudioObjectPropertyElementName;
-         property_address.mScope = kAudioDevicePropertyScopeInput;
-         property_address.mElement = channel_idx + i + 1;
--        size = sizeof(tmp);
-+        size = sizeof(tmp_cfstr);
-         err = AudioObjectGetPropertyData(u->object_id, &property_address, 0, NULL, &size, &tmp_cfstr);
-         if (err == 0) {
--            err = !(CFString_to_cstr_n(tmp_cfstr, tmp, sizeof(tmp)));
-+            tmp = CFString_to_cstr(tmp_cfstr);
- 
--            if (tmp_cfstr) {
-+            if (tmp_cfstr)
-                 CFRelease(tmp_cfstr);
--            }
-         }
- 
--        if (err || !strlen(tmp))
--            snprintf(tmp, sizeof(tmp), "Channel %d", (int) property_address.mElement);
--
-         if (i > 0)
-             pa_strbuf_puts(strbuf, ", ");
- 
--        pa_strbuf_puts(strbuf, tmp);
-+        if (err || !tmp || !strlen(tmp))
-+            pa_strbuf_printf(strbuf, "Channel %d", (int) property_address.mElement);
-+        else
-+            pa_strbuf_puts(strbuf, tmp);
-+
-+        pa_xfree(tmp);
-     }
- 
-     ca_source->name = pa_strbuf_to_string_free(strbuf);

Modified: trunk/dports/audio/pulseaudio/files/patch-src_modules_macosx_module_coreaudio_device.c-respect-PA_NAME_MAX.diff
===================================================================
--- trunk/dports/audio/pulseaudio/files/patch-src_modules_macosx_module_coreaudio_device.c-respect-PA_NAME_MAX.diff	2016-09-26 22:56:08 UTC (rev 153195)
+++ trunk/dports/audio/pulseaudio/files/patch-src_modules_macosx_module_coreaudio_device.c-respect-PA_NAME_MAX.diff	2016-09-27 03:10:12 UTC (rev 153196)
@@ -1,5 +1,5 @@
---- src/modules/macosx/module-coreaudio-device.c.old	2016-02-23 23:32:59.000000000 +0100
-+++ src/modules/macosx/module-coreaudio-device.c	2016-02-23 23:33:34.000000000 +0100
+--- src/modules/macosx/module-coreaudio-device.c.old	2016-05-03 08:17:39.000000000 +0200
++++ src/modules/macosx/module-coreaudio-device.c	2016-09-27 03:14:04.000000000 +0200
 @@ -43,6 +43,7 @@
  #include <pulsecore/thread.h>
  #include <pulsecore/thread-mq.h>
@@ -8,55 +8,29 @@
  
  #include <CoreAudio/CoreAudio.h>
  #include <CoreAudio/CoreAudioTypes.h>
-@@ -408,7 +409,7 @@ static int ca_device_create_sink(pa_modu
-     coreaudio_sink *ca_sink;
-     pa_sink *sink;
-     unsigned int i;
--    char *tmp;
-+    char *tmp, *tmp_clamp;
-     pa_strbuf *strbuf;
-     AudioObjectPropertyAddress property_address;
-     CFStringRef tmp_cfstr = NULL;
-@@ -450,7 +451,15 @@ static int ca_device_create_sink(pa_modu
+@@ -452,7 +453,11 @@ static int ca_device_create_sink(pa_modu
          pa_xfree(tmp);
      }
  
 -    ca_sink->name = pa_strbuf_to_string_free(strbuf);
 +    /* Clamp to PA_NAME_MAX and leave a "safety margin" for deduplication
 +     * and other appended data. */
-+    tmp_clamp = pa_strbuf_to_string_free(strbuf);
-+    tmp = pa_xmalloc0(PA_NAME_MAX);
-+    strncpy(tmp, tmp_clamp, PA_NAME_MAX - 20);
-+    tmp[PA_NAME_MAX - 20] = 0;
-+    pa_xfree(tmp_clamp);
-+
-+    ca_sink->name = pa_xstrndup(tmp, PA_NAME_MAX);
++    tmp = pa_strbuf_to_string_free(strbuf);
++    ca_sink->name = pa_xstrndup(tmp, PA_NAME_MAX - 20);
++    pa_xfree(tmp);
  
      pa_log_debug("Stream name is >%s<", ca_sink->name);
  
-@@ -541,7 +550,7 @@ static int ca_device_create_source(pa_mo
-     coreaudio_source *ca_source;
-     pa_source *source;
-     unsigned int i;
--    char *tmp;
-+    char *tmp, *tmp_clamp;
-     pa_strbuf *strbuf;
-     AudioObjectPropertyAddress property_address;
-     CFStringRef tmp_cfstr = NULL;
-@@ -583,7 +592,15 @@ static int ca_device_create_source(pa_mo
+@@ -585,7 +590,11 @@ static int ca_device_create_source(pa_mo
          pa_xfree(tmp);
      }
  
 -    ca_source->name = pa_strbuf_to_string_free(strbuf);
 +    /* Clamp to PA_NAME_MAX and leave a "safety margin" for deduplication
 +     * and other appended data. */
-+    tmp_clamp = pa_strbuf_to_string_free(strbuf);
-+    tmp = pa_xmalloc0(PA_NAME_MAX);
-+    strncpy(tmp, tmp_clamp, PA_NAME_MAX - 20);
-+    tmp[PA_NAME_MAX - 20] = 0;
-+    pa_xfree(tmp_clamp);
-+
-+    ca_source->name = pa_xstrndup(tmp, PA_NAME_MAX);
++    tmp = pa_strbuf_to_string_free(strbuf);
++    ca_source->name = pa_xstrndup(tmp, PA_NAME_MAX - 20);
++    pa_xfree(tmp);
  
      pa_log_debug("Stream name is >%s<", ca_source->name);
  

Deleted: trunk/dports/audio/pulseaudio/files/patch-src_modules_macosx_module_coreaudio_device.c-skip-unsupported-channels-count.diff
===================================================================
--- trunk/dports/audio/pulseaudio/files/patch-src_modules_macosx_module_coreaudio_device.c-skip-unsupported-channels-count.diff	2016-09-26 22:56:08 UTC (rev 153195)
+++ trunk/dports/audio/pulseaudio/files/patch-src_modules_macosx_module_coreaudio_device.c-skip-unsupported-channels-count.diff	2016-09-27 03:10:12 UTC (rev 153196)
@@ -1,26 +0,0 @@
---- src/modules/macosx/module-coreaudio-device.c.old	2016-02-23 00:55:13.000000000 +0100
-+++ src/modules/macosx/module-coreaudio-device.c	2016-02-23 00:55:49.000000000 +0100
-@@ -413,6 +413,11 @@ static int ca_device_create_sink(pa_modu
-     AudioObjectPropertyAddress property_address;
-     CFStringRef tmp_cfstr = NULL;
- 
-+    if (buf->mNumberChannels > PA_CHANNELS_MAX) {
-+        pa_log("Skipping device with more channels than we support (%u)", (unsigned int) buf->mNumberChannels);
-+        return -1;
-+    }
-+
-     ca_sink = pa_xnew0(coreaudio_sink, 1);
-     ca_sink->map.channels = buf->mNumberChannels;
-     ca_sink->ss.channels = buf->mNumberChannels;
-@@ -541,6 +546,11 @@ static int ca_device_create_source(pa_mo
-     AudioObjectPropertyAddress property_address;
-     CFStringRef tmp_cfstr = NULL;
- 
-+    if (buf->mNumberChannels > PA_CHANNELS_MAX) {
-+        pa_log("Skipping device with more channels than we support (%u)", (unsigned int) buf->mNumberChannels);
-+        return -1;
-+    }
-+
-     ca_source = pa_xnew0(coreaudio_source, 1);
-     ca_source->map.channels = buf->mNumberChannels;
-     ca_source->ss.channels = buf->mNumberChannels;
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20160926/d84fc503/attachment-0001.html>


More information about the macports-changes mailing list