Commit | Line | Data |
---|---|---|
19720f15 FB |
1 | # |
2 | # libavformat Makefile | |
165f74ff | 3 | # (c) 2000-2003 Fabrice Bellard |
19720f15 | 4 | # |
980fc7b8 | 5 | include ../config.mak |
f57a4535 | 6 | |
a382b927 | 7 | VPATH=$(SRC_PATH)/libavformat |
f57a4535 | 8 | |
c11c2bc2 | 9 | CFLAGS=$(OPTFLAGS) -I.. -I$(SRC_PATH) -I$(SRC_PATH)/libavutil -I$(SRC_PATH)/libavcodec -DHAVE_AV_CONFIG_H -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_GNU_SOURCE |
85f07f22 | 10 | |
c0af3840 DB |
11 | #FIXME: This should be in configure/config.mak |
12 | ifeq ($(CONFIG_WIN32),yes) | |
320d060a | 13 | LDFLAGS=-Wl,--output-def,$(@:.dll=.def),--out-implib,lib$(SLIBNAME:$(SLIBSUF)=.dll.a) |
c0af3840 DB |
14 | endif |
15 | ||
f71869a4 | 16 | OBJS= utils.o cutils.o os_support.o allformats.o |
cc0799e5 | 17 | PPOBJS= |
c9a65ca8 | 18 | |
04f46ced | 19 | # demuxers |
03cfe134 | 20 | OBJS+=mpeg.o mpegts.o mpegtsenc.o ffm.o crc.o img.o img2.o raw.o rm.o \ |
93a23627 | 21 | avienc.o avidec.o wav.o mmf.o swf.o au.o gif.o mov.o mpjpeg.o dv.o \ |
04f46ced | 22 | yuv4mpeg.o 4xm.o flvdec.o psxstr.o idroq.o ipmovie.o \ |
a7eb3c8d | 23 | nut.o wc3movie.o mp3.o westwood.o segafilm.o idcin.o flic.o \ |
04f46ced | 24 | sierravmd.o matroska.o sol.o electronicarts.o nsvdec.o asf.o \ |
ea395e8c | 25 | ogg2.o oggparsevorbis.o oggparsetheora.o oggparseflac.o daud.o aiff.o \ |
4e114829 | 26 | voc.o tta.o mm.o |
04f46ced GB |
27 | |
28 | # muxers | |
29 | ifeq ($(CONFIG_MUXERS),yes) | |
a283db39 | 30 | OBJS+= flvenc.o movenc.o asf-enc.o adtsenc.o |
04f46ced GB |
31 | endif |
32 | ||
33 | ||
4d4bb927 | 34 | AMROBJS= |
485bc05d | 35 | ifeq ($(AMR_NB),yes) |
4d4bb927 | 36 | AMROBJS= amr.o |
485bc05d AB |
37 | endif |
38 | ifeq ($(AMR_NB_FIXED),yes) | |
4d4bb927 | 39 | AMROBJS= amr.o |
485bc05d AB |
40 | endif |
41 | ifeq ($(AMR_WB),yes) | |
4d4bb927 | 42 | AMROBJS= amr.o |
bc634f6f | 43 | endif |
4d4bb927 | 44 | OBJS+= $(AMROBJS) |
bc634f6f | 45 | |
87a0a681 | 46 | # image formats |
6a91ec51 | 47 | OBJS+= pnm.o yuv.o png.o jpeg.o gifdec.o sgi.o |
115329f1 | 48 | OBJS+= framehook.o |
8be1c656 | 49 | |
19720f15 FB |
50 | ifeq ($(CONFIG_VIDEO4LINUX),yes) |
51 | OBJS+= grab.o | |
8be1c656 | 52 | endif |
85f07f22 | 53 | |
0a7b514f LA |
54 | ifeq ($(CONFIG_VIDEO4LINUX2),yes) |
55 | OBJS+= v4l2.o | |
56 | endif | |
57 | ||
6beefa40 MN |
58 | ifeq ($(CONFIG_BKTR),yes) |
59 | OBJS+= grab_bktr.o | |
60 | endif | |
61 | ||
8aa3ee32 MK |
62 | ifeq ($(CONFIG_DV1394),yes) |
63 | OBJS+= dv1394.o | |
64 | endif | |
65 | ||
f02be79d RS |
66 | ifeq ($(CONFIG_DC1394),yes) |
67 | OBJS+= dc1394.o | |
68 | endif | |
69 | ||
19720f15 | 70 | ifeq ($(CONFIG_AUDIO_OSS),yes) |
115329f1 | 71 | OBJS+= audio.o |
19720f15 FB |
72 | endif |
73 | ||
a71a1dfc | 74 | EXTRALIBS += -L../libavutil -lavutil$(BUILDSUF) |
dbbcfd6b | 75 | |
dfdfa47c | 76 | ifeq ($(CONFIG_AUDIO_BEOS),yes) |
cc0799e5 | 77 | PPOBJS+= beosaudio.o |
dfdfa47c FR |
78 | endif |
79 | ||
04f46ced GB |
80 | # protocols I/O |
81 | OBJS+= avio.o aviobuf.o | |
82 | ||
83 | ifeq ($(CONFIG_PROTOCOLS),yes) | |
84 | OBJS+= file.o | |
19720f15 | 85 | ifeq ($(CONFIG_NETWORK),yes) |
bdd7d518 | 86 | OBJS+= udp.o tcp.o http.o rtsp.o rtp.o rtpproto.o |
cc0799e5 | 87 | # BeOS and Darwin network stuff |
4baca069 | 88 | ifeq ($(NEED_INET_ATON),yes) |
9ddd71fc FR |
89 | OBJS+= barpainet.o |
90 | endif | |
a74127c0 | 91 | endif |
04f46ced | 92 | endif |
a74127c0 | 93 | |
5c5dea3f | 94 | ifeq ($(CONFIG_LIBOGG),yes) |
81e0d0b4 MH |
95 | OBJS+= ogg.o |
96 | endif | |
97 | ||
bb476ff3 JM |
98 | ifeq ($(TARGET_ARCH_SPARC64),yes) |
99 | CFLAGS+= -mcpu=ultrasparc -mtune=ultrasparc | |
100 | endif | |
101 | ||
4bdd05e7 | 102 | NAME=avformat |
6bc114b2 | 103 | ifeq ($(BUILD_SHARED),yes) |
f3b60109 DB |
104 | LIBVERSION=$(LAVFVERSION) |
105 | LIBMAJOR=$(LAVFMAJOR) | |
4e159595 | 106 | AVCLIBS+=-lavcodec$(BUILDSUF) -L../libavcodec -lavutil$(BUILDSUF) -L../libavutil |
27d5f18f FR |
107 | endif |
108 | ||
cc0799e5 | 109 | SRCS := $(OBJS:.o=.c) $(PPOBJS:.o=.cpp) |
77b71ddc | 110 | |
4e159595 | 111 | all: $(LIB) $(SLIBNAME) |
85f07f22 | 112 | |
cc0799e5 | 113 | $(LIB): $(OBJS) $(PPOBJS) |
85f07f22 | 114 | rm -f $@ |
cc0799e5 | 115 | $(AR) rc $@ $(OBJS) $(PPOBJS) |
be7109c1 | 116 | $(RANLIB) $@ |
85f07f22 | 117 | |
4e159595 | 118 | $(SLIBNAME): $(OBJS) |
c0af3840 | 119 | $(CC) $(SHFLAGS) $(LDFLAGS) -o $@ $(OBJS) $(PPOBJS) $(AVCLIBS) $(EXTRALIBS) |
cb728d79 | 120 | ifeq ($(CONFIG_WIN32),yes) |
a17236c5 | 121 | -lib /machine:i386 /def:$(@:.dll=.def) |
a17236c5 | 122 | endif |
6bc114b2 | 123 | |
f8d7b5f5 | 124 | depend: $(SRCS) |
7c235fe2 FB |
125 | $(CC) -MM $(CFLAGS) $^ 1>.depend |
126 | ||
b12f8273 DB |
127 | |
128 | install-lib-shared: $(SLIBNAME) | |
cb728d79 | 129 | ifeq ($(CONFIG_WIN32),yes) |
4e159595 | 130 | install $(INSTALLSTRIP) -m 755 $(SLIBNAME) "$(prefix)" |
cb728d79 | 131 | else |
f3b60109 DB |
132 | install $(INSTALLSTRIP) -m 755 $(SLIBNAME) \ |
133 | $(libdir)/$(SLIBNAME_WITH_VERSION) | |
134 | ln -sf $(SLIBNAME_WITH_VERSION) \ | |
135 | $(libdir)/$(SLIBNAME_WITH_MAJOR) | |
136 | ln -sf $(SLIBNAME_WITH_VERSION) \ | |
137 | $(libdir)/$(SLIBNAME) | |
6bc114b2 TA |
138 | endif |
139 | ||
b12f8273 | 140 | install-lib-static: $(LIB) |
cc973ecb | 141 | install -m 644 $(LIB) "$(libdir)" |
cb728d79 FB |
142 | |
143 | install-headers: | |
a050253f | 144 | install -m 644 avformat.h avio.h rtp.h rtsp.h rtspcodes.h "$(incdir)" |
dc2a1ce5 | 145 | install -m 644 $(SRC_PATH)/libavformat.pc "$(libdir)/pkgconfig" |
910fdd21 | 146 | |
85f07f22 | 147 | %.o: %.c |
115329f1 | 148 | $(CC) $(CFLAGS) $(LIBOBJFLAGS) -c -o $@ $< |
85f07f22 | 149 | |
dfdfa47c FR |
150 | # BeOS: remove -Wall to get rid of all the "multibyte constant" warnings |
151 | %.o: %.cpp | |
115329f1 | 152 | g++ $(subst -Wall,,$(CFLAGS)) -c -o $@ $< |
dfdfa47c | 153 | |
98013cc1 | 154 | clean: |
320d060a DB |
155 | rm -f *.o *.d *~ *.a *.lib *.so *.dylib *.dll \ |
156 | *.lib *.def *.dll.a *.exp | |
98013cc1 DB |
157 | |
158 | distclean: clean | |
04c07634 | 159 | rm -f .depend |
7c235fe2 FB |
160 | |
161 | # | |
162 | # include dependency files if they exist | |
163 | # | |
164 | ifneq ($(wildcard .depend),) | |
165 | include .depend | |
166 | endif |