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 | |
f71869a4 | 11 | OBJS= utils.o cutils.o os_support.o allformats.o |
cc0799e5 | 12 | PPOBJS= |
c9a65ca8 FB |
13 | |
14 | # mux and demuxes | |
03cfe134 | 15 | OBJS+=mpeg.o mpegts.o mpegtsenc.o ffm.o crc.o img.o img2.o raw.o rm.o \ |
93a23627 | 16 | avienc.o avidec.o wav.o mmf.o swf.o au.o gif.o mov.o mpjpeg.o dv.o \ |
3aa180b8 | 17 | yuv4mpeg.o 4xm.o flvenc.o flvdec.o movenc.o psxstr.o idroq.o ipmovie.o \ |
a7eb3c8d | 18 | nut.o wc3movie.o mp3.o westwood.o segafilm.o idcin.o flic.o \ |
9146ca37 | 19 | sierravmd.o matroska.o sol.o electronicarts.o nsvdec.o asf.o asf-enc.o \ |
b93f738f | 20 | ogg2.o oggparsevorbis.o oggparsetheora.o oggparseflac.o daud.o |
4d4bb927 | 21 | AMROBJS= |
485bc05d | 22 | ifeq ($(AMR_NB),yes) |
4d4bb927 | 23 | AMROBJS= amr.o |
485bc05d AB |
24 | endif |
25 | ifeq ($(AMR_NB_FIXED),yes) | |
4d4bb927 | 26 | AMROBJS= amr.o |
485bc05d AB |
27 | endif |
28 | ifeq ($(AMR_WB),yes) | |
4d4bb927 | 29 | AMROBJS= amr.o |
bc634f6f | 30 | endif |
4d4bb927 | 31 | OBJS+= $(AMROBJS) |
bc634f6f | 32 | |
87a0a681 | 33 | # image formats |
6a91ec51 | 34 | OBJS+= pnm.o yuv.o png.o jpeg.o gifdec.o sgi.o |
c9a65ca8 FB |
35 | # file I/O |
36 | OBJS+= avio.o aviobuf.o file.o | |
87a0a681 | 37 | OBJS+= framehook.o |
8be1c656 | 38 | |
19720f15 FB |
39 | ifeq ($(CONFIG_VIDEO4LINUX),yes) |
40 | OBJS+= grab.o | |
8be1c656 | 41 | endif |
85f07f22 | 42 | |
6beefa40 MN |
43 | ifeq ($(CONFIG_BKTR),yes) |
44 | OBJS+= grab_bktr.o | |
45 | endif | |
46 | ||
8aa3ee32 MK |
47 | ifeq ($(CONFIG_DV1394),yes) |
48 | OBJS+= dv1394.o | |
49 | endif | |
50 | ||
f02be79d RS |
51 | ifeq ($(CONFIG_DC1394),yes) |
52 | OBJS+= dc1394.o | |
53 | endif | |
54 | ||
19720f15 FB |
55 | ifeq ($(CONFIG_AUDIO_OSS),yes) |
56 | OBJS+= audio.o | |
57 | endif | |
58 | ||
a71a1dfc | 59 | EXTRALIBS += -L../libavutil -lavutil$(BUILDSUF) |
dbbcfd6b | 60 | |
dfdfa47c | 61 | ifeq ($(CONFIG_AUDIO_BEOS),yes) |
cc0799e5 | 62 | PPOBJS+= beosaudio.o |
dfdfa47c FR |
63 | endif |
64 | ||
19720f15 | 65 | ifeq ($(CONFIG_NETWORK),yes) |
bdd7d518 | 66 | OBJS+= udp.o tcp.o http.o rtsp.o rtp.o rtpproto.o |
cc0799e5 | 67 | # BeOS and Darwin network stuff |
4baca069 | 68 | ifeq ($(NEED_INET_ATON),yes) |
9ddd71fc FR |
69 | OBJS+= barpainet.o |
70 | endif | |
a74127c0 FB |
71 | endif |
72 | ||
5c5dea3f | 73 | ifeq ($(CONFIG_LIBOGG),yes) |
81e0d0b4 MH |
74 | OBJS+= ogg.o |
75 | endif | |
76 | ||
bb476ff3 JM |
77 | ifeq ($(TARGET_ARCH_SPARC64),yes) |
78 | CFLAGS+= -mcpu=ultrasparc -mtune=ultrasparc | |
79 | endif | |
80 | ||
f3ec2d46 | 81 | LIB= $(LIBPREF)avformat$(LIBSUF) |
6bc114b2 | 82 | ifeq ($(BUILD_SHARED),yes) |
4e159595 DB |
83 | SLIBNAME= $(SLIBPREF)avformat$(SLIBSUF) |
84 | AVCLIBS+=-lavcodec$(BUILDSUF) -L../libavcodec -lavutil$(BUILDSUF) -L../libavutil | |
85 | ifeq ($(CONFIG_DARWIN),yes) | |
86 | SHFLAGS += -Wl,-install_name,$(libdir)/$(SLIBNAME),-current_version,$(SPPVERSION),-compatibility_version,$(SPPVERSION) | |
87 | endif | |
27d5f18f FR |
88 | endif |
89 | ||
cc0799e5 | 90 | SRCS := $(OBJS:.o=.c) $(PPOBJS:.o=.cpp) |
77b71ddc | 91 | |
4e159595 | 92 | all: $(LIB) $(SLIBNAME) |
85f07f22 | 93 | |
cc0799e5 | 94 | $(LIB): $(OBJS) $(PPOBJS) |
85f07f22 | 95 | rm -f $@ |
cc0799e5 | 96 | $(AR) rc $@ $(OBJS) $(PPOBJS) |
be7109c1 | 97 | $(RANLIB) $@ |
85f07f22 | 98 | |
4e159595 | 99 | $(SLIBNAME): $(OBJS) |
cb728d79 | 100 | ifeq ($(CONFIG_WIN32),yes) |
1f8f50ef | 101 | $(CC) $(SHFLAGS) -Wl,--output-def,$(@:.dll=.def) -o $@ $(OBJS) $(PPOBJS) $(AVCLIBS) $(EXTRALIBS) |
a17236c5 MN |
102 | -lib /machine:i386 /def:$(@:.dll=.def) |
103 | else | |
56b04ceb | 104 | $(CC) $(SHFLAGS) $(LDFLAGS) -o $@ $(OBJS) $(PPOBJS) $(AVCLIBS) $(EXTRALIBS) |
a17236c5 | 105 | endif |
6bc114b2 | 106 | |
f8d7b5f5 | 107 | depend: $(SRCS) |
7c235fe2 FB |
108 | $(CC) -MM $(CFLAGS) $^ 1>.depend |
109 | ||
6bc114b2 | 110 | ifeq ($(BUILD_SHARED),yes) |
cb728d79 FB |
111 | install: all install-headers |
112 | ifeq ($(CONFIG_WIN32),yes) | |
4e159595 | 113 | install $(INSTALLSTRIP) -m 755 $(SLIBNAME) "$(prefix)" |
cb728d79 | 114 | else |
cc973ecb | 115 | install -d $(libdir) |
4e159595 DB |
116 | install $(INSTALLSTRIP) -m 755 $(SLIBNAME) $(libdir)/$(SLIBPREF)avformat-$(VERSION)$(SLIBSUF) |
117 | ln -sf $(SLIBPREF)avformat-$(VERSION)$(SLIBSUF) $(libdir)/$(SLIBNAME) | |
f39e56a8 | 118 | $(LDCONFIG) || true |
cb728d79 FB |
119 | endif |
120 | else | |
121 | install: | |
6bc114b2 TA |
122 | endif |
123 | ||
cb728d79 | 124 | installlib: all install-headers |
cc973ecb | 125 | install -m 644 $(LIB) "$(libdir)" |
cb728d79 FB |
126 | |
127 | install-headers: | |
128 | mkdir -p "$(prefix)/include/ffmpeg" | |
f60f0df1 TJ |
129 | install -m 644 $(SRC_PATH)/libavformat/avformat.h $(SRC_PATH)/libavformat/avio.h \ |
130 | $(SRC_PATH)/libavformat/rtp.h $(SRC_PATH)/libavformat/rtsp.h \ | |
131 | $(SRC_PATH)/libavformat/rtspcodes.h \ | |
cb728d79 | 132 | "$(prefix)/include/ffmpeg" |
def4272a AJ |
133 | install -d $(libdir)/pkgconfig |
134 | install -m 644 ../libavformat.pc $(libdir)/pkgconfig | |
910fdd21 | 135 | |
85f07f22 | 136 | %.o: %.c |
80581e98 | 137 | $(CC) $(CFLAGS) $(LIBOBJFLAGS) -c -o $@ $< |
85f07f22 | 138 | |
dfdfa47c FR |
139 | # BeOS: remove -Wall to get rid of all the "multibyte constant" warnings |
140 | %.o: %.cpp | |
141 | g++ $(subst -Wall,,$(CFLAGS)) -c -o $@ $< | |
142 | ||
2fefb220 | 143 | distclean clean: |
4e159595 | 144 | rm -f *.o *.d .depend *~ *.a *$(SLIBSUF) $(LIB) |
7c235fe2 FB |
145 | |
146 | # | |
147 | # include dependency files if they exist | |
148 | # | |
149 | ifneq ($(wildcard .depend),) | |
150 | include .depend | |
151 | endif |