annotate Makefile @ 410:8aba98b353f0 libavcodec

* oops - these are the midnight commits... removed -fPIC used for testing compilability
author kabi
date Tue, 21 May 2002 23:07:26 +0000
parents 2b9ded215201
children 718a22dc121f
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
80518daaab05 added VPATH support for multiple dir compilation
glantau
parents: 356
diff changeset
3 # (c) 2000, 2001, 2002 Gerard Lantau
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
410
8aba98b353f0 * oops - these are the midnight commits...
kabi
parents: 409
diff changeset
9 CFLAGS= $(OPTFLAGS) -Wall -g -DHAVE_AV_CONFIG_H -I$(SRC_PATH) -I..
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
10 LDFLAGS= -g
986e461dc072 Initial revision
glantau
parents:
diff changeset
11
986e461dc072 Initial revision
glantau
parents:
diff changeset
12 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
13 mpegaudio.o ac3enc.o mjpeg.o resample.o dsputil.o \
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
14 motion_est.o imgconvert.o imgresample.o msmpeg4.o \
329
5cc47d0ba53e fixed ratecontrol & b-frames
michaelni
parents: 258
diff changeset
15 mpeg12.o h263dec.o rv10.o mpegaudiodec.o pcm.o simple_idct.o \
5cc47d0ba53e fixed ratecontrol & b-frames
michaelni
parents: 258
diff changeset
16 ratecontrol.o
2
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
17 ASM_OBJS=
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
18
338
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
19 # 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
20 ifeq ($(CONFIG_AC3),yes)
338
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
21 OBJS+= a52dec.o
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
22 endif
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
23
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
24 # using builtin liba52 or runtime linked liba52.so.0
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
25 ifeq ($(CONFIG_A52BIN),no)
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
26 OBJS+= liba52/bit_allocate.o liba52/bitstream.o liba52/downmix.o \
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
27 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
28 endif
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
29
258
9c975237ec64 - Added MP3 encoding through libmp3lame contributed by Lennert Buytenhek.
pulento
parents: 252
diff changeset
30 ifeq ($(CONFIG_MP3LAME),yes)
9c975237ec64 - Added MP3 encoding through libmp3lame contributed by Lennert Buytenhek.
pulento
parents: 252
diff changeset
31 OBJS += mp3lameaudio.o
348
ae9e9af0b627 * by Thomas Sailer:
kabi
parents: 343
diff changeset
32 EXTRALIBS += -lmp3lame
258
9c975237ec64 - Added MP3 encoding through libmp3lame contributed by Lennert Buytenhek.
pulento
parents: 252
diff changeset
33 endif
9c975237ec64 - Added MP3 encoding through libmp3lame contributed by Lennert Buytenhek.
pulento
parents: 252
diff changeset
34
252
ddb1a0e94cf4 - Added PSNR feature to libavcodec and ffmpeg. By now just Y PSNR until I'm
pulento
parents: 214
diff changeset
35 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
36 CFLAGS+=-p
ddb1a0e94cf4 - Added PSNR feature to libavcodec and ffmpeg. By now just Y PSNR until I'm
pulento
parents: 214
diff changeset
37 LDFLAGS+=-p
ddb1a0e94cf4 - Added PSNR feature to libavcodec and ffmpeg. By now just Y PSNR until I'm
pulento
parents: 214
diff changeset
38 endif
ddb1a0e94cf4 - Added PSNR feature to libavcodec and ffmpeg. By now just Y PSNR until I'm
pulento
parents: 214
diff changeset
39
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
40 # i386 mmx specific stuff
2
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
41 ifeq ($(TARGET_MMX),yes)
74
d7603c46c52f suppressed nasm stuff
glantau
parents: 62
diff changeset
42 OBJS += i386/fdct_mmx.o i386/cputest.o \
32
a524484f9adf added idct mmx
glantau
parents: 23
diff changeset
43 i386/dsputil_mmx.o i386/mpegvideo_mmx.o \
338
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
44 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
45 i386/simple_idct_mmx.o
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
46 endif
986e461dc072 Initial revision
glantau
parents:
diff changeset
47
62
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
48 # armv4l specific stuff
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
49 ifeq ($(TARGET_ARCH_ARMV4L),yes)
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
50 ASM_OBJS += armv4l/jrevdct_arm.o
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
51 OBJS += armv4l/dsputil_arm.o
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
52 endif
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
53
88
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
54 # sun mediaLib specific stuff
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
55 # currently only works when libavcodec is used in mplayer
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
56 ifeq ($(HAVE_MLIB),yes)
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
57 OBJS += mlib/dsputil_mlib.o
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
58 CFLAGS += $(MLIB_INC)
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
59 endif
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
60
214
73df666cacc7 Alpha optimizations by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
nickols_k
parents: 174
diff changeset
61 # alpha specific stuff
73df666cacc7 Alpha optimizations by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
nickols_k
parents: 174
diff changeset
62 ifeq ($(TARGET_ARCH_ALPHA),yes)
73df666cacc7 Alpha optimizations by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
nickols_k
parents: 174
diff changeset
63 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
64 CFLAGS += -Wa,-mpca56
73df666cacc7 Alpha optimizations by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
nickols_k
parents: 174
diff changeset
65 endif
73df666cacc7 Alpha optimizations by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
nickols_k
parents: 174
diff changeset
66
2
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
67 SRCS = $(OBJS:.o=.c) $(ASM_OBJS:.o=.s)
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
68
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
69 LIB= libavcodec.a
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
70 ifeq ($(BUILD_SHARED),yes)
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
71 SLIB= libffmpeg-$(VERSION).so
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
72 endif
74
d7603c46c52f suppressed nasm stuff
glantau
parents: 62
diff changeset
73 TESTS= imgresample-test dct-test motion-test
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
74
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
75 all: $(LIB) $(SLIB)
43
ab64a3fc62bf Portability and testing issues
nickols_k
parents: 32
diff changeset
76 tests: apiexample cpuid_test $(TESTS)
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
77
2
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
78 $(LIB): $(OBJS) $(ASM_OBJS)
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
79 rm -f $@
356
e8ecb4413557 ar -s has portability problems, anyway rc is enough without s -- suggested by Atmosfear
arpi_esp
parents: 348
diff changeset
80 $(AR) rc $@ $(OBJS) $(ASM_OBJS)
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
81
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
82 $(SLIB): $(OBJS) $(ASM_OBJS)
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
83 rm -f $@
348
ae9e9af0b627 * by Thomas Sailer:
kabi
parents: 343
diff changeset
84 $(CC) -shared -o $@ $(OBJS) $(ASM_OBJS) $(EXTRALIBS)
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
85 ln -sf $@ libffmpeg.so
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
86 dsputil.o: dsputil.c dsputil.h
986e461dc072 Initial revision
glantau
parents:
diff changeset
87
986e461dc072 Initial revision
glantau
parents:
diff changeset
88 %.o: %.c
986e461dc072 Initial revision
glantau
parents:
diff changeset
89 $(CC) $(CFLAGS) -c -o $@ $<
986e461dc072 Initial revision
glantau
parents:
diff changeset
90
62
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
91 %.o: %.S
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
92 $(CC) $(CFLAGS) -c -o $@ $<
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
93
2
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
94 # depend only used by mplayer now
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
95 dep: depend
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
96
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
97 depend:
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
98 $(CC) -MM $(CFLAGS) $(SRCS) 1>.depend
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
99
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
100 clean:
343
9211a0c9466a * cleanup
kabi
parents: 340
diff changeset
101 rm -f *.o *~ .depend $(LIB) $(SLIB) *.so i386/*.o i386/*~ \
62
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
102 armv4l/*.o armv4l/*~ \
88
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
103 mlib/*.o mlib/*~ \
214
73df666cacc7 Alpha optimizations by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
nickols_k
parents: 174
diff changeset
104 alpha/*.o alpha/*~ \
338
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
105 liba52/*.o liba52/*~ \
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
106 apiexample $(TESTS)
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
107
2
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
108 distclean: clean
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
109 rm -f Makefile.bak .depend
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
110
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
111 # api example program
986e461dc072 Initial revision
glantau
parents:
diff changeset
112 apiexample: apiexample.c $(LIB)
986e461dc072 Initial revision
glantau
parents:
diff changeset
113 $(CC) $(CFLAGS) -o $@ $< $(LIB) -lm
986e461dc072 Initial revision
glantau
parents:
diff changeset
114
43
ab64a3fc62bf Portability and testing issues
nickols_k
parents: 32
diff changeset
115 # cpuid test
ab64a3fc62bf Portability and testing issues
nickols_k
parents: 32
diff changeset
116 cpuid_test: i386/cputest.c
ab64a3fc62bf Portability and testing issues
nickols_k
parents: 32
diff changeset
117 $(CC) $(CFLAGS) -D__TEST__ -o $@ $<
ab64a3fc62bf Portability and testing issues
nickols_k
parents: 32
diff changeset
118
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
119 # testing progs
986e461dc072 Initial revision
glantau
parents:
diff changeset
120
986e461dc072 Initial revision
glantau
parents:
diff changeset
121 imgresample-test: imgresample.c
986e461dc072 Initial revision
glantau
parents:
diff changeset
122 $(CC) $(CFLAGS) -DTEST -o $@ $^
986e461dc072 Initial revision
glantau
parents:
diff changeset
123
74
d7603c46c52f suppressed nasm stuff
glantau
parents: 62
diff changeset
124 dct-test: dct-test.o jfdctfst.o i386/fdct_mmx.o \
32
a524484f9adf added idct mmx
glantau
parents: 23
diff changeset
125 fdctref.o jrevdct.o i386/idct_mmx.o
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
126 $(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
127
74
d7603c46c52f suppressed nasm stuff
glantau
parents: 62
diff changeset
128 motion-test: motion_test.o $(LIB)
d7603c46c52f suppressed nasm stuff
glantau
parents: 62
diff changeset
129 $(CC) -o $@ $^
d7603c46c52f suppressed nasm stuff
glantau
parents: 62
diff changeset
130
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
131 install: all
137
21532c56ed8b headers installation
nickols_k
parents: 136
diff changeset
132 # install -m 644 $(LIB) $(prefix)/lib
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
133 ifeq ($(BUILD_SHARED),yes)
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
134 install -s -m 755 $(SLIB) $(prefix)/lib
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
135 ln -sf $(prefix)/lib/$(SLIB) $(prefix)/lib/libffmpeg.so
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
136 ldconfig
137
21532c56ed8b headers installation
nickols_k
parents: 136
diff changeset
137 mkdir -p $(prefix)/include/libffmpeg
21532c56ed8b headers installation
nickols_k
parents: 136
diff changeset
138 install -m 644 avcodec.h $(prefix)/include/libffmpeg/avcodec.h
138
8b7772ef26a0 missing header
nickols_k
parents: 137
diff changeset
139 install -m 644 common.h $(prefix)/include/libffmpeg/common.h
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
140 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
141 #
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
142 # 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
143 #
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
144 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
145 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
146 endif