Mercurial > libavformat.hg
annotate Makefile @ 921:547675092e98 libavformat
video4linux2 input support
patch by Luca Abeni, lucabe72 $$at$$ email $$dot$$ it
author | diego |
---|---|
date | Wed, 01 Feb 2006 11:31:33 +0000 |
parents | 7ac21a82ac29 |
children | 2d9a65a1d9ea |
rev | line source |
---|---|
0 | 1 # |
2 # libavformat Makefile | |
251 | 3 # (c) 2000-2003 Fabrice Bellard |
0 | 4 # |
5 include ../config.mak | |
6 | |
2 | 7 VPATH=$(SRC_PATH)/libavformat |
0 | 8 |
830
27ca9c7cabc7
libavutil: Utility code from libavcodec moved to a separate library.
al
parents:
818
diff
changeset
|
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 |
0 | 10 |
918 | 11 #FIXME: This should be in configure/config.mak |
12 ifeq ($(CONFIG_WIN32),yes) | |
919
7ac21a82ac29
On MinGW it is not possible to build shared and static libraries at once.
diego
parents:
918
diff
changeset
|
13 LDFLAGS=-Wl,--output-def,$(@:.dll=.def),--out-implib,lib$(SLIBNAME:$(SLIBSUF)=.dll.a) |
918 | 14 endif |
15 | |
230
9f4f4ca9f7b5
simpler strptime - added os_support.[ch] - moved localtime_r to os_support.c
bellard
parents:
225
diff
changeset
|
16 OBJS= utils.o cutils.o os_support.o allformats.o |
57
821a7facb3e4
Fix against C integrists breaks :P (hope I didn't break anything else)
mmu_man
parents:
55
diff
changeset
|
17 PPOBJS= |
0 | 18 |
905
dbc0145bbf11
Add --disable-protocols option to configure to disable I/O protocol from
diego
parents:
900
diff
changeset
|
19 # demuxers |
497 | 20 OBJS+=mpeg.o mpegts.o mpegtsenc.o ffm.o crc.o img.o img2.o raw.o rm.o \ |
818
b1d7ee1c792d
Yamaha SMAF file format support patch by (Vidar Madsen: vidarino, gmail com)
michael
parents:
813
diff
changeset
|
21 avienc.o avidec.o wav.o mmf.o swf.o au.o gif.o mov.o mpjpeg.o dv.o \ |
905
dbc0145bbf11
Add --disable-protocols option to configure to disable I/O protocol from
diego
parents:
900
diff
changeset
|
22 yuv4mpeg.o 4xm.o flvdec.o psxstr.o idroq.o ipmovie.o \ |
338 | 23 nut.o wc3movie.o mp3.o westwood.o segafilm.o idcin.o flic.o \ |
905
dbc0145bbf11
Add --disable-protocols option to configure to disable I/O protocol from
diego
parents:
900
diff
changeset
|
24 sierravmd.o matroska.o sol.o electronicarts.o nsvdec.o asf.o \ |
847 | 25 ogg2.o oggparsevorbis.o oggparsetheora.o oggparseflac.o daud.o |
905
dbc0145bbf11
Add --disable-protocols option to configure to disable I/O protocol from
diego
parents:
900
diff
changeset
|
26 |
dbc0145bbf11
Add --disable-protocols option to configure to disable I/O protocol from
diego
parents:
900
diff
changeset
|
27 # muxers |
dbc0145bbf11
Add --disable-protocols option to configure to disable I/O protocol from
diego
parents:
900
diff
changeset
|
28 ifeq ($(CONFIG_MUXERS),yes) |
dbc0145bbf11
Add --disable-protocols option to configure to disable I/O protocol from
diego
parents:
900
diff
changeset
|
29 OBJS+= flvenc.o movenc.o asf-enc.o |
dbc0145bbf11
Add --disable-protocols option to configure to disable I/O protocol from
diego
parents:
900
diff
changeset
|
30 endif |
dbc0145bbf11
Add --disable-protocols option to configure to disable I/O protocol from
diego
parents:
900
diff
changeset
|
31 |
dbc0145bbf11
Add --disable-protocols option to configure to disable I/O protocol from
diego
parents:
900
diff
changeset
|
32 |
629
996fe7d78701
Fix compilation when both amr_nb and amr_wb are enabled
rtognimp
parents:
594
diff
changeset
|
33 AMROBJS= |
278
1344cea6e2a8
make it compatible with older make (debian stable - make 3.79.1)
alex
parents:
274
diff
changeset
|
34 ifeq ($(AMR_NB),yes) |
629
996fe7d78701
Fix compilation when both amr_nb and amr_wb are enabled
rtognimp
parents:
594
diff
changeset
|
35 AMROBJS= amr.o |
278
1344cea6e2a8
make it compatible with older make (debian stable - make 3.79.1)
alex
parents:
274
diff
changeset
|
36 endif |
1344cea6e2a8
make it compatible with older make (debian stable - make 3.79.1)
alex
parents:
274
diff
changeset
|
37 ifeq ($(AMR_NB_FIXED),yes) |
629
996fe7d78701
Fix compilation when both amr_nb and amr_wb are enabled
rtognimp
parents:
594
diff
changeset
|
38 AMROBJS= amr.o |
278
1344cea6e2a8
make it compatible with older make (debian stable - make 3.79.1)
alex
parents:
274
diff
changeset
|
39 endif |
1344cea6e2a8
make it compatible with older make (debian stable - make 3.79.1)
alex
parents:
274
diff
changeset
|
40 ifeq ($(AMR_WB),yes) |
629
996fe7d78701
Fix compilation when both amr_nb and amr_wb are enabled
rtognimp
parents:
594
diff
changeset
|
41 AMROBJS= amr.o |
146 | 42 endif |
629
996fe7d78701
Fix compilation when both amr_nb and amr_wb are enabled
rtognimp
parents:
594
diff
changeset
|
43 OBJS+= $(AMROBJS) |
146 | 44 |
20 | 45 # image formats |
382
37a29b5200d8
added SGI image format, encoding and decoding, courtesy of Todd Kirby
melanson
parents:
380
diff
changeset
|
46 OBJS+= pnm.o yuv.o png.o jpeg.o gifdec.o sgi.o |
885 | 47 OBJS+= framehook.o |
0 | 48 |
49 ifeq ($(CONFIG_VIDEO4LINUX),yes) | |
50 OBJS+= grab.o | |
51 endif | |
52 | |
921 | 53 ifeq ($(CONFIG_VIDEO4LINUX2),yes) |
54 OBJS+= v4l2.o | |
55 endif | |
56 | |
795
391669d461d4
*BSD bktr grab support by (Jacob Meuser: jakemsr, jakemsr com)
michael
parents:
773
diff
changeset
|
57 ifeq ($(CONFIG_BKTR),yes) |
391669d461d4
*BSD bktr grab support by (Jacob Meuser: jakemsr, jakemsr com)
michael
parents:
773
diff
changeset
|
58 OBJS+= grab_bktr.o |
391669d461d4
*BSD bktr grab support by (Jacob Meuser: jakemsr, jakemsr com)
michael
parents:
773
diff
changeset
|
59 endif |
391669d461d4
*BSD bktr grab support by (Jacob Meuser: jakemsr, jakemsr com)
michael
parents:
773
diff
changeset
|
60 |
27
fcdea3df94fe
dv patch by Max Krasnyansky (maxk at qualcomm dot com)
bellard
parents:
26
diff
changeset
|
61 ifeq ($(CONFIG_DV1394),yes) |
fcdea3df94fe
dv patch by Max Krasnyansky (maxk at qualcomm dot com)
bellard
parents:
26
diff
changeset
|
62 OBJS+= dv1394.o |
fcdea3df94fe
dv patch by Max Krasnyansky (maxk at qualcomm dot com)
bellard
parents:
26
diff
changeset
|
63 endif |
fcdea3df94fe
dv patch by Max Krasnyansky (maxk at qualcomm dot com)
bellard
parents:
26
diff
changeset
|
64 |
571 | 65 ifeq ($(CONFIG_DC1394),yes) |
66 OBJS+= dc1394.o | |
67 endif | |
68 | |
0 | 69 ifeq ($(CONFIG_AUDIO_OSS),yes) |
885 | 70 OBJS+= audio.o |
0 | 71 endif |
72 | |
835 | 73 EXTRALIBS += -L../libavutil -lavutil$(BUILDSUF) |
832 | 74 |
0 | 75 ifeq ($(CONFIG_AUDIO_BEOS),yes) |
57
821a7facb3e4
Fix against C integrists breaks :P (hope I didn't break anything else)
mmu_man
parents:
55
diff
changeset
|
76 PPOBJS+= beosaudio.o |
0 | 77 endif |
78 | |
905
dbc0145bbf11
Add --disable-protocols option to configure to disable I/O protocol from
diego
parents:
900
diff
changeset
|
79 # protocols I/O |
dbc0145bbf11
Add --disable-protocols option to configure to disable I/O protocol from
diego
parents:
900
diff
changeset
|
80 OBJS+= avio.o aviobuf.o |
dbc0145bbf11
Add --disable-protocols option to configure to disable I/O protocol from
diego
parents:
900
diff
changeset
|
81 |
dbc0145bbf11
Add --disable-protocols option to configure to disable I/O protocol from
diego
parents:
900
diff
changeset
|
82 ifeq ($(CONFIG_PROTOCOLS),yes) |
dbc0145bbf11
Add --disable-protocols option to configure to disable I/O protocol from
diego
parents:
900
diff
changeset
|
83 OBJS+= file.o |
0 | 84 ifeq ($(CONFIG_NETWORK),yes) |
85 OBJS+= udp.o tcp.o http.o rtsp.o rtp.o rtpproto.o | |
57
821a7facb3e4
Fix against C integrists breaks :P (hope I didn't break anything else)
mmu_man
parents:
55
diff
changeset
|
86 # BeOS and Darwin network stuff |
1
464f4e8aa417
More changes to make things compile on more platforms
philipjsg
parents:
0
diff
changeset
|
87 ifeq ($(NEED_INET_ATON),yes) |
0 | 88 OBJS+= barpainet.o |
89 endif | |
90 endif | |
905
dbc0145bbf11
Add --disable-protocols option to configure to disable I/O protocol from
diego
parents:
900
diff
changeset
|
91 endif |
0 | 92 |
682 | 93 ifeq ($(CONFIG_LIBOGG),yes) |
0 | 94 OBJS+= ogg.o |
95 endif | |
96 | |
450
85439137fc30
vis detection patch by (James Morrison <ja2morri at csclub dot uwaterloo dot ca>)
michael
parents:
440
diff
changeset
|
97 ifeq ($(TARGET_ARCH_SPARC64),yes) |
85439137fc30
vis detection patch by (James Morrison <ja2morri at csclub dot uwaterloo dot ca>)
michael
parents:
440
diff
changeset
|
98 CFLAGS+= -mcpu=ultrasparc -mtune=ultrasparc |
85439137fc30
vis detection patch by (James Morrison <ja2morri at csclub dot uwaterloo dot ca>)
michael
parents:
440
diff
changeset
|
99 endif |
85439137fc30
vis detection patch by (James Morrison <ja2morri at csclub dot uwaterloo dot ca>)
michael
parents:
440
diff
changeset
|
100 |
898
51a83f9981f2
Move library name generation to configure, simplifies build system a bit more.
diego
parents:
897
diff
changeset
|
101 NAME=avformat |
167
e284cddf0509
Shared library for libavformat support patch by (Tim Allen <tim at proximity dot com dot au>)
michaelni
parents:
164
diff
changeset
|
102 ifeq ($(BUILD_SHARED),yes) |
897
f957dbf08fcf
Create symbolic links for all library sonames and clean up Makefiles.
diego
parents:
895
diff
changeset
|
103 LIBVERSION=$(LAVFVERSION) |
f957dbf08fcf
Create symbolic links for all library sonames and clean up Makefiles.
diego
parents:
895
diff
changeset
|
104 LIBMAJOR=$(LAVFMAJOR) |
859 | 105 AVCLIBS+=-lavcodec$(BUILDSUF) -L../libavcodec -lavutil$(BUILDSUF) -L../libavutil |
594 | 106 endif |
107 | |
57
821a7facb3e4
Fix against C integrists breaks :P (hope I didn't break anything else)
mmu_man
parents:
55
diff
changeset
|
108 SRCS := $(OBJS:.o=.c) $(PPOBJS:.o=.cpp) |
23
f6aae828c320
AUtomatic dependency generation. Runs on Linux (at least). Probably should
philipjsg
parents:
22
diff
changeset
|
109 |
859 | 110 all: $(LIB) $(SLIBNAME) |
0 | 111 |
57
821a7facb3e4
Fix against C integrists breaks :P (hope I didn't break anything else)
mmu_man
parents:
55
diff
changeset
|
112 $(LIB): $(OBJS) $(PPOBJS) |
0 | 113 rm -f $@ |
57
821a7facb3e4
Fix against C integrists breaks :P (hope I didn't break anything else)
mmu_man
parents:
55
diff
changeset
|
114 $(AR) rc $@ $(OBJS) $(PPOBJS) |
0 | 115 $(RANLIB) $@ |
116 | |
859 | 117 $(SLIBNAME): $(OBJS) |
918 | 118 $(CC) $(SHFLAGS) $(LDFLAGS) -o $@ $(OBJS) $(PPOBJS) $(AVCLIBS) $(EXTRALIBS) |
248 | 119 ifeq ($(CONFIG_WIN32),yes) |
212
84b7fd1abf2c
MingW patches by (Glenn Maynard <g_sf at zewt dot org>)
michaelni
parents:
211
diff
changeset
|
120 -lib /machine:i386 /def:$(@:.dll=.def) |
84b7fd1abf2c
MingW patches by (Glenn Maynard <g_sf at zewt dot org>)
michaelni
parents:
211
diff
changeset
|
121 endif |
167
e284cddf0509
Shared library for libavformat support patch by (Tim Allen <tim at proximity dot com dot au>)
michaelni
parents:
164
diff
changeset
|
122 |
43
a23fb606308a
added basic png handling - do not remake dependencies automatically
bellard
parents:
40
diff
changeset
|
123 depend: $(SRCS) |
26 | 124 $(CC) -MM $(CFLAGS) $^ 1>.depend |
125 | |
167
e284cddf0509
Shared library for libavformat support patch by (Tim Allen <tim at proximity dot com dot au>)
michaelni
parents:
164
diff
changeset
|
126 ifeq ($(BUILD_SHARED),yes) |
248 | 127 install: all install-headers |
128 ifeq ($(CONFIG_WIN32),yes) | |
859 | 129 install $(INSTALLSTRIP) -m 755 $(SLIBNAME) "$(prefix)" |
248 | 130 else |
707
cc612862d461
add libdir support to configure patch by (Luca Barbato )lu_zero gentoo org)
michael
parents:
702
diff
changeset
|
131 install -d $(libdir) |
897
f957dbf08fcf
Create symbolic links for all library sonames and clean up Makefiles.
diego
parents:
895
diff
changeset
|
132 install $(INSTALLSTRIP) -m 755 $(SLIBNAME) \ |
f957dbf08fcf
Create symbolic links for all library sonames and clean up Makefiles.
diego
parents:
895
diff
changeset
|
133 $(libdir)/$(SLIBNAME_WITH_VERSION) |
f957dbf08fcf
Create symbolic links for all library sonames and clean up Makefiles.
diego
parents:
895
diff
changeset
|
134 ln -sf $(SLIBNAME_WITH_VERSION) \ |
f957dbf08fcf
Create symbolic links for all library sonames and clean up Makefiles.
diego
parents:
895
diff
changeset
|
135 $(libdir)/$(SLIBNAME_WITH_MAJOR) |
f957dbf08fcf
Create symbolic links for all library sonames and clean up Makefiles.
diego
parents:
895
diff
changeset
|
136 ln -sf $(SLIBNAME_WITH_VERSION) \ |
f957dbf08fcf
Create symbolic links for all library sonames and clean up Makefiles.
diego
parents:
895
diff
changeset
|
137 $(libdir)/$(SLIBNAME) |
773
a5095f5cf38a
ldconfig as config.mak variable patch by (Jacob Meuser: jakemsr, jakemsr com)
michael
parents:
765
diff
changeset
|
138 $(LDCONFIG) || true |
248 | 139 endif |
140 else | |
141 install: | |
167
e284cddf0509
Shared library for libavformat support patch by (Tim Allen <tim at proximity dot com dot au>)
michaelni
parents:
164
diff
changeset
|
142 endif |
e284cddf0509
Shared library for libavformat support patch by (Tim Allen <tim at proximity dot com dot au>)
michaelni
parents:
164
diff
changeset
|
143 |
248 | 144 installlib: all install-headers |
707
cc612862d461
add libdir support to configure patch by (Luca Barbato )lu_zero gentoo org)
michael
parents:
702
diff
changeset
|
145 install -m 644 $(LIB) "$(libdir)" |
248 | 146 |
147 install-headers: | |
148 mkdir -p "$(prefix)/include/ffmpeg" | |
16
863c1133ba73
libav -> libavformat in Makefile patch by (Thomas Jarosch <tomj at simonv dot com>)
michaelni
parents:
2
diff
changeset
|
149 install -m 644 $(SRC_PATH)/libavformat/avformat.h $(SRC_PATH)/libavformat/avio.h \ |
863c1133ba73
libav -> libavformat in Makefile patch by (Thomas Jarosch <tomj at simonv dot com>)
michaelni
parents:
2
diff
changeset
|
150 $(SRC_PATH)/libavformat/rtp.h $(SRC_PATH)/libavformat/rtsp.h \ |
863c1133ba73
libav -> libavformat in Makefile patch by (Thomas Jarosch <tomj at simonv dot com>)
michaelni
parents:
2
diff
changeset
|
151 $(SRC_PATH)/libavformat/rtspcodes.h \ |
248 | 152 "$(prefix)/include/ffmpeg" |
871
3637f3d43e55
Put double-quotes around the install path in the "install-headers" section
diego
parents:
860
diff
changeset
|
153 install -d "$(libdir)/pkgconfig" |
3637f3d43e55
Put double-quotes around the install path in the "install-headers" section
diego
parents:
860
diff
changeset
|
154 install -m 644 ../libavformat.pc "$(libdir)/pkgconfig" |
0 | 155 |
156 %.o: %.c | |
885 | 157 $(CC) $(CFLAGS) $(LIBOBJFLAGS) -c -o $@ $< |
0 | 158 |
159 # BeOS: remove -Wall to get rid of all the "multibyte constant" warnings | |
160 %.o: %.cpp | |
885 | 161 g++ $(subst -Wall,,$(CFLAGS)) -c -o $@ $< |
0 | 162 |
900
04509c9a1b7a
Make clean/distclean consistent throughout all the Makefiles.
diego
parents:
899
diff
changeset
|
163 clean: |
919
7ac21a82ac29
On MinGW it is not possible to build shared and static libraries at once.
diego
parents:
918
diff
changeset
|
164 rm -f *.o *.d *~ *.a *.lib *.so *.dylib *.dll \ |
7ac21a82ac29
On MinGW it is not possible to build shared and static libraries at once.
diego
parents:
918
diff
changeset
|
165 *.lib *.def *.dll.a *.exp |
900
04509c9a1b7a
Make clean/distclean consistent throughout all the Makefiles.
diego
parents:
899
diff
changeset
|
166 |
04509c9a1b7a
Make clean/distclean consistent throughout all the Makefiles.
diego
parents:
899
diff
changeset
|
167 distclean: clean |
917
f1104ac8de95
Remove obscure Makefile.bak entry from distclean rules.
diego
parents:
905
diff
changeset
|
168 rm -f .depend |
26 | 169 |
170 # | |
171 # include dependency files if they exist | |
172 # | |
173 ifneq ($(wildcard .depend),) | |
174 include .depend | |
175 endif |