aboutsummaryrefslogtreecommitdiff
path: root/audio/openal
diff options
context:
space:
mode:
authorBernhard Froehlich <decke@FreeBSD.org>2014-01-30 15:34:30 +0000
committerBernhard Froehlich <decke@FreeBSD.org>2014-01-30 15:34:30 +0000
commitb6c2184780dec39d6de0517958a34e4e108ffbdb (patch)
treea8394ff1332bead89435e297bacdb72c3d20d85e /audio/openal
parent577384f1818aa18cec96307d69a1b86f48f83bd5 (diff)
downloadports-b6c2184780dec39d6de0517958a34e4e108ffbdb.tar.gz
ports-b6c2184780dec39d6de0517958a34e4e108ffbdb.zip
Notes
Diffstat (limited to 'audio/openal')
-rw-r--r--audio/openal/Makefile63
-rw-r--r--audio/openal/files/patch-src-arch-i386-x86_floatmul.c28
2 files changed, 45 insertions, 46 deletions
diff --git a/audio/openal/Makefile b/audio/openal/Makefile
index 9e15ccbfb9b4..0cd2fdb7ce1e 100644
--- a/audio/openal/Makefile
+++ b/audio/openal/Makefile
@@ -5,16 +5,17 @@ PORTNAME= openal
PORTVERSION= 20060211
PORTREVISION= 12
CATEGORIES= audio
-MASTER_SITES= http://openal.org/openal_webstf/downloads/
+MASTER_SITES= GENTOO/distfiles
DISTVERSION= 0.0.8
MAINTAINER= erik@bz.bzflag.bz
COMMENT= A 3D positional spatialized sound library
+LICENSE= GPLv2
+
CONFLICTS= openal-soft-[0-9]*
USE_AUTOTOOLS= libtool
-NO_STAGE= yes
GNU_CONFIGURE= yes
CPPFLAGS+= -I${LOCALBASE}/include
CFLAGS+= -Wno-return-type
@@ -22,57 +23,30 @@ LDFLAGS+= -L${LOCALBASE}/lib
CONFIGURE_ARGS= --enable-capture \
--disable-arts
USES= pathfix pkgconfig gmake
-WANT_SDL= yes
USE_LDCONFIG= yes
-OPTIONS_DEFINE= ESOUND SDL VORBIS SMPEG
+OPTIONS_DEFINE= ESOUND SDL VORBIS SMPEG ALSA
OPTIONS_DEFINE_i386= ASM
OPTIONS_DEFAULT_i386= ASM
SMPEG_DESC= smpeg support
-.include <bsd.port.options.mk>
-
-.if ${PORT_OPTIONS:MSMPEG}
-WITH_SDL= yes # smpeg requires SDL
-.endif
-
-.if ${PORT_OPTIONS:MESD}
-USE_GNOME+= esound
-CONFIGURE_ARGS+=--enable-esd
-.else
-CONFIGURE_ARGS+=--disable-esd
-.endif
-
-.if ${PORT_OPTIONS:MSDL}
-USE_SDL+= sdl
-CONFIGURE_ENV+= HAVESDL="${SDL_CONFIG}"
-CONFIGURE_ARGS+=--enable-sdl
-.else
-CONFIGURE_ARGS+=--disable-sdl
-.endif
-
-.if ${PORT_OPTIONS:MVORBIS}
-LIB_DEPENDS+= libvorbisfile.so:${PORTSDIR}/audio/libvorbis
-CONFIGURE_ARGS+=--enable-vorbis
-.else
-CONFIGURE_ARGS+=--disable-vorbis
-.endif
-
-.if ${PORT_OPTIONS:MSMPEG}
-LIB_DEPENDS+= libsmpeg.so:${PORTSDIR}/multimedia/smpeg
-CONFIGURE_ARGS+=--enable-smpeg
-.else
-CONFIGURE_ARGS+=--disable-smpeg
-.endif
-
-.if ${PORT_OPTIONS:MASM}
-BUILD_DEPENDS+= nasm:${PORTSDIR}/devel/nasm
-.endif
-
+ESOUND_USE= GNOME=esound
+ESOUND_CONFIGURE_ENABLE=esd
+SDL_USE= SDL=sdl
+SDL_CONFIGURE_ENABLE= sdl
+VORBIS_LIB_DEPENDS= libvorbisfile.so:${PORTSDIR}/audio/libvorbis
+VORBIS_CONFIGURE_ENABLE=vorbis
+SMPEG_LIB_DEPENDS= libsmpeg.so:${PORTSDIR}/multimedia/smpeg
+SMPEG_CONFIGURE_ENABLE= mp3
+ALSA_LIB_DEPENDS= libasound.so:${PORTSDIR}/audio/alsa-lib
+ALSA_CONFIGURE_ENABLE= alsa
+ASM_BUILD_DEPENDS= nasm:${PORTSDIR}/devel/nasm
NOT_FOR_ARCHS= ia64
NOT_FOR_ARCHS_REASON_ia64= does not compile
+.include <bsd.port.options.mk>
+
post-patch:
@${REINPLACE_CMD} -e 's/-pthread/${PTHREAD_LIBS}/; \
s/x86_64\*/amd64\* | \*ia64\*/g; \
@@ -89,7 +63,4 @@ post-patch:
@${REINPLACE_CMD} -e '/^NASM=/ s|=.*|=no|' ${WRKSRC}/configure
.endif
-post-install:
- @${CAT} ${PKGMESSAGE}
-
.include <bsd.port.mk>
diff --git a/audio/openal/files/patch-src-arch-i386-x86_floatmul.c b/audio/openal/files/patch-src-arch-i386-x86_floatmul.c
index 7bc3a81c262a..871ccc6a40c1 100644
--- a/audio/openal/files/patch-src-arch-i386-x86_floatmul.c
+++ b/audio/openal/files/patch-src-arch-i386-x86_floatmul.c
@@ -9,3 +9,31 @@
samples_pre /= sizeof(ALshort);
samples_main = len - samples_pre;
samples_post = samples_main % 8;
+@@ -82,11 +82,27 @@ void _alFloatMul(ALshort *bpt, ALfloat s
+ v_sa.s[3] = v_sa.s[0];
+
+ while (samples_main--) {
++ union {
++ short s[4];
++ v4hi v;
++ } ALIGN16(v_one);
++ v_one.s[0] = 1;
++ v_one.s[1] = 0;
++ v_one.s[2] = 0;
++ v_one.s[3] = 0;
+ temp = __builtin_ia32_pmulhw(*(v4hi*)bpt, v_sa.v);
++#if defined(__GNUC__) && defined(__GNUC_MINOR__) && (__GNUC__ <= 3 || (__GNUC__ == 4 && __GNUC_MINOR__ <= 2)) && !defined(__clang__)
+ *(v4hi*)bpt = __builtin_ia32_psllw(temp, 1LL);
++#else
++ *(v4hi*)bpt = __builtin_ia32_psllw(temp, v_one.v);
++#endif
+ bpt += 4;
+ temp = __builtin_ia32_pmulhw(*(v4hi*)bpt, v_sa.v);
++#if defined(__GNUC__) && defined(__GNUC_MINOR__) && (__GNUC__ <= 3 || (__GNUC__ == 4 && __GNUC_MINOR__ <= 2)) && !defined(__clang__)
+ *(v4hi*)bpt = __builtin_ia32_psllw(temp, 1LL);
++#else
++ *(v4hi*)bpt = __builtin_ia32_psllw(temp, v_one.v);
++#endif
+ bpt += 4;
+ }
+ }