summaryrefslogtreecommitdiff
path: root/devel/SDL
diff options
context:
space:
mode:
authorjmmv <jmmv@pkgsrc.org>2003-07-26 21:38:22 +0000
committerjmmv <jmmv@pkgsrc.org>2003-07-26 21:38:22 +0000
commit84a38e30b2bd8cb543becaa6c1877ae5af3ea963 (patch)
treefff354d1605077315ade7cdc2eebfd6a271cd532 /devel/SDL
parent4f705b1c15777d6bf4824dd4f7399e47e0a1bf3d (diff)
downloadpkgsrc-84a38e30b2bd8cb543becaa6c1877ae5af3ea963.tar.gz
Implement loadable plugin support for arts and esound output. This is to
avoid using build variable definitions, and to allow optional use of these daemons on machines where binary packages are used. esound is no longer needed in this package by default. OSS is kept in the package as it was before, beeing the default output driver. Bump PKGREVISION to 5. The patch has been reviewed by wiz@, the maintainer. It has also been sent back to SDL authors in the hope that they will implement this functionality. Closes PR pkg/21774 by Marc Recht, which requested the addition of arts as an optional dependancy (not done).
Diffstat (limited to 'devel/SDL')
-rw-r--r--devel/SDL/Makefile63
-rw-r--r--devel/SDL/Makefile.common66
-rw-r--r--devel/SDL/buildlink2.mk5
-rw-r--r--devel/SDL/distinfo7
-rw-r--r--devel/SDL/patches/patch-am51
-rw-r--r--devel/SDL/patches/patch-ba108
-rw-r--r--devel/SDL/patches/patch-bb22
-rw-r--r--devel/SDL/patches/patch-bc22
8 files changed, 259 insertions, 85 deletions
diff --git a/devel/SDL/Makefile b/devel/SDL/Makefile
index 9bf1d58c4e1..03ad3dc039f 100644
--- a/devel/SDL/Makefile
+++ b/devel/SDL/Makefile
@@ -1,65 +1,10 @@
-# $NetBSD: Makefile,v 1.49 2003/07/17 21:29:18 grant Exp $
+# $NetBSD: Makefile,v 1.50 2003/07/26 21:38:22 jmmv Exp $
#
-DISTNAME= SDL-1.2.5
-PKGREVISION= 4
-CATEGORIES= devel games
-MASTER_SITES= http://www.libsdl.org/release/
+.include "Makefile.common"
-MAINTAINER= wiz@NetBSD.org
-HOMEPAGE= http://www.libsdl.org/
-COMMENT= Simple DirectMedia Layer, a cross-platform multimedia library
+PKGREVISION= 5
-USE_BUILDLINK2= YES
-USE_X11= YES
-GNU_CONFIGURE= YES
-USE_GMAKE= YES
-PTHREAD_OPTS+= require
-
-USE_LIBTOOL= YES
-LTCONFIG_OVERRIDE= ${WRKSRC}/ltconfig
-
-.include "../../mk/bsd.prefs.mk"
-
-.if ${MACHINE_ARCH} == "i386"
-BUILD_DEPENDS+= nasm>=0.98:../../devel/nasm
-NASMFLAGS_ELF= -f elf
-NASMFLAGS_a.out= -f aoutb
-.endif
-
-.if defined(SDL_USE_NAS)
-. include "../../audio/nas/buildlink2.mk"
-.else
-CONFIGURE_ARGS+= --disable-nas
-.endif
-
-CONFIGURE_ARGS+= --disable-arts
-CONFIGURE_ARGS+= --enable-video-aalib
-CONFIGURE_ENV+= NASMFLAGS="${NASMFLAGS_${OBJECT_FMT}}"
-MAKE_ENV+= NASMFLAGS="${NASMFLAGS_${OBJECT_FMT}}"
-
-# Pass in LDFLAGS via SYSTEM_LIBS as it's used as the linker options for
-# finding various libraries. This ensure that any unusual -Wl,-R options
-# are noted correctly in the generated sdl-config.
-#
-CONFIGURE_ENV+= SYSTEM_LIBS="${LDFLAGS}"
-
-.include "../../mk/ossaudio.buildlink2.mk"
-.if defined(HAVE_OSS) && (${HAVE_OSS} == "YES")
-AM_CFLAGS= -D_PATH_DEV_DSP=\\\"${DEVOSSAUDIO}\\\"
-MAKE_ENV+= AM_CFLAGS="${AM_CFLAGS}"
-.endif
-
-.include "../../audio/esound/buildlink2.mk"
-.include "../../graphics/MesaLib/buildlink2.mk"
-.include "../../graphics/glut/buildlink2.mk"
-.include "../../graphics/aalib-x11/buildlink2.mk"
-.include "../../mk/pthread.buildlink2.mk"
-
-.if defined(PTHREAD_TYPE) && (${PTHREAD_TYPE} == "pth")
-# Let SDL know that we do not have native pthreads and are using GNU pth.
-CONFIGURE_ARGS+= --disable-pthreads
-CONFIGURE_ARGS+= --enable-pth
-.endif
+LIBTOOL_OVERRIDE= ${WRKSRC}/libtool
.include "../../mk/bsd.pkg.mk"
diff --git a/devel/SDL/Makefile.common b/devel/SDL/Makefile.common
new file mode 100644
index 00000000000..75ee2303d7a
--- /dev/null
+++ b/devel/SDL/Makefile.common
@@ -0,0 +1,66 @@
+# $NetBSD: Makefile.common,v 1.1 2003/07/26 21:38:22 jmmv Exp $
+#
+
+DISTNAME= SDL-1.2.5
+CATEGORIES= devel games
+MASTER_SITES= http://www.libsdl.org/release/
+
+MAINTAINER= wiz@NetBSD.org
+HOMEPAGE= http://www.libsdl.org/
+COMMENT= Simple DirectMedia Layer, a cross-platform multimedia library
+
+DISTINFO_FILE= ${.CURDIR}/../../devel/SDL/distinfo
+PATCHDIR= ${.CURDIR}/../../devel/SDL/patches
+
+USE_BUILDLINK2= YES
+USE_X11= YES
+GNU_CONFIGURE= YES
+USE_GMAKE= YES
+PTHREAD_OPTS+= require
+
+USE_LIBTOOL= YES
+
+.include "../../mk/bsd.prefs.mk"
+
+.if ${MACHINE_ARCH} == "i386"
+BUILD_DEPENDS+= nasm>=0.98:../../devel/nasm
+NASMFLAGS_ELF= -f elf
+NASMFLAGS_a.out= -f aoutb
+.endif
+
+.if defined(SDL_USE_NAS)
+. include "../../audio/nas/buildlink2.mk"
+.else
+CONFIGURE_ARGS+= --disable-nas
+.endif
+
+CONFIGURE_ARGS+= --enable-dlopen
+CONFIGURE_ARGS+= --disable-arts
+CONFIGURE_ARGS+= --disable-esd
+
+CONFIGURE_ARGS+= --enable-video-aalib
+CONFIGURE_ENV+= NASMFLAGS="${NASMFLAGS_${OBJECT_FMT}}"
+MAKE_ENV+= NASMFLAGS="${NASMFLAGS_${OBJECT_FMT}}"
+
+# Pass in LDFLAGS via SYSTEM_LIBS as it's used as the linker options for
+# finding various libraries. This ensure that any unusual -Wl,-R options
+# are noted correctly in the generated sdl-config.
+#
+CONFIGURE_ENV+= SYSTEM_LIBS="${LDFLAGS}"
+
+.include "../../mk/ossaudio.buildlink2.mk"
+.if defined(HAVE_OSS) && (${HAVE_OSS} == "YES")
+AM_CFLAGS= -D_PATH_DEV_DSP=\\\"${DEVOSSAUDIO}\\\"
+MAKE_ENV+= AM_CFLAGS="${AM_CFLAGS}"
+.endif
+
+.include "../../graphics/MesaLib/buildlink2.mk"
+.include "../../graphics/glut/buildlink2.mk"
+.include "../../graphics/aalib-x11/buildlink2.mk"
+.include "../../mk/pthread.buildlink2.mk"
+
+.if defined(PTHREAD_TYPE) && (${PTHREAD_TYPE} == "pth")
+# Let SDL know that we do not have native pthreads and are using GNU pth.
+CONFIGURE_ARGS+= --disable-pthreads
+CONFIGURE_ARGS+= --enable-pth
+.endif
diff --git a/devel/SDL/buildlink2.mk b/devel/SDL/buildlink2.mk
index b37f8e87ec0..4dc9c965e0f 100644
--- a/devel/SDL/buildlink2.mk
+++ b/devel/SDL/buildlink2.mk
@@ -1,10 +1,10 @@
-# $NetBSD: buildlink2.mk,v 1.6 2003/05/02 11:54:18 wiz Exp $
+# $NetBSD: buildlink2.mk,v 1.7 2003/07/26 21:38:22 jmmv Exp $
.if !defined(SDL_BUILDLINK2_MK)
SDL_BUILDLINK2_MK= # defined
BUILDLINK_PACKAGES+= SDL
-BUILDLINK_DEPENDS.SDL?= SDL>=1.2.5nb4
+BUILDLINK_DEPENDS.SDL?= SDL>=1.2.5nb5
BUILDLINK_PKGSRCDIR.SDL?= ../../devel/SDL
EVAL_PREFIX+= BUILDLINK_PREFIX.SDL=SDL
@@ -22,7 +22,6 @@ PTHREAD_OPTS+= require
.if defined(SDL_USE_NAS)
. include "../../audio/nas/buildlink2.mk"
.endif
-.include "../../audio/esound/buildlink2.mk"
.include "../../graphics/MesaLib/buildlink2.mk"
.include "../../graphics/glut/buildlink2.mk"
.include "../../graphics/aalib-x11/buildlink2.mk"
diff --git a/devel/SDL/distinfo b/devel/SDL/distinfo
index ebb5cedcc42..5856878f3a0 100644
--- a/devel/SDL/distinfo
+++ b/devel/SDL/distinfo
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.18 2003/06/04 17:53:11 abs Exp $
+$NetBSD: distinfo,v 1.19 2003/07/26 21:38:22 jmmv Exp $
SHA1 (SDL-1.2.5.tar.gz) = c1bdc68d390d421158778f68f3498f5b9d63a9e4
Size (SDL-1.2.5.tar.gz) = 1854550 bytes
@@ -9,7 +9,10 @@ SHA1 (patch-af) = f5e824addf308f9c467de02e3b262afbc0ef77c0
SHA1 (patch-ag) = 989c3464686a3158c538034ad7ea012a4e4b4b9e
SHA1 (patch-aj) = 2f4dd90c85bc822c049820b5f027c984d015555b
SHA1 (patch-al) = 852877c85dd43782dfcf855d43ed6250449aa9fd
-SHA1 (patch-am) = 625b10cdc035200af044cb283f806f6d0d46f4ba
+SHA1 (patch-am) = 8dfa873452ea6380b10acda81e11eac1405cc190
SHA1 (patch-ap) = ca979b24a57a8f115f5e1bdf6b1e5672a60d20a9
SHA1 (patch-ar) = 1a78f0bcb6a8f65f71af23accb2a9780331f275b
SHA1 (patch-as) = a53286d5e0a2cab7e0a1d80baf3b76681f996b7a
+SHA1 (patch-ba) = d7bb35971f63366356c68987d6038cf07c2585f1
+SHA1 (patch-bb) = 1918b2e247f9fbbe583fd1111c94dc3a58bfd929
+SHA1 (patch-bc) = 8a47e8899f203d56f9855aea6516c4369ab327fe
diff --git a/devel/SDL/patches/patch-am b/devel/SDL/patches/patch-am
index b235ec4b45c..2001494d684 100644
--- a/devel/SDL/patches/patch-am
+++ b/devel/SDL/patches/patch-am
@@ -1,8 +1,17 @@
-$NetBSD: patch-am,v 1.8 2002/10/31 22:19:51 jlam Exp $
+$NetBSD: patch-am,v 1.9 2003/07/26 21:38:23 jmmv Exp $
---- configure.orig Sun Oct 6 16:35:02 2002
+--- configure.orig 2002-10-06 22:35:02.000000000 +0200
+++ configure
-@@ -3630,10 +3630,7 @@ fi
+@@ -3094,6 +3094,8 @@ rm -f conftest*
+ echo "$ac_t""$have_oss" 1>&6
+ if test x$have_oss = xyes; then
+ CFLAGS="$CFLAGS -DOSS_SUPPORT"
++ LDFLAGS="$LDFLAGS $LIBOSSAUDIO"
++ SDL_LIBS="$SDL_LIBS $LIBOSSAUDIO"
+ AUDIO_SUBDIRS="$AUDIO_SUBDIRS dsp"
+ AUDIO_DRIVERS="$AUDIO_DRIVERS dsp/libaudio_dsp.la"
+ AUDIO_SUBDIRS="$AUDIO_SUBDIRS dma"
+@@ -3630,10 +3632,7 @@ fi
if test x$enable_audio = xyes -a x$enable_nas = xyes; then
echo $ac_n "checking for NAS audio support""... $ac_c" 1>&6
echo "configure:3633: checking for NAS audio support" >&5
@@ -13,7 +22,7 @@ $NetBSD: patch-am,v 1.8 2002/10/31 22:19:51 jlam Exp $
echo "$ac_t""$have_nas" 1>&6
if test x$have_nas = xyes; then
CFLAGS="$CFLAGS -DNAS_SUPPORT"
-@@ -3782,7 +3779,7 @@ fi
+@@ -3782,7 +3781,7 @@ fi
NASMFLAGS="-f aoutb"
;;
*)
@@ -22,7 +31,7 @@ $NetBSD: patch-am,v 1.8 2002/10/31 22:19:51 jlam Exp $
;;
esac
-@@ -5385,34 +5382,53 @@ else
+@@ -5385,34 +5384,53 @@ else
fi
if test x$enable_video = xyes -a x$enable_video_aalib = xyes; then
@@ -99,7 +108,7 @@ $NetBSD: patch-am,v 1.8 2002/10/31 22:19:51 jlam Exp $
VIDEO_SUBDIRS="$VIDEO_SUBDIRS aalib"
VIDEO_DRIVERS="$VIDEO_DRIVERS aalib/libvideo_aa.la"
-@@ -5755,19 +5771,20 @@ else
+@@ -5755,19 +5773,20 @@ else
fi
if test x$enable_threads = xyes -a x$enable_pth = xyes; then
@@ -127,7 +136,7 @@ $NetBSD: patch-am,v 1.8 2002/10/31 22:19:51 jlam Exp $
;;
*)
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
-@@ -5775,27 +5792,27 @@ else
+@@ -5775,27 +5794,27 @@ else
for ac_dir in $ac_dummy; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/$ac_word; then
@@ -163,7 +172,7 @@ $NetBSD: patch-am,v 1.8 2002/10/31 22:19:51 jlam Exp $
SDL_CFLAGS="$SDL_CFLAGS $PTH_CFLAGS"
SDL_LIBS="$SDL_LIBS $PTH_LIBS"
CFLAGS="$CFLAGS -DENABLE_PTH"
-@@ -5844,8 +5861,8 @@ fi
+@@ -5844,8 +5863,8 @@ fi
pthread_lib="-pthread"
;;
*-*-netbsd*)
@@ -174,7 +183,7 @@ $NetBSD: patch-am,v 1.8 2002/10/31 22:19:51 jlam Exp $
;;
*-*-openbsd*)
pthread_cflags="-D_REENTRANT"
-@@ -6760,56 +6777,45 @@ else
+@@ -6760,56 +6779,45 @@ else
echo "$ac_t""no" 1>&6
fi
@@ -253,7 +262,7 @@ $NetBSD: patch-am,v 1.8 2002/10/31 22:19:51 jlam Exp $
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
-@@ -6814,12 +6820,12 @@ if eval "test \"`echo '$''{'ac_cv_header
+@@ -6814,12 +6822,12 @@ if eval "test \"`echo '$''{'ac_cv_header
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
@@ -269,7 +278,7 @@ $NetBSD: patch-am,v 1.8 2002/10/31 22:19:51 jlam Exp $
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
-@@ -6835,47 +6841,64 @@ rm -f conftest*
+@@ -6835,47 +6843,64 @@ rm -f conftest*
fi
if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
echo "$ac_t""yes" 1>&6
@@ -354,7 +363,7 @@ $NetBSD: patch-am,v 1.8 2002/10/31 22:19:51 jlam Exp $
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
-@@ -6880,12 +6903,12 @@ if eval "test \"`echo '$''{'ac_cv_header
+@@ -6880,12 +6905,12 @@ if eval "test \"`echo '$''{'ac_cv_header
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
@@ -370,7 +379,7 @@ $NetBSD: patch-am,v 1.8 2002/10/31 22:19:51 jlam Exp $
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
-@@ -6901,14 +6924,14 @@ rm -f conftest*
+@@ -6901,14 +6926,14 @@ rm -f conftest*
fi
if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
echo "$ac_t""yes" 1>&6
@@ -389,7 +398,7 @@ $NetBSD: patch-am,v 1.8 2002/10/31 22:19:51 jlam Exp $
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
-@@ -6913,12 +6936,12 @@ if eval "test \"`echo '$''{'ac_cv_header
+@@ -6913,12 +6938,12 @@ if eval "test \"`echo '$''{'ac_cv_header
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
@@ -405,7 +414,7 @@ $NetBSD: patch-am,v 1.8 2002/10/31 22:19:51 jlam Exp $
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
-@@ -6934,7 +6957,7 @@ rm -f conftest*
+@@ -6934,7 +6959,7 @@ rm -f conftest*
fi
if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
echo "$ac_t""yes" 1>&6
@@ -414,7 +423,7 @@ $NetBSD: patch-am,v 1.8 2002/10/31 22:19:51 jlam Exp $
else
echo "$ac_t""no" 1>&6
fi
-@@ -6942,14 +6965,10 @@ fi
+@@ -6942,14 +6967,10 @@ fi
if test x$have_usb_h = xyes; then
CFLAGS="$CFLAGS -DHAVE_USB_H"
fi
@@ -430,7 +439,7 @@ $NetBSD: patch-am,v 1.8 2002/10/31 22:19:51 jlam Exp $
fi
echo $ac_n "checking for usbhid""... $ac_c" 1>&6
-@@ -7313,6 +7332,7 @@ __EOF__
+@@ -7313,6 +7334,7 @@ __EOF__
CheckESD
CheckNAS
CheckX11
@@ -438,7 +447,7 @@ $NetBSD: patch-am,v 1.8 2002/10/31 22:19:51 jlam Exp $
CheckAAlib
CheckOpenGL
CheckPTHREAD
-@@ -7331,9 +7351,9 @@ __EOF__
+@@ -7331,9 +7353,9 @@ __EOF__
# Set up files for the audio library
if test x$enable_audio = xyes; then
@@ -451,7 +460,7 @@ $NetBSD: patch-am,v 1.8 2002/10/31 22:19:51 jlam Exp $
fi
# Set up files for the cdrom library
if test x$enable_cdrom = xyes; then
-@@ -7342,9 +7362,6 @@ __EOF__
+@@ -7342,9 +7364,6 @@ __EOF__
fi
# Set up files for the thread library
if test x$enable_threads = xyes; then
@@ -461,7 +470,7 @@ $NetBSD: patch-am,v 1.8 2002/10/31 22:19:51 jlam Exp $
CopyUnixThreadSource
fi
# Set up files for the timer library
-@@ -8759,7 +8776,7 @@ fi
+@@ -8759,7 +8778,7 @@ fi
# Set runtime shared library paths as needed
@@ -470,7 +479,7 @@ $NetBSD: patch-am,v 1.8 2002/10/31 22:19:51 jlam Exp $
SDL_RLD_FLAGS="-Wl,-rpath,\${exec_prefix}/lib"
fi
if test $ARCH = solaris; then
-@@ -9143,7 +9160,8 @@ s%@X_EXTRA_LIBS@%$X_EXTRA_LIBS%g
+@@ -9143,7 +9162,8 @@ s%@X_EXTRA_LIBS@%$X_EXTRA_LIBS%g
s%@PKG_CONFIG@%$PKG_CONFIG%g
s%@DIRECTFB_CFLAGS@%$DIRECTFB_CFLAGS%g
s%@DIRECTFB_LIBS@%$DIRECTFB_LIBS%g
diff --git a/devel/SDL/patches/patch-ba b/devel/SDL/patches/patch-ba
new file mode 100644
index 00000000000..668178cc032
--- /dev/null
+++ b/devel/SDL/patches/patch-ba
@@ -0,0 +1,108 @@
+$NetBSD: patch-ba,v 1.1 2003/07/26 21:38:23 jmmv Exp $
+
+--- src/audio/SDL_audio.c.orig 2002-10-05 18:50:56.000000000 +0200
++++ src/audio/SDL_audio.c
+@@ -38,8 +38,14 @@ static char rcsid =
+ #include "SDL_audiomem.h"
+ #include "SDL_sysaudio.h"
+
++#include "SDL_name.h"
++#include "SDL_loadso.h"
++
+ /* Available audio drivers */
+ static AudioBootStrap *bootstrap[] = {
++ NULL, /* Optional 1: either arts or esd */
++ NULL, /* Optional 2: either arts or esd */
++#define PLUGIN_COUNT 2
+ #ifdef OPENBSD_AUDIO_SUPPORT
+ &OPENBSD_AUDIO_bootstrap,
+ #endif
+@@ -56,12 +62,6 @@ static AudioBootStrap *bootstrap[] = {
+ #ifdef DMEDIA_SUPPORT
+ &DMEDIA_bootstrap,
+ #endif
+-#ifdef ARTSC_SUPPORT
+- &ARTSC_bootstrap,
+-#endif
+-#ifdef ESD_SUPPORT
+- &ESD_bootstrap,
+-#endif
+ #ifdef NAS_SUPPORT
+ &NAS_bootstrap,
+ #endif
+@@ -252,16 +252,47 @@ static void SDL_UnlockAudio_Default(SDL_
+ SDL_mutexV(audio->mixer_lock);
+ }
+
++static int SDL_LoadAudioPlugins(void)
++{
++ int first = PLUGIN_COUNT;
++ char *envvar;
++ void *plugin;
++
++#define DO_LOAD(IDNAME, SONAME, BSNAME, PKGNAME) \
++ envvar = getenv("SDL_AUDIO_PLUGIN"); \
++ if (envvar == NULL || strcmp(envvar, IDNAME) == 0) { \
++ plugin = SDL_LoadObject(SONAME); \
++ if (plugin != NULL) { \
++ struct AudioBootStrap *bs; \
++ bs = SDL_LoadFunction(plugin, BSNAME); \
++ if (bs != NULL) { \
++ bootstrap[--first] = bs; \
++ } \
++ } else if (envvar != NULL && strcmp(envvar, IDNAME) == 0) { \
++ fprintf(stderr, "SDL (pkgsrc): SDL_AUDIO_PLUGIN is explicitly set to `" IDNAME "'.\n"); \
++ fprintf(stderr, "SDL (pkgsrc): Please install the " PKGNAME " package and retry.\n"); \
++ } \
++ }
++
++ DO_LOAD("arts", "libaudio_arts.so", "ARTSC_bootstrap", "audio/SDL-arts");
++ DO_LOAD("esound", "libaudio_esd.so", "ESD_bootstrap", "audio/SDL-esound");
++#undef DO_LOAD
++
++ return first;
++}
++
+ int SDL_AudioInit(const char *driver_name)
+ {
+ SDL_AudioDevice *audio;
+- int i = 0, idx;
++ int i = 0, idx, first;
+
+ /* Check to make sure we don't overwrite 'current_audio' */
+ if ( current_audio != NULL ) {
+ SDL_AudioQuit();
+ }
+
++ first = SDL_LoadAudioPlugins();
++
+ /* Select the proper audio driver */
+ audio = NULL;
+ idx = 0;
+@@ -271,7 +302,7 @@ int SDL_AudioInit(const char *driver_nam
+ to use ESD, but don't start it if it's not already running.
+ This probably isn't the place to do this, but... Shh! :)
+ */
+- for ( i=0; bootstrap[i]; ++i ) {
++ for ( i=first; bootstrap[i]; ++i ) {
+ if ( strcmp(bootstrap[i]->name, "esd") == 0 ) {
+ const char *esd_no_spawn;
+
+@@ -300,7 +331,7 @@ int SDL_AudioInit(const char *driver_nam
+ idx = atoi(strrchr(driver_name, ':')+1);
+ }
+ #endif
+- for ( i=0; bootstrap[i]; ++i ) {
++ for ( i=first; bootstrap[i]; ++i ) {
+ if (strncmp(bootstrap[i]->name, driver_name,
+ strlen(bootstrap[i]->name)) == 0) {
+ if ( bootstrap[i]->available() ) {
+@@ -310,7 +341,7 @@ int SDL_AudioInit(const char *driver_nam
+ }
+ }
+ } else {
+- for ( i=0; bootstrap[i]; ++i ) {
++ for ( i=first; bootstrap[i]; ++i ) {
+ if ( bootstrap[i]->available() ) {
+ audio = bootstrap[i]->create(idx);
+ if ( audio != NULL ) {
diff --git a/devel/SDL/patches/patch-bb b/devel/SDL/patches/patch-bb
new file mode 100644
index 00000000000..3e7b5305ad5
--- /dev/null
+++ b/devel/SDL/patches/patch-bb
@@ -0,0 +1,22 @@
+$NetBSD: patch-bb,v 1.1 2003/07/26 21:38:23 jmmv Exp $
+
+--- src/audio/esd/Makefile.in.orig 2003-07-25 21:01:00.000000000 +0200
++++ src/audio/esd/Makefile.in
+@@ -136,7 +136,7 @@ X_CFLAGS = @X_CFLAGS@
+ X_LIBS = @X_LIBS@
+ X_EXTRA_LIBS = @X_EXTRA_LIBS@
+ X_PRE_LIBS = @X_PRE_LIBS@
+-libaudio_esd_la_LDFLAGS =
++libaudio_esd_la_LDFLAGS = -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) $(ESD_LIBS)
+ libaudio_esd_la_LIBADD =
+ libaudio_esd_la_OBJECTS = SDL_esdaudio.lo
+ CFLAGS = @CFLAGS@
+@@ -213,7 +213,7 @@ distclean-libtool:
+ maintainer-clean-libtool:
+
+ libaudio_esd.la: $(libaudio_esd_la_OBJECTS) $(libaudio_esd_la_DEPENDENCIES)
+- $(LINK) $(libaudio_esd_la_LDFLAGS) $(libaudio_esd_la_OBJECTS) $(libaudio_esd_la_LIBADD) $(LIBS)
++ $(LINK) -rpath $(libdir) $(libaudio_esd_la_LDFLAGS) $(libaudio_esd_la_OBJECTS) $(libaudio_esd_la_LIBADD) $(LIBS)
+
+ tags: TAGS
+
diff --git a/devel/SDL/patches/patch-bc b/devel/SDL/patches/patch-bc
new file mode 100644
index 00000000000..b7245603638
--- /dev/null
+++ b/devel/SDL/patches/patch-bc
@@ -0,0 +1,22 @@
+$NetBSD: patch-bc,v 1.1 2003/07/26 21:38:23 jmmv Exp $
+
+--- src/audio/arts/Makefile.in.orig 2003-07-25 21:01:00.000000000 +0200
++++ src/audio/arts/Makefile.in
+@@ -136,7 +136,7 @@ X_CFLAGS = @X_CFLAGS@
+ X_LIBS = @X_LIBS@
+ X_EXTRA_LIBS = @X_EXTRA_LIBS@
+ X_PRE_LIBS = @X_PRE_LIBS@
+-libaudio_arts_la_LDFLAGS =
++libaudio_arts_la_LDFLAGS = -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) `$(ARTSCCONFIG) --libs`
+ libaudio_arts_la_LIBADD =
+ libaudio_arts_la_OBJECTS = SDL_artsaudio.lo
+ CFLAGS = @CFLAGS@
+@@ -213,7 +213,7 @@ distclean-libtool:
+ maintainer-clean-libtool:
+
+ libaudio_arts.la: $(libaudio_arts_la_OBJECTS) $(libaudio_arts_la_DEPENDENCIES)
+- $(LINK) $(libaudio_arts_la_LDFLAGS) $(libaudio_arts_la_OBJECTS) $(libaudio_arts_la_LIBADD) $(LIBS)
++ $(LINK) -rpath $(libdir) $(libaudio_arts_la_LDFLAGS) $(libaudio_arts_la_OBJECTS) $(libaudio_arts_la_LIBADD) $(LIBS)
+
+ tags: TAGS
+