2
2
# libavcodec Makefile
3
# (c) 2000-2003 Fabrice Bellard
3
# (c) 2000-2005 Fabrice Bellard
5
5
include ../config.mak
7
VPATH=$(SRC_PATH)/libavcodec
9
# NOTE: -I.. is needed to include config.h
10
CFLAGS= $(OPTFLAGS) -Wall -DHAVE_AV_CONFIG_H -I.. -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_GNU_SOURCE
12
OBJS= common.o utils.o mem.o allcodecs.o \
13
mpegvideo.o jrevdct.o jfdctfst.o jfdctint.o\
14
mpegaudio.o ac3enc.o mjpeg.o resample.o dsputil.o \
15
motion_est.o imgconvert.o imgresample.o \
16
mpeg12.o mpegaudiodec.o pcm.o simple_idct.o \
17
ratecontrol.o adpcm.o eval.o dv.o error_resilience.o \
18
fft.o mdct.o mace.o huffyuv.o cyuv.o opts.o raw.o h264.o golomb.o \
19
vp3.o asv1.o 4xm.o cabac.o ffv1.o ra144.o ra288.o vcr1.o cljr.o \
20
roqvideo.o dpcm.o interplayvideo.o xan.o
23
ifeq ($(AMR_NB_FIXED),yes)
25
AMREXTRALIBS+= amr/*.o
29
OBJS+= amr.o amr_float/sp_dec.o amr_float/sp_enc.o amr_float/interf_dec.o amr_float/interf_enc.o
30
CLEANAMR=cleanamrfloat
36
# codecs which are patented in some non free countries like the us
37
ifeq ($(CONFIG_RISKY),yes)
38
OBJS+= h263.o msmpeg4.o h263dec.o svq1.o rv10.o wmadec.o indeo3.o
41
ifeq ($(HAVE_XVMC_ACCEL),yes)
45
# currently using liba52 for ac3 decoding
46
ifeq ($(CONFIG_AC3),yes)
49
# using builtin liba52 or runtime linked liba52.so.0
50
ifneq ($(CONFIG_A52BIN),yes)
51
OBJS+= liba52/bit_allocate.o liba52/bitstream.o liba52/downmix.o \
52
liba52/imdct.o liba52/parse.o liba52/crc.o liba52/resample.o
56
ifeq ($(CONFIG_FAAD),yes)
58
ifeq ($(CONFIG_FAADBIN),yes)
65
ifeq ($(CONFIG_PP),yes)
66
ifeq ($(SHARED_PP),yes)
67
EXTRALIBS += -lpostproc
69
# LIBS += libpostproc/libpostproc.a ... should be fixed
70
OBJS += libpostproc/postprocess.o
74
ifeq ($(CONFIG_MP3LAME),yes)
75
OBJS += mp3lameaudio.o
76
EXTRALIBS += -lmp3lame
79
ifeq ($(CONFIG_VORBIS),yes)
81
EXTRALIBS += -lvorbis -lvorbisenc
84
ifeq ($(TARGET_GPROF),yes)
7
CFLAGS+=-I$(SRC_PATH)/libswscale $(AMR_CFLAGS)
47
HEADERS = avcodec.h opt.h
49
OBJS-$(CONFIG_AASC_DECODER) += aasc.o
50
OBJS-$(CONFIG_AC3_ENCODER) += ac3enc.o
51
OBJS-$(CONFIG_ALAC_DECODER) += alac.o
52
OBJS-$(CONFIG_ASV1_DECODER) += asv1.o
53
OBJS-$(CONFIG_ASV1_ENCODER) += asv1.o
54
OBJS-$(CONFIG_ASV2_DECODER) += asv1.o
55
OBJS-$(CONFIG_ASV2_ENCODER) += asv1.o
56
OBJS-$(CONFIG_AVS_DECODER) += avs.o
57
OBJS-$(CONFIG_BMP_DECODER) += bmp.o
58
OBJS-$(CONFIG_BMP_ENCODER) += bmpenc.o
59
OBJS-$(CONFIG_CAVS_DECODER) += cavs.o cavsdsp.o
60
OBJS-$(CONFIG_CINEPAK_DECODER) += cinepak.o
61
OBJS-$(CONFIG_CLJR_DECODER) += cljr.o
62
OBJS-$(CONFIG_CLJR_ENCODER) += cljr.o
63
OBJS-$(CONFIG_COOK_DECODER) += cook.o
64
OBJS-$(CONFIG_CSCD_DECODER) += cscd.o
65
OBJS-$(CONFIG_CYUV_DECODER) += cyuv.o
66
OBJS-$(CONFIG_DCA_DECODER) += dca.o
67
OBJS-$(CONFIG_DSICINVIDEO_DECODER) += dsicinav.o
68
OBJS-$(CONFIG_DSICINAUDIO_DECODER) += dsicinav.o
69
OBJS-$(CONFIG_DVBSUB_DECODER) += dvbsubdec.o
70
OBJS-$(CONFIG_DVBSUB_ENCODER) += dvbsub.o
71
OBJS-$(CONFIG_DVDSUB_DECODER) += dvdsubdec.o
72
OBJS-$(CONFIG_DVDSUB_ENCODER) += dvdsubenc.o
73
OBJS-$(CONFIG_DVVIDEO_DECODER) += dv.o
74
OBJS-$(CONFIG_DVVIDEO_ENCODER) += dv.o
75
OBJS-$(CONFIG_EIGHTBPS_DECODER) += 8bps.o
76
OBJS-$(CONFIG_FFV1_DECODER) += ffv1.o
77
OBJS-$(CONFIG_FFV1_ENCODER) += ffv1.o
78
OBJS-$(CONFIG_FFVHUFF_DECODER) += huffyuv.o
79
OBJS-$(CONFIG_FFVHUFF_ENCODER) += huffyuv.o
80
OBJS-$(CONFIG_FLAC_DECODER) += flac.o
81
OBJS-$(CONFIG_FLAC_ENCODER) += flacenc.o
82
OBJS-$(CONFIG_FLASHSV_DECODER) += flashsv.o
83
OBJS-$(CONFIG_FLASHSV_ENCODER) += flashsvenc.o
84
OBJS-$(CONFIG_FLIC_DECODER) += flicvideo.o
85
OBJS-$(CONFIG_FOURXM_DECODER) += 4xm.o
86
OBJS-$(CONFIG_FRAPS_DECODER) += fraps.o
87
OBJS-$(CONFIG_GIF_DECODER) += gifdec.o lzw.o
88
OBJS-$(CONFIG_GIF_ENCODER) += gif.o
89
OBJS-$(CONFIG_H261_DECODER) += h261.o
90
OBJS-$(CONFIG_H261_ENCODER) += h261.o
91
OBJS-$(CONFIG_H264_DECODER) += h264.o
92
OBJS-$(CONFIG_H264_ENCODER) += h264enc.o h264dsp.o
93
OBJS-$(CONFIG_HUFFYUV_DECODER) += huffyuv.o
94
OBJS-$(CONFIG_HUFFYUV_ENCODER) += huffyuv.o
95
OBJS-$(CONFIG_IDCIN_DECODER) += idcinvideo.o
96
OBJS-$(CONFIG_IMC_DECODER) += imc.o
97
OBJS-$(CONFIG_INDEO2_DECODER) += indeo2.o
98
OBJS-$(CONFIG_INDEO3_DECODER) += indeo3.o
99
OBJS-$(CONFIG_INTERPLAY_VIDEO_DECODER) += interplayvideo.o
100
OBJS-$(CONFIG_INTERPLAY_DPCM_DECODER) += dpcm.o
101
OBJS-$(CONFIG_KMVC_DECODER) += kmvc.o
102
OBJS-$(CONFIG_LOCO_DECODER) += loco.o
103
OBJS-$(CONFIG_MACE3_DECODER) += mace.o
104
OBJS-$(CONFIG_MACE6_DECODER) += mace.o
105
OBJS-$(CONFIG_MMVIDEO_DECODER) += mmvideo.o
106
OBJS-$(CONFIG_MP2_ENCODER) += mpegaudio.o
107
OBJS-$(CONFIG_MPC7_DECODER) += mpc.o
108
OBJS-$(CONFIG_MSRLE_DECODER) += msrle.o
109
OBJS-$(CONFIG_MSVIDEO1_DECODER) += msvideo1.o
110
OBJS-$(CONFIG_MSZH_DECODER) += lcl.o
111
OBJS-$(CONFIG_NUV_DECODER) += nuv.o rtjpeg.o
112
OBJS-$(CONFIG_PNG_DECODER) += png.o
113
OBJS-$(CONFIG_PNG_ENCODER) += png.o
114
OBJS-$(CONFIG_QDM2_DECODER) += qdm2.o
115
OBJS-$(CONFIG_QDRAW_DECODER) += qdrw.o
116
OBJS-$(CONFIG_QPEG_DECODER) += qpeg.o
117
OBJS-$(CONFIG_QTRLE_DECODER) += qtrle.o
118
OBJS-$(CONFIG_RA_144_DECODER) += ra144.o
119
OBJS-$(CONFIG_RA_288_DECODER) += ra288.o
120
OBJS-$(CONFIG_ROQ_DECODER) += roqvideo.o
121
OBJS-$(CONFIG_ROQ_DPCM_DECODER) += dpcm.o
122
OBJS-$(CONFIG_RPZA_DECODER) += rpza.o
123
OBJS-$(CONFIG_RV10_DECODER) += rv10.o
124
OBJS-$(CONFIG_RV10_ENCODER) += rv10.o
125
OBJS-$(CONFIG_RV20_DECODER) += rv10.o
126
OBJS-$(CONFIG_RV20_ENCODER) += rv10.o
127
OBJS-$(CONFIG_SHORTEN_DECODER) += shorten.o
128
OBJS-$(CONFIG_SMACKAUD_DECODER) += smacker.o
129
OBJS-$(CONFIG_SMACKER_DECODER) += smacker.o
130
OBJS-$(CONFIG_SMC_DECODER) += smc.o
131
OBJS-$(CONFIG_SNOW_DECODER) += snow.o
132
OBJS-$(CONFIG_SNOW_ENCODER) += snow.o
133
OBJS-$(CONFIG_SOL_DPCM_DECODER) += dpcm.o
134
OBJS-$(CONFIG_SONIC_DECODER) += sonic.o
135
OBJS-$(CONFIG_SONIC_ENCODER) += sonic.o
136
OBJS-$(CONFIG_SONIC_LS_DECODER) += sonic.o
137
OBJS-$(CONFIG_SVQ1_DECODER) += svq1.o
138
OBJS-$(CONFIG_SVQ1_ENCODER) += svq1.o
139
OBJS-$(CONFIG_SVQ3_DECODER) += h264.o
140
OBJS-$(CONFIG_TARGA_DECODER) += targa.o
141
OBJS-$(CONFIG_THEORA_DECODER) += vp3.o
142
OBJS-$(CONFIG_TIERTEXSEQVIDEO_DECODER) += tiertexseqv.o
143
OBJS-$(CONFIG_TIFF_DECODER) += tiff.o lzw.o
144
OBJS-$(CONFIG_TRUEMOTION1_DECODER) += truemotion1.o
145
OBJS-$(CONFIG_TRUEMOTION2_DECODER) += truemotion2.o
146
OBJS-$(CONFIG_TRUESPEECH_DECODER) += truespeech.o
147
OBJS-$(CONFIG_TSCC_DECODER) += tscc.o
148
OBJS-$(CONFIG_TTA_DECODER) += tta.o
149
OBJS-$(CONFIG_ULTI_DECODER) += ulti.o
150
OBJS-$(CONFIG_VC1_DECODER) += vc1.o vc1dsp.o
151
OBJS-$(CONFIG_VCR1_DECODER) += vcr1.o
152
OBJS-$(CONFIG_VCR1_ENCODER) += vcr1.o
153
OBJS-$(CONFIG_VMDAUDIO_DECODER) += vmdav.o
154
OBJS-$(CONFIG_VMDVIDEO_DECODER) += vmdav.o
155
OBJS-$(CONFIG_VMNC_DECODER) += vmnc.o
156
OBJS-$(CONFIG_VORBIS_DECODER) += vorbis.o vorbis_data.o
157
OBJS-$(CONFIG_VORBIS_ENCODER) += vorbis_enc.o vorbis.o vorbis_data.o
158
OBJS-$(CONFIG_VP3_DECODER) += vp3.o
159
OBJS-$(CONFIG_VP5_DECODER) += vp5.o vp56.o vp56data.o
160
OBJS-$(CONFIG_VP6_DECODER) += vp6.o vp56.o vp56data.o
161
OBJS-$(CONFIG_VQA_DECODER) += vqavideo.o
162
OBJS-$(CONFIG_WAVPACK_DECODER) += wavpack.o
163
OBJS-$(CONFIG_WMAV1_DECODER) += wmadec.o wma.o
164
OBJS-$(CONFIG_WMAV2_DECODER) += wmadec.o wma.o
165
OBJS-$(CONFIG_WMAV1_ENCODER) += wmaenc.o wma.o
166
OBJS-$(CONFIG_WMAV2_ENCODER) += wmaenc.o wma.o
167
OBJS-$(CONFIG_WMV3_DECODER) += vc1.o vc1dsp.o
168
OBJS-$(CONFIG_WNV1_DECODER) += wnv1.o
169
OBJS-$(CONFIG_WS_SND1_DECODER) += ws-snd1.o
170
OBJS-$(CONFIG_XAN_DPCM_DECODER) += dpcm.o
171
OBJS-$(CONFIG_XAN_WC3_DECODER) += xan.o
172
OBJS-$(CONFIG_XAN_WC4_DECODER) += xan.o
173
OBJS-$(CONFIG_XL_DECODER) += xl.o
174
OBJS-$(CONFIG_ZLIB_DECODER) += lcl.o
175
OBJS-$(CONFIG_ZLIB_ENCODER) += lcl.o
176
OBJS-$(CONFIG_ZMBV_DECODER) += zmbv.o
177
OBJS-$(CONFIG_ZMBV_ENCODER) += zmbvenc.o
179
OBJS-$(CONFIG_PCM_S32LE_DECODER) += pcm.o
180
OBJS-$(CONFIG_PCM_S32LE_ENCODER) += pcm.o
181
OBJS-$(CONFIG_PCM_S32BE_DECODER) += pcm.o
182
OBJS-$(CONFIG_PCM_S32BE_ENCODER) += pcm.o
183
OBJS-$(CONFIG_PCM_U32LE_DECODER) += pcm.o
184
OBJS-$(CONFIG_PCM_U32LE_ENCODER) += pcm.o
185
OBJS-$(CONFIG_PCM_U32BE_DECODER) += pcm.o
186
OBJS-$(CONFIG_PCM_U32BE_ENCODER) += pcm.o
187
OBJS-$(CONFIG_PCM_S24LE_DECODER) += pcm.o
188
OBJS-$(CONFIG_PCM_S24LE_ENCODER) += pcm.o
189
OBJS-$(CONFIG_PCM_S24BE_DECODER) += pcm.o
190
OBJS-$(CONFIG_PCM_S24BE_ENCODER) += pcm.o
191
OBJS-$(CONFIG_PCM_U24LE_DECODER) += pcm.o
192
OBJS-$(CONFIG_PCM_U24LE_ENCODER) += pcm.o
193
OBJS-$(CONFIG_PCM_U24BE_DECODER) += pcm.o
194
OBJS-$(CONFIG_PCM_U24BE_ENCODER) += pcm.o
195
OBJS-$(CONFIG_PCM_S24DAUD_DECODER) += pcm.o
196
OBJS-$(CONFIG_PCM_S24DAUD_ENCODER) += pcm.o
197
OBJS-$(CONFIG_PCM_S16LE_DECODER) += pcm.o
198
OBJS-$(CONFIG_PCM_S16LE_ENCODER) += pcm.o
199
OBJS-$(CONFIG_PCM_S16BE_DECODER) += pcm.o
200
OBJS-$(CONFIG_PCM_S16BE_ENCODER) += pcm.o
201
OBJS-$(CONFIG_PCM_U16LE_DECODER) += pcm.o
202
OBJS-$(CONFIG_PCM_U16LE_ENCODER) += pcm.o
203
OBJS-$(CONFIG_PCM_U16BE_DECODER) += pcm.o
204
OBJS-$(CONFIG_PCM_U16BE_ENCODER) += pcm.o
205
OBJS-$(CONFIG_PCM_S8_DECODER) += pcm.o
206
OBJS-$(CONFIG_PCM_S8_ENCODER) += pcm.o
207
OBJS-$(CONFIG_PCM_U8_DECODER) += pcm.o
208
OBJS-$(CONFIG_PCM_U8_ENCODER) += pcm.o
209
OBJS-$(CONFIG_PCM_ALAW_DECODER) += pcm.o
210
OBJS-$(CONFIG_PCM_ALAW_ENCODER) += pcm.o
211
OBJS-$(CONFIG_PCM_MULAW_DECODER) += pcm.o
212
OBJS-$(CONFIG_PCM_MULAW_ENCODER) += pcm.o
214
OBJS-$(CONFIG_ADPCM_4XM_DECODER) += adpcm.o
215
OBJS-$(CONFIG_ADPCM_4XM_ENCODER) += adpcm.o
216
OBJS-$(CONFIG_ADPCM_ADX_DECODER) += adx.o
217
OBJS-$(CONFIG_ADPCM_ADX_ENCODER) += adx.o
218
OBJS-$(CONFIG_ADPCM_CT_DECODER) += adpcm.o
219
OBJS-$(CONFIG_ADPCM_CT_ENCODER) += adpcm.o
220
OBJS-$(CONFIG_ADPCM_EA_DECODER) += adpcm.o
221
OBJS-$(CONFIG_ADPCM_EA_ENCODER) += adpcm.o
222
OBJS-$(CONFIG_ADPCM_G726_DECODER) += g726.o
223
OBJS-$(CONFIG_ADPCM_G726_ENCODER) += g726.o
224
OBJS-$(CONFIG_ADPCM_IMA_DK3_DECODER) += adpcm.o
225
OBJS-$(CONFIG_ADPCM_IMA_DK3_ENCODER) += adpcm.o
226
OBJS-$(CONFIG_ADPCM_IMA_DK4_DECODER) += adpcm.o
227
OBJS-$(CONFIG_ADPCM_IMA_DK4_ENCODER) += adpcm.o
228
OBJS-$(CONFIG_ADPCM_IMA_QT_DECODER) += adpcm.o
229
OBJS-$(CONFIG_ADPCM_IMA_QT_ENCODER) += adpcm.o
230
OBJS-$(CONFIG_ADPCM_IMA_SMJPEG_DECODER) += adpcm.o
231
OBJS-$(CONFIG_ADPCM_IMA_SMJPEG_ENCODER) += adpcm.o
232
OBJS-$(CONFIG_ADPCM_IMA_WAV_DECODER) += adpcm.o
233
OBJS-$(CONFIG_ADPCM_IMA_WAV_ENCODER) += adpcm.o
234
OBJS-$(CONFIG_ADPCM_IMA_WS_DECODER) += adpcm.o
235
OBJS-$(CONFIG_ADPCM_IMA_WS_ENCODER) += adpcm.o
236
OBJS-$(CONFIG_ADPCM_MS_DECODER) += adpcm.o
237
OBJS-$(CONFIG_ADPCM_MS_ENCODER) += adpcm.o
238
OBJS-$(CONFIG_ADPCM_SBPRO_2_DECODER) += adpcm.o
239
OBJS-$(CONFIG_ADPCM_SBPRO_2_ENCODER) += adpcm.o
240
OBJS-$(CONFIG_ADPCM_SBPRO_3_DECODER) += adpcm.o
241
OBJS-$(CONFIG_ADPCM_SBPRO_3_ENCODER) += adpcm.o
242
OBJS-$(CONFIG_ADPCM_SBPRO_4_DECODER) += adpcm.o
243
OBJS-$(CONFIG_ADPCM_SBPRO_4_ENCODER) += adpcm.o
244
OBJS-$(CONFIG_ADPCM_SWF_DECODER) += adpcm.o
245
OBJS-$(CONFIG_ADPCM_SWF_ENCODER) += adpcm.o
246
OBJS-$(CONFIG_ADPCM_XA_DECODER) += adpcm.o
247
OBJS-$(CONFIG_ADPCM_XA_ENCODER) += adpcm.o
248
OBJS-$(CONFIG_ADPCM_YAMAHA_DECODER) += adpcm.o
249
OBJS-$(CONFIG_ADPCM_YAMAHA_ENCODER) += adpcm.o
251
# external codec libraries
252
OBJS-$(CONFIG_LIBA52) += a52dec.o
253
OBJS-$(CONFIG_LIBDTS) += dtsdec.o
254
OBJS-$(CONFIG_LIBFAAC) += faac.o
255
OBJS-$(CONFIG_LIBFAAD) += faad.o
256
OBJS-$(CONFIG_LIBGSM) += libgsm.o
257
OBJS-$(CONFIG_LIBMP3LAME) += mp3lameaudio.o
258
OBJS-$(CONFIG_LIBTHEORA) += libtheoraenc.o
259
OBJS-$(CONFIG_LIBVORBIS) += oggvorbis.o
260
OBJS-$(CONFIG_X264) += x264.o
261
OBJS-$(CONFIG_XVID) += xvidff.o xvid_rc.o
263
OBJS-$(CONFIG_AMR) += amr.o
264
OBJS-$(CONFIG_AMR_NB) += amr_float/sp_dec.o \
266
amr_float/interf_dec.o \
267
amr_float/interf_enc.o
269
ifeq ($(CONFIG_AMR_NB_FIXED),yes)
274
OBJS-$(CONFIG_AMR_WB) += amrwb_float/dec_acelp.o \
275
amrwb_float/dec_dtx.o \
276
amrwb_float/dec_gain.o \
277
amrwb_float/dec_if.o \
278
amrwb_float/dec_lpc.o \
279
amrwb_float/dec_main.o \
280
amrwb_float/dec_rom.o \
281
amrwb_float/dec_util.o \
282
amrwb_float/enc_acelp.o \
283
amrwb_float/enc_dtx.o \
284
amrwb_float/enc_gain.o \
285
amrwb_float/enc_if.o \
286
amrwb_float/enc_lpc.o \
287
amrwb_float/enc_main.o \
288
amrwb_float/enc_rom.o \
289
amrwb_float/enc_util.o \
292
OBJS-$(CONFIG_AAC_PARSER) += parser.o
293
OBJS-$(CONFIG_AC3_PARSER) += parser.o
294
OBJS-$(CONFIG_CAVSVIDEO_PARSER) += cavs.o parser.o
295
OBJS-$(CONFIG_DVBSUB_PARSER) += dvbsubdec.o
296
OBJS-$(CONFIG_DVDSUB_PARSER) += dvdsubdec.o
297
OBJS-$(CONFIG_H261_PARSER) += h261.o
298
OBJS-$(CONFIG_H263_PARSER) += h263dec.o
299
OBJS-$(CONFIG_H264_PARSER) += h264.o
300
OBJS-$(CONFIG_MJPEG_PARSER) += mjpeg.o
301
OBJS-$(CONFIG_MPEG4VIDEO_PARSER) += parser.o
302
OBJS-$(CONFIG_MPEGAUDIO_PARSER) += parser.o
303
OBJS-$(CONFIG_MPEGVIDEO_PARSER) += parser.o
304
OBJS-$(CONFIG_PNM_PARSER) += pnm.o
306
OBJS-$(HAVE_PTHREADS) += pthread.o
307
OBJS-$(HAVE_W32THREADS) += w32thread.o
308
OBJS-$(HAVE_OS2THREADS) += os2thread.o
309
OBJS-$(HAVE_BEOSTHREADS) += beosthread.o
311
OBJS-$(HAVE_XVMC_ACCEL) += xvmcvideo.o
313
ifneq ($(CONFIG_SWSCALER),yes)
314
OBJS += imgresample.o
89
317
# i386 mmx specific stuff
90
318
ifeq ($(TARGET_MMX),yes)
91
OBJS += i386/fdct_mmx.o i386/cputest.o \
92
i386/dsputil_mmx.o i386/mpegvideo_mmx.o \
93
i386/idct_mmx.o i386/motion_est_mmx.o \
94
i386/simple_idct_mmx.o i386/fft_sse.o
95
ifdef TARGET_BUILTIN_VECTOR
96
i386/fft_sse.o: CFLAGS+= -msse
319
OBJS += i386/fdct_mmx.o \
322
i386/mpegvideo_mmx.o \
323
i386/motion_est_mmx.o \
324
i386/simple_idct_mmx.o \
325
i386/idct_mmx_xvid.o \
332
OBJS-$(CONFIG_GPL) += i386/idct_mmx.o
333
OBJS-$(CONFIG_CAVS_DECODER) += i386/cavsdsp_mmx.o
334
OBJS-$(CONFIG_SNOW_DECODER) += i386/snowdsp_mmx.o
100
337
# armv4l specific stuff
101
ifeq ($(TARGET_ARCH_ARMV4L),yes)
102
ASM_OBJS += armv4l/jrevdct_arm.o armv4l/simple_idct_arm.o
103
OBJS += armv4l/dsputil_arm.o armv4l/mpegvideo_arm.o
338
ASM_OBJS-$(TARGET_ARCH_ARMV4L) += armv4l/jrevdct_arm.o \
339
armv4l/simple_idct_arm.o \
340
armv4l/dsputil_arm_s.o \
342
OBJS-$(TARGET_ARCH_ARMV4L) += armv4l/dsputil_arm.o \
343
armv4l/mpegvideo_arm.o \
345
OBJS-$(TARGET_IWMMXT) += armv4l/dsputil_iwmmxt.o \
346
armv4l/mpegvideo_iwmmxt.o \
348
ASM_OBJS-$(TARGET_ARMV5TE) += armv4l/simple_idct_armv5te.o \
349
armv4l/mpegvideo_armv5te.o \
351
ASM_OBJS-$(HAVE_ARMV6) += armv4l/simple_idct_armv6.o
354
OBJS-$(TARGET_ARCH_SPARC) += sparc/dsputil_vis.o \
356
sparc/dsputil_vis.o: CFLAGS += -mcpu=ultrasparc -mtune=ultrasparc
106
358
# sun mediaLib specific stuff
107
# currently only works when libavcodec is used in mplayer
108
ifeq ($(HAVE_MLIB),yes)
109
OBJS += mlib/dsputil_mlib.o
110
CFLAGS += $(MLIB_INC)
359
OBJS-$(HAVE_MLIB) += mlib/dsputil_mlib.o \
113
361
# alpha specific stuff
114
ifeq ($(TARGET_ARCH_ALPHA),yes)
115
OBJS += alpha/dsputil_alpha.o alpha/mpegvideo_alpha.o \
116
alpha/simple_idct_alpha.o alpha/motion_est_alpha.o
117
ASM_OBJS += alpha/dsputil_alpha_asm.o alpha/motion_est_mvi_asm.o
118
CFLAGS += -fforce-addr -freduce-all-givs
121
ifeq ($(TARGET_ARCH_POWERPC),yes)
122
OBJS += ppc/dsputil_ppc.o ppc/mpegvideo_ppc.o
125
ifeq ($(TARGET_MMI),yes)
126
OBJS += ps2/dsputil_mmi.o ps2/idct_mmi.o ps2/mpegvideo_mmi.o
362
OBJS-$(TARGET_ARCH_ALPHA) += alpha/dsputil_alpha.o \
363
alpha/mpegvideo_alpha.o \
364
alpha/simple_idct_alpha.o \
365
alpha/motion_est_alpha.o \
367
ASM_OBJS-$(TARGET_ARCH_ALPHA) += alpha/dsputil_alpha_asm.o \
368
alpha/motion_est_mvi_asm.o \
370
OBJS-$(TARGET_ARCH_POWERPC) += ppc/dsputil_ppc.o \
371
ppc/mpegvideo_ppc.o \
373
OBJS-$(TARGET_MMI) += ps2/dsputil_mmi.o \
375
ps2/mpegvideo_mmi.o \
377
OBJS-$(TARGET_ARCH_SH4) += sh4/idct_sh4.o \
379
sh4/dsputil_align.o \
381
OBJS-$(TARGET_ALTIVEC) += ppc/dsputil_altivec.o \
382
ppc/mpegvideo_altivec.o \
387
ppc/float_altivec.o \
129
389
ifeq ($(TARGET_ALTIVEC),yes)
130
OBJS += ppc/dsputil_altivec.o ppc/mpegvideo_altivec.o ppc/idct_altivec.o \
131
ppc/fft_altivec.o ppc/gmc_altivec.o
134
ifeq ($(TARGET_ARCH_SH4),yes)
135
OBJS+= sh4/idct_sh4.o sh4/dsputil_sh4.o sh4/dsputil_align.o
139
SRCS := $(OBJS:.o=.c) $(ASM_OBJS:.o=.S)
140
OBJS := $(OBJS) $(ASM_OBJS)
142
LIB= $(LIBPREF)avcodec$(LIBSUF)
143
ifeq ($(BUILD_SHARED),yes)
144
SLIB= $(SLIBPREF)avcodec$(SLIBSUF)
146
TESTS= imgresample-test dct-test motion-test fft-test
390
OBJS-$(CONFIG_H264_DECODER) += ppc/h264_altivec.o
391
OBJS-$(CONFIG_SNOW_DECODER) += ppc/snow_altivec.o
392
OBJS-$(CONFIG_VC1_DECODER) += ppc/vc1dsp_altivec.o
393
OBJS-$(CONFIG_WMV3_DECODER) += ppc/vc1dsp_altivec.o
396
OBJS-$(TARGET_ARCH_BFIN) += bfin/dsputil_bfin.o \
398
EXTRALIBS := -L$(BUILD_ROOT)/libavutil -lavutil$(BUILDSUF) $(EXTRALIBS)
401
LIBVERSION=$(LAVCVERSION)
402
LIBMAJOR=$(LAVCMAJOR)
404
TESTS= imgresample-test fft-test
405
ifeq ($(TARGET_ARCH_X86),yes)
406
TESTS+= cpuid_test dct-test motion-test
409
include ../common.mak
151
412
$(MAKE) -C amr spclib fipoplib
153
tests: apiexample cpuid_test $(TESTS)
155
$(LIB): $(OBJS) $(AMRLIBS)
157
$(AR) rc $@ $(OBJS) $(AMREXTRALIBS)
161
ifeq ($(CONFIG_WIN32),yes)
162
$(CC) $(SHFLAGS) -Wl,--output-def,$(@:.dll=.def) -o $@ $(OBJS) $(EXTRALIBS) $(AMREXTRALIBS)
163
-lib /machine:i386 /def:$(@:.dll=.def)
165
$(CC) $(SHFLAGS) -o $@ $(OBJS) $(EXTRALIBS) $(AMREXTRALIBS)
168
dsputil.o: dsputil.c dsputil.h
170
libpostproc/libpostproc.a:
171
$(MAKE) -C libpostproc
174
$(CC) $(CFLAGS) -c -o $@ $<
177
$(CC) $(CFLAGS) -c -o $@ $<
180
$(CC) -MM $(CFLAGS) $^ 1>.depend
185
rm -f *.o *.d *~ .depend $(LIB) $(SLIB) *.so i386/*.o i386/*~ \
414
tests: apiexample $(TESTS)
186
419
armv4l/*.o armv4l/*~ \
187
420
mlib/*.o mlib/*~ \
188
421
alpha/*.o alpha/*~ \
192
liba52/*.o liba52/*~ \
193
427
apiexample $(TESTS)
194
$(MAKE) -C libpostproc clean
197
rm -f Makefile.bak .depend
205
# api example program
206
apiexample: apiexample.c $(LIB)
207
$(CC) $(CFLAGS) -o $@ $< $(LIB) $(EXTRALIBS) -lm
428
-$(MAKE) -C amr clean
429
-$(MAKE) -C amrwb_float -f makefile.gcc clean
431
apiexample: apiexample.o $(LIB)
210
433
cpuid_test: i386/cputest.c
211
434
$(CC) $(CFLAGS) -D__TEST__ -o $@ $<
215
imgresample-test: imgresample.c
216
$(CC) $(CFLAGS) -DTEST -o $@ $^ -lm
436
imgresample-test: imgresample.c $(LIB)
437
$(CC) $(CFLAGS) -DTEST -o $@ $^ $(EXTRALIBS)
218
439
dct-test: dct-test.o fdctref.o $(LIB)
221
441
motion-test: motion_test.o $(LIB)
224
443
fft-test: fft-test.o $(LIB)
227
ifeq ($(BUILD_SHARED),yes)
228
install: all install-headers
229
ifeq ($(CONFIG_WIN32),yes)
230
install -s -m 755 $(SLIB) "$(prefix)"
232
install -d $(prefix)/lib
233
install -s -m 755 $(SLIB) $(prefix)/lib/libavcodec-$(VERSION).so
234
ln -sf libavcodec-$(VERSION).so $(prefix)/lib/libavcodec.so
241
installlib: all install-headers
242
install -m 644 $(LIB) $(prefix)/lib
245
mkdir -p "$(prefix)/include/ffmpeg"
246
install -m 644 $(SRC_PATH)/libavcodec/avcodec.h $(SRC_PATH)/libavcodec/common.h \
247
"$(prefix)/include/ffmpeg"
250
# include dependency files if they exist
252
ifneq ($(wildcard .depend),)
445
.PHONY: amrlibs tests