annotate Makefile @ 252:ddb1a0e94cf4 libavcodec

- Added PSNR feature to libavcodec and ffmpeg. By now just Y PSNR until I'm sure it works ok. Also it's slow, so use it only when you _really_ need to measure quality. - Fix libavcodec Makefile to enable profiling.
author pulento
date Tue, 26 Feb 2002 22:14:27 +0000
parents 73df666cacc7
children 9c975237ec64
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
1 include ../config.mak
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
2
9
0dd0178a24c5 added mpegvideo_mmx.c - added HAVE_AV_CONFIG_H
glantau
parents: 8
diff changeset
3 CFLAGS= $(OPTFLAGS) -Wall -g -DHAVE_AV_CONFIG_H
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
4 LDFLAGS= -g
986e461dc072 Initial revision
glantau
parents:
diff changeset
5
986e461dc072 Initial revision
glantau
parents:
diff changeset
6 OBJS= common.o utils.o mpegvideo.o h263.o jrevdct.o jfdctfst.o \
23
1e131bc21101 added MJPEG decoder, renamed mjpegenc.c to mjpeg.c
glantau
parents: 22
diff changeset
7 mpegaudio.o ac3enc.o mjpeg.o resample.o dsputil.o \
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
8 motion_est.o imgconvert.o imgresample.o msmpeg4.o \
174
ac5075a55488 new IDCT code by Michael Niedermayer (michaelni@gmx.at) - #define SIMPLE_IDCT to enable
arpi_esp
parents: 138
diff changeset
9 mpeg12.o h263dec.o rv10.o mpegaudiodec.o pcm.o simple_idct.o
2
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
10 ASM_OBJS=
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
11
986e461dc072 Initial revision
glantau
parents:
diff changeset
12 # currently using libac3 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
13 ifeq ($(CONFIG_AC3),yes)
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
14 OBJS+= ac3dec.o \
986e461dc072 Initial revision
glantau
parents:
diff changeset
15 libac3/bit_allocate.o libac3/bitstream.o libac3/downmix.o \
986e461dc072 Initial revision
glantau
parents:
diff changeset
16 libac3/imdct.o libac3/parse.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
17 endif
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
18
252
ddb1a0e94cf4 - Added PSNR feature to libavcodec and ffmpeg. By now just Y PSNR until I'm
pulento
parents: 214
diff changeset
19 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
20 CFLAGS+=-p
ddb1a0e94cf4 - Added PSNR feature to libavcodec and ffmpeg. By now just Y PSNR until I'm
pulento
parents: 214
diff changeset
21 LDFLAGS+=-p
ddb1a0e94cf4 - Added PSNR feature to libavcodec and ffmpeg. By now just Y PSNR until I'm
pulento
parents: 214
diff changeset
22 endif
ddb1a0e94cf4 - Added PSNR feature to libavcodec and ffmpeg. By now just Y PSNR until I'm
pulento
parents: 214
diff changeset
23
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
24 # i386 mmx specific stuff
2
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
25 ifeq ($(TARGET_MMX),yes)
74
d7603c46c52f suppressed nasm stuff
glantau
parents: 62
diff changeset
26 OBJS += i386/fdct_mmx.o i386/cputest.o \
32
a524484f9adf added idct mmx
glantau
parents: 23
diff changeset
27 i386/dsputil_mmx.o i386/mpegvideo_mmx.o \
174
ac5075a55488 new IDCT code by Michael Niedermayer (michaelni@gmx.at) - #define SIMPLE_IDCT to enable
arpi_esp
parents: 138
diff changeset
28 i386/idct_mmx.o i386/motion_est_mmx.o \
ac5075a55488 new IDCT code by Michael Niedermayer (michaelni@gmx.at) - #define SIMPLE_IDCT to enable
arpi_esp
parents: 138
diff changeset
29 i386/simple_idct_mmx.o
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
30 endif
986e461dc072 Initial revision
glantau
parents:
diff changeset
31
62
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
32 # armv4l specific stuff
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
33 ifeq ($(TARGET_ARCH_ARMV4L),yes)
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
34 ASM_OBJS += armv4l/jrevdct_arm.o
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
35 OBJS += armv4l/dsputil_arm.o
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
36 endif
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
37
88
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
38 # sun mediaLib specific stuff
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
39 # currently only works when libavcodec is used in mplayer
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
40 ifeq ($(HAVE_MLIB),yes)
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
41 OBJS += mlib/dsputil_mlib.o
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
42 CFLAGS += $(MLIB_INC)
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
43 endif
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
44
214
73df666cacc7 Alpha optimizations by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
nickols_k
parents: 174
diff changeset
45 # alpha specific stuff
73df666cacc7 Alpha optimizations by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
nickols_k
parents: 174
diff changeset
46 ifeq ($(TARGET_ARCH_ALPHA),yes)
73df666cacc7 Alpha optimizations by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
nickols_k
parents: 174
diff changeset
47 OBJS += alpha/dsputil_alpha.o alpha/mpegvideo_alpha.o
73df666cacc7 Alpha optimizations by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
nickols_k
parents: 174
diff changeset
48 CFLAGS += -Wa,-mpca56
73df666cacc7 Alpha optimizations by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
nickols_k
parents: 174
diff changeset
49 endif
73df666cacc7 Alpha optimizations by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
nickols_k
parents: 174
diff changeset
50
2
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
51 SRCS = $(OBJS:.o=.c) $(ASM_OBJS:.o=.s)
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
52
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
53 LIB= libavcodec.a
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
54 ifeq ($(BUILD_SHARED),yes)
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
55 SLIB= libffmpeg-$(VERSION).so
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
56 endif
74
d7603c46c52f suppressed nasm stuff
glantau
parents: 62
diff changeset
57 TESTS= imgresample-test dct-test motion-test
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
58
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
59 all: $(LIB) $(SLIB)
43
ab64a3fc62bf Portability and testing issues
nickols_k
parents: 32
diff changeset
60 tests: apiexample cpuid_test $(TESTS)
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
61
2
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
62 $(LIB): $(OBJS) $(ASM_OBJS)
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
63 rm -f $@
2
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
64 $(AR) rcs $@ $(OBJS) $(ASM_OBJS)
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
65
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
66 $(SLIB): $(OBJS) $(ASM_OBJS)
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
67 rm -f $@
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
68 $(CC) -shared -o $@ $(OBJS) $(ASM_OBJS)
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
69 ln -sf $@ libffmpeg.so
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
70 dsputil.o: dsputil.c dsputil.h
986e461dc072 Initial revision
glantau
parents:
diff changeset
71
986e461dc072 Initial revision
glantau
parents:
diff changeset
72 %.o: %.c
986e461dc072 Initial revision
glantau
parents:
diff changeset
73 $(CC) $(CFLAGS) -c -o $@ $<
986e461dc072 Initial revision
glantau
parents:
diff changeset
74
62
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
75 %.o: %.S
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
76 $(CC) $(CFLAGS) -c -o $@ $<
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
77
2
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
78 # depend only used by mplayer now
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
79 dep: depend
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
80
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
81 depend:
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
82 $(CC) -MM $(CFLAGS) $(SRCS) 1>.depend
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
83
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
84 clean:
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
85 rm -f *.o *~ $(LIB) $(SLIB) *.so i386/*.o i386/*~ \
62
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
86 armv4l/*.o armv4l/*~ \
88
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
87 mlib/*.o mlib/*~ \
214
73df666cacc7 Alpha optimizations by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
nickols_k
parents: 174
diff changeset
88 alpha/*.o alpha/*~ \
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
89 libac3/*.o libac3/*~ \
986e461dc072 Initial revision
glantau
parents:
diff changeset
90 apiexample $(TESTS)
986e461dc072 Initial revision
glantau
parents:
diff changeset
91
2
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
92 distclean: clean
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
93 rm -f Makefile.bak .depend
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
94
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
95 # api example program
986e461dc072 Initial revision
glantau
parents:
diff changeset
96 apiexample: apiexample.c $(LIB)
986e461dc072 Initial revision
glantau
parents:
diff changeset
97 $(CC) $(CFLAGS) -o $@ $< $(LIB) -lm
986e461dc072 Initial revision
glantau
parents:
diff changeset
98
43
ab64a3fc62bf Portability and testing issues
nickols_k
parents: 32
diff changeset
99 # cpuid test
ab64a3fc62bf Portability and testing issues
nickols_k
parents: 32
diff changeset
100 cpuid_test: i386/cputest.c
ab64a3fc62bf Portability and testing issues
nickols_k
parents: 32
diff changeset
101 $(CC) $(CFLAGS) -D__TEST__ -o $@ $<
ab64a3fc62bf Portability and testing issues
nickols_k
parents: 32
diff changeset
102
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
103 # testing progs
986e461dc072 Initial revision
glantau
parents:
diff changeset
104
986e461dc072 Initial revision
glantau
parents:
diff changeset
105 imgresample-test: imgresample.c
986e461dc072 Initial revision
glantau
parents:
diff changeset
106 $(CC) $(CFLAGS) -DTEST -o $@ $^
986e461dc072 Initial revision
glantau
parents:
diff changeset
107
74
d7603c46c52f suppressed nasm stuff
glantau
parents: 62
diff changeset
108 dct-test: dct-test.o jfdctfst.o i386/fdct_mmx.o \
32
a524484f9adf added idct mmx
glantau
parents: 23
diff changeset
109 fdctref.o jrevdct.o i386/idct_mmx.o
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
110 $(CC) -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
111
74
d7603c46c52f suppressed nasm stuff
glantau
parents: 62
diff changeset
112 motion-test: motion_test.o $(LIB)
d7603c46c52f suppressed nasm stuff
glantau
parents: 62
diff changeset
113 $(CC) -o $@ $^
d7603c46c52f suppressed nasm stuff
glantau
parents: 62
diff changeset
114
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
115 install: all
137
21532c56ed8b headers installation
nickols_k
parents: 136
diff changeset
116 # install -m 644 $(LIB) $(prefix)/lib
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
117 ifeq ($(BUILD_SHARED),yes)
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
118 install -s -m 755 $(SLIB) $(prefix)/lib
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
119 ln -sf $(prefix)/lib/$(SLIB) $(prefix)/lib/libffmpeg.so
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
120 ldconfig
137
21532c56ed8b headers installation
nickols_k
parents: 136
diff changeset
121 mkdir -p $(prefix)/include/libffmpeg
21532c56ed8b headers installation
nickols_k
parents: 136
diff changeset
122 install -m 644 avcodec.h $(prefix)/include/libffmpeg/avcodec.h
138
8b7772ef26a0 missing header
nickols_k
parents: 137
diff changeset
123 install -m 644 common.h $(prefix)/include/libffmpeg/common.h
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
124 endif
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
125 #
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
126 # 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
127 #
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
128 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
129 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
130 endif