annotate Makefile @ 489:b9fcdf9f4420 libavcodec

added installlib target to install static libraries and includes
author bellard
date Tue, 11 Jun 2002 13:39:47 +0000
parents f8bbc8976247
children cab79946302f
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
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
10 CFLAGS= $(OPTFLAGS) -Wall -g -DHAVE_AV_CONFIG_H -I..
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 \
b9fcdf9f4420 added installlib target to install static libraries and includes
bellard
parents: 484
diff changeset
14 mpegvideo.o h263.o jrevdct.o jfdctfst.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 \
329
5cc47d0ba53e fixed ratecontrol & b-frames
michaelni
parents: 258
diff changeset
17 mpeg12.o h263dec.o rv10.o mpegaudiodec.o pcm.o simple_idct.o \
5cc47d0ba53e fixed ratecontrol & b-frames
michaelni
parents: 258
diff changeset
18 ratecontrol.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)
73df666cacc7 Alpha optimizations by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
nickols_k
parents: 174
diff changeset
65 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
66 CFLAGS += -Wa,-mpca56
73df666cacc7 Alpha optimizations by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
nickols_k
parents: 174
diff changeset
67 endif
73df666cacc7 Alpha optimizations by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
nickols_k
parents: 174
diff changeset
68
429
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
69 SRCS := $(OBJS:.o=.c) $(ASM_OBJS:.o=.s)
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
70 OBJS := $(OBJS) $(ASM_OBJS)
2
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
71
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
72 LIB= libavcodec.a
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
73 ifeq ($(BUILD_SHARED),yes)
429
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
74 SLIB= libavcodec.so
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
75 endif
74
d7603c46c52f suppressed nasm stuff
glantau
parents: 62
diff changeset
76 TESTS= imgresample-test dct-test motion-test
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
77
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
78 all: $(LIB) $(SLIB)
429
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
79
43
ab64a3fc62bf Portability and testing issues
nickols_k
parents: 32
diff changeset
80 tests: apiexample cpuid_test $(TESTS)
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
81
429
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
82 $(LIB): $(OBJS)
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
83 rm -f $@
429
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
84 $(AR) rc $@ $(OBJS)
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
85
429
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
86 $(SLIB): $(OBJS)
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
87 $(CC) -shared -o $@ $(OBJS) $(EXTRALIBS)
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
88
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
89 dsputil.o: dsputil.c dsputil.h
986e461dc072 Initial revision
glantau
parents:
diff changeset
90
986e461dc072 Initial revision
glantau
parents:
diff changeset
91 %.o: %.c
986e461dc072 Initial revision
glantau
parents:
diff changeset
92 $(CC) $(CFLAGS) -c -o $@ $<
986e461dc072 Initial revision
glantau
parents:
diff changeset
93
62
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
94 %.o: %.S
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
95 $(CC) $(CFLAGS) -c -o $@ $<
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
96
2
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
97 # depend only used by mplayer now
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
98 dep: depend
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
99
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
100 depend:
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
101 $(CC) -MM $(CFLAGS) $(SRCS) 1>.depend
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
102
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
103 clean:
343
9211a0c9466a * cleanup
kabi
parents: 340
diff changeset
104 rm -f *.o *~ .depend $(LIB) $(SLIB) *.so i386/*.o i386/*~ \
62
4bfc845cdfea arm optimizations
glantau
parents: 43
diff changeset
105 armv4l/*.o armv4l/*~ \
88
06f63b58d2a8 mlib merge
glantau
parents: 81
diff changeset
106 mlib/*.o mlib/*~ \
214
73df666cacc7 Alpha optimizations by Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
nickols_k
parents: 174
diff changeset
107 alpha/*.o alpha/*~ \
338
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
108 liba52/*.o liba52/*~ \
1a38b3b4ea28 * using liba52
kabi
parents: 329
diff changeset
109 apiexample $(TESTS)
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
110
484
f8bbc8976247 in libavcodec/Makefile there is in line 110: "distclean: clean<binary char>"
arpi_esp
parents: 429
diff changeset
111 distclean: clean
2
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
112 rm -f Makefile.bak .depend
2e2c46c87460 fixed config for direct mplayer build compatibility
glantau
parents: 0
diff changeset
113
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
114 # api example program
986e461dc072 Initial revision
glantau
parents:
diff changeset
115 apiexample: apiexample.c $(LIB)
986e461dc072 Initial revision
glantau
parents:
diff changeset
116 $(CC) $(CFLAGS) -o $@ $< $(LIB) -lm
986e461dc072 Initial revision
glantau
parents:
diff changeset
117
43
ab64a3fc62bf Portability and testing issues
nickols_k
parents: 32
diff changeset
118 # cpuid test
ab64a3fc62bf Portability and testing issues
nickols_k
parents: 32
diff changeset
119 cpuid_test: i386/cputest.c
ab64a3fc62bf Portability and testing issues
nickols_k
parents: 32
diff changeset
120 $(CC) $(CFLAGS) -D__TEST__ -o $@ $<
ab64a3fc62bf Portability and testing issues
nickols_k
parents: 32
diff changeset
121
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
122 # testing progs
986e461dc072 Initial revision
glantau
parents:
diff changeset
123
986e461dc072 Initial revision
glantau
parents:
diff changeset
124 imgresample-test: imgresample.c
986e461dc072 Initial revision
glantau
parents:
diff changeset
125 $(CC) $(CFLAGS) -DTEST -o $@ $^
986e461dc072 Initial revision
glantau
parents:
diff changeset
126
74
d7603c46c52f suppressed nasm stuff
glantau
parents: 62
diff changeset
127 dct-test: dct-test.o jfdctfst.o i386/fdct_mmx.o \
32
a524484f9adf added idct mmx
glantau
parents: 23
diff changeset
128 fdctref.o jrevdct.o i386/idct_mmx.o
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
129 $(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
130
74
d7603c46c52f suppressed nasm stuff
glantau
parents: 62
diff changeset
131 motion-test: motion_test.o $(LIB)
d7603c46c52f suppressed nasm stuff
glantau
parents: 62
diff changeset
132 $(CC) -o $@ $^
d7603c46c52f suppressed nasm stuff
glantau
parents: 62
diff changeset
133
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
134 install: all
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
135 ifeq ($(BUILD_SHARED),yes)
429
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
136 install -s -m 755 $(SLIB) $(prefix)/lib/libavcodec-$(VERSION).so
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
137 ln -sf $(prefix)/lib/libavcodec-$(VERSION).so $(prefix)/lib/libavcodec.so
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
138 ldconfig
429
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
139 mkdir -p $(prefix)/include/ffmpeg
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
140 install -m 644 avcodec.h $(prefix)/include/ffmpeg/avcodec.h
718a22dc121f license/copyright change
glantau
parents: 410
diff changeset
141 install -m 644 common.h $(prefix)/include/ffmpeg/common.h
136
669955525b67 Shared objects support
nickols_k
parents: 92
diff changeset
142 endif
489
b9fcdf9f4420 added installlib target to install static libraries and includes
bellard
parents: 484
diff changeset
143
b9fcdf9f4420 added installlib target to install static libraries and includes
bellard
parents: 484
diff changeset
144 installlib: all
b9fcdf9f4420 added installlib target to install static libraries and includes
bellard
parents: 484
diff changeset
145 install -m 644 $(LIB) $(prefix)/lib
b9fcdf9f4420 added installlib target to install static libraries and includes
bellard
parents: 484
diff changeset
146 mkdir -p $(prefix)/include/ffmpeg
b9fcdf9f4420 added installlib target to install static libraries and includes
bellard
parents: 484
diff changeset
147 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
148 $(prefix)/include/ffmpeg
b9fcdf9f4420 added installlib target to install static libraries and includes
bellard
parents: 484
diff changeset
149
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
150 #
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
151 # 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
152 #
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
153 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
154 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
155 endif