Make the default cd plugin configurable.

The default default is file, but now distribution maintainers can change it
if necessary.
This commit is contained in:
Bill Currie 2011-06-04 17:19:18 +09:00
parent c4fa87cae1
commit 47201137d5
3 changed files with 44 additions and 3 deletions

View file

@ -19,7 +19,7 @@ CDTYPE=""
CD_CFLAGS=""
CD_PLUGIN_TARGETS=""
if test "x$HAVE_VORBIS" = xyes; then
CDTYPE=" OGG"
CDTYPE=" File"
CD_PLUGIN_TARGETS="cd_file.la"
fi
@ -82,3 +82,44 @@ else
fi
AC_SUBST(CD_LIBS)
AC_ARG_WITH([cd-default],
AS_HELP_STRING([--with-cd-default=...],
[Plugin to use for the default cd driver.]
[Defaults to File.]
[[File Linux XMMS SDL SGI WIN32]]),
cd_default="$withval", cd_default=File
)
CD_DEFAULT=""
if test "x$cd_default" != "x"; then
for cdd in $CDTYPE; do
if test "x$cdd" = "x$cd_default"; then
CD_DEFAULT="$cd_default"
fi
done
fi
case "x$CD_DEFAULT" in
xFile)
CD_DEFAULT=file
;;
xLinux)
CD_DEFAULT=linux
;;
xXMMS)
CD_DEFAULT=xmms
;;
xSDL)
CD_DEFAULT=sdl
;;
xSGI)
CD_DEFAULT=sgi
;;
xWIN32)
CD_DEFAULT=win
;;
x*)
AC_MSG_WARN([Unknown or unbuildable cd plugin])
CD_DEFAULT=file
;;
esac
AC_DEFINE_UNQUOTED(CD_DEFAULT, ["$CD_DEFAULT"], [Define to the default CD plugin])

View file

@ -6,7 +6,7 @@ AC_MSG_RESULT([
Client support :${CL_TARGETS- no}
Tools support :${TOOLS_TARGETS- no}
Sound support :${SOUND_TYPES- no} ${SND_OUTPUT_DEFAULT}
CD Audio system :${CDTYPE- no}
CD Audio system :${CDTYPE- no} ${CD_DEFAULT}
IPv6 networking : $NETTYPE_IPV6
Compression support: gz=$HAVE_ZLIB ogg=$HAVE_VORBIS flac=$HAVE_FLAC png=$HAVE_PNG
HTTP support : ${CURL-no}

View file

@ -95,7 +95,7 @@ VISIBLE int
CDAudio_Init (void)
{
PI_RegisterPlugins (cd_plugin_list);
cd_plugin = Cvar_Get ("cd_plugin", "sdl", CVAR_ROM, NULL,
cd_plugin = Cvar_Get ("cd_plugin", CD_DEFAULT, CVAR_ROM, NULL,
"CD Plugin to use");
if (COM_CheckParm ("-nocdaudio"))