ffmpeg / libavcodec / Makefile @ 1e98dffb
History | View | Annotate | Download (2.85 KB)
1 |
include ../config.mak |
---|---|
2 |
|
3 |
CFLAGS= $(OPTFLAGS) -Wall -g -DHAVE_AV_CONFIG_H |
4 |
LDFLAGS= -g |
5 |
|
6 |
OBJS= common.o utils.o mpegvideo.o h263.o jrevdct.o jfdctfst.o \ |
7 |
mpegaudio.o ac3enc.o mjpeg.o resample.o dsputil.o \ |
8 |
motion_est.o imgconvert.o imgresample.o msmpeg4.o \ |
9 |
mpeg12.o h263dec.o rv10.o mpegaudiodec.o pcm.o simple_idct.o |
10 |
ASM_OBJS= |
11 |
|
12 |
# currently using libac3 for ac3 decoding |
13 |
ifeq ($(CONFIG_AC3),yes) |
14 |
OBJS+= ac3dec.o \ |
15 |
libac3/bit_allocate.o libac3/bitstream.o libac3/downmix.o \ |
16 |
libac3/imdct.o libac3/parse.o |
17 |
endif |
18 |
|
19 |
# i386 mmx specific stuff |
20 |
ifeq ($(TARGET_MMX),yes) |
21 |
OBJS += i386/fdct_mmx.o i386/cputest.o \ |
22 |
i386/dsputil_mmx.o i386/mpegvideo_mmx.o \ |
23 |
i386/idct_mmx.o i386/motion_est_mmx.o \ |
24 |
i386/simple_idct_mmx.o |
25 |
endif |
26 |
|
27 |
# armv4l specific stuff |
28 |
ifeq ($(TARGET_ARCH_ARMV4L),yes) |
29 |
ASM_OBJS += armv4l/jrevdct_arm.o |
30 |
OBJS += armv4l/dsputil_arm.o |
31 |
endif |
32 |
|
33 |
# sun mediaLib specific stuff |
34 |
# currently only works when libavcodec is used in mplayer |
35 |
ifeq ($(HAVE_MLIB),yes) |
36 |
OBJS += mlib/dsputil_mlib.o |
37 |
CFLAGS += $(MLIB_INC) |
38 |
endif |
39 |
|
40 |
# alpha specific stuff |
41 |
ifeq ($(TARGET_ARCH_ALPHA),yes) |
42 |
OBJS += alpha/dsputil_alpha.o alpha/mpegvideo_alpha.o |
43 |
CFLAGS += -Wa,-mpca56 |
44 |
endif |
45 |
|
46 |
SRCS = $(OBJS:.o=.c) $(ASM_OBJS:.o=.s) |
47 |
|
48 |
LIB= libavcodec.a |
49 |
ifeq ($(BUILD_SHARED),yes) |
50 |
SLIB= libffmpeg-$(VERSION).so |
51 |
endif |
52 |
TESTS= imgresample-test dct-test motion-test |
53 |
|
54 |
all: $(LIB) $(SLIB) |
55 |
tests: apiexample cpuid_test $(TESTS) |
56 |
|
57 |
$(LIB): $(OBJS) $(ASM_OBJS) |
58 |
rm -f $@ |
59 |
$(AR) rcs $@ $(OBJS) $(ASM_OBJS) |
60 |
|
61 |
$(SLIB): $(OBJS) $(ASM_OBJS) |
62 |
rm -f $@ |
63 |
$(CC) -shared -o $@ $(OBJS) $(ASM_OBJS) |
64 |
ln -sf $@ libffmpeg.so |
65 |
dsputil.o: dsputil.c dsputil.h |
66 |
|
67 |
%.o: %.c |
68 |
$(CC) $(CFLAGS) -c -o $@ $< |
69 |
|
70 |
%.o: %.S |
71 |
$(CC) $(CFLAGS) -c -o $@ $< |
72 |
|
73 |
# depend only used by mplayer now |
74 |
dep: depend |
75 |
|
76 |
depend: |
77 |
$(CC) -MM $(CFLAGS) $(SRCS) 1>.depend |
78 |
|
79 |
clean: |
80 |
rm -f *.o *~ $(LIB) $(SLIB) *.so i386/*.o i386/*~ \ |
81 |
armv4l/*.o armv4l/*~ \ |
82 |
mlib/*.o mlib/*~ \ |
83 |
alpha/*.o alpha/*~ \ |
84 |
libac3/*.o libac3/*~ \ |
85 |
apiexample $(TESTS) |
86 |
|
87 |
distclean: clean |
88 |
rm -f Makefile.bak .depend |
89 |
|
90 |
# api example program |
91 |
apiexample: apiexample.c $(LIB) |
92 |
$(CC) $(CFLAGS) -o $@ $< $(LIB) -lm |
93 |
|
94 |
# cpuid test |
95 |
cpuid_test: i386/cputest.c |
96 |
$(CC) $(CFLAGS) -D__TEST__ -o $@ $< |
97 |
|
98 |
# testing progs |
99 |
|
100 |
imgresample-test: imgresample.c |
101 |
$(CC) $(CFLAGS) -DTEST -o $@ $^ |
102 |
|
103 |
dct-test: dct-test.o jfdctfst.o i386/fdct_mmx.o \ |
104 |
fdctref.o jrevdct.o i386/idct_mmx.o |
105 |
$(CC) -o $@ $^ |
106 |
|
107 |
motion-test: motion_test.o $(LIB) |
108 |
$(CC) -o $@ $^ |
109 |
|
110 |
install: all |
111 |
# install -m 644 $(LIB) $(prefix)/lib |
112 |
ifeq ($(BUILD_SHARED),yes) |
113 |
install -s -m 755 $(SLIB) $(prefix)/lib |
114 |
ln -sf $(prefix)/lib/$(SLIB) $(prefix)/lib/libffmpeg.so |
115 |
ldconfig |
116 |
mkdir -p $(prefix)/include/libffmpeg |
117 |
install -m 644 avcodec.h $(prefix)/include/libffmpeg/avcodec.h |
118 |
install -m 644 common.h $(prefix)/include/libffmpeg/common.h |
119 |
endif |
120 |
# |
121 |
# include dependency files if they exist |
122 |
# |
123 |
ifneq ($(wildcard .depend),) |
124 |
include .depend |
125 |
endif |