annotate Makefile @ 633:e7b72c1dfa1b libavcodec

dct-test update test simple-idct and ijg int DCT too do tests with random & sparse matrixes print systematic error matrixes
author michaelni
date Sun, 01 Sep 2002 09:33:05 +0000
parents bb6a69f9d409
children 57b9a37546a0
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
395
80518daaab05 added VPATH support for multiple dir compilation
glantau
parents: 356
diff changeset
1 #
80518daaab05 added VPATH support for multiple dir compilation
glantau
parents: 356
diff changeset
2 # libavcodec Makefile
429
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
3 # (c) 2000, 2001, 2002 Fabrice Bellard
395
80518daaab05 added VPATH support for multiple dir compilation
glantau
parents: 356
diff changeset
4 #
2
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
5 include ../config.mak
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
6
395
80518daaab05 added VPATH support for multiple dir compilation
glantau
parents: 356
diff changeset
7 VPATH=$(SRC_PATH)/libavcodec
80518daaab05 added VPATH support for multiple dir compilation
glantau
parents: 356
diff changeset
8
429
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
9 # NOTE: -I.. is needed to include config.h
571
0a9259126188 largefile support patch by Roy Sigurd Karlsbakk <roy at karlsbakk.net>
michaelni
parents: 539
diff changeset
10 CFLAGS= $(OPTFLAGS) -Wall -g -DHAVE_AV_CONFIG_H -I.. -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_GNU_SOURCE
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
11 LDFLAGS= -g
986e461dc072 Initial revision
glantau
parents:
diff changeset
12
489
b9fcdf9f4420 added installlib target to install static libraries and includes
bellard
parents: 484
diff changeset
13 OBJS= common.o utils.o mem.o allcodecs.o \
625
bb6a69f9d409 slow but accurate integer dct from IJG (should be ok with the LGPL as the old DCT is the fast integer DCT from IJG)
michaelni
parents: 623
diff changeset
14 mpegvideo.o h263.o jrevdct.o jfdctfst.o jfdctint.o\
23
1e131bc21101 added MJPEG decoder, renamed mjpegenc.c to mjpeg.c
glantau
parents: 22
diff changeset
15 mpegaudio.o ac3enc.o mjpeg.o resample.o dsputil.o \
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
16 motion_est.o imgconvert.o imgresample.o msmpeg4.o \
521
9c66b5183ab3 new codec: Sorenson v1
nickols_k
parents: 509
diff changeset
17 mpeg12.o h263dec.o svq1.o rv10.o mpegaudiodec.o pcm.o simple_idct.o \
612
c0005de2be59 new ratecontrol code
michaelni
parents: 607
diff changeset
18 ratecontrol.o adpcm.o eval.o
2
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
19 ASM_OBJS=
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
20
338
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
21 # currently using liba52 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
22 ifeq ($(CONFIG_AC3),yes)
338
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
23 OBJS+= a52dec.o
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
24
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
25 # using builtin liba52 or runtime linked liba52.so.0
429
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
26 ifneq ($(CONFIG_A52BIN),yes)
338
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
27 OBJS+= liba52/bit_allocate.o liba52/bitstream.o liba52/downmix.o \
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
28 liba52/imdct.o liba52/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
29 endif
429
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
30 endif
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
31
258
9c975237ec64 - Added MP3 encoding through libmp3lame contributed by Lennert Buytenhek.
pulento
parents: 252
diff changeset
32 ifeq ($(CONFIG_MP3LAME),yes)
9c975237ec64 - Added MP3 encoding through libmp3lame contributed by Lennert Buytenhek.
pulento
parents: 252
diff changeset
33 OBJS += mp3lameaudio.o
348
ae9e9af0b627 * by Thomas Sailer:
kabi
parents: 343
diff changeset
34 EXTRALIBS += -lmp3lame
258
9c975237ec64 - Added MP3 encoding through libmp3lame contributed by Lennert Buytenhek.
pulento
parents: 252
diff changeset
35 endif
9c975237ec64 - Added MP3 encoding through libmp3lame contributed by Lennert Buytenhek.
pulento
parents: 252
diff changeset
36
252
ddb1a0e94cf4 - Added PSNR feature to libavcodec and ffmpeg. By now just Y PSNR until I'm
pulento
parents: 214
diff changeset
37 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
38 CFLAGS+=-p
ddb1a0e94cf4 - Added PSNR feature to libavcodec and ffmpeg. By now just Y PSNR until I'm
pulento
parents: 214
diff changeset
39 LDFLAGS+=-p
ddb1a0e94cf4 - Added PSNR feature to libavcodec and ffmpeg. By now just Y PSNR until I'm
pulento
parents: 214
diff changeset
40 endif
ddb1a0e94cf4 - Added PSNR feature to libavcodec and ffmpeg. By now just Y PSNR until I'm
pulento
parents: 214
diff changeset
41
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
42 # i386 mmx specific stuff
2
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
43 ifeq ($(TARGET_MMX),yes)
74
d7603c46c52f suppressed nasm stuff
glantau
parents: 62
diff changeset
44 OBJS += i386/fdct_mmx.o i386/cputest.o \
32
a524484f9adf added idct mmx
glantau
parents: 23
diff changeset
45 i386/dsputil_mmx.o i386/mpegvideo_mmx.o \
338
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
46 i386/idct_mmx.o i386/motion_est_mmx.o \
174
ac5075a55488 new IDCT code by Michael Niedermayer (michaelni@gmx.at) - #define SIMPLE_IDCT to enable
arpi_esp
parents: 138
diff changeset
47 i386/simple_idct_mmx.o
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
48 endif
986e461dc072 Initial revision
glantau
parents:
diff changeset
49
62
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
50 # armv4l specific stuff
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
51 ifeq ($(TARGET_ARCH_ARMV4L),yes)
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
52 ASM_OBJS += armv4l/jrevdct_arm.o
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
53 OBJS += armv4l/dsputil_arm.o
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
54 endif
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
55
88
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
56 # sun mediaLib specific stuff
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
57 # currently only works when libavcodec is used in mplayer
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
58 ifeq ($(HAVE_MLIB),yes)
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
59 OBJS += mlib/dsputil_mlib.o
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
60 CFLAGS += $(MLIB_INC)
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
61 endif
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
62
214
73df666cacc7 Alpha optimizations by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
nickols_k
parents: 174
diff changeset
63 # alpha specific stuff
73df666cacc7 Alpha optimizations by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
nickols_k
parents: 174
diff changeset
64 ifeq ($(TARGET_ARCH_ALPHA),yes)
586
54b1c94977d5 MVI optimizations for motion estimation.
mellum
parents: 573
diff changeset
65 OBJS += alpha/dsputil_alpha.o alpha/mpegvideo_alpha.o alpha/motion_est_alpha.o
509
cab79946302f Implement put_pixels_clamped and add_pixels_clamped in Assembler. This
mellum
parents: 489
diff changeset
66 ASM_OBJS += alpha/dsputil_alpha_asm.o
539
8af95bc44ab9 Tweak Alpha compiler flags.
mellum
parents: 521
diff changeset
67 CFLAGS += -Wa,-mpca56 -finline-limit=8000 -fforce-addr -freduce-all-givs
214
73df666cacc7 Alpha optimizations by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
nickols_k
parents: 174
diff changeset
68 endif
73df666cacc7 Alpha optimizations by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
nickols_k
parents: 174
diff changeset
69
623
92e99e506920 first cut at altivec support on darwin patch by (Brian Foley <bfoley at compsoc dot nuigalway dot ie>)
michaelni
parents: 612
diff changeset
70 ifeq ($(TARGET_ARCH_POWERPC),yes)
92e99e506920 first cut at altivec support on darwin patch by (Brian Foley <bfoley at compsoc dot nuigalway dot ie>)
michaelni
parents: 612
diff changeset
71 CFLAGS += -faltivec
92e99e506920 first cut at altivec support on darwin patch by (Brian Foley <bfoley at compsoc dot nuigalway dot ie>)
michaelni
parents: 612
diff changeset
72 OBJS += ppc/dsputil_altivec.o
92e99e506920 first cut at altivec support on darwin patch by (Brian Foley <bfoley at compsoc dot nuigalway dot ie>)
michaelni
parents: 612
diff changeset
73 endif
92e99e506920 first cut at altivec support on darwin patch by (Brian Foley <bfoley at compsoc dot nuigalway dot ie>)
michaelni
parents: 612
diff changeset
74
509
cab79946302f Implement put_pixels_clamped and add_pixels_clamped in Assembler. This
mellum
parents: 489
diff changeset
75 SRCS := $(OBJS:.o=.c) $(ASM_OBJS:.o=.S)
429
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
76 OBJS := $(OBJS) $(ASM_OBJS)
2
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
77
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
78 LIB= libavcodec.a
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
79 ifeq ($(BUILD_SHARED),yes)
429
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
80 SLIB= libavcodec.so
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
81 endif
74
d7603c46c52f suppressed nasm stuff
glantau
parents: 62
diff changeset
82 TESTS= imgresample-test dct-test motion-test
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
83
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
84 all: $(LIB) $(SLIB)
429
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
85
43
ab64a3fc62bf Portability and testing issues
nickols_k
parents: 32
diff changeset
86 tests: apiexample cpuid_test $(TESTS)
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
87
429
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
88 $(LIB): $(OBJS)
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
89 rm -f $@
607
5762b2d659d2 darwin patches by Heliodoro Tammaro <helio at interactives dot org>
michaelni
parents: 603
diff changeset
90 $(AR) rcs $@ $(OBJS)
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
91
429
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
92 $(SLIB): $(OBJS)
572
5a06c3552026 BeOS patches by "shatty" <shatty at myrealbox.com>
michaelni
parents: 571
diff changeset
93 $(CC) $(SHFLAGS) -o $@ $(OBJS) $(EXTRALIBS)
429
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
94
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
95 dsputil.o: dsputil.c dsputil.h
986e461dc072 Initial revision
glantau
parents:
diff changeset
96
986e461dc072 Initial revision
glantau
parents:
diff changeset
97 %.o: %.c
986e461dc072 Initial revision
glantau
parents:
diff changeset
98 $(CC) $(CFLAGS) -c -o $@ $<
986e461dc072 Initial revision
glantau
parents:
diff changeset
99
62
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
100 %.o: %.S
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
101 $(CC) $(CFLAGS) -c -o $@ $<
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
102
2
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
103 # depend only used by mplayer now
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
104 dep: depend
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
105
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
106 depend:
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
107 $(CC) -MM $(CFLAGS) $(SRCS) 1>.depend
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
108
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
109 clean:
343
9211a0c9466a * cleanup
kabi
parents: 340
diff changeset
110 rm -f *.o *~ .depend $(LIB) $(SLIB) *.so i386/*.o i386/*~ \
62
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
111 armv4l/*.o armv4l/*~ \
88
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
112 mlib/*.o mlib/*~ \
214
73df666cacc7 Alpha optimizations by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
nickols_k
parents: 174
diff changeset
113 alpha/*.o alpha/*~ \
623
92e99e506920 first cut at altivec support on darwin patch by (Brian Foley <bfoley at compsoc dot nuigalway dot ie>)
michaelni
parents: 612
diff changeset
114 ppc/*.o ppc/*~ \
338
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
115 liba52/*.o liba52/*~ \
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
116 apiexample $(TESTS)
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
117
484
f8bbc8976247 in libavcodec/Makefile there is in line 110: "distclean: clean<binary char>"
arpi_esp
parents: 429
diff changeset
118 distclean: clean
2
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
119 rm -f Makefile.bak .depend
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
120
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
121 # api example program
986e461dc072 Initial revision
glantau
parents:
diff changeset
122 apiexample: apiexample.c $(LIB)
986e461dc072 Initial revision
glantau
parents:
diff changeset
123 $(CC) $(CFLAGS) -o $@ $< $(LIB) -lm
986e461dc072 Initial revision
glantau
parents:
diff changeset
124
43
ab64a3fc62bf Portability and testing issues
nickols_k
parents: 32
diff changeset
125 # cpuid test
ab64a3fc62bf Portability and testing issues
nickols_k
parents: 32
diff changeset
126 cpuid_test: i386/cputest.c
ab64a3fc62bf Portability and testing issues
nickols_k
parents: 32
diff changeset
127 $(CC) $(CFLAGS) -D__TEST__ -o $@ $<
ab64a3fc62bf Portability and testing issues
nickols_k
parents: 32
diff changeset
128
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
129 # testing progs
986e461dc072 Initial revision
glantau
parents:
diff changeset
130
986e461dc072 Initial revision
glantau
parents:
diff changeset
131 imgresample-test: imgresample.c
986e461dc072 Initial revision
glantau
parents:
diff changeset
132 $(CC) $(CFLAGS) -DTEST -o $@ $^
986e461dc072 Initial revision
glantau
parents:
diff changeset
133
633
e7b72c1dfa1b dct-test update
michaelni
parents: 625
diff changeset
134 dct-test: dct-test.o jfdctfst.o jfdctint.o i386/fdct_mmx.o\
e7b72c1dfa1b dct-test update
michaelni
parents: 625
diff changeset
135 fdctref.o jrevdct.o i386/idct_mmx.o simple_idct.o i386/simple_idct_mmx.o
607
5762b2d659d2 darwin patches by Heliodoro Tammaro <helio at interactives dot org>
michaelni
parents: 603
diff changeset
136 $(CC) -o $@ $^ -lm
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
137
74
d7603c46c52f suppressed nasm stuff
glantau
parents: 62
diff changeset
138 motion-test: motion_test.o $(LIB)
d7603c46c52f suppressed nasm stuff
glantau
parents: 62
diff changeset
139 $(CC) -o $@ $^
d7603c46c52f suppressed nasm stuff
glantau
parents: 62
diff changeset
140
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
141 install: all
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
142 ifeq ($(BUILD_SHARED),yes)
603
442dede8795b patch by (Volker Moell <volker-ml at die-moells dot de>)
michaelni
parents: 586
diff changeset
143 install -d $(prefix)/lib
429
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
144 install -s -m 755 $(SLIB) $(prefix)/lib/libavcodec-$(VERSION).so
603
442dede8795b patch by (Volker Moell <volker-ml at die-moells dot de>)
michaelni
parents: 586
diff changeset
145 ln -sf libavcodec-$(VERSION).so $(prefix)/lib/libavcodec.so
442dede8795b patch by (Volker Moell <volker-ml at die-moells dot de>)
michaelni
parents: 586
diff changeset
146 ldconfig || true
429
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
147 mkdir -p $(prefix)/include/ffmpeg
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
148 install -m 644 avcodec.h $(prefix)/include/ffmpeg/avcodec.h
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
149 install -m 644 common.h $(prefix)/include/ffmpeg/common.h
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
150 endif
489
b9fcdf9f4420 added installlib target to install static libraries and includes
bellard
parents: 484
diff changeset
151
b9fcdf9f4420 added installlib target to install static libraries and includes
bellard
parents: 484
diff changeset
152 installlib: all
b9fcdf9f4420 added installlib target to install static libraries and includes
bellard
parents: 484
diff changeset
153 install -m 644 $(LIB) $(prefix)/lib
b9fcdf9f4420 added installlib target to install static libraries and includes
bellard
parents: 484
diff changeset
154 mkdir -p $(prefix)/include/ffmpeg
b9fcdf9f4420 added installlib target to install static libraries and includes
bellard
parents: 484
diff changeset
155 install -m 644 $(SRC_PATH)/libavcodec/avcodec.h $(SRC_PATH)/libavcodec/common.h \
b9fcdf9f4420 added installlib target to install static libraries and includes
bellard
parents: 484
diff changeset
156 $(prefix)/include/ffmpeg
b9fcdf9f4420 added installlib target to install static libraries and includes
bellard
parents: 484
diff changeset
157
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
158 #
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
159 # 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
160 #
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
161 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
162 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
163 endif