pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/audio/pulseaudio Fix some (not all) of the macOS build...



details:   https://anonhg.NetBSD.org/pkgsrc/rev/b8235a05fb7a
branches:  trunk
changeset: 458462:b8235a05fb7a
user:      schmonz <schmonz%pkgsrc.org@localhost>
date:      Thu Sep 16 13:02:34 2021 +0000

description:
Fix some (not all) of the macOS build failures. NFCI elsewhere.

diffstat:

 audio/pulseaudio/distinfo                                |   7 +-
 audio/pulseaudio/patches/patch-meson.build               |  45 ++++++++++++++-
 audio/pulseaudio/patches/patch-src_pulsecore_creds.h     |   8 +-
 audio/pulseaudio/patches/patch-src_pulsecore_iochannel.c |  15 +++++
 4 files changed, 65 insertions(+), 10 deletions(-)

diffs (127 lines):

diff -r 4d7b6ada7e43 -r b8235a05fb7a audio/pulseaudio/distinfo
--- a/audio/pulseaudio/distinfo Thu Sep 16 12:28:15 2021 +0000
+++ b/audio/pulseaudio/distinfo Thu Sep 16 13:02:34 2021 +0000
@@ -1,16 +1,17 @@
-$NetBSD: distinfo,v 1.79 2021/07/30 12:21:06 ryoon Exp $
+$NetBSD: distinfo,v 1.80 2021/09/16 13:02:34 schmonz Exp $
 
 SHA1 (pulseaudio-15.0.tar.xz) = 41e9f001770ccf7b47dc228311a99a09bb579563
 RMD160 (pulseaudio-15.0.tar.xz) = ed6607183e7c137e5df10cee31e1567c76aa6da1
 SHA512 (pulseaudio-15.0.tar.xz) = 352ef20384c76c631c0faa73b08e2318902a433712e0c086a5ac7a0ae58873c8d4be8f35879bdec71a93b19ae8e2ba073cacac4d56215bcf58375a0cd9d88833
 Size (pulseaudio-15.0.tar.xz) = 1521760 bytes
-SHA1 (patch-meson.build) = f5916ceee1e17923073c009778c4d9dd7b3fae74
+SHA1 (patch-meson.build) = e8414f6b3246ce0fc9fe3957f14826dabdad851c
 SHA1 (patch-src_daemon_meson.build) = 20f2909ceaea27d43ef2cb5fb228952f8376fb3c
 SHA1 (patch-src_modules_module-detect.c) = 72605c7d9392be7217dab2fbd9ecc85ed02021aa
 SHA1 (patch-src_modules_oss_module-oss.c) = d373b855138a931640be7bf5271a33b402b549e5
 SHA1 (patch-src_modules_raop_raop-client.h) = 9fb7ae86a6852022f53aee3765777bd136250ffb
 SHA1 (patch-src_pulse_meson.build) = 56b5f1d4fc9d617a9bee95f9cbaa8a6d529996e6
-SHA1 (patch-src_pulsecore_creds.h) = a73c9669e00ff7625bc645c54e45403f20ac389b
+SHA1 (patch-src_pulsecore_creds.h) = a22cd7fa038cb3424f3ce6e4ce48fd86de6f0d9d
+SHA1 (patch-src_pulsecore_iochannel.c) = d227e379d9b09612f84b9071f9378dbc66cfa4ac
 SHA1 (patch-src_pulsecore_mix__neon.c) = 6f6d33d38024d65045d637d48276e1ba92b81342
 SHA1 (patch-src_pulsecore_shm.c) = c7079e8ac3461f5069e1415a2816784781aaa59c
 SHA1 (patch-src_tests_rtpoll-test.c) = 3584aeda2b6f7eb14af9cb5c665a31d972a306ae
diff -r 4d7b6ada7e43 -r b8235a05fb7a audio/pulseaudio/patches/patch-meson.build
--- a/audio/pulseaudio/patches/patch-meson.build        Thu Sep 16 12:28:15 2021 +0000
+++ b/audio/pulseaudio/patches/patch-meson.build        Thu Sep 16 13:02:34 2021 +0000
@@ -1,11 +1,41 @@
-$NetBSD: patch-meson.build,v 1.1 2021/07/30 12:21:06 ryoon Exp $
+$NetBSD: patch-meson.build,v 1.2 2021/09/16 13:02:34 schmonz Exp $
 
 * Non-MS Windows case uses libintl for dgettext.
   Fix build under NetBSD.
+* Apply proposed upstream commit 390e5f02 to fix non-x86 clang builds.
+* Omit unsupported linker arguments on macOS.
 
