annotate Makefile @ 1799:95612d423fde libavcodec

multithreaded/SMP motion estimation multithreaded/SMP encoding for MPEG1/MPEG2/MPEG4/H263 all pthread specific code is in pthread.c to try it, run configure --enable-pthreads and ffmpeg ... -threads <num> the internal thread API is a simple AVCodecContext.execute() callback which executes a given function pointer with different arguments and returns after finishing all, that way no mutexes or other thread-mess is needed outside pthread.c
author michael
date Fri, 13 Feb 2004 17:54:10 +0000
parents 5e5c3d4a1e82
children 6d762acfff5d
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
395
80518daaab05 added VPATH support for multiple dir compilation
glantau
parents: 356
diff changeset
1 #
80518daaab05 added VPATH support for multiple dir compilation
glantau
parents: 356
diff changeset
2 # libavcodec Makefile
1472
db00afcbd2ac use VC++ lib tool if available
bellard
parents: 1470
diff changeset
3 # (c) 2000-2003 Fabrice Bellard
395
80518daaab05 added VPATH support for multiple dir compilation
glantau
parents: 356
diff changeset
4 #
2
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
5 include ../config.mak
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
6
395
80518daaab05 added VPATH support for multiple dir compilation
glantau
parents: 356
diff changeset
7 VPATH=$(SRC_PATH)/libavcodec
80518daaab05 added VPATH support for multiple dir compilation
glantau
parents: 356
diff changeset
8
429
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
9 # NOTE: -I.. is needed to include config.h
1544
2335dcb71152 - Moving -Wall from the individual Makefiles to configure (and only
michael
parents: 1535
diff changeset
10 CFLAGS=$(OPTFLAGS) -DHAVE_AV_CONFIG_H -I.. -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_GNU_SOURCE
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
11
489
b9fcdf9f4420 added installlib target to install static libraries and includes
bellard
parents: 484
diff changeset
12 OBJS= common.o utils.o mem.o allcodecs.o \
1042
a78f6f72d54e --disable-risky support
michaelni
parents: 1033
diff changeset
13 mpegvideo.o jrevdct.o jfdctfst.o jfdctint.o\
23
1e131bc21101 added MJPEG decoder, renamed mjpegenc.c to mjpeg.c
glantau
parents: 22
diff changeset
14 mpegaudio.o ac3enc.o mjpeg.o resample.o dsputil.o \
1042
a78f6f72d54e --disable-risky support
michaelni
parents: 1033
diff changeset
15 motion_est.o imgconvert.o imgresample.o \
1383
ed8a6c3bc4db compile xvmc only when requested
iive
parents: 1381
diff changeset
16 mpeg12.o mpegaudiodec.o pcm.o simple_idct.o \
784
32636728f24b added new fft/mdct code - added fft-test program
bellard
parents: 745
diff changeset
17 ratecontrol.o adpcm.o eval.o dv.o error_resilience.o \
1224
3fa9a3de913f first pass at a new VP3 video decoder
tmmm
parents: 1194
diff changeset
18 fft.o mdct.o mace.o huffyuv.o cyuv.o opts.o raw.o h264.o golomb.o \
1439
a4d00b1f0271 initial commit for Id RoQ and Interplay MVE multimedia subsystems
tmmm
parents: 1400
diff changeset
19 vp3.o asv1.o 4xm.o cabac.o ffv1.o ra144.o ra288.o vcr1.o cljr.o \
1491
222643544cf1 New demuxers: Sega FILM/CPK, Westwood VQA & AUD; new decoders: MS RLE &
tmmm
parents: 1487
diff changeset
20 roqvideo.o dpcm.o interplayvideo.o xan.o rpza.o cinepak.o msrle.o \
1610
b0fe2a0adf49 added Apple Graphics (SMC) decoder
melanson
parents: 1608
diff changeset
21 msvideo1.o vqavideo.o idcinvideo.o adx.o rational.o faandct.o 8bps.o \
1791
5e5c3d4a1e82 * Initial implementation of the G.726 ADPCM audio codec.
romansh
parents: 1783
diff changeset
22 smc.o parser.o flicvideo.o truemotion1.o vmdav.o lcl.o qtrle.o g726.o
1258
802614404398 AMR-NB audio support patch by (<joca at rixmail dot se>)
michaelni
parents: 1247
diff changeset
23
802614404398 AMR-NB audio support patch by (<joca at rixmail dot se>)
michaelni
parents: 1247
diff changeset
24 ifeq ($(AMR_NB),yes)
1297
1db67cd7808a * 3gp patch by Joca
kabi
parents: 1293
diff changeset
25 ifeq ($(AMR_NB_FIXED),yes)
1258
802614404398 AMR-NB audio support patch by (<joca at rixmail dot se>)
michaelni
parents: 1247
diff changeset
26 OBJS+= amr.o
1297
1db67cd7808a * 3gp patch by Joca
kabi
parents: 1293
diff changeset
27 AMREXTRALIBS+= amr/*.o
1db67cd7808a * 3gp patch by Joca
kabi
parents: 1293
diff changeset
28 AMRLIBS=amrlibs
1db67cd7808a * 3gp patch by Joca
kabi
parents: 1293
diff changeset
29 CLEANAMR=cleanamr
1db67cd7808a * 3gp patch by Joca
kabi
parents: 1293
diff changeset
30 else
1db67cd7808a * 3gp patch by Joca
kabi
parents: 1293
diff changeset
31 OBJS+= amr.o amr_float/sp_dec.o amr_float/sp_enc.o amr_float/interf_dec.o amr_float/interf_enc.o
1db67cd7808a * 3gp patch by Joca
kabi
parents: 1293
diff changeset
32 CLEANAMR=cleanamrfloat
1db67cd7808a * 3gp patch by Joca
kabi
parents: 1293
diff changeset
33 endif
1258
802614404398 AMR-NB audio support patch by (<joca at rixmail dot se>)
michaelni
parents: 1247
diff changeset
34 endif
802614404398 AMR-NB audio support patch by (<joca at rixmail dot se>)
michaelni
parents: 1247
diff changeset
35
1799
95612d423fde multithreaded/SMP motion estimation
michael
parents: 1791
diff changeset
36 ifeq ($(HAVE_PTHREADS),yes)
95612d423fde multithreaded/SMP motion estimation
michael
parents: 1791
diff changeset
37 OBJS+= pthread.o
95612d423fde multithreaded/SMP motion estimation
michael
parents: 1791
diff changeset
38 endif
95612d423fde multithreaded/SMP motion estimation
michael
parents: 1791
diff changeset
39
1486
f22010affdce AMR-WB support by (Johannes Carlsson <joca at rixmail dot se>)
michaelni
parents: 1472
diff changeset
40 ifeq ($(AMR_WB),yes)
f22010affdce AMR-WB support by (Johannes Carlsson <joca at rixmail dot se>)
michaelni
parents: 1472
diff changeset
41 OBJS+= amr.o amrwb_float/dec_acelp.o amrwb_float/dec_dtx.o amrwb_float/dec_gain.o \
f22010affdce AMR-WB support by (Johannes Carlsson <joca at rixmail dot se>)
michaelni
parents: 1472
diff changeset
42 amrwb_float/dec_if.o amrwb_float/dec_lpc.o amrwb_float/dec_main.o \
f22010affdce AMR-WB support by (Johannes Carlsson <joca at rixmail dot se>)
michaelni
parents: 1472
diff changeset
43 amrwb_float/dec_rom.o amrwb_float/dec_util.o amrwb_float/enc_acelp.o \
f22010affdce AMR-WB support by (Johannes Carlsson <joca at rixmail dot se>)
michaelni
parents: 1472
diff changeset
44 amrwb_float/enc_dtx.o amrwb_float/enc_gain.o amrwb_float/enc_if.o \
f22010affdce AMR-WB support by (Johannes Carlsson <joca at rixmail dot se>)
michaelni
parents: 1472
diff changeset
45 amrwb_float/enc_lpc.o amrwb_float/enc_main.o amrwb_float/enc_rom.o \
f22010affdce AMR-WB support by (Johannes Carlsson <joca at rixmail dot se>)
michaelni
parents: 1472
diff changeset
46 amrwb_float/enc_util.o amrwb_float/if_rom.o
f22010affdce AMR-WB support by (Johannes Carlsson <joca at rixmail dot se>)
michaelni
parents: 1472
diff changeset
47 endif
f22010affdce AMR-WB support by (Johannes Carlsson <joca at rixmail dot se>)
michaelni
parents: 1472
diff changeset
48 CLEANAMRWB=cleanamrwbfloat
2
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
49 ASM_OBJS=
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
50
1042
a78f6f72d54e --disable-risky support
michaelni
parents: 1033
diff changeset
51 # codecs which are patented in some non free countries like the us
a78f6f72d54e --disable-risky support
michaelni
parents: 1033
diff changeset
52 ifeq ($(CONFIG_RISKY),yes)
1190
60bd91a6e218 native Indeo3 decoder implementation
tmmm
parents: 1168
diff changeset
53 OBJS+= h263.o msmpeg4.o h263dec.o svq1.o rv10.o wmadec.o indeo3.o
1042
a78f6f72d54e --disable-risky support
michaelni
parents: 1033
diff changeset
54 endif
a78f6f72d54e --disable-risky support
michaelni
parents: 1033
diff changeset
55
1383
ed8a6c3bc4db compile xvmc only when requested
iive
parents: 1381
diff changeset
56 ifeq ($(HAVE_XVMC_ACCEL),yes)
ed8a6c3bc4db compile xvmc only when requested
iive
parents: 1381
diff changeset
57 OBJS+= xvmcvideo.o
ed8a6c3bc4db compile xvmc only when requested
iive
parents: 1381
diff changeset
58 endif
ed8a6c3bc4db compile xvmc only when requested
iive
parents: 1381
diff changeset
59
338
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
60 # currently using liba52 for ac3 decoding
3
1bdbd869c1f0 added CONFIG_AC3, CONFIG_MPGLIB, CONFIG_DECODERS and CONFIG_ENCODERS (Arpi: don't forget to put CONFIG_DECODERS in mplayer)
glantau
parents: 2
diff changeset
61 ifeq ($(CONFIG_AC3),yes)
338
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
62 OBJS+= a52dec.o
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
63
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
64 # using builtin liba52 or runtime linked liba52.so.0
429
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
65 ifneq ($(CONFIG_A52BIN),yes)
338
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
66 OBJS+= liba52/bit_allocate.o liba52/bitstream.o liba52/downmix.o \
1194
432d9a42a244 Compile a52 util functions too
arpi_esp
parents: 1190
diff changeset
67 liba52/imdct.o liba52/parse.o liba52/crc.o liba52/resample.o
3
1bdbd869c1f0 added CONFIG_AC3, CONFIG_MPGLIB, CONFIG_DECODERS and CONFIG_ENCODERS (Arpi: don't forget to put CONFIG_DECODERS in mplayer)
glantau
parents: 2
diff changeset
68 endif
429
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
69 endif
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
70
1245
cd88870c4560 * support for AAC audio streams via libfaad
kabi
parents: 1224
diff changeset
71 ifeq ($(CONFIG_FAAD),yes)
cd88870c4560 * support for AAC audio streams via libfaad
kabi
parents: 1224
diff changeset
72 OBJS+= faad.o
1247
26827e6ae6dd * link libfaad when needed
kabi
parents: 1245
diff changeset
73 ifeq ($(CONFIG_FAADBIN),yes)
26827e6ae6dd * link libfaad when needed
kabi
parents: 1245
diff changeset
74 # no libs needed
26827e6ae6dd * link libfaad when needed
kabi
parents: 1245
diff changeset
75 else
26827e6ae6dd * link libfaad when needed
kabi
parents: 1245
diff changeset
76 EXTRALIBS += -lfaad
26827e6ae6dd * link libfaad when needed
kabi
parents: 1245
diff changeset
77 endif
1245
cd88870c4560 * support for AAC audio streams via libfaad
kabi
parents: 1224
diff changeset
78 endif
cd88870c4560 * support for AAC audio streams via libfaad
kabi
parents: 1224
diff changeset
79
1500
726a81d83ddd Patch for AAC encoding with libfaac by (Gildas Bazin <gbazin at altern dot org>)
michaelni
parents: 1498
diff changeset
80 ifeq ($(CONFIG_FAAC),yes)
726a81d83ddd Patch for AAC encoding with libfaac by (Gildas Bazin <gbazin at altern dot org>)
michaelni
parents: 1498
diff changeset
81 OBJS+= faac.o
726a81d83ddd Patch for AAC encoding with libfaac by (Gildas Bazin <gbazin at altern dot org>)
michaelni
parents: 1498
diff changeset
82 EXTRALIBS += -lfaac
726a81d83ddd Patch for AAC encoding with libfaac by (Gildas Bazin <gbazin at altern dot org>)
michaelni
parents: 1498
diff changeset
83 endif
726a81d83ddd Patch for AAC encoding with libfaac by (Gildas Bazin <gbazin at altern dot org>)
michaelni
parents: 1498
diff changeset
84
1069
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents: 1060
diff changeset
85 ifeq ($(CONFIG_PP),yes)
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents: 1060
diff changeset
86 ifeq ($(SHARED_PP),yes)
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents: 1060
diff changeset
87 EXTRALIBS += -lpostproc
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents: 1060
diff changeset
88 else
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents: 1060
diff changeset
89 # LIBS += libpostproc/libpostproc.a ... should be fixed
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents: 1060
diff changeset
90 OBJS += libpostproc/postprocess.o
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents: 1060
diff changeset
91 endif
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents: 1060
diff changeset
92 endif
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents: 1060
diff changeset
93
258
9c975237ec64 - Added MP3 encoding through libmp3lame contributed by Lennert Buytenhek.
pulento
parents: 252
diff changeset
94 ifeq ($(CONFIG_MP3LAME),yes)
9c975237ec64 - Added MP3 encoding through libmp3lame contributed by Lennert Buytenhek.
pulento
parents: 252
diff changeset
95 OBJS += mp3lameaudio.o
348
ae9e9af0b627 * by Thomas Sailer:
kabi
parents: 343
diff changeset
96 EXTRALIBS += -lmp3lame
258
9c975237ec64 - Added MP3 encoding through libmp3lame contributed by Lennert Buytenhek.
pulento
parents: 252
diff changeset
97 endif
9c975237ec64 - Added MP3 encoding through libmp3lame contributed by Lennert Buytenhek.
pulento
parents: 252
diff changeset
98
636
57b9a37546a0 oggvorbis support patch by (Mark Hills <mark at pogo dot org dot uk>)
michaelni
parents: 633
diff changeset
99 ifeq ($(CONFIG_VORBIS),yes)
57b9a37546a0 oggvorbis support patch by (Mark Hills <mark at pogo dot org dot uk>)
michaelni
parents: 633
diff changeset
100 OBJS += oggvorbis.o
57b9a37546a0 oggvorbis support patch by (Mark Hills <mark at pogo dot org dot uk>)
michaelni
parents: 633
diff changeset
101 EXTRALIBS += -lvorbis -lvorbisenc
57b9a37546a0 oggvorbis support patch by (Mark Hills <mark at pogo dot org dot uk>)
michaelni
parents: 633
diff changeset
102 endif
57b9a37546a0 oggvorbis support patch by (Mark Hills <mark at pogo dot org dot uk>)
michaelni
parents: 633
diff changeset
103
252
ddb1a0e94cf4 - Added PSNR feature to libavcodec and ffmpeg. By now just Y PSNR until I'm
pulento
parents: 214
diff changeset
104 ifeq ($(TARGET_GPROF),yes)
ddb1a0e94cf4 - Added PSNR feature to libavcodec and ffmpeg. By now just Y PSNR until I'm
pulento
parents: 214
diff changeset
105 CFLAGS+=-p
ddb1a0e94cf4 - Added PSNR feature to libavcodec and ffmpeg. By now just Y PSNR until I'm
pulento
parents: 214
diff changeset
106 LDFLAGS+=-p
ddb1a0e94cf4 - Added PSNR feature to libavcodec and ffmpeg. By now just Y PSNR until I'm
pulento
parents: 214
diff changeset
107 endif
ddb1a0e94cf4 - Added PSNR feature to libavcodec and ffmpeg. By now just Y PSNR until I'm
pulento
parents: 214
diff changeset
108
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
109 # i386 mmx specific stuff
2
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
110 ifeq ($(TARGET_MMX),yes)
74
d7603c46c52f suppressed nasm stuff
glantau
parents: 62
diff changeset
111 OBJS += i386/fdct_mmx.o i386/cputest.o \
32
a524484f9adf added idct mmx
glantau
parents: 23
diff changeset
112 i386/dsputil_mmx.o i386/mpegvideo_mmx.o \
338
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
113 i386/idct_mmx.o i386/motion_est_mmx.o \
973
e2c119417470 enabled SSE fft (first code using GCC 3.2 vector builtins on x86 - please tell me if you have better ideas for intrinsic naming or Makefile support)
bellard
parents: 866
diff changeset
114 i386/simple_idct_mmx.o i386/fft_sse.o
1027
a0a7149be543 fixed dependancy generation (I want the case where SRC_PATH is not . to work too - very useful if you have different gcc versions to test at the same time...) - fixed -msse stuff
bellard
parents: 1010
diff changeset
115 ifdef TARGET_BUILTIN_VECTOR
a0a7149be543 fixed dependancy generation (I want the case where SRC_PATH is not . to work too - very useful if you have different gcc versions to test at the same time...) - fixed -msse stuff
bellard
parents: 1010
diff changeset
116 i386/fft_sse.o: CFLAGS+= -msse
a0a7149be543 fixed dependancy generation (I want the case where SRC_PATH is not . to work too - very useful if you have different gcc versions to test at the same time...) - fixed -msse stuff
bellard
parents: 1010
diff changeset
117 endif
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
118 endif
986e461dc072 Initial revision
glantau
parents:
diff changeset
119
62
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
120 # armv4l specific stuff
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
121 ifeq ($(TARGET_ARCH_ARMV4L),yes)
1347
cca26199ab17 Optimized simple idct for arm by Frederic 'dilb' Boulay <dilb@handhelds.org>. Currently licensed under the GPLv2, but the author allowed to license it under the LGPL, feel free to change
al3x
parents: 1304
diff changeset
122 ASM_OBJS += armv4l/jrevdct_arm.o armv4l/simple_idct_arm.o
730
b24ea84b23e2 trying to fix the non-x86 IDCTs (untested)
michaelni
parents: 727
diff changeset
123 OBJS += armv4l/dsputil_arm.o armv4l/mpegvideo_arm.o
62
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
124 endif
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
125
88
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
126 # sun mediaLib specific stuff
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
127 # currently only works when libavcodec is used in mplayer
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
128 ifeq ($(HAVE_MLIB),yes)
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
129 OBJS += mlib/dsputil_mlib.o
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
130 CFLAGS += $(MLIB_INC)
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
131 endif
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
132
214
73df666cacc7 Alpha optimizations by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
nickols_k
parents: 174
diff changeset
133 # alpha specific stuff
73df666cacc7 Alpha optimizations by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
nickols_k
parents: 174
diff changeset
134 ifeq ($(TARGET_ARCH_ALPHA),yes)
744
2f7da29ede37 Move Alpha optimized IDCT to own file. Based on a patch by M«©ns
mellum
parents: 730
diff changeset
135 OBJS += alpha/dsputil_alpha.o alpha/mpegvideo_alpha.o \
2f7da29ede37 Move Alpha optimized IDCT to own file. Based on a patch by M«©ns
mellum
parents: 730
diff changeset
136 alpha/simple_idct_alpha.o alpha/motion_est_alpha.o
705
107a56aa74f5 Add Alpha assembly for pix_abs16x16. Optimized for pca56, no large win
mellum
parents: 689
diff changeset
137 ASM_OBJS += alpha/dsputil_alpha_asm.o alpha/motion_est_mvi_asm.o
683
aad2dedb8b6a * Remove -finline-limit=8000 (not supported by gcc 2.95)
mellum
parents: 645
diff changeset
138 CFLAGS += -fforce-addr -freduce-all-givs
214
73df666cacc7 Alpha optimizations by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
nickols_k
parents: 174
diff changeset
139 endif
73df666cacc7 Alpha optimizations by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
nickols_k
parents: 174
diff changeset
140
623
92e99e506920 first cut at altivec support on darwin patch by (Brian Foley <bfoley at compsoc dot nuigalway dot ie>)
michaelni
parents: 612
diff changeset
141 ifeq ($(TARGET_ARCH_POWERPC),yes)
828
ace3ccd18dd2 Altivec Patch (Mark III) by (Dieter Shirley <dieters at schemasoft dot com>)
michaelni
parents: 827
diff changeset
142 OBJS += ppc/dsputil_ppc.o ppc/mpegvideo_ppc.o
638
0012f75c92bb altivec build tidyup patch by (Brian Foley <bfoley at compsoc dot nuigalway dot ie>)
michaelni
parents: 636
diff changeset
143 endif
0012f75c92bb altivec build tidyup patch by (Brian Foley <bfoley at compsoc dot nuigalway dot ie>)
michaelni
parents: 636
diff changeset
144
689
efcbfbd18864 ps2 idct patch by (Leon van Stuivenberg <leonvs at iae dot nl>)
michaelni
parents: 683
diff changeset
145 ifeq ($(TARGET_MMI),yes)
721
71f669e9f633 ps2 optimizations update patch by (Leon van Stuivenberg <leonvs at iae dot nl>)
michaelni
parents: 705
diff changeset
146 OBJS += ps2/dsputil_mmi.o ps2/idct_mmi.o ps2/mpegvideo_mmi.o
689
efcbfbd18864 ps2 idct patch by (Leon van Stuivenberg <leonvs at iae dot nl>)
michaelni
parents: 683
diff changeset
147 endif
efcbfbd18864 ps2 idct patch by (Leon van Stuivenberg <leonvs at iae dot nl>)
michaelni
parents: 683
diff changeset
148
638
0012f75c92bb altivec build tidyup patch by (Brian Foley <bfoley at compsoc dot nuigalway dot ie>)
michaelni
parents: 636
diff changeset
149 ifeq ($(TARGET_ALTIVEC),yes)
975
e05d525505c5 fft altivec by Romain Dolbeau - simplified patch, test it on PPC with fft-test and wma decoding
bellard
parents: 973
diff changeset
150 OBJS += ppc/dsputil_altivec.o ppc/mpegvideo_altivec.o ppc/idct_altivec.o \
1578
6a4cfc5f9f96 AltiVec optimized fdct patch by (James Klicman <james at klicman dot org>)
michael
parents: 1568
diff changeset
151 ppc/fft_altivec.o ppc/gmc_altivec.o ppc/fdct_altivec.o
623
92e99e506920 first cut at altivec support on darwin patch by (Brian Foley <bfoley at compsoc dot nuigalway dot ie>)
michaelni
parents: 612
diff changeset
152 endif
92e99e506920 first cut at altivec support on darwin patch by (Brian Foley <bfoley at compsoc dot nuigalway dot ie>)
michaelni
parents: 612
diff changeset
153
1259
e8c3884f2c7e sh4 optimized idct & bswap patch by (BERO <bero at geocities dot co dot jp>)
michaelni
parents: 1258
diff changeset
154 ifeq ($(TARGET_ARCH_SH4),yes)
e8c3884f2c7e sh4 optimized idct & bswap patch by (BERO <bero at geocities dot co dot jp>)
michaelni
parents: 1258
diff changeset
155 OBJS+= sh4/idct_sh4.o sh4/dsputil_sh4.o sh4/dsputil_align.o
e8c3884f2c7e sh4 optimized idct & bswap patch by (BERO <bero at geocities dot co dot jp>)
michaelni
parents: 1258
diff changeset
156 endif
e8c3884f2c7e sh4 optimized idct & bswap patch by (BERO <bero at geocities dot co dot jp>)
michaelni
parents: 1258
diff changeset
157
e8c3884f2c7e sh4 optimized idct & bswap patch by (BERO <bero at geocities dot co dot jp>)
michaelni
parents: 1258
diff changeset
158
509
cab79946302f Implement put_pixels_clamped and add_pixels_clamped in Assembler. This
mellum
parents: 489
diff changeset
159 SRCS := $(OBJS:.o=.c) $(ASM_OBJS:.o=.S)
429
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
160 OBJS := $(OBJS) $(ASM_OBJS)
2
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
161
994
7701ff462e3a os2 support patch by ("Slavik Gnatenko" <miracle9 at newmail dot ru>)
michaelni
parents: 979
diff changeset
162 LIB= $(LIBPREF)avcodec$(LIBSUF)
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
163 ifeq ($(BUILD_SHARED),yes)
994
7701ff462e3a os2 support patch by ("Slavik Gnatenko" <miracle9 at newmail dot ru>)
michaelni
parents: 979
diff changeset
164 SLIB= $(SLIBPREF)avcodec$(SLIBSUF)
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
165 endif
784
32636728f24b added new fft/mdct code - added fft-test program
bellard
parents: 745
diff changeset
166 TESTS= imgresample-test dct-test motion-test fft-test
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
167
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
168 all: $(LIB) $(SLIB)
429
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
169
1297
1db67cd7808a * 3gp patch by Joca
kabi
parents: 1293
diff changeset
170 amrlibs:
1db67cd7808a * 3gp patch by Joca
kabi
parents: 1293
diff changeset
171 $(MAKE) -C amr spclib fipoplib
1db67cd7808a * 3gp patch by Joca
kabi
parents: 1293
diff changeset
172
43
ab64a3fc62bf Portability and testing issues
nickols_k
parents: 32
diff changeset
173 tests: apiexample cpuid_test $(TESTS)
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
174
1297
1db67cd7808a * 3gp patch by Joca
kabi
parents: 1293
diff changeset
175 $(LIB): $(OBJS) $(AMRLIBS)
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
176 rm -f $@
1297
1db67cd7808a * 3gp patch by Joca
kabi
parents: 1293
diff changeset
177 $(AR) rc $@ $(OBJS) $(AMREXTRALIBS)
640
d2f47c6c6b41 ar -s -> ranlib
michaelni
parents: 638
diff changeset
178 $(RANLIB) $@
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
179
1046
a717c451cf1b dependencies are only build with make depend
bellard
parents: 1042
diff changeset
180 $(SLIB): $(OBJS)
1472
db00afcbd2ac use VC++ lib tool if available
bellard
parents: 1470
diff changeset
181 ifeq ($(CONFIG_WIN32),yes)
db00afcbd2ac use VC++ lib tool if available
bellard
parents: 1470
diff changeset
182 $(CC) $(SHFLAGS) -Wl,--output-def,$(@:.dll=.def) -o $@ $(OBJS) $(EXTRALIBS) $(AMREXTRALIBS)
db00afcbd2ac use VC++ lib tool if available
bellard
parents: 1470
diff changeset
183 -lib /machine:i386 /def:$(@:.dll=.def)
db00afcbd2ac use VC++ lib tool if available
bellard
parents: 1470
diff changeset
184 else
1297
1db67cd7808a * 3gp patch by Joca
kabi
parents: 1293
diff changeset
185 $(CC) $(SHFLAGS) -o $@ $(OBJS) $(EXTRALIBS) $(AMREXTRALIBS)
1472
db00afcbd2ac use VC++ lib tool if available
bellard
parents: 1470
diff changeset
186 endif
429
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
187
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
188 dsputil.o: dsputil.c dsputil.h
986e461dc072 Initial revision
glantau
parents:
diff changeset
189
1069
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents: 1060
diff changeset
190 libpostproc/libpostproc.a:
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents: 1060
diff changeset
191 $(MAKE) -C libpostproc
8528d0b9e508 moving postprocess to ffmpeg/libavcodec
michaelni
parents: 1060
diff changeset
192
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
193 %.o: %.c
986e461dc072 Initial revision
glantau
parents:
diff changeset
194 $(CC) $(CFLAGS) -c -o $@ $<
986e461dc072 Initial revision
glantau
parents:
diff changeset
195
62
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
196 %.o: %.S
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
197 $(CC) $(CFLAGS) -c -o $@ $<
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
198
1046
a717c451cf1b dependencies are only build with make depend
bellard
parents: 1042
diff changeset
199 depend: $(SRCS)
1027
a0a7149be543 fixed dependancy generation (I want the case where SRC_PATH is not . to work too - very useful if you have different gcc versions to test at the same time...) - fixed -msse stuff
bellard
parents: 1010
diff changeset
200 $(CC) -MM $(CFLAGS) $^ 1>.depend
1010
3c110cba4b29 - removed nonsense *.d dependancy stuff, there was already a better 'make dep' support in it
arpi_esp
parents: 1005
diff changeset
201
2
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
202 dep: depend
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
203
1297
1db67cd7808a * 3gp patch by Joca
kabi
parents: 1293
diff changeset
204 clean: $(CLEANAMR)
1005
c331a07c0be2 AUtomatic dependency generation. Runs on Linux (at least). Probably should
philipjsg
parents: 995
diff changeset
205 rm -f *.o *.d *~ .depend $(LIB) $(SLIB) *.so i386/*.o i386/*~ \
62
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
206 armv4l/*.o armv4l/*~ \
88
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
207 mlib/*.o mlib/*~ \
214
73df666cacc7 Alpha optimizations by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
nickols_k
parents: 174
diff changeset
208 alpha/*.o alpha/*~ \
623
92e99e506920 first cut at altivec support on darwin patch by (Brian Foley <bfoley at compsoc dot nuigalway dot ie>)
michaelni
parents: 612
diff changeset
209 ppc/*.o ppc/*~ \
689
efcbfbd18864 ps2 idct patch by (Leon van Stuivenberg <leonvs at iae dot nl>)
michaelni
parents: 683
diff changeset
210 ps2/*.o ps2/*~ \
1259
e8c3884f2c7e sh4 optimized idct & bswap patch by (BERO <bero at geocities dot co dot jp>)
michaelni
parents: 1258
diff changeset
211 sh4/*.o sh4/*~ \
338
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
212 liba52/*.o liba52/*~ \
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
213 apiexample $(TESTS)
1074
d90c350454da * using $(MAKE)
kabi
parents: 1071
diff changeset
214 $(MAKE) -C libpostproc clean
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
215
484
f8bbc8976247 in libavcodec/Makefile there is in line 110: "distclean: clean<binary char>"
arpi_esp
parents: 429
diff changeset
216 distclean: clean
2
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
217 rm -f Makefile.bak .depend
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
218
1297
1db67cd7808a * 3gp patch by Joca
kabi
parents: 1293
diff changeset
219 cleanamr:
1db67cd7808a * 3gp patch by Joca
kabi
parents: 1293
diff changeset
220 $(MAKE) -C amr clean
1db67cd7808a * 3gp patch by Joca
kabi
parents: 1293
diff changeset
221
1db67cd7808a * 3gp patch by Joca
kabi
parents: 1293
diff changeset
222 cleanamrfloat:
1db67cd7808a * 3gp patch by Joca
kabi
parents: 1293
diff changeset
223 rm -f amr_float/*.o
1db67cd7808a * 3gp patch by Joca
kabi
parents: 1293
diff changeset
224
1486
f22010affdce AMR-WB support by (Johannes Carlsson <joca at rixmail dot se>)
michaelni
parents: 1472
diff changeset
225 cleanamrwbfloat:
f22010affdce AMR-WB support by (Johannes Carlsson <joca at rixmail dot se>)
michaelni
parents: 1472
diff changeset
226 $(MAKE) -C amrwb_float -f makefile.gcc clean
f22010affdce AMR-WB support by (Johannes Carlsson <joca at rixmail dot se>)
michaelni
parents: 1472
diff changeset
227
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
228 # api example program
986e461dc072 Initial revision
glantau
parents:
diff changeset
229 apiexample: apiexample.c $(LIB)
645
f53e17dec13f apiexample needs EXTRALIBS
michaelni
parents: 644
diff changeset
230 $(CC) $(CFLAGS) -o $@ $< $(LIB) $(EXTRALIBS) -lm
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
231
43
ab64a3fc62bf Portability and testing issues
nickols_k
parents: 32
diff changeset
232 # cpuid test
ab64a3fc62bf Portability and testing issues
nickols_k
parents: 32
diff changeset
233 cpuid_test: i386/cputest.c
ab64a3fc62bf Portability and testing issues
nickols_k
parents: 32
diff changeset
234 $(CC) $(CFLAGS) -D__TEST__ -o $@ $<
ab64a3fc62bf Portability and testing issues
nickols_k
parents: 32
diff changeset
235
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
236 # testing progs
986e461dc072 Initial revision
glantau
parents:
diff changeset
237
986e461dc072 Initial revision
glantau
parents:
diff changeset
238 imgresample-test: imgresample.c
644
641708b5c33c fixing tests
michaelni
parents: 640
diff changeset
239 $(CC) $(CFLAGS) -DTEST -o $@ $^ -lm
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
240
979
979f3cbd08a2 tests link all libavcodec
bellard
parents: 975
diff changeset
241 dct-test: dct-test.o fdctref.o $(LIB)
607
5762b2d659d2 darwin patches by Heliodoro Tammaro <helio at interactives dot org>
michaelni
parents: 603
diff changeset
242 $(CC) -o $@ $^ -lm
3
1bdbd869c1f0 added CONFIG_AC3, CONFIG_MPGLIB, CONFIG_DECODERS and CONFIG_ENCODERS (Arpi: don't forget to put CONFIG_DECODERS in mplayer)
glantau
parents: 2
diff changeset
243
74
d7603c46c52f suppressed nasm stuff
glantau
parents: 62
diff changeset
244 motion-test: motion_test.o $(LIB)
644
641708b5c33c fixing tests
michaelni
parents: 640
diff changeset
245 $(CC) -o $@ $^ -lm
74
d7603c46c52f suppressed nasm stuff
glantau
parents: 62
diff changeset
246
973
e2c119417470 enabled SSE fft (first code using GCC 3.2 vector builtins on x86 - please tell me if you have better ideas for intrinsic naming or Makefile support)
bellard
parents: 866
diff changeset
247 fft-test: fft-test.o $(LIB)
784
32636728f24b added new fft/mdct code - added fft-test program
bellard
parents: 745
diff changeset
248 $(CC) -o $@ $^ -lm
32636728f24b added new fft/mdct code - added fft-test program
bellard
parents: 745
diff changeset
249
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
250 ifeq ($(BUILD_SHARED),yes)
1470
dc1aebe51742 correct DLL windows install
bellard
parents: 1465
diff changeset
251 install: all install-headers
dc1aebe51742 correct DLL windows install
bellard
parents: 1465
diff changeset
252 ifeq ($(CONFIG_WIN32),yes)
dc1aebe51742 correct DLL windows install
bellard
parents: 1465
diff changeset
253 install -s -m 755 $(SLIB) "$(prefix)"
dc1aebe51742 correct DLL windows install
bellard
parents: 1465
diff changeset
254 else
603
442dede8795b patch by (Volker Moell <volker-ml at die-moells dot de>)
michaelni
parents: 586
diff changeset
255 install -d $(prefix)/lib
429
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
256 install -s -m 755 $(SLIB) $(prefix)/lib/libavcodec-$(VERSION).so
603
442dede8795b patch by (Volker Moell <volker-ml at die-moells dot de>)
michaelni
parents: 586
diff changeset
257 ln -sf libavcodec-$(VERSION).so $(prefix)/lib/libavcodec.so
442dede8795b patch by (Volker Moell <volker-ml at die-moells dot de>)
michaelni
parents: 586
diff changeset
258 ldconfig || true
1470
dc1aebe51742 correct DLL windows install
bellard
parents: 1465
diff changeset
259 endif
dc1aebe51742 correct DLL windows install
bellard
parents: 1465
diff changeset
260 else
dc1aebe51742 correct DLL windows install
bellard
parents: 1465
diff changeset
261 install:
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
262 endif
489
b9fcdf9f4420 added installlib target to install static libraries and includes
bellard
parents: 484
diff changeset
263
1470
dc1aebe51742 correct DLL windows install
bellard
parents: 1465
diff changeset
264 installlib: all install-headers
489
b9fcdf9f4420 added installlib target to install static libraries and includes
bellard
parents: 484
diff changeset
265 install -m 644 $(LIB) $(prefix)/lib
1470
dc1aebe51742 correct DLL windows install
bellard
parents: 1465
diff changeset
266
dc1aebe51742 correct DLL windows install
bellard
parents: 1465
diff changeset
267 install-headers:
dc1aebe51742 correct DLL windows install
bellard
parents: 1465
diff changeset
268 mkdir -p "$(prefix)/include/ffmpeg"
1568
c5ec7ac5c053 rational.h not installed patch by (Fred Rothganger <rothgang at uiuc dot edu>)
michael
parents: 1557
diff changeset
269 install -m 644 $(SRC_PATH)/libavcodec/avcodec.h \
c5ec7ac5c053 rational.h not installed patch by (Fred Rothganger <rothgang at uiuc dot edu>)
michael
parents: 1557
diff changeset
270 $(SRC_PATH)/libavcodec/common.h \
c5ec7ac5c053 rational.h not installed patch by (Fred Rothganger <rothgang at uiuc dot edu>)
michael
parents: 1557
diff changeset
271 $(SRC_PATH)/libavcodec/rational.h \
1470
dc1aebe51742 correct DLL windows install
bellard
parents: 1465
diff changeset
272 "$(prefix)/include/ffmpeg"
489
b9fcdf9f4420 added installlib target to install static libraries and includes
bellard
parents: 484
diff changeset
273
3
1bdbd869c1f0 added CONFIG_AC3, CONFIG_MPGLIB, CONFIG_DECODERS and CONFIG_ENCODERS (Arpi: don't forget to put CONFIG_DECODERS in mplayer)
glantau
parents: 2
diff changeset
274 #
1bdbd869c1f0 added CONFIG_AC3, CONFIG_MPGLIB, CONFIG_DECODERS and CONFIG_ENCODERS (Arpi: don't forget to put CONFIG_DECODERS in mplayer)
glantau
parents: 2
diff changeset
275 # include dependency files if they exist
1bdbd869c1f0 added CONFIG_AC3, CONFIG_MPGLIB, CONFIG_DECODERS and CONFIG_ENCODERS (Arpi: don't forget to put CONFIG_DECODERS in mplayer)
glantau
parents: 2
diff changeset
276 #
1bdbd869c1f0 added CONFIG_AC3, CONFIG_MPGLIB, CONFIG_DECODERS and CONFIG_ENCODERS (Arpi: don't forget to put CONFIG_DECODERS in mplayer)
glantau
parents: 2
diff changeset
277 ifneq ($(wildcard .depend),)
1bdbd869c1f0 added CONFIG_AC3, CONFIG_MPGLIB, CONFIG_DECODERS and CONFIG_ENCODERS (Arpi: don't forget to put CONFIG_DECODERS in mplayer)
glantau
parents: 2
diff changeset
278 include .depend
1bdbd869c1f0 added CONFIG_AC3, CONFIG_MPGLIB, CONFIG_DECODERS and CONFIG_ENCODERS (Arpi: don't forget to put CONFIG_DECODERS in mplayer)
glantau
parents: 2
diff changeset
279 endif