From: Andre Noll Date: Fri, 25 Feb 2011 15:15:52 +0000 (+0100) Subject: Add finer-grained configure options for ogg/vorbis/speex. X-Git-Tag: v0.4.7~22^2~3 X-Git-Url: http://git.tue.mpg.de/?a=commitdiff_plain;h=01bd4cba7946f6506f4ca3095104904bf3b2b098;p=paraslash.git Add finer-grained configure options for ogg/vorbis/speex. This replaces the --with-oggvorbis-headers and --with-oggvorbis-libs configure options by three pairs of options, for ogg, vorbis and speex. Since both vorbis and speex depend on libogg, we only check for the vorbis/speex header and libraries if libogg was been found. --- diff --git a/configure.ac b/configure.ac index e8b2118c..1b2dc114 100644 --- a/configure.ac +++ b/configure.ac @@ -430,86 +430,120 @@ if test ${have_core_audio} = yes; then fi ########################################################### ogg/vorbis/speex have_ogg="yes" -have_vorbis="yes" -have_speex="yes" OLD_CPPFLAGS="$CPPFLAGS" OLD_LD_FLAGS="$LDFLAGS" OLD_LIBS="$LIBS" -AC_ARG_WITH(oggvorbis_headers, [AC_HELP_STRING(--with-oggvorbis-headers=dir, - [look for ogg/vorbis/speex headers also in dir])]) -if test -n "$with_oggvorbis_headers"; then - ogg_cppflags="-I$with_oggvorbis_headers" +AC_ARG_WITH(ogg_headers, [AC_HELP_STRING(--with-ogg-headers=dir, + [look for ogg headers also in dir])]) +AC_ARG_WITH(ogg_libs, [AC_HELP_STRING(--with-ogg-libs=dir, + [look for ogg libs also in dir])]) +AC_ARG_WITH(vorbis_headers, [AC_HELP_STRING(--with-vorbis-headers=dir, + [look for vorbis headers also in dir])]) +AC_ARG_WITH(vorbis_libs, [AC_HELP_STRING(--with-vorbis-libs=dir, + [look for vorbis libs also in dir])]) +AC_ARG_WITH(speex_headers, [AC_HELP_STRING(--with-speex-headers=dir, + [look for speex headers also in dir])]) +AC_ARG_WITH(speex_libs, [AC_HELP_STRING(--with-speex-libs=dir, + [look for speex libs also in dir])]) + +if test -n "$with_ogg_headers"; then + ogg_cppflags="-I$with_ogg_headers" CPPFLAGS="$CPPFLAGS $ogg_cppflags" fi -AC_ARG_WITH(oggvorbis_libs, [AC_HELP_STRING(--with-oggvorbis-libs=dir, - [look for ogg/vorbis/speex libs also in dir])]) -if test -n "$with_oggvorbis_libs"; then - ogg_libs="-L$with_oggvorbis_libs" +if test -n "$with_ogg_libs"; then + ogg_libs="-L$with_ogg_libs" LDFLAGS="$LDFLAGS $ogg_libs" fi - -AC_CHECK_LIB([ogg], [ogg_stream_init], [], [ have_ogg="no" ]) -AC_CHECK_LIB([vorbis], [vorbis_info_init], [], [ have_vorbis="no" ]) -AC_CHECK_LIB([speex], [speex_decoder_init], [], [ have_speex="no" ]) AC_CHECK_HEADERS([ogg/ogg.h], [], [ have_ogg="no"; ]) -AC_CHECK_HEADERS([vorbis/codec.h], [], [ have_vorbis="no" ]) -AC_CHECK_HEADERS([speex/speex.h], [], [ have_speex="no" ]) +AC_CHECK_LIB([ogg], [ogg_stream_init], [], [ have_ogg="no" ]) + +have_vorbis="yes" +have_speex="yes" +if test "$have_ogg" = "yes"; then + # vorbis + if test -n "$with_vorbis_headers"; then + vorbis_cppflags="-I$with_vorbis_headers" + CPPFLAGS="$CPPFLAGS $vorbis_cppflags" + fi + if test -n "$with_vorbis_libs"; then + vorbis_libs="-L$with_vorbis_libs" + LDFLAGS="$LDFLAGS $vorbis_libs" + fi + AC_CHECK_HEADERS([vorbis/codec.h], [], [ have_vorbis="no" ]) + AC_CHECK_LIB([vorbis], [vorbis_info_init], [], [ have_vorbis="no" ]) + + # speex + if test -n "$with_speex_headers"; then + speex_cppflags="-I$with_speex_headers" + CPPFLAGS="$CPPFLAGS $speex_cppflags" + fi + if test -n "$with_speex_libs"; then + speex_libs="-L$with_speex_libs" + LDFLAGS="$LDFLAGS $speex_libs" + fi + AC_CHECK_LIB([speex], [speex_decoder_init], [], [ have_speex="no" ]) + AC_CHECK_HEADERS([speex/speex.h], [], [ have_speex="no" ]) +else + have_vorbis="no" + have_speex="no" +fi + msg="support in para_server/para_filter/para_afh" -if test "$have_ogg" = "yes" && { test "$have_vorbis" = "yes" || test "$have_speex" = "yes"; }; then +if test "$have_vorbis" = "yes" || test "$have_speex" = "yes"; then AC_SUBST(ogg_cppflags) ogg_libs="$ogg_libs -logg" if test "$OSTYPE" = "Darwin"; then - ogg_libs="-Wl,-bind_at_load $ogg_libs $ogg_libs" + ogg_libs="-Wl,-bind_at_load $ogg_libs" fi server_ldflags="$server_ldflags $ogg_libs" filter_ldflags="$filter_ldflags $ogg_libs" audiod_ldflags="$audiod_ldflags $ogg_libs" - all_errlist_objs="$all_errlist_objs ogg_afh_common" afh_ldflags="$afh_ldflags $ogg_libs" + all_errlist_objs="$all_errlist_objs ogg_afh_common" afh_errlist_objs="$afh_errlist_objs ogg_afh_common" server_errlist_objs="$server_errlist_objs ogg_afh_common" - if test "$have_vorbis" = "yes"; then - all_errlist_objs="$all_errlist_objs oggdec_filter ogg_afh" - AC_DEFINE(HAVE_OGGVORBIS, 1, define to 1 to turn on ogg/vorbis support) - filters="$filters oggdec" - vorbis_libs="-lvorbis -lvorbisfile" - server_ldflags="$server_ldflags $vorbis_libs" - filter_ldflags="$filter_ldflags $vorbis_libs" - audiod_ldflags="$audiod_ldflags $vorbis_libs" - afh_ldflags="$afh_ldflags $vorbis_libs" - - server_errlist_objs="$server_errlist_objs ogg_afh" - filter_errlist_objs="$filter_errlist_objs oggdec_filter" - audiod_errlist_objs="$audiod_errlist_objs oggdec_filter" - afh_errlist_objs="$afh_errlist_objs ogg_afh" - - audiod_audio_formats="$audiod_audio_formats ogg" - server_audio_formats="$server_audio_formats ogg" - else - AC_MSG_WARN([no ogg/vorbis $msg]) - fi - if test "$have_speex" = "yes"; then - all_errlist_objs="$all_errlist_objs spxdec_filter spx_afh spx_common" - AC_DEFINE(HAVE_SPEEX, 1, define to 1 to turn on ogg/speex support) - filters="$filters spxdec" - speex_libs="-lspeex" - server_ldflags="$server_ldflags $speex_libs" - filter_ldflags="$filter_ldflags $speex_libs" - audiod_ldflags="$audiod_ldflags $speex_libs" - afh_ldflags="$afh_ldflags $speex_libs" - - server_errlist_objs="$server_errlist_objs spx_afh spx_common" - filter_errlist_objs="$filter_errlist_objs spxdec_filter spx_common" - audiod_errlist_objs="$audiod_errlist_objs spxdec_filter spx_common" - afh_errlist_objs="$afh_errlist_objs spx_afh spx_common" - - audiod_audio_formats="$audiod_audio_formats spx" - server_audio_formats="$server_audio_formats spx" - else - AC_MSG_WARN([no ogg/speex $msg]) - fi else - AC_MSG_WARN([no ogg/vorbis ogg/speex $msg]) + AC_MSG_WARN([vorbis/speex require ogg]) +fi +if test "$have_vorbis" = "yes"; then + all_errlist_objs="$all_errlist_objs oggdec_filter ogg_afh" + AC_DEFINE(HAVE_OGGVORBIS, 1, define to 1 to turn on ogg/vorbis support) + filters="$filters oggdec" + vorbis_libs="-lvorbis -lvorbisfile" + server_ldflags="$server_ldflags $vorbis_libs" + filter_ldflags="$filter_ldflags $vorbis_libs" + audiod_ldflags="$audiod_ldflags $vorbis_libs" + afh_ldflags="$afh_ldflags $vorbis_libs" + + server_errlist_objs="$server_errlist_objs ogg_afh" + filter_errlist_objs="$filter_errlist_objs oggdec_filter" + audiod_errlist_objs="$audiod_errlist_objs oggdec_filter" + afh_errlist_objs="$afh_errlist_objs ogg_afh" + + audiod_audio_formats="$audiod_audio_formats ogg" + server_audio_formats="$server_audio_formats ogg" +else + AC_MSG_WARN([no ogg/vorbis $msg]) +fi +if test "$have_speex" = "yes"; then + all_errlist_objs="$all_errlist_objs spxdec_filter spx_afh spx_common" + AC_DEFINE(HAVE_SPEEX, 1, define to 1 to turn on ogg/speex support) + filters="$filters spxdec" + speex_libs="-lspeex" + server_ldflags="$server_ldflags $speex_libs" + filter_ldflags="$filter_ldflags $speex_libs" + audiod_ldflags="$audiod_ldflags $speex_libs" + afh_ldflags="$afh_ldflags $speex_libs" + + server_errlist_objs="$server_errlist_objs spx_afh spx_common" + filter_errlist_objs="$filter_errlist_objs spxdec_filter spx_common" + audiod_errlist_objs="$audiod_errlist_objs spxdec_filter spx_common" + afh_errlist_objs="$afh_errlist_objs spx_afh spx_common" + + audiod_audio_formats="$audiod_audio_formats spx" + server_audio_formats="$server_audio_formats spx" +else + AC_MSG_WARN([no ogg/speex $msg]) fi CPPFLAGS="$OLD_CPPFLAGS" LDFLAGS="$OLD_LDFLAGS"