Commit | Line | Data |
---|---|---|
980fc7b8 FB |
1 | include ../config.mak |
2 | ||
2b0c1a44 | 3 | CFLAGS= $(OPTFLAGS) -Wall -g -DHAVE_AV_CONFIG_H |
de6d9b64 FB |
4 | LDFLAGS= -g |
5 | ||
6 | OBJS= common.o utils.o mpegvideo.o h263.o jrevdct.o jfdctfst.o \ | |
10b7b472 | 7 | mpegaudio.o ac3enc.o mjpeg.o resample.o dsputil.o \ |
de6d9b64 FB |
8 | motion_est.o imgconvert.o imgresample.o msmpeg4.o \ |
9 | mpeg12.o h263dec.o rv10.o | |
980fc7b8 | 10 | ASM_OBJS= |
de6d9b64 FB |
11 | |
12 | # currently using libac3 for ac3 decoding | |
d771bcae | 13 | ifeq ($(CONFIG_AC3),yes) |
de6d9b64 FB |
14 | OBJS+= ac3dec.o \ |
15 | libac3/bit_allocate.o libac3/bitstream.o libac3/downmix.o \ | |
16 | libac3/imdct.o libac3/parse.o | |
d771bcae | 17 | endif |
de6d9b64 FB |
18 | |
19 | # currently using mpglib for mpeg audio decoding | |
d771bcae | 20 | ifeq ($(CONFIG_MPGLIB),yes) |
de6d9b64 FB |
21 | OBJS+= mpegaudiodec.o \ |
22 | mpglib/layer1.o mpglib/layer2.o mpglib/layer3.o \ | |
23 | mpglib/dct64_i386.o mpglib/decode_i386.o mpglib/tabinit.o | |
d771bcae | 24 | endif |
de6d9b64 FB |
25 | |
26 | # i386 mmx specific stuff | |
980fc7b8 | 27 | ifeq ($(TARGET_MMX),yes) |
1d20b11a | 28 | ASM_OBJS += i386/fdct_mmx.o i386/sad_mmx.o |
980fc7b8 | 29 | OBJS += i386/fdctdata.o i386/cputest.o \ |
de1ee36a FB |
30 | i386/dsputil_mmx.o i386/mpegvideo_mmx.o \ |
31 | i386/idct_mmx.o | |
de6d9b64 FB |
32 | endif |
33 | ||
980fc7b8 FB |
34 | SRCS = $(OBJS:.o=.c) $(ASM_OBJS:.o=.s) |
35 | ||
de6d9b64 FB |
36 | LIB= libavcodec.a |
37 | TESTS= imgresample-test dct-test | |
38 | ||
54329dd5 | 39 | all: $(LIB) |
c10e9f70 | 40 | tests: apiexample cpuid_test $(TESTS) |
de6d9b64 | 41 | |
980fc7b8 | 42 | $(LIB): $(OBJS) $(ASM_OBJS) |
de6d9b64 | 43 | rm -f $@ |
980fc7b8 | 44 | $(AR) rcs $@ $(OBJS) $(ASM_OBJS) |
de6d9b64 FB |
45 | |
46 | dsputil.o: dsputil.c dsputil.h | |
47 | ||
48 | %.o: %.c | |
49 | $(CC) $(CFLAGS) -c -o $@ $< | |
50 | ||
51 | %.o: %.s | |
52 | nasm -f elf -o $@ $< | |
53 | ||
980fc7b8 FB |
54 | # depend only used by mplayer now |
55 | dep: depend | |
56 | ||
57 | depend: | |
58 | $(CC) -MM $(CFLAGS) $(SRCS) 1>.depend | |
59 | ||
de6d9b64 FB |
60 | clean: |
61 | rm -f *.o *~ *.a i386/*.o i386/*~ \ | |
62 | libac3/*.o libac3/*~ \ | |
63 | mpglib/*.o mpglib/*~ \ | |
64 | apiexample $(TESTS) | |
65 | ||
980fc7b8 FB |
66 | distclean: clean |
67 | rm -f Makefile.bak .depend | |
68 | ||
de6d9b64 FB |
69 | # api example program |
70 | apiexample: apiexample.c $(LIB) | |
71 | $(CC) $(CFLAGS) -o $@ $< $(LIB) -lm | |
72 | ||
c10e9f70 NK |
73 | # cpuid test |
74 | cpuid_test: i386/cputest.c | |
75 | $(CC) $(CFLAGS) -D__TEST__ -o $@ $< | |
76 | ||
de6d9b64 FB |
77 | # testing progs |
78 | ||
79 | imgresample-test: imgresample.c | |
80 | $(CC) $(CFLAGS) -DTEST -o $@ $^ | |
81 | ||
de1ee36a FB |
82 | dct-test: dct-test.o jfdctfst.o i386/fdct_mmx.o i386/fdctdata.o \ |
83 | fdctref.o jrevdct.o i386/idct_mmx.o | |
de6d9b64 | 84 | $(CC) -o $@ $^ |
d771bcae FB |
85 | |
86 | # | |
87 | # include dependency files if they exist | |
88 | # | |
89 | ifneq ($(wildcard .depend),) | |
90 | include .depend | |
91 | endif |