summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Gianelloni <wolf31o2@gentoo.org>2006-09-29 17:02:38 +0000
committerChris Gianelloni <wolf31o2@gentoo.org>2006-09-29 17:02:38 +0000
commit38fdb11bd41202f561833d5d62169ffb39358138 (patch)
tree792a868e0766eb216078218acdd436b30ee481f4 /media-libs/openal
parentVersion bump. (diff)
downloadhistorical-38fdb11bd41202f561833d5d62169ffb39358138.tar.gz
historical-38fdb11bd41202f561833d5d62169ffb39358138.tar.bz2
historical-38fdb11bd41202f561833d5d62169ffb39358138.zip
Revision bump to add some patches from the openal-devel mailing list. Hopefully, these will resolve the few openal segfault bugs that are open, as well as improve the latency of openal on Gentoo.
Package-Manager: portage-2.1.2_pre1-r4
Diffstat (limited to 'media-libs/openal')
-rw-r--r--media-libs/openal/ChangeLog12
-rw-r--r--media-libs/openal/Manifest41
-rw-r--r--media-libs/openal/files/0.0.8/000_all_alsa_backend_fix.patch13
-rw-r--r--media-libs/openal/files/0.0.8/001_all_rtprio.patch110
-rw-r--r--media-libs/openal/files/0.0.8/002_all_alc_context.patch17
-rw-r--r--media-libs/openal/files/0.0.8/002_all_alsa_default.patch11
-rw-r--r--media-libs/openal/files/digest-openal-0.0.8-r13
-rw-r--r--media-libs/openal/openal-0.0.8-r1.ebuild59
8 files changed, 261 insertions, 5 deletions
diff --git a/media-libs/openal/ChangeLog b/media-libs/openal/ChangeLog
index 7032fd607600..39b6429e1381 100644
--- a/media-libs/openal/ChangeLog
+++ b/media-libs/openal/ChangeLog
@@ -1,6 +1,16 @@
# ChangeLog for media-libs/openal
# Copyright 2002-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-libs/openal/ChangeLog,v 1.66 2006/09/04 06:55:46 kumba Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-libs/openal/ChangeLog,v 1.67 2006/09/29 17:02:38 wolf31o2 Exp $
+
+*openal-0.0.8-r1 (29 Sep 2006)
+
+ 29 Sep 2006; Chris Gianelloni <wolf31o2@gentoo.org>
+ +files/0.0.8/000_all_alsa_backend_fix.patch,
+ +files/0.0.8/001_all_rtprio.patch, +files/0.0.8/002_all_alc_context.patch,
+ +files/0.0.8/002_all_alsa_default.patch, +openal-0.0.8-r1.ebuild:
+ Revision bump to add some patches from the openal-devel mailing list.
+ Hopefully, these will resolve the few openal segfault bugs that are open, as
+ well as improve the latency of openal on Gentoo.
04 Sep 2006; Joshua Kinard <kumba@gentoo.org> openal-0.0.8.ebuild:
Added ~mips to KEYWORDS.
diff --git a/media-libs/openal/Manifest b/media-libs/openal/Manifest
index 43d2c3f01f5f..85fd8f72b12e 100644
--- a/media-libs/openal/Manifest
+++ b/media-libs/openal/Manifest
@@ -1,16 +1,39 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA1
+
+AUX 0.0.8/000_all_alsa_backend_fix.patch 652 RMD160 f42392fdf19f8de19bb482e2af6c76f8225e25d1 SHA1 cdc913845addb3b1b72a20f230168d4c4aeb7f8f SHA256 6ae557612204fb985d77ab772ce3efeaac831bf30e0376cc2d4a0410af7d1ede
+MD5 9e3ddca3746a10ab420d24504d8d846e files/0.0.8/000_all_alsa_backend_fix.patch 652
+RMD160 f42392fdf19f8de19bb482e2af6c76f8225e25d1 files/0.0.8/000_all_alsa_backend_fix.patch 652
+SHA256 6ae557612204fb985d77ab772ce3efeaac831bf30e0376cc2d4a0410af7d1ede files/0.0.8/000_all_alsa_backend_fix.patch 652
+AUX 0.0.8/001_all_rtprio.patch 2774 RMD160 c8b3b70d0e0e046819beadbca8ac302b6bd8537f SHA1 1a223ce9e8974a07580a4278f83935060f178cd4 SHA256 86193cc70dabc57c255571ee7edd26aa29567c06d5dee615844ccf401cc0141e
+MD5 b0dbdaaa26add0bd5f6443239129026e files/0.0.8/001_all_rtprio.patch 2774
+RMD160 c8b3b70d0e0e046819beadbca8ac302b6bd8537f files/0.0.8/001_all_rtprio.patch 2774
+SHA256 86193cc70dabc57c255571ee7edd26aa29567c06d5dee615844ccf401cc0141e files/0.0.8/001_all_rtprio.patch 2774
+AUX 0.0.8/002_all_alc_context.patch 513 RMD160 c6cc5325f2aa392bb3c132d551c8e682c4aed3b3 SHA1 7f11175192c994252712a80faf09d157d65534a2 SHA256 f2528c180dc98b445cf9de45f5f50f38bf66927baaf89e4e590332743b8e8faa
+MD5 3d6ff3a9dde26f36b0df8151cd32cd36 files/0.0.8/002_all_alc_context.patch 513
+RMD160 c6cc5325f2aa392bb3c132d551c8e682c4aed3b3 files/0.0.8/002_all_alc_context.patch 513
+SHA256 f2528c180dc98b445cf9de45f5f50f38bf66927baaf89e4e590332743b8e8faa files/0.0.8/002_all_alc_context.patch 513
+AUX 0.0.8/002_all_alsa_default.patch 371 RMD160 071742871b574bb022a47d0c6543bcc003823bdb SHA1 3d3535dc16b1cc3cc004e354b7a9e9683d5d70aa SHA256 1b39c959e9784dca1d0666a8896f5dd2f86cf00988e20ffc2361281bbc93f4c8
+MD5 11a76bd2edf77a0ea79b2ec7dd9f1ffe files/0.0.8/002_all_alsa_default.patch 371
+RMD160 071742871b574bb022a47d0c6543bcc003823bdb files/0.0.8/002_all_alsa_default.patch 371
+SHA256 1b39c959e9784dca1d0666a8896f5dd2f86cf00988e20ffc2361281bbc93f4c8 files/0.0.8/002_all_alsa_default.patch 371
AUX openalrc 221 RMD160 9afe92b1f944edba63bef98aff1a06174b7ddb5c SHA1 3a99c21694ff8de541217712f309bafda10ffc69 SHA256 64d99c4ac168e76d2af347230ec137baea7d72f1d73f5c34c06ef859cf74ecb6
MD5 8072d11c3e5e44c43407bed8c67b4031 files/openalrc 221
RMD160 9afe92b1f944edba63bef98aff1a06174b7ddb5c files/openalrc 221
SHA256 64d99c4ac168e76d2af347230ec137baea7d72f1d73f5c34c06ef859cf74ecb6 files/openalrc 221
DIST openal-0.0.8.tar.gz 870671 RMD160 29368dbceea7cfd8b5c520b9e0f0cfdc7324e265 SHA1 31aaedc18bd26759bd51f4fa495bc4ccb08acb3e SHA256 723e2c57c3cdffa7ff11f9b6b5478d6cb4af017e5a1ee7a56032969c39c1c2fe
+EBUILD openal-0.0.8-r1.ebuild 1461 RMD160 6680a9e9fd80bb7efe1ce7e51ae05403f7df4b61 SHA1 b65bd4c5cd9857259e7f040f3bf1f9e7d5410c8c SHA256 994b4cde495dd329c5fb6e3c0f1acaea18dfdd81045b893ae11d6cf8ec2c136f
+MD5 8038ac4827b773adc4df0197ad632cde openal-0.0.8-r1.ebuild 1461
+RMD160 6680a9e9fd80bb7efe1ce7e51ae05403f7df4b61 openal-0.0.8-r1.ebuild 1461
+SHA256 994b4cde495dd329c5fb6e3c0f1acaea18dfdd81045b893ae11d6cf8ec2c136f openal-0.0.8-r1.ebuild 1461
EBUILD openal-0.0.8.ebuild 1374 RMD160 37b7c20dd3a54d33152d1b0ce50ca5338212f9f9 SHA1 ec34a24f875fd9a01635067175bc663a3b09e77e SHA256 c1ac6a03a188cf6a398b674649c9d1a1fafb46d5938d0abd0247b383ac5238ea
MD5 b699c077c3544f91c2b1cf0e410b41a0 openal-0.0.8.ebuild 1374
RMD160 37b7c20dd3a54d33152d1b0ce50ca5338212f9f9 openal-0.0.8.ebuild 1374
SHA256 c1ac6a03a188cf6a398b674649c9d1a1fafb46d5938d0abd0247b383ac5238ea openal-0.0.8.ebuild 1374
-MISC ChangeLog 9379 RMD160 07288715721d2d64f54ea678329e97d1adee5530 SHA1 157e43c6439293b47262a7e0babdabf0c0e2db3d SHA256 dd6c09ca609b1279a418151b9f9763e7a5af0d7cec336de2fd692166e16d7863
-MD5 87e726d851ada4616b2da7e7a670c6d1 ChangeLog 9379
-RMD160 07288715721d2d64f54ea678329e97d1adee5530 ChangeLog 9379
-SHA256 dd6c09ca609b1279a418151b9f9763e7a5af0d7cec336de2fd692166e16d7863 ChangeLog 9379
+MISC ChangeLog 9863 RMD160 b2e0535e3c5f0991deba59715aa6c4ea23d6e28b SHA1 55bf673c1c7043e773844e7875e20985fd11e2b8 SHA256 7d65a77862f60b3d9d0c2ef4f249006711ced9bed602d2a1533185de7b58ef9e
+MD5 507ef36388fd8134639d05e417cfed45 ChangeLog 9863
+RMD160 b2e0535e3c5f0991deba59715aa6c4ea23d6e28b ChangeLog 9863
+SHA256 7d65a77862f60b3d9d0c2ef4f249006711ced9bed602d2a1533185de7b58ef9e ChangeLog 9863
MISC metadata.xml 254 RMD160 644af66426d6eb797cd765c1c2e535b5d087ea57 SHA1 a95604d0e8bc9b8b04265487ab3b8c81fb2359e7 SHA256 696bf530d6cfd1ba1081ac29536d76e7fc8fd002e6f17d4a77463eeba34e4ba4
MD5 ec6dcddda50a0138e1f50eb0d1299798 metadata.xml 254
RMD160 644af66426d6eb797cd765c1c2e535b5d087ea57 metadata.xml 254
@@ -18,3 +41,13 @@ SHA256 696bf530d6cfd1ba1081ac29536d76e7fc8fd002e6f17d4a77463eeba34e4ba4 metadata
MD5 f689a64f0322e2726a79314b4f98c0d3 files/digest-openal-0.0.8 238
RMD160 81fc753e9ba8a3bb20947ab60dffdc81ef4dfab1 files/digest-openal-0.0.8 238
SHA256 464c3f71037e0d7692230557ba1321a83fc2236fa2bb799621ef8459a24d495d files/digest-openal-0.0.8 238
+MD5 f689a64f0322e2726a79314b4f98c0d3 files/digest-openal-0.0.8-r1 238
+RMD160 81fc753e9ba8a3bb20947ab60dffdc81ef4dfab1 files/digest-openal-0.0.8-r1 238
+SHA256 464c3f71037e0d7692230557ba1321a83fc2236fa2bb799621ef8459a24d495d files/digest-openal-0.0.8-r1 238
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.5 (GNU/Linux)
+
+iD8DBQFFHVHBkT4lNIS36YERAh7YAJ9a2dGBYrPbIn8JebjAOsGPXXF3PwCdEYTl
+ugFfdJ0oRmaVlVfgICS738I=
+=mGoX
+-----END PGP SIGNATURE-----
diff --git a/media-libs/openal/files/0.0.8/000_all_alsa_backend_fix.patch b/media-libs/openal/files/0.0.8/000_all_alsa_backend_fix.patch
new file mode 100644
index 000000000000..0fffcdac2b6e
--- /dev/null
+++ b/media-libs/openal/files/0.0.8/000_all_alsa_backend_fix.patch
@@ -0,0 +1,13 @@
+Index: OpenAL-Sample/src/backends/alc_backend_alsa.c
+===================================================================
+--- OpenAL-Sample/src/backends/alc_backend_alsa.c (revision 1262)
++++ OpenAL-Sample/src/backends/alc_backend_alsa.c (working copy)
+@@ -228,7 +228,7 @@
+ alsaFormat = convertFormatALToALSA (*format);
+ numChannels = (unsigned int) _alGetChannelsFromFormat (*format);
+ ad->frameSizeInBytes =
+- (unsigned int) snd_pcm_format_size (alsaFormat, numChannels);
++ (unsigned int) psnd_pcm_format_size (alsaFormat, numChannels);
+ bufferSizeInFrames = *bufferSizeInBytes / ad->frameSizeInBytes;
+ rate = (unsigned int) *speed;
+
diff --git a/media-libs/openal/files/0.0.8/001_all_rtprio.patch b/media-libs/openal/files/0.0.8/001_all_rtprio.patch
new file mode 100644
index 000000000000..56578492eee3
--- /dev/null
+++ b/media-libs/openal/files/0.0.8/001_all_rtprio.patch
@@ -0,0 +1,110 @@
+Index: configure.ac
+===================================================================
+--- configure.ac (revision 1262)
++++ configure.ac (working copy)
+@@ -111,6 +111,9 @@
+ [AC_DEFINE([NO_THREADING], [1], [undocumented])],
+ [AC_INCLUDES_DEFAULT([])])])
+
++AC_CHECK_HEADER([sched.h],
++ [AC_DEFINE([HAVE_SCHED_H], [1], [Define to 1 if sched.h exists,])])
++
+ AC_FUNC_SELECT_ARGTYPES
+
+ ################################################################################
+Index: src/al_mixer.c
+===================================================================
+--- src/al_mixer.c (revision 1262)
++++ src/al_mixer.c (working copy)
+@@ -12,6 +12,10 @@
+ #include <AL/al.h>
+ #include <string.h>
+
++#ifdef HAVE_SCHED_H
++#include <sched.h>
++#endif
++
+ #include "al_debug.h"
+ #include "al_error.h"
+ #include "al_types.h"
+@@ -1065,34 +1069,46 @@
+ int async_mixer_iterate(UNUSED(void *dummy)) {
+ ALuint bytes_to_write = 0;
+
++#ifdef HAVE_SCHED_H
++ struct sched_param param;
++
++ /* Try to set a minimal-priority real-time thread. This will fail if we're
++ * running unprivileged and the user isn't using a Linux 2.6.13 or newer
++ * kernel with a non-zero RLIMIT_RTPRIO setting. In that case, there's
++ * nothing we can do to improve responsiveness.
++ */
++ param.sched_priority = sched_get_priority_min(SCHED_FIFO);
++ sched_setscheduler(0, SCHED_FIFO, &param);
++#endif
++
+ /* clear buffer */
+ memset(mixbuf.data, 0, mixbuf.length);
+
+ do {
+- if(_alTryLockMixerPause() == AL_TRUE)
+- {
+- _alLockMixBuf();
++ _alLockMixerPause();
+
+- _alMixSources();
++ _alLockMixBuf();
+
+- _alProcessFlags();
++ _alMixSources();
+
+- _alUnlockMixBuf();
++ _alProcessFlags();
+
+- /* we've accumulated sources, now mix */
+- _alMixManagerMix( &MixManager, &MixFunc, mixbuf.data );
++ _alUnlockMixBuf();
+
+- if(acConvertAudio(&s16le) < 0)
+- {
+- _alDebug(ALD_MAXIMUS, __FILE__, __LINE__,
+- "Couldn't execute conversion from canon.");
+- /*
+- * most likely we're just early.
+- * Don't sweat it.
+- */
+- continue;
+- }
++ /* we've accumulated sources, now mix */
++ _alMixManagerMix( &MixManager, &MixFunc, mixbuf.data );
+
++ if(acConvertAudio(&s16le) < 0)
++ {
++ _alDebug(ALD_MAXIMUS, __FILE__, __LINE__,
++ "Couldn't execute conversion from canon.");
++ /*
++ * most likely we're just early.
++ * Don't sweat it.
++ */
++ }
++ else
++ {
+ bytes_to_write = s16le.len_cvt;
+
+ if(bytes_to_write)
+@@ -1109,11 +1125,12 @@
+
+ /* clear buffer */
+ memset(mixbuf.data, 0, mixbuf.length);
++ }
+
+- _alUnlockMixerPause();
+- }
++ _alUnlockMixerPause();
++
+ /* give other threads a chance to acquire the mixer lock */
+- _alMicroSleep(1);
++ _alMicroSleep(5000);
+ } while(time_for_mixer_to_die == AL_FALSE);
+
+ time_for_mixer_to_die = AL_FALSE;
diff --git a/media-libs/openal/files/0.0.8/002_all_alc_context.patch b/media-libs/openal/files/0.0.8/002_all_alc_context.patch
new file mode 100644
index 000000000000..55beb7140b32
--- /dev/null
+++ b/media-libs/openal/files/0.0.8/002_all_alc_context.patch
@@ -0,0 +1,17 @@
+--- openal-0.0.8/src/alc/alc_context.c.ori 2006-09-29 12:36:33.000000000 -0400
++++ openal-0.0.8/src/alc/alc_context.c 2006-09-29 12:38:05.000000000 -0400
+@@ -236,8 +236,12 @@
+ /* someone unpaused us */
+ ispaused = AL_FALSE;
+
+- _alcDeviceResume( cc->write_device );
+- _alcDeviceResume( cc->read_device );
++ if (cc->write_device) {
++ _alcDeviceResume( cc->write_device );
++ }
++ if (cc->read_device) {
++ _alcDeviceResume( cc->read_device );
++ }
+
+ _alcUnlockAllContexts();
+ _alUnlockMixerPause();
diff --git a/media-libs/openal/files/0.0.8/002_all_alsa_default.patch b/media-libs/openal/files/0.0.8/002_all_alsa_default.patch
new file mode 100644
index 000000000000..8bbe10e4a54d
--- /dev/null
+++ b/media-libs/openal/files/0.0.8/002_all_alsa_default.patch
@@ -0,0 +1,11 @@
+--- openal-0.0.8/src/backends/alc_backend_alsa.c.ori 2006-09-29 12:48:06.000000000 -0400
++++ openal-0.0.8/src/backends/alc_backend_alsa.c 2006-09-29 12:48:17.000000000 -0400
+@@ -153,7 +153,7 @@
+ }
+
+ /* alsa stuff */
+-#define DEFAULT_DEVICE "plughw:0,0"
++#define DEFAULT_DEVICE "default:0,0"
+
+ /* convert from AL to ALSA format */
+ static int AL2ALSAFMT(ALenum format);
diff --git a/media-libs/openal/files/digest-openal-0.0.8-r1 b/media-libs/openal/files/digest-openal-0.0.8-r1
new file mode 100644
index 000000000000..2f213f390e0a
--- /dev/null
+++ b/media-libs/openal/files/digest-openal-0.0.8-r1
@@ -0,0 +1,3 @@
+MD5 641cf53761f35ee979f3e888614797a0 openal-0.0.8.tar.gz 870671
+RMD160 29368dbceea7cfd8b5c520b9e0f0cfdc7324e265 openal-0.0.8.tar.gz 870671
+SHA256 723e2c57c3cdffa7ff11f9b6b5478d6cb4af017e5a1ee7a56032969c39c1c2fe openal-0.0.8.tar.gz 870671
diff --git a/media-libs/openal/openal-0.0.8-r1.ebuild b/media-libs/openal/openal-0.0.8-r1.ebuild
new file mode 100644
index 000000000000..d8c508f2a3e1
--- /dev/null
+++ b/media-libs/openal/openal-0.0.8-r1.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-libs/openal/openal-0.0.8-r1.ebuild,v 1.1 2006/09/29 17:02:38 wolf31o2 Exp $
+
+inherit eutils
+
+DESCRIPTION="OpenAL, the Open Audio Library, is an open, vendor-neutral, cross-platform API for interactive, primarily spatialized audio"
+HOMEPAGE="http://www.openal.org"
+SRC_URI="http://www.openal.org/openal_webstf/downloads/${P}.tar.gz"
+
+LICENSE="LGPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+IUSE="alsa arts debug esd mp3 sdl vorbis"
+
+RDEPEND="alsa? ( >=media-libs/alsa-lib-1.0.2 )
+ arts? ( kde-base/arts )
+ esd? ( media-sound/esound )
+ sdl? ( media-libs/libsdl )
+ vorbis? ( media-libs/libvorbis )
+ mp3? ( media-libs/libmad )"
+
+DEPEND="${RDEPEND}
+ sys-devel/autoconf
+ sys-devel/automake
+ sys-devel/libtool"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch ${FILESDIR}/${PV} || die
+}
+
+src_compile() {
+ export WANT_AUTOCONF=2.5
+ autoconf \
+ || die "autoconf failed"
+
+ econf \
+ --libdir=/usr/$(get_libdir) \
+ $(use_enable esd) \
+ $(use_enable sdl) \
+ $(use_enable alsa) \
+ $(use_enable arts) \
+ $(use_enable mp3) \
+ $(use_enable vorbis) \
+ $(use_enable debug debug-maximus) \
+ || die "econf failed"
+
+ emake -j1 all \
+ || die "emake failed"
+}
+
+src_install() {
+ make DESTDIR="${D}" install \
+ || die "make install failed"
+
+ dodoc AUTHORS ChangeLog NEWS NOTES README TODO
+}