---- meson.build.orig   2021-07-27 20:02:27.711868000 +0000
+--- meson.build.orig   2021-07-27 20:02:27.000000000 +0000
 +++ meson.build
-@@ -348,7 +349,7 @@ if cc.has_header_symbol('sys/syscall.h',
+@@ -216,7 +216,6 @@ endif
+ check_headers = [
+   'arpa/inet.h',
+   'byteswap.h',
+-  'cpuid.h',
+   'dlfcn.h',
+   'execinfo.h',
+   'grp.h',
+@@ -276,6 +275,19 @@ if cc.has_header_symbol('pthread.h', 'PT
+   cdata.set('HAVE_PTHREAD_PRIO_INHERIT', 1)
+ endif
+ 
++# Headers which are usable
++
++check_usable_headers = [
++  'cpuid.h',
++]
++
++foreach h : check_usable_headers
++  if cc.check_header(h)
++    define = 'HAVE_' + h.underscorify().to_upper()
++    cdata.set(define, 1)
++  endif
++endforeach
++
+ # Functions
+ 
+ check_functions = [
+@@ -348,7 +360,7 @@ if cc.has_header_symbol('sys/syscall.h',
  endif
  
  if cc.has_function('dgettext')
@@ -14,3 +44,12 @@
      libintl_dep = []
    else
      libintl_dep = cc.find_library('intl')
+@@ -404,7 +416,7 @@ cdata.set('MESON_BUILD', 1)
+ # 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.
+ # Windows doesn't support this flag.
+-if host_machine.system() != 'windows'
++if host_machine.system() != 'windows' and host_machine.system() != 'darwin'
+   nodelete_link_args = ['-Wl,-z,nodelete']
+ else
+   nodelete_link_args = []
diff -r 4d7b6ada7e43 -r b8235a05fb7a audio/pulseaudio/patches/patch-src_pulsecore_creds.h
--- a/audio/pulseaudio/patches/patch-src_pulsecore_creds.h      Thu Sep 16 12:28:15 2021 +0000
+++ b/audio/pulseaudio/patches/patch-src_pulsecore_creds.h      Thu Sep 16 13:02:34 2021 +0000
@@ -1,15 +1,15 @@
-$NetBSD: patch-src_pulsecore_creds.h,v 1.1 2021/07/30 12:21:06 ryoon Exp $
+$NetBSD: patch-src_pulsecore_creds.h,v 1.2 2021/09/16 13:02:34 schmonz Exp $
 
-* Disable ucred for NetBSD.
+* Disable ucred for NetBSD and macOS.
 
---- src/pulsecore/creds.h.orig 2021-07-27 20:02:27.821869100 +0000
+--- src/pulsecore/creds.h.orig 2021-07-27 20:02:27.000000000 +0000
 +++ src/pulsecore/creds.h
 @@ -34,7 +34,7 @@
  typedef struct pa_creds pa_creds;
  typedef struct pa_cmsg_ancil_data pa_cmsg_ancil_data;
  
 -#if defined(SCM_CREDENTIALS) || defined(SCM_CREDS)
-+#if (defined(SCM_CREDENTIALS) || defined(SCM_CREDS)) && !defined(__NetBSD__)
++#if (defined(SCM_CREDENTIALS) || defined(SCM_CREDS)) && !defined(__NetBSD__) && !defined(__APPLE__)
  
  #define HAVE_CREDS 1
  
diff -r 4d7b6ada7e43 -r b8235a05fb7a audio/pulseaudio/patches/patch-src_pulsecore_iochannel.c
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/audio/pulseaudio/patches/patch-src_pulsecore_iochannel.c  Thu Sep 16 13:02:34 2021 +0000
@@ -0,0 +1,15 @@
+$NetBSD: patch-src_pulsecore_iochannel.c,v 1.1 2021/09/16 13:02:34 schmonz Exp $
+
+No SO_PASSCRED on macOS either.
+
+--- src/pulsecore/iochannel.c.orig     2021-07-27 20:02:27.000000000 +0000
++++ src/pulsecore/iochannel.c
+@@ -298,7 +298,7 @@ int pa_iochannel_creds_enable(pa_iochann
+     pa_assert(io);
+     pa_assert(io->ifd >= 0);
+ 
+-#if !defined(__FreeBSD__) && !defined(__FreeBSD_kernel__)
++#if !defined(__FreeBSD__) && !defined(__FreeBSD_kernel__) && !defined(__APPLE__)
+     if (setsockopt(io->ifd, SOL_SOCKET, SO_PASSCRED, &t, sizeof(t)) < 0) {
+         pa_log_error("setsockopt(SOL_SOCKET, SO_PASSCRED): %s", pa_cstrerror(errno));
+         return -1;



Home | Main Index | Thread Index | Old Index