Commit | Line | Data |
---|---|---|
4cc281d9 FB |
1 | # |
2 | # libavcodec Makefile | |
6d6d7970 | 3 | # (c) 2000-2005 Fabrice Bellard |
4cc281d9 | 4 | # |
980fc7b8 FB |
5 | include ../config.mak |
6 | ||
4cc281d9 FB |
7 | VPATH=$(SRC_PATH)/libavcodec |
8 | ||
ff4ec49e | 9 | # NOTE: -I.. is needed to include config.h |
2a515c08 | 10 | CFLAGS=$(OPTFLAGS) -DHAVE_AV_CONFIG_H -I.. -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_GNU_SOURCE $(AMR_CFLAGS) |
de6d9b64 | 11 | |
caa336b4 | 12 | OBJS= bitstream.o utils.o mem.o allcodecs.o \ |
1d0d55da | 13 | mpegvideo.o jrevdct.o jfdctfst.o jfdctint.o\ |
7b1fa7db | 14 | mpegaudio.o ac3enc.o mjpeg.o resample.o resample2.o dsputil.o \ |
1d0d55da | 15 | motion_est.o imgconvert.o imgresample.o \ |
4f1bb8a9 | 16 | mpeg12.o mpegaudiodec.o pcm.o simple_idct.o \ |
8b975b7c MN |
17 | ratecontrol.o adpcm.o eval.o error_resilience.o \ |
18 | fft.o mdct.o raw.o golomb.o cabac.o\ | |
19 | dpcm.o adx.o rational.o faandct.o parser.o g726.o \ | |
20 | vp3dsp.o integer.o h264idct.o rangecoder.o pnm.o h263.o msmpeg4.o h263dec.o | |
21 | ||
22 | ifeq ($(CONFIG_AASC_DECODER),yes) | |
23 | OBJS+= aasc.o | |
24 | endif | |
25 | ifeq ($(CONFIG_ALAC_DECODER),yes) | |
26 | OBJS+= alac.o | |
27 | endif | |
28 | ifneq ($(CONFIG_ASV1_DECODER)$(CONFIG_ASV1_ENCODER)$(CONFIG_ASV2_DECODER)$(CONFIG_ASV2_ENCODER),) | |
29 | OBJS+= asv1.o | |
30 | endif | |
31 | ifeq ($(CONFIG_CINEPAK_DECODER),yes) | |
32 | OBJS+= cinepak.o | |
33 | endif | |
34 | ifneq ($(CONFIG_CLJR_DECODER)$(CONFIG_CLJR_ENCODER),) | |
35 | OBJS+= cljr.o | |
36 | endif | |
37 | ifeq ($(CONFIG_CYUV_DECODER),yes) | |
38 | OBJS+= cyuv.o | |
39 | endif | |
40 | ifneq ($(CONFIG_DVVIDEO_DECODER)$(CONFIG_DVVIDEO_ENCODER),) | |
41 | OBJS+= dv.o | |
42 | endif | |
43 | ifeq ($(CONFIG_EIGHTBPS_DECODER),yes) | |
44 | OBJS+= 8bps.o | |
45 | endif | |
46 | ifneq ($(CONFIG_FFV1_DECODER)$(CONFIG_FFV1_ENCODER),) | |
47 | OBJS+= ffv1.o | |
48 | endif | |
49 | ifeq ($(CONFIG_FLAC_DECODER),yes) | |
50 | OBJS+= flac.o | |
51 | endif | |
52 | ifeq ($(CONFIG_FLIC_DECODER),yes) | |
53 | OBJS+= flicvideo.o | |
54 | endif | |
55 | ifeq ($(CONFIG_FOURXM_DECODER),yes) | |
56 | OBJS+= 4xm.o | |
57 | endif | |
58 | ifneq ($(CONFIG_H261_DECODER)$(CONFIG_H261_ENCODER),) | |
59 | OBJS+= h261.o | |
60 | endif | |
61 | ifneq ($(CONFIG_H264_DECODER)$(CONFIG_SVQ3_DECODER),) | |
62 | OBJS+= h264.o | |
63 | endif | |
64 | ifneq ($(CONFIG_HUFFYUV_DECODER)$(CONFIG_HUFFYUV_ENCODER)$(CONFIG_FFVHUFF_DECODER)$(CONFIG_FFVHUFF_ENCODER),) | |
65 | OBJS+= huffyuv.o | |
66 | endif | |
67 | ifeq ($(CONFIG_IDCIN_DECODER),yes) | |
68 | OBJS+= idcinvideo.o | |
69 | endif | |
70 | ifeq ($(CONFIG_INDEO2_DECODER),yes) | |
71 | OBJS+= indeo2.o | |
72 | endif | |
73 | ifeq ($(CONFIG_INDEO3_DECODER),yes) | |
74 | OBJS+= indeo3.o | |
75 | endif | |
76 | ifeq ($(CONFIG_INTERPLAY_VIDEO_DECODER),yes) | |
77 | OBJS+= interplayvideo.o | |
78 | endif | |
79 | ifneq ($(CONFIG_MSZH_DECODER)$(CONFIG_ZLIB_DECODER)$(CONFIG_ZLIB_ENCODER),) | |
80 | OBJS+= lcl.o | |
81 | endif | |
82 | ifeq ($(CONFIG_LOCO_DECODER),yes) | |
83 | OBJS+= loco.o | |
84 | endif | |
85 | ifneq ($(CONFIG_MACE3_DECODER)$(CONFIG_MACE6_DECODER),) | |
86 | OBJS+= mace.o | |
87 | endif | |
88 | ifeq ($(CONFIG_MSRLE_DECODER),yes) | |
89 | OBJS+= msrle.o | |
90 | endif | |
91 | ifeq ($(CONFIG_MSVIDEO1_DECODER),yes) | |
92 | OBJS+= msvideo1.o | |
93 | endif | |
94 | ifneq ($(CONFIG_PNG_DECODER)$(CONFIG_PNG_ENCODER),) | |
95 | OBJS+= png.o | |
96 | endif | |
97 | ifeq ($(CONFIG_QDRAW_DECODER),yes) | |
98 | OBJS+= qdrw.o | |
99 | endif | |
100 | ifeq ($(CONFIG_QPEG_DECODER),yes) | |
101 | OBJS+= qpeg.o | |
102 | endif | |
103 | ifeq ($(CONFIG_QTRLE_DECODER),yes) | |
104 | OBJS+= qtrle.o | |
105 | endif | |
106 | ifeq ($(CONFIG_RA_144_DECODER),yes) | |
107 | OBJS+= ra144.o | |
108 | endif | |
109 | ifeq ($(CONFIG_RA_288_DECODER),yes) | |
110 | OBJS+= ra288.o | |
111 | endif | |
112 | ifeq ($(CONFIG_ROQ_DECODER),yes) | |
113 | OBJS+= roqvideo.o | |
114 | endif | |
115 | ifeq ($(CONFIG_RPZA_DECODER),yes) | |
116 | OBJS+= rpza.o | |
117 | endif | |
118 | ifneq ($(CONFIG_RV10_DECODER)$(CONFIG_RV20_DECODER)$(CONFIG_RV10_ENCODER)$(CONFIG_RV20_ENCODER),) | |
119 | OBJS+= rv10.o | |
120 | endif | |
121 | ifeq ($(CONFIG_SHORTEN_DECODER),yes) | |
122 | OBJS+= shorten.o | |
123 | endif | |
124 | ifeq ($(CONFIG_SMC_DECODER),yes) | |
125 | OBJS+= smc.o | |
126 | endif | |
0de1318a | 127 | ifneq ($(CONFIG_SNOW_DECODER)$(CONFIG_SNOW_ENCODER),) |
8b975b7c MN |
128 | OBJS+= snow.o |
129 | endif | |
130 | ifneq ($(CONFIG_SONIC_DECODER)$(CONFIG_SONIC_ENCODER)$(CONFIG_SONIC_LS_ENCODER),) | |
131 | OBJS+= sonic.o | |
132 | endif | |
133 | ifneq ($(CONFIG_SVQ1_DECODER)$(CONFIG_SVQ1_ENCODER),) | |
134 | OBJS+= svq1.o | |
135 | endif | |
136 | ifeq ($(CONFIG_TRUEMOTION1_DECODER),yes) | |
137 | OBJS+= truemotion1.o | |
138 | endif | |
139 | ifeq ($(CONFIG_TSCC_DECODER),yes) | |
140 | OBJS+= tscc.o | |
141 | endif | |
142 | ifeq ($(CONFIG_ULTI_DECODER),yes) | |
143 | OBJS+= ulti.o | |
144 | endif | |
145 | ifneq ($(CONFIG_VC9_DECODER)$(CONFIG_WMV3_DECODER),) | |
146 | OBJS+= vc9.o | |
147 | endif | |
148 | ifneq ($(CONFIG_VCR1_DECODER)$(CONFIG_VCR1_ENCODER),) | |
149 | OBJS+= vcr1.o | |
150 | endif | |
151 | ifneq ($(CONFIG_VMDVIDEO_DECODER)$(CONFIG_VMDAUDIO_DECODER),) | |
152 | OBJS+= vmdav.o | |
153 | endif | |
0bde73d9 MN |
154 | ifeq ($(CONFIG_VORBIS_DECODER),yes) |
155 | OBJS+= vorbis.o | |
156 | endif | |
8b975b7c MN |
157 | ifneq ($(CONFIG_VP3_DECODER)$(CONFIG_THEORA_DECODER),) |
158 | OBJS+= vp3.o | |
159 | endif | |
160 | ifeq ($(CONFIG_VQA_DECODER),yes) | |
161 | OBJS+= vqavideo.o | |
162 | endif | |
163 | ifneq ($(CONFIG_WMAV1_DECODER)$(CONFIG_WMAV2_DECODER),) | |
164 | OBJS+= wmadec.o | |
165 | endif | |
166 | ifeq ($(CONFIG_WNV1_DECODER),yes) | |
167 | OBJS+= wnv1.o | |
168 | endif | |
169 | ifeq ($(CONFIG_WS_SND1_DECODER),yes) | |
170 | OBJS+= ws-snd1.o | |
171 | endif | |
172 | ifneq ($(CONFIG_XAN_WC3_DECODER)$(CONFIG_XAN_WC4_DECODER),) | |
173 | OBJS+= xan.o | |
174 | endif | |
175 | ifeq ($(CONFIG_XL_DECODER),yes) | |
176 | OBJS+= xl.o | |
177 | endif | |
178 | ||
179 | ||
4d4bb927 | 180 | AMROBJS= |
891f64b3 | 181 | ifeq ($(AMR_NB),yes) |
bc634f6f | 182 | ifeq ($(AMR_NB_FIXED),yes) |
4d4bb927 | 183 | AMROBJS= amr.o |
bc634f6f ZK |
184 | AMREXTRALIBS+= amr/*.o |
185 | AMRLIBS=amrlibs | |
186 | CLEANAMR=cleanamr | |
187 | else | |
4d4bb927 RT |
188 | AMROBJS= amr.o |
189 | OBJS+= amr_float/sp_dec.o amr_float/sp_enc.o amr_float/interf_dec.o amr_float/interf_enc.o | |
bc634f6f ZK |
190 | CLEANAMR=cleanamrfloat |
191 | endif | |
891f64b3 | 192 | endif |
193 | ||
9c3d33d6 MN |
194 | ifeq ($(HAVE_PTHREADS),yes) |
195 | OBJS+= pthread.o | |
196 | endif | |
197 | ||
16806499 MN |
198 | ifeq ($(HAVE_W32THREADS),yes) |
199 | OBJS+= w32thread.o | |
200 | endif | |
201 | ||
2450cff2 FR |
202 | ifeq ($(HAVE_BEOSTHREADS),yes) |
203 | OBJS+= beosthread.o | |
204 | endif | |
205 | ||
d663a1fd | 206 | ifeq ($(AMR_WB),yes) |
4d4bb927 RT |
207 | AMROBJS= amr.o |
208 | OBJS+= amrwb_float/dec_acelp.o amrwb_float/dec_dtx.o amrwb_float/dec_gain.o \ | |
d663a1fd MN |
209 | amrwb_float/dec_if.o amrwb_float/dec_lpc.o amrwb_float/dec_main.o \ |
210 | amrwb_float/dec_rom.o amrwb_float/dec_util.o amrwb_float/enc_acelp.o \ | |
211 | amrwb_float/enc_dtx.o amrwb_float/enc_gain.o amrwb_float/enc_if.o \ | |
212 | amrwb_float/enc_lpc.o amrwb_float/enc_main.o amrwb_float/enc_rom.o \ | |
213 | amrwb_float/enc_util.o amrwb_float/if_rom.o | |
214 | endif | |
4d4bb927 | 215 | OBJS+= $(AMROBJS) |
d663a1fd | 216 | CLEANAMRWB=cleanamrwbfloat |
980fc7b8 | 217 | ASM_OBJS= |
de6d9b64 | 218 | |
4f1bb8a9 IK |
219 | ifeq ($(HAVE_XVMC_ACCEL),yes) |
220 | OBJS+= xvmcvideo.o | |
221 | endif | |
222 | ||
57514323 | 223 | # currently using liba52 for ac3 decoding |
d771bcae | 224 | ifeq ($(CONFIG_AC3),yes) |
57514323 | 225 | OBJS+= a52dec.o |
57514323 ZK |
226 | |
227 | # using builtin liba52 or runtime linked liba52.so.0 | |
ff4ec49e | 228 | ifneq ($(CONFIG_A52BIN),yes) |
57514323 | 229 | OBJS+= liba52/bit_allocate.o liba52/bitstream.o liba52/downmix.o \ |
521221cf | 230 | liba52/imdct.o liba52/parse.o liba52/crc.o liba52/resample.o |
d771bcae | 231 | endif |
ff4ec49e | 232 | endif |
de6d9b64 | 233 | |
23c99253 MN |
234 | # currently using libdts for dts decoding |
235 | ifeq ($(CONFIG_DTS),yes) | |
236 | OBJS+= dtsdec.o | |
c5c97a8d MN |
237 | CFLAGS += $(DTS_INC) |
238 | EXTRALIBS += -ldts | |
23c99253 MN |
239 | endif |
240 | ||
280bd7b7 ZK |
241 | ifeq ($(CONFIG_FAAD),yes) |
242 | OBJS+= faad.o | |
445ad18d ZK |
243 | ifeq ($(CONFIG_FAADBIN),yes) |
244 | # no libs needed | |
245 | else | |
246 | EXTRALIBS += -lfaad | |
247 | endif | |
280bd7b7 ZK |
248 | endif |
249 | ||
29d48296 MN |
250 | ifeq ($(CONFIG_FAAC),yes) |
251 | OBJS+= faac.o | |
252 | EXTRALIBS += -lfaac | |
253 | endif | |
254 | ||
1ddadfa9 AT |
255 | ifeq ($(CONFIG_XVID),yes) |
256 | OBJS+= xvidff.o | |
257 | EXTRALIBS += -lxvidcore | |
258 | endif | |
259 | ||
6662ec29 MN |
260 | ifeq ($(CONFIG_X264),yes) |
261 | OBJS+= x264.o | |
7c653cc9 | 262 | EXTRALIBS += -lx264 |
6662ec29 MN |
263 | endif |
264 | ||
bba9b16c MN |
265 | ifeq ($(CONFIG_PP),yes) |
266 | ifeq ($(SHARED_PP),yes) | |
eb94aca9 | 267 | EXTRALIBS += -L$(VPATH)/libpostproc -lpostproc$(BUILDSUF) |
bba9b16c MN |
268 | else |
269 | # LIBS += libpostproc/libpostproc.a ... should be fixed | |
270 | OBJS += libpostproc/postprocess.o | |
271 | endif | |
272 | endif | |
273 | ||
5798368b J |
274 | ifeq ($(CONFIG_MP3LAME),yes) |
275 | OBJS += mp3lameaudio.o | |
2a2a98c0 | 276 | EXTRALIBS += -lmp3lame |
5798368b J |
277 | endif |
278 | ||
5c5dea3f | 279 | ifeq ($(CONFIG_LIBOGG),yes) |
5c5dea3f | 280 | ifeq ($(CONFIG_LIBVORBIS),yes) |
81e0d0b4 | 281 | OBJS += oggvorbis.o |
078a8dd6 | 282 | EXTRALIBS += -lvorbisenc -lvorbis |
81e0d0b4 | 283 | endif |
5c5dea3f NB |
284 | ifeq ($(CONFIG_LIBTHEORA), yes) |
285 | OBJS += oggtheora.o | |
286 | EXTRALIBS += -ltheora | |
287 | endif | |
078a8dd6 | 288 | EXTRALIBS += -logg |
5c5dea3f | 289 | endif |
81e0d0b4 | 290 | |
43f1708f J |
291 | ifeq ($(TARGET_GPROF),yes) |
292 | CFLAGS+=-p | |
293 | LDFLAGS+=-p | |
294 | endif | |
295 | ||
de6d9b64 | 296 | # i386 mmx specific stuff |
980fc7b8 | 297 | ifeq ($(TARGET_MMX),yes) |
4300403e | 298 | OBJS += i386/fdct_mmx.o i386/cputest.o \ |
de1ee36a | 299 | i386/dsputil_mmx.o i386/mpegvideo_mmx.o \ |
57514323 | 300 | i386/idct_mmx.o i386/motion_est_mmx.o \ |
38acbc3c MM |
301 | i386/simple_idct_mmx.o i386/fft_sse.o i386/vp3dsp_mmx.o \ |
302 | i386/vp3dsp_sse2.o | |
a968e365 FB |
303 | ifdef TARGET_BUILTIN_VECTOR |
304 | i386/fft_sse.o: CFLAGS+= -msse | |
148beec7 | 305 | depend: CFLAGS+= -msse |
a968e365 | 306 | endif |
de6d9b64 FB |
307 | endif |
308 | ||
3d03c0a2 FB |
309 | # armv4l specific stuff |
310 | ifeq ($(TARGET_ARCH_ARMV4L),yes) | |
bd7d1ea7 | 311 | ASM_OBJS += armv4l/jrevdct_arm.o armv4l/simple_idct_arm.o |
676e200c | 312 | OBJS += armv4l/dsputil_arm.o armv4l/mpegvideo_arm.o |
3d03c0a2 FB |
313 | endif |
314 | ||
c34270f5 FB |
315 | # sun mediaLib specific stuff |
316 | # currently only works when libavcodec is used in mplayer | |
317 | ifeq ($(HAVE_MLIB),yes) | |
318 | OBJS += mlib/dsputil_mlib.o | |
319 | CFLAGS += $(MLIB_INC) | |
320 | endif | |
321 | ||
1e98dffb NK |
322 | # alpha specific stuff |
323 | ifeq ($(TARGET_ARCH_ALPHA),yes) | |
8b313a47 FH |
324 | OBJS += alpha/dsputil_alpha.o alpha/mpegvideo_alpha.o \ |
325 | alpha/simple_idct_alpha.o alpha/motion_est_alpha.o | |
f9bb4bdf | 326 | ASM_OBJS += alpha/dsputil_alpha_asm.o alpha/motion_est_mvi_asm.o |
647b610c | 327 | CFLAGS += -fforce-addr |
1e98dffb NK |
328 | endif |
329 | ||
59925ef2 | 330 | ifeq ($(TARGET_ARCH_POWERPC),yes) |
05c4072b | 331 | OBJS += ppc/dsputil_ppc.o ppc/mpegvideo_ppc.o |
ab6c65f6 BF |
332 | endif |
333 | ||
d46aba26 | 334 | ifeq ($(TARGET_MMI),yes) |
5917d17c | 335 | OBJS += ps2/dsputil_mmi.o ps2/idct_mmi.o ps2/mpegvideo_mmi.o |
d46aba26 LS |
336 | endif |
337 | ||
ab6c65f6 | 338 | ifeq ($(TARGET_ALTIVEC),yes) |
8d268a7d | 339 | OBJS += ppc/dsputil_altivec.o ppc/mpegvideo_altivec.o ppc/idct_altivec.o \ |
a6a12a8a RD |
340 | ppc/fft_altivec.o ppc/gmc_altivec.o ppc/fdct_altivec.o \ |
341 | ppc/dsputil_h264_altivec.o | |
59925ef2 BF |
342 | endif |
343 | ||
0c6bd2ea B |
344 | ifeq ($(TARGET_ARCH_SH4),yes) |
345 | OBJS+= sh4/idct_sh4.o sh4/dsputil_sh4.o sh4/dsputil_align.o | |
346 | endif | |
347 | ||
bb476ff3 | 348 | ifeq ($(TARGET_ARCH_SPARC),yes) |
44f54ceb | 349 | OBJS+=sparc/dsputil_vis.o |
bb476ff3 JM |
350 | sparc/%.o: sparc/%.c |
351 | $(CC) -mcpu=ultrasparc -mtune=ultrasparc $(CFLAGS) -c -o $@ $< | |
352 | endif | |
353 | ifeq ($(TARGET_ARCH_SPARC64),yes) | |
44f54ceb MN |
354 | CFLAGS+= -mcpu=ultrasparc -mtune=ultrasparc |
355 | endif | |
356 | ||
bb7d4939 | 357 | SRCS := $(OBJS:.o=.c) $(ASM_OBJS:.o=.S) |
ff4ec49e | 358 | OBJS := $(OBJS) $(ASM_OBJS) |
980fc7b8 | 359 | |
f3ec2d46 | 360 | LIB= $(LIBPREF)avcodec$(LIBSUF) |
0fd94442 | 361 | ifeq ($(BUILD_SHARED),yes) |
f3ec2d46 | 362 | SLIB= $(SLIBPREF)avcodec$(SLIBSUF) |
0fd94442 | 363 | endif |
6d2abd6b | 364 | TESTS= imgresample-test dct-test motion-test fft-test |
de6d9b64 | 365 | |
0fd94442 | 366 | all: $(LIB) $(SLIB) |
ff4ec49e | 367 | |
bc634f6f ZK |
368 | amrlibs: |
369 | $(MAKE) -C amr spclib fipoplib | |
370 | ||
c10e9f70 | 371 | tests: apiexample cpuid_test $(TESTS) |
de6d9b64 | 372 | |
bc634f6f | 373 | $(LIB): $(OBJS) $(AMRLIBS) |
de6d9b64 | 374 | rm -f $@ |
bc634f6f | 375 | $(AR) rc $@ $(OBJS) $(AMREXTRALIBS) |
be7109c1 | 376 | $(RANLIB) $@ |
ff4ec49e | 377 | |
811b32ed | 378 | $(SLIB): $(OBJS) |
91378af4 | 379 | ifeq ($(CONFIG_PP),yes) |
8b8e1c55 | 380 | $(MAKE) -C libpostproc |
91378af4 | 381 | endif |
cf7412b5 FB |
382 | ifeq ($(CONFIG_WIN32),yes) |
383 | $(CC) $(SHFLAGS) -Wl,--output-def,$(@:.dll=.def) -o $@ $(OBJS) $(EXTRALIBS) $(AMREXTRALIBS) | |
384 | -lib /machine:i386 /def:$(@:.dll=.def) | |
385 | else | |
1b8b121f | 386 | $(CC) $(SHFLAGS) -o $@ $(OBJS) $(EXTRALIBS) $(AMREXTRALIBS) $(LDFLAGS) |
cf7412b5 | 387 | endif |
de6d9b64 FB |
388 | |
389 | dsputil.o: dsputil.c dsputil.h | |
390 | ||
bba9b16c MN |
391 | libpostproc/libpostproc.a: |
392 | $(MAKE) -C libpostproc | |
393 | ||
de6d9b64 FB |
394 | %.o: %.c |
395 | $(CC) $(CFLAGS) -c -o $@ $< | |
396 | ||
3d03c0a2 FB |
397 | %.o: %.S |
398 | $(CC) $(CFLAGS) -c -o $@ $< | |
399 | ||
811b32ed | 400 | depend: $(SRCS) |
a968e365 | 401 | $(CC) -MM $(CFLAGS) $^ 1>.depend |
e51d4def | 402 | |
980fc7b8 FB |
403 | dep: depend |
404 | ||
bc634f6f | 405 | clean: $(CLEANAMR) |
77b71ddc | 406 | rm -f *.o *.d *~ .depend $(LIB) $(SLIB) *.so i386/*.o i386/*~ \ |
3d03c0a2 | 407 | armv4l/*.o armv4l/*~ \ |
c34270f5 | 408 | mlib/*.o mlib/*~ \ |
1e98dffb | 409 | alpha/*.o alpha/*~ \ |
59925ef2 | 410 | ppc/*.o ppc/*~ \ |
d46aba26 | 411 | ps2/*.o ps2/*~ \ |
0c6bd2ea | 412 | sh4/*.o sh4/*~ \ |
bb476ff3 | 413 | sparc/*.o sparc/*~ \ |
57514323 ZK |
414 | liba52/*.o liba52/*~ \ |
415 | apiexample $(TESTS) | |
64094f37 | 416 | $(MAKE) -C libpostproc clean |
de6d9b64 | 417 | |
800d7ceb | 418 | distclean: clean |
980fc7b8 FB |
419 | rm -f Makefile.bak .depend |
420 | ||
bc634f6f ZK |
421 | cleanamr: |
422 | $(MAKE) -C amr clean | |
423 | ||
424 | cleanamrfloat: | |
425 | rm -f amr_float/*.o | |
426 | ||
d663a1fd MN |
427 | cleanamrwbfloat: |
428 | $(MAKE) -C amrwb_float -f makefile.gcc clean | |
429 | ||
de6d9b64 FB |
430 | # api example program |
431 | apiexample: apiexample.c $(LIB) | |
cfda33cb | 432 | $(CC) $(CFLAGS) -o $@ $< $(LIB) $(EXTRALIBS) -lm |
de6d9b64 | 433 | |
c10e9f70 NK |
434 | # cpuid test |
435 | cpuid_test: i386/cputest.c | |
436 | $(CC) $(CFLAGS) -D__TEST__ -o $@ $< | |
437 | ||
de6d9b64 FB |
438 | # testing progs |
439 | ||
440 | imgresample-test: imgresample.c | |
6acce86b | 441 | $(CC) $(CFLAGS) -DTEST -o $@ $^ -lm |
de6d9b64 | 442 | |
9ebc63a9 | 443 | dct-test: dct-test.o fdctref.o $(LIB) |
90cee0c3 | 444 | $(CC) -o $@ $^ -lm |
d771bcae | 445 | |
4300403e | 446 | motion-test: motion_test.o $(LIB) |
6acce86b | 447 | $(CC) -o $@ $^ -lm |
4300403e | 448 | |
923ceff8 | 449 | fft-test: fft-test.o $(LIB) |
6d2abd6b FB |
450 | $(CC) -o $@ $^ -lm |
451 | ||
0fd94442 | 452 | ifeq ($(BUILD_SHARED),yes) |
cb728d79 FB |
453 | install: all install-headers |
454 | ifeq ($(CONFIG_WIN32),yes) | |
65d1bea2 | 455 | install $(INSTALLSTRIP) -m 755 $(SLIB) "$(prefix)" |
cb728d79 | 456 | else |
cc973ecb LB |
457 | install -d $(libdir) |
458 | install $(INSTALLSTRIP) -m 755 $(SLIB) $(libdir)/libavcodec-$(VERSION).so | |
459 | ln -sf libavcodec-$(VERSION).so $(libdir)/libavcodec.so | |
c1325d18 | 460 | ldconfig || true |
cb728d79 | 461 | endif |
91378af4 | 462 | ifeq ($(CONFIG_PP),yes) |
8b8e1c55 | 463 | $(MAKE) -C libpostproc $@ |
91378af4 | 464 | endif |
cb728d79 FB |
465 | else |
466 | install: | |
0fd94442 | 467 | endif |
773cefc6 | 468 | |
cb728d79 | 469 | installlib: all install-headers |
cc973ecb | 470 | install -m 644 $(LIB) "$(libdir)" |
cb728d79 FB |
471 | |
472 | install-headers: | |
473 | mkdir -p "$(prefix)/include/ffmpeg" | |
07bd15c3 FR |
474 | install -m 644 $(SRC_PATH)/libavcodec/avcodec.h \ |
475 | $(SRC_PATH)/libavcodec/common.h \ | |
476 | $(SRC_PATH)/libavcodec/rational.h \ | |
cb728d79 | 477 | "$(prefix)/include/ffmpeg" |
773cefc6 | 478 | |
d771bcae FB |
479 | # |
480 | # include dependency files if they exist | |
481 | # | |
482 | ifneq ($(wildcard .depend),) | |
483 | include .depend | |
484 | endif |