Hi,

this is a little update of openal using clang + backport of the C11
atomic fix. tested with astromenace and supertuxkart.

Hope it finds its way.
Index: Makefile
===================================================================
RCS file: /cvs/ports/audio/openal/Makefile,v
retrieving revision 1.38
diff -u -p -r1.38 Makefile
--- Makefile    1 Sep 2016 10:53:26 -0000       1.38
+++ Makefile    4 Sep 2016 22:26:47 -0000
@@ -1,13 +1,13 @@
 # $OpenBSD: Makefile,v 1.38 2016/09/01 10:53:26 jasper Exp $
 
-BROKEN-arm =   undefined reference to __sync atomic ops
 BROKEN-hppa =  undefined reference to __sync atomic ops
+BROKEN-mips64 =        undefined reference to __sync atomic ops
+BROKEN-mips64el =      undefined reference to __sync atomic ops
 
 COMMENT =      cross-platform 3D audio API
 
-V =            1.15.1
+V =            1.16.0
 EPOCH =                0
-REVISION =     4
 DISTNAME =     openal-soft-$V
 PKGNAME =      openal-$V
 CATEGORIES =   audio
@@ -20,32 +20,41 @@ MAINTAINER =        David Carlier <devnexen@gma
 # LGPLv2+
 PERMIT_PACKAGE_CDROM = Yes
 
-WANTLIB =      c m pthread sndio
+WANTLIB +=     c m pthread sndio
 
 MASTER_SITES = ${HOMEPAGE:S,.html,-releases/,}
 EXTRACT_SUFX = .tar.bz2
 
-CONFIGURE_ARGS =-DCMAKE_C_FLAGS="${CFLAGS} -DNDEBUG"   \
-               -DCMAKE_BUILD_TYPE=OpenBSD              \
-               -DDLOPEN=Off                            \
-               -DREQUIRE_SNDIO=On                      \
-               -DPULSEAUDIO=Off                        \
-               -DPORTAUDIO=Off                         \
-               -DSOLARIS=Off                           \
-               -DALSA=Off                              \
-               -DOSS=Off                               \
-               -DCOREAUDIO=Off                         \
-               -DDSOUND=Off                            \
-               -DOPENSL=Off                            \
-               -DEXAMPLES=Off
-
-MODULES =      devel/cmake
+CONFIGURE_ARGS =-DCMAKE_BUILD_TYPE=OpenBSD \
+               -DALSOFT_SYSCONFDIR=${SYSCONFDIR} \
+               -DALSOFT_CONFIG_DESTINATION=share/examples/openal \
+               -DALSOFT_DLOPEN=Off \
+               -DALSOFT_UTILS=On \
+               -DALSOFT_EXAMPLES=Off \
+               -DALSOFT_REQUIRE_SNDIO=On \
+               -DALSOFT_BACKEND_ALSA=Off \
+               -DALSOFT_BACKEND_COREAUDIO=Off \
+               -DALSOFT_BACKEND_DSOUND=Off \
+               -DALSOFT_BACKEND_JACK=Off \
+               -DALSOFT_BACKEND_MMDEVAPI=Off \
+               -DALSOFT_BACKEND_OPENSL=Off \
+               -DALSOFT_BACKEND_OSS=Off \
+               -DALSOFT_BACKEND_PORTAUDIO=Off \
+               -DALSOFT_BACKEND_PULSEAUDIO=Off \
+               -DALSOFT_BACKEND_QSA=Off \
+               -DALSOFT_BACKEND_SOLARIS=Off \
+               -DALSOFT_BACKEND_WAVE=Off \
+               -DALSOFT_BACKEND_WINMM=Off
+
+MODULES =      devel/cmake lang/clang
+MODCLANG_ARCHS = *
+MODCLANG_LANGS = c c++
 
 SEPARATE_BUILD =Yes
 NO_TEST =      Yes
 
 pre-build:
-       @${SUBST_CMD} ${WRKSRC}/Alc/alcConfig.c
+       @${SUBST_CMD} ${WRKSRC}/Alc/alcConfig.c ${WRKSRC}/alsoftrc.sample
 
 post-install:
        ${INSTALL_DATA_DIR} ${PREFIX}/share/examples/openal
Index: distinfo
===================================================================
RCS file: /cvs/ports/audio/openal/distinfo,v
retrieving revision 1.8
diff -u -p -r1.8 distinfo
--- distinfo    11 Mar 2013 15:26:14 -0000      1.8
+++ distinfo    4 Sep 2016 22:26:47 -0000
@@ -1,2 +1,2 @@
-SHA256 (openal-soft-1.15.1.tar.bz2) = 
DimhYvCEHMtBNc526S6KcEWJtoCoXt33b4mN5SNusFY=
-SIZE (openal-soft-1.15.1.tar.bz2) = 253006
+SHA256 (openal-soft-1.16.0.tar.bz2) = 
Lz3NMT/iY5EoT7+FloY3I/mcZdbGhG3MtI55ytr0DV8=
+SIZE (openal-soft-1.16.0.tar.bz2) = 393280
Index: patches/patch-Alc_alcConfig_c
===================================================================
RCS file: /cvs/ports/audio/openal/patches/patch-Alc_alcConfig_c,v
retrieving revision 1.2
diff -u -p -r1.2 patch-Alc_alcConfig_c
--- patches/patch-Alc_alcConfig_c       11 Mar 2013 15:26:15 -0000      1.2
+++ patches/patch-Alc_alcConfig_c       4 Sep 2016 22:26:47 -0000
@@ -1,12 +1,12 @@
 $OpenBSD: patch-Alc_alcConfig_c,v 1.2 2013/03/11 15:26:15 bcallah Exp $
---- Alc/alcConfig.c.orig       Tue Dec 11 15:35:55 2012
-+++ Alc/alcConfig.c    Thu Mar  7 10:10:08 2013
-@@ -227,7 +227,7 @@ void ReadALConfig(void)
-         }
-     }
- #else
--    f = fopen("/etc/openal/alsoft.conf", "r");
-+    f = fopen("${SYSCONFDIR}/openal/alsoft.conf", "r");
-     if(f)
-     {
-         LoadConfigFromFile(f);
+--- Alc/alcConfig.c.orig       Fri Aug 15 08:06:59 2014
++++ Alc/alcConfig.c    Sun Sep  4 22:48:18 2016
+@@ -326,7 +326,7 @@ void ReadALConfig(void)
+     const char *str;
+     FILE *f;
+ 
+-    str = "/etc/openal/alsoft.conf";
++    str = "${SYSCONFDIR}/openal/alsoft.conf";
+ 
+     TRACE("Loading config %s...\n", str);
+     f = al_fopen(str, "r");
Index: patches/patch-Alc_mixer_sse_c
===================================================================
RCS file: patches/patch-Alc_mixer_sse_c
diff -N patches/patch-Alc_mixer_sse_c
--- patches/patch-Alc_mixer_sse_c       24 May 2016 08:07:58 -0000      1.1
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,25 +0,0 @@
-$OpenBSD: patch-Alc_mixer_sse_c,v 1.1 2016/05/24 08:07:58 dcoppa Exp $
-
-Avoid an underflow in the SSE mixers if BufferSize is less than 4
-(upstream git commit 564a1822595e287cf808ea63a03d96719e3cc7b4)
-
---- Alc/mixer_sse.c.orig       Mon May 23 20:59:18 2016
-+++ Alc/mixer_sse.c    Mon May 23 21:00:32 2016
-@@ -155,7 +155,7 @@ void MixDirect_SSE(const DirectParams *params, const A
-             ClickRemoval[c] -= data[0]*DrySend;
- 
-         gain = _mm_set1_ps(DrySend);
--        for(pos = 0;pos < BufferSize-3;pos += 4)
-+        for(pos = 0;BufferSize-pos > 3;pos += 4)
-         {
-             const __m128 val4 = _mm_load_ps(&data[pos]);
-             __m128 dry4 = _mm_load_ps(&DryBuffer[c][OutPos+pos]);
-@@ -189,7 +189,7 @@ void MixSend_SSE(const SendParams *params, const ALflo
-         WetClickRemoval[0] -= data[0] * WetGain;
- 
-     gain = _mm_set1_ps(WetGain);
--    for(pos = 0;pos < BufferSize-3;pos+=4)
-+    for(pos = 0;BufferSize-pos > 3;pos += 4)
-     {
-         const __m128 val4 = _mm_load_ps(&data[pos]);
-         __m128 wet4 = _mm_load_ps(&WetBuffer[0][OutPos+pos]);
Index: patches/patch-CMakeLists_txt
===================================================================
RCS file: /cvs/ports/audio/openal/patches/patch-CMakeLists_txt,v
retrieving revision 1.5
diff -u -p -r1.5 patch-CMakeLists_txt
--- patches/patch-CMakeLists_txt        11 Mar 2013 15:26:15 -0000      1.5
+++ patches/patch-CMakeLists_txt        4 Sep 2016 22:26:47 -0000
@@ -1,7 +1,16 @@
 $OpenBSD: patch-CMakeLists_txt,v 1.5 2013/03/11 15:26:15 bcallah Exp $
---- CMakeLists.txt.orig        Thu Mar  7 10:11:07 2013
-+++ CMakeLists.txt     Thu Mar  7 10:11:45 2013
-@@ -797,7 +797,7 @@ ENDIF()
+--- CMakeLists.txt.orig        Fri Aug 15 08:06:59 2014
++++ CMakeLists.txt     Sun Sep  4 22:58:36 2016
+@@ -186,7 +186,7 @@ HAVE_C11_ALIGNAS)
+ # Check if we have C11 _Atomic
+ CHECK_C_SOURCE_COMPILES(
+ "#include <stdatomic.h>
+- int _Atomic foo;
++ const int _Atomic foo = ATOMIC_VAR_INIT(~0);
+  int main()
+  {
+      return atomic_load(&foo);
+@@ -1134,7 +1134,7 @@ ENDIF()
  # Install alsoft.conf configuration file
  IF(ALSOFT_CONFIG)
      INSTALL(FILES alsoftrc.sample
Index: patches/patch-OpenAL32_alBuffer_c
===================================================================
RCS file: patches/patch-OpenAL32_alBuffer_c
diff -N patches/patch-OpenAL32_alBuffer_c
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-OpenAL32_alBuffer_c   4 Sep 2016 22:26:47 -0000
@@ -0,0 +1,12 @@
+$OpenBSD$
+--- OpenAL32/alBuffer.c.orig   Fri Aug 15 08:06:59 2014
++++ OpenAL32/alBuffer.c        Sun Sep  4 22:48:18 2016
+@@ -1179,7 +1179,7 @@ static ALboolean DecomposeFormat(ALenum format, enum F
+         { AL_7POINT1_16_SOFT,  FmtX71, FmtShort },
+         { AL_7POINT1_32F_SOFT, FmtX71, FmtFloat },
+     };
+-    ALuint i;
++    volatile ALuint i;
+ 
+     for(i = 0;i < COUNTOF(list);i++)
+     {
Index: patches/patch-utils_makehrtf_c
===================================================================
RCS file: /cvs/ports/audio/openal/patches/patch-utils_makehrtf_c,v
retrieving revision 1.1
diff -u -p -r1.1 patch-utils_makehrtf_c
--- patches/patch-utils_makehrtf_c      9 Dec 2014 20:46:00 -0000       1.1
+++ patches/patch-utils_makehrtf_c      4 Sep 2016 22:26:47 -0000
@@ -1,7 +1,7 @@
 $OpenBSD: patch-utils_makehrtf_c,v 1.1 2014/12/09 20:46:00 sthen Exp $
---- utils/makehrtf.c.orig      Tue Dec  9 20:40:59 2014
-+++ utils/makehrtf.c   Tue Dec  9 20:41:24 2014
-@@ -2017,7 +2017,7 @@ static int StoreMhr (const HrirDataT * hData, const ch
+--- utils/makehrtf.c.orig      Fri Aug 15 08:06:59 2014
++++ utils/makehrtf.c   Sun Sep  4 22:48:18 2016
+@@ -2071,7 +2071,7 @@ static int StoreMhr (const HrirDataT * hData, const ch
    step = hData -> mIrSize;
    end = hData -> mIrCount * step;
    n = hData -> mIrPoints;
@@ -10,12 +10,3 @@ $OpenBSD: patch-utils_makehrtf_c,v 1.1 2
    for (j = 0; j < end; j += step) {
        hpHist = 0;
        for (i = 0; i < n; i ++) {
-@@ -2072,7 +2072,7 @@ static int StoreTable (const HrirDataT * hData, const 
-                        "static const ALshort defaultCoeffs[%u] =\n{\n", hData 
-> mIrCount * n);
-   if (! WriteAscii (text, fp, filename))
-      return (0);
--  srand (0x31DF840C);
-+  srand_deterministic (0x31DF840C);
-   for (j = 0; j < end; j += step) {
-       if (! WriteAscii ("   ", fp, filename))
-          return (0);
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/audio/openal/pkg/PLIST,v
retrieving revision 1.7
diff -u -p -r1.7 PLIST
--- pkg/PLIST   22 May 2015 11:31:11 -0000      1.7
+++ pkg/PLIST   4 Sep 2016 22:26:47 -0000
@@ -14,3 +14,7 @@ share/examples/openal/
 @sample ${SYSCONFDIR}/openal/
 share/examples/openal/alsoftrc.sample
 @sample ${SYSCONFDIR}/openal/alsoft.conf
+share/openal/
+share/openal/hrtf/
+share/openal/hrtf/default-44100.mhr
+share/openal/hrtf/default-48000.mhr

Reply via email to