From 1b9fab9b177a5c3e9771f355bee664f802db563d Mon Sep 17 00:00:00 2001 From: diego Date: Thu, 8 May 2008 22:50:17 +0000 Subject: [PATCH] Add options to handle the external libraries in libavcodec, which require extra linker flags etc. individually. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26700 b3059339-0415-0410-9bf9-f77b7e298cf2 --- configure | 56 ++++++++++++++++++++++++++++++++++++++----------------- 1 file changed, 39 insertions(+), 17 deletions(-) diff --git a/configure b/configure index 0eb46cdcd9..5e115d2fea 100755 --- a/configure +++ b/configure @@ -286,7 +286,9 @@ Codecs: --disable-xanim disable XAnim codecs support [enabled] --disable-real disable RealPlayer codecs support [enabled] --disable-xvid disable XviD [autodetect] + --disable-xvid-lavc disable XviD in libavcodec [autodetect] --disable-x264 disable x264 [autodetect] + --disable-x264-lavc disable x264 in libavcodec [autodetect] --disable-libnut disable libnut [autodetect] --disable-libavutil_a disable static libavutil [autodetect] --disable-libavcodec_a disable static libavcodec [autodetect] @@ -308,10 +310,12 @@ Codecs: --disable-faad-internal disable internal FAAD2 (AAC) [autodetect] --enable-faad-fixed enable fixed-point mode in internal FAAD2 [disabled] --disable-faac disable support for FAAC (AAC encoder) [autodetect] + --disable-faac-lavc disable support for FAAC in libavcodec [autodetect] --disable-ladspa disable LADSPA plugin support [autodetect] --disable-libdv disable libdv 0.9.5 en/decoding support [autodetect] --disable-mad disable libmad (MPEG audio) support [autodetect] --disable-mp3lame disable LAME MP3 encoding support [autodetect] + --disable-mp3lame-lavc disable LAME in libavcodec [autodetect] --disable-toolame disable Toolame (MPEG layer 2) encoding [autodetect] --disable-twolame disable Twolame (MPEG layer 2) encoding [autodetect] --enable-xmms enable XMMS input plugin support [disabled] @@ -555,6 +559,7 @@ _libcdio=auto _liblzo=auto _mad=auto _mp3lame=auto +_mp3lame_lavc=auto _toolame=auto _twolame=auto _tremor_internal=yes @@ -571,6 +576,7 @@ _faad_internal=auto _faad_external=auto _faad_fixed=no _faac=auto +_faac_lavc=auto _ladspa=auto _xmms=no _dvdnav=auto @@ -617,7 +623,9 @@ _vidix_external=auto _vidix_pcidb=yes _joystick=no _xvid=auto +_xvid_lavc=auto _x264=auto +_x264_lavc=auto _libnut=auto _lirc=auto _lircc=auto @@ -894,6 +902,8 @@ for ac_option do --disable-mad) _mad=no ;; --enable-mp3lame) _mp3lame=yes ;; --disable-mp3lame) _mp3lame=no ;; + --enable-mp3lame-lavc) _mp3lame_lavc=yes ;; + --disable-mp3lame-lavc) _mp3lame_lavc=no ;; --enable-toolame) _toolame=yes ;; --disable-toolame) _toolame=no ;; --enable-twolame) _twolame=yes ;; @@ -932,6 +942,8 @@ for ac_option do --disable-faad-fixed) _faad_fixed=no ;; --enable-faac) _faac=yes ;; --disable-faac) _faac=no ;; + --enable-faac-lavc) _faac_lavc=yes ;; + --disable-faac-lavc) _faac_lavc=no ;; --enable-ladspa) _ladspa=yes ;; --disable-ladspa) _ladspa=no ;; --enable-xmms) _xmms=yes ;; @@ -1014,8 +1026,12 @@ for ac_option do --disable-joystick) _joystick=no ;; --enable-xvid) _xvid=yes ;; --disable-xvid) _xvid=no ;; + --enable-xvid-lavc) _xvid_lavc=yes ;; + --disable-xvid-lavc) _xvid_lavc=no ;; --enable-x264) _x264=yes ;; --disable-x264) _x264=no ;; + --enable-x264-lavc) _x264_lavc=yes ;; + --disable-x264-lavc) _x264_lavc=no ;; --enable-libnut) _libnut=yes ;; --disable-libnut) _libnut=no ;; --enable-libavutil_a) _libavutil_a=yes ;; @@ -6028,20 +6044,21 @@ EOF fi if test "$_faac" = yes ; then _def_faac="#define HAVE_FAAC 1" - if echo $_libavencoders | grep -q FAAC ; then - _faac_lavc=yes + test "$_faac_lavc" = auto && _faac_lavc=yes + if test "$_faac_lavc" = yes ; then _def_faac_lavc="#define CONFIG_LIBFAAC 1" _libs_mplayer="$_libs_mplayer $_ld_faac" - else - _faac_lavc=no - _def_faac_lavc="#undef CONFIG_LIBFAAC" + _libavencoders="$_libavencoders LIBFAAC_ENCODER" fi _codecmodules="faac $_codecmodules" else + _faac_lavc=no _def_faac="#undef HAVE_FAAC" + _def_faac_lavc="#undef CONFIG_LIBFAAC" _nocodecmodules="faac $_nocodecmodules" fi -echores "$_faac (in libavcodec: $_faac_lavc)" +_res_comment="in libavcodec: $_faac_lavc" +echores "$_faac" echocheck "FAAD2 (AAC) support" @@ -6546,14 +6563,15 @@ else fi echores "$_xvid" -if test "$_xvid" = yes ; then - echocheck "XviD two pass plugin" +echocheck "XviD two pass plugin" +if test "$_xvid" = yes && test "$_xvid_lavc" = auto ; then cat > $TMPC << EOF #include int main(void) { xvid_plugin_2pass2_t s; s.vbv_size=0; return 0; } EOF - if cc_check ; then - _xvid_lavc=yes + cc_check && _xvid_lavc=yes +fi + if test "$_xvid_lavc" = yes ; then _def_xvid_lavc='#define CONFIG_LIBXVID 1' _libavencoders="$_libavencoders LIBXVID_ENCODER" else @@ -6561,7 +6579,6 @@ EOF _def_xvid_lavc='#undef CONFIG_LIBXVID' fi echores "$_xvid_lavc" -fi echocheck "x264" @@ -6583,14 +6600,19 @@ fi if test "$_x264" = yes ; then _def_x264='#define HAVE_X264 1' _codecmodules="x264 $_codecmodules" + test "$_x264_lavc" = auto && _x264_lavc=yes + if test "$_x264_lavc" = yes ; then _def_x264_lavc='#define CONFIG_LIBX264 1' _libs_mplayer="$_libs_mplayer $_ld_x264" _libavencoders="$_libavencoders LIBX264_ENCODER" + fi else + _x264_lavc=no _def_x264='#undef HAVE_X264' _def_x264_lavc='#undef CONFIG_LIBX264' _nocodecmodules="x264 $_nocodecmodules" fi +_res_comment="in libavcodec: $_x264_lavc" echores "$_x264" @@ -6672,18 +6694,18 @@ EOF int main(void) { lame_set_preset(NULL, MEDIUM_FAST); return 0; } EOF cc_check $_ld_mp3lame $_ld_lm && _def_mp3lame_preset_medium="#define HAVE_MP3LAME_PRESET_MEDIUM" - if echo $_libavencoders | grep -q MP3LAME ; then - _mp3lame_lavc=yes + test "$_mp3lame_lavc" = auto && _mp3lame_lavc=yes + if test "$_mp3lame_lavc" = yes ; then _def_mp3lame_lavc="#define CONFIG_LIBMP3LAME 1" _libavencoders="$_libavencoders LIBMP3LAME_ENCODER" _libs_mplayer="$_libs_mplayer $_ld_mp3lame" - else - _mp3lame_lavc=no - _def_mp3lame_lavc="#undef CONFIG_LIBMP3LAME" fi else + _mp3lame_lavc=no _def_mp3lame='#undef HAVE_MP3LAME' + _def_mp3lame_lavc="#undef CONFIG_LIBMP3LAME" fi +_res_comment="in libavcodec: $_mp3lame_lavc" echores "$_mp3lame" fi @@ -7766,7 +7788,7 @@ CONFIG_LIBAMR_WB=$_libamr_wb CONFIG_LIBFAAC=$_faac_lavc CONFIG_LIBMP3LAME=$_mp3lame_lavc CONFIG_LIBVORBIS=$_libvorbis -CONFIG_LIBX264=$_x264 +CONFIG_LIBX264=$_x264_lavc CONFIG_LIBXVID=$_xvid_lavc CONFIG_MLIB = $_mlib # Prevent building libavcodec/imgresample.c with conflicting symbols