Support new static libavcodec (depends on libavutil).

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@16166 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
al 2005-08-01 20:16:56 +00:00
parent 2d14fdcb3a
commit bd342e463a
6 changed files with 62 additions and 8 deletions

View File

@ -8,6 +8,14 @@ include config.mak
PRG_CFG = codec-cfg
LIBAV_INC =
ifeq ($(CONFIG_LIBAVUTIL),yes)
LIBAV_INC += -I./libavutil
endif
ifeq ($(CONFIG_LIBAVCODEC),yes)
LIBAV_INC += -I./libavcodec
endif
# Do not strip the binaries at installation
ifeq ($(STRIPBINARIES),yes)
INSTALLSTRIP = -s
@ -129,6 +137,7 @@ CFLAGS = $(OPTFLAGS) -I. \
$(SDL_INC) \
$(X11_INC) \
$(XVID_INC) \
$(LIBAV_INC) \
#CFLAGS += -Wall
@ -292,6 +301,9 @@ loader/dshow/libDS_Filter.a:
loader/dmo/libDMO_Filter.a:
$(MAKE) -C loader/dmo
libavutil/libavutil.a:
$(MAKE) -C libavutil LIBPREF=lib LIBSUF=.a
libavcodec/libavcodec.a:
$(MAKE) -C libavcodec LIBPREF=lib LIBSUF=.a

38
configure vendored
View File

@ -5859,6 +5859,13 @@ else
_noinputmodules="live.com $_noinputmodules"
fi
echocheck "FFmpeg libavutil (static)"
if test -d libavutil ; then
_libavutil=yes
else
_libavutil=no
fi
echores "$_libavutil"
echocheck "FFmpeg libavcodec (static)"
if test "$_libavcodec" = auto ; then
@ -5866,8 +5873,26 @@ if test "$_libavcodec" = auto ; then
_libavcodec=no
if test -d libavcodec && test -f libavcodec/utils.c ; then
if grep avcodec_find_encoder_by_name libavcodec/utils.c > /dev/null 2>&1 ; then
_libavcodec=yes
echores "yes"
# check if libavutil is a required
cat > $TMPC << EOF
#include "libavcodec/avcodec.h"
#if LIBAVCODEC_BUILD >= 3211265
#error We need libavutil!
#endif
int main(void) { return 0; }
EOF
if cc_check -I. -I./libavutil; then
_libavutil_required="no"
else
_libavutil_required="yes"
fi
if test "$_libavutil_required" != "$_libavutil"; then
_libavcodec="no (libavutil availability does not fit libavcodec version)"
else
_libavcodec="yes"
fi
echores $_libavcodec
else
echores "no (old ffmpeg version, use CVS !)"
fi
@ -5930,6 +5955,10 @@ if test "$_libavcodec" = yes ; then
_dep_libavcodec='libavcodec/libavcodec.a'
_def_ffpostprocess='#define FF_POSTPROCESS 1'
_codecmodules="libavcodec $_codecmodules"
if test "$_libavutil" = yes; then
_ld_libavutil='libavutil/libavutil.a'
_dep_libavutil='libavutil/libavutil.a'
fi
elif test "$_libavcodecso" = yes ; then
_def_libavcodec='#define USE_LIBAVCODEC 1'
_def_libavcodecso='#define USE_LIBAVCODEC_SO 1'
@ -7003,8 +7032,9 @@ W32_DEP = $_dep_win32
W32_LIB = $_ld_win32
DS_DEP = $_dep_dshow
DS_LIB = $_ld_dshow
AV_DEP = $_dep_libavcodec $_dep_libavformat
AV_LIB = $_ld_libavcodec $_ld_libavformat
AV_DEP = $_dep_libavutil $_dep_libavcodec $_dep_libavformat
AV_LIB = $_ld_libavformat $_ld_libavcodec $_ld_libavutil
CONFIG_LIBAVUTIL = $_libavutil_required
CONFIG_LIBAVCODEC = $_libavcodec
CONFIG_LIBAVFORMAT = $_libavformat
ZORAN = $_zr

View File

@ -183,7 +183,12 @@ ifeq ($(CONFIG_MP3LAME),yes)
ENCODER_SRCS += ae_lame.c
endif
LIBAV_INC =
ifeq ($(CONFIG_LIBAVUTIL),yes)
LIBAV_INC += -I../libavutil
endif
ifeq ($(CONFIG_LIBAVCODEC),yes)
LIBAV_INC += -I../libavcodec
ENCODER_SRCS += ae_lavc.c
endif
@ -201,7 +206,7 @@ OBJS=$(SRCS:.c=.o)
SRCS2=$(ENCODER_SRCS)
OBJS2=$(SRCS2:.c=.o)
CFLAGS = $(OPTFLAGS) -I. -Inative -I.. -I../libmpdemux -I../loader $(EXTRA_INC) $(X264_INC) -D_GNU_SOURCE
CFLAGS = $(OPTFLAGS) -I. -Inative -I.. -I../libmpdemux -I../loader $(LIBAV_INC) $(EXTRA_INC) $(X264_INC) -D_GNU_SOURCE
.SUFFIXES: .c .o

View File

@ -28,7 +28,7 @@ LIBAD_EXTERN(ffmpeg)
#ifdef USE_LIBAVCODEC_SO
#include <ffmpeg/avcodec.h>
#else
#include "libavcodec/avcodec.h"
#include "avcodec.h"
#endif
extern int avcodec_inited;

View File

@ -106,8 +106,15 @@ SRCS += muxer.c \
muxer_rawaudio.c \
muxer_rawvideo.c \
LIBAV_INC =
ifeq ($(CONFIG_LIBAVUTIL),yes)
LIBAV_INC += -I../libavutil
endif
ifeq ($(CONFIG_LIBAVCODEC),yes)
LIBAV_INC += -I../libavcodec
endif
ifeq ($(CONFIG_LIBAVFORMAT),yes)
LIBAV_INC = -I../libavcodec -I../libavformat
LIBAV_INC += -I../libavformat
SRCS += muxer_lavf.c
endif

View File

@ -80,7 +80,7 @@
#ifdef USE_LIBAVCODEC_SO
#include <ffmpeg/avcodec.h>
#else
#include "libavcodec/avcodec.h"
#include "avcodec.h"
#endif
#endif