fix for iconv
git-svn-id: https://svn.musicpd.org/mpd/trunk@339 09075e82-0dd4-0310-85a5-a0d7c8717e4f
This commit is contained in:
parent
445d807b9c
commit
09880de539
41
configure.ac
41
configure.ac
|
@ -27,6 +27,7 @@ AM_CONFIG_HEADER(config.h)
|
|||
MPD_CFLAGS="-Wall"
|
||||
MPD_LIBS=""
|
||||
|
||||
AC_ARG_ENABLE(iconv,[ --disable-iconv disable iconv support],,enable_iconv=yes)
|
||||
AC_ARG_ENABLE(ipv6,[ --disable-ipv6 disable IPv6 support],,enable_ipv6=yes)
|
||||
AC_ARG_ENABLE(ogg,[ --disable-ogg disable ogg support],,enable_ogg=yes)
|
||||
AC_ARG_ENABLE(flac,[ --disable-flac disable flac support],,enable_flac=yes)
|
||||
|
@ -37,6 +38,10 @@ AC_ARG_ENABLE(mpd_mad,[ --enable-mpd-mad use mpd libmad],use_mpd_mad=yes,)
|
|||
AC_ARG_ENABLE(id3,[ --disable-id3 disable id3 support],,enable_id3=yes)
|
||||
AC_ARG_ENABLE(mpd_id3tag,[ --enable-mpd-id3tag use mpd libid3tag],use_mpd_id3tag=yes,)
|
||||
|
||||
AC_ARG_WITH(iconv,[ --with-iconv=PFX Prefix where iconv is installed (optional)], iconv_prefix="$withval", iconv_prefix="")
|
||||
AC_ARG_WITH(iconv-libraries,[ --with-iconv-libraries=DIR Directory where libiconv library is installed (optional)], iconv_libraries="$withval", iconv_libraries="")
|
||||
AC_ARG_WITH(iconv-includes,[ --with-iconv-includes=DIR Directory where libiconv header files are installed (optional)], iconv_includes="$withval", iconv_includes="")
|
||||
|
||||
AC_ARG_WITH(id3tag,[ --with-id3tag=PFX Prefix where libid3tag is installed (optional)], id3tag_prefix="$withval", id3tag_prefix="")
|
||||
AC_ARG_WITH(id3tag-libraries,[ --with-id3tag-libraries=DIR Directory where libid3tag library is installed (optional)], id3tag_libraries="$withval", id3tag_libraries="")
|
||||
AC_ARG_WITH(id3tag-includes,[ --with-id3tag-includes=DIR Directory where libid3tag header files are installed (optional)], id3tag_includes="$withval", id3tag_includes="")
|
||||
|
@ -61,10 +66,6 @@ AC_CHECK_LIB(nsl,gethostbyname,MPD_LIBS="$MPD_LIBS -lnsl",)
|
|||
|
||||
AC_CHECK_LIB(m,exp,MPD_LIBS="$MPD_LIBS -lm",)
|
||||
|
||||
AM_ICONV
|
||||
MPD_CFLAGS="$MPD_CFLAGS $INCICONV"
|
||||
MPD_LIBS="$MPD_LIBS $LIBICONV"
|
||||
|
||||
AC_CHECK_HEADER(langinfo.h,AC_DEFINE(HAVE_LANGINFO,1,[Define if nl_langinfo.h is present]),)
|
||||
AC_CHECK_HEADER(locale.h,AC_DEFINE(HAVE_LOCALE,1,[Define if locale.h is present]),)
|
||||
|
||||
|
@ -106,6 +107,38 @@ AC_MSG_RESULT([yes]),
|
|||
AC_MSG_RESULT([no])
|
||||
)
|
||||
|
||||
if test x$enable_iconv = xyes; then
|
||||
if test "x$iconv_libraries" != "x" ; then
|
||||
ICONV_LIBS="-L$iconv_libraries"
|
||||
elif test "x$iconv_prefix" != "x" ; then
|
||||
ICONV_LIBS="-L$iconv_prefix/lib"
|
||||
elif test "x$prefix" != "xNONE"; then
|
||||
ICONV_LIBS="-L$libdir"
|
||||
fi
|
||||
|
||||
ICONV_LIBS="$ICONV_LIBS -liconv"
|
||||
|
||||
if test "x$iconv_includes" != "x" ; then
|
||||
ICONV_CFLAGS="-I$iconv_includes"
|
||||
elif test "x$iconv_prefix" != "x" ; then
|
||||
ICONV_CFLAGS="-I$iconv_prefix/include"
|
||||
elif test "x$prefix" != "xNONE"; then
|
||||
ICONV_CFLAGS="-I$includedir"
|
||||
fi
|
||||
|
||||
oldcflags=$CFLAGS
|
||||
oldlibs=$LIBS
|
||||
CFLAGS="$CFLAGS $MPD_CFLAGS $ICONV_CFLAGS"
|
||||
LIBS="$LIBS $MPD_LIBS $ICONV_LIBS"
|
||||
AC_CHECK_HEADER(iconv.h,MPD_CFLAGS="$MPD_CFLAGS $ICONV_CFLAGS",enable_iconv=no)
|
||||
if test x$enable_iconv = xyes; then
|
||||
AC_CHECK_LIB(iconv,iconv_open,MPD_LIBS="$MPD_LIBS $ICONV_LIBS",)
|
||||
AC_DEFINE(HAVE_ICONV,1,[Define to use iconv])
|
||||
fi
|
||||
CFLAGS=$oldcflags
|
||||
LIBS=$oldlibs
|
||||
fi
|
||||
|
||||
ID3_SUBDIR=""
|
||||
|
||||
if test x$enable_id3 = xyes; then
|
||||
|
|
|
@ -116,7 +116,7 @@ void finishAudioDriver() {
|
|||
}
|
||||
|
||||
int isCurrentAudioFormat(AudioFormat * audioFormat) {
|
||||
if(!audio_device) return 0;
|
||||
if(!audio_device || !audioFormat) return 0;
|
||||
|
||||
if(audio_format.bits!=audioFormat->bits ||
|
||||
audio_format.sampleRate!=audioFormat->sampleRate ||
|
||||
|
@ -131,7 +131,7 @@ int isCurrentAudioFormat(AudioFormat * audioFormat) {
|
|||
int initAudio(AudioFormat * audioFormat) {
|
||||
ao_sample_format format;
|
||||
|
||||
if(audioFormat && audio_device && !isCurrentAudioFormat(audioFormat)) {
|
||||
if(audio_device && !isCurrentAudioFormat(audioFormat)) {
|
||||
finishAudio();
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue