78c56f3ef5c707544891a14d7552cef7013ceb2e
[ffmpeg.git] / Makefile
1 # Main ffmpeg Makefile
2 # (c) 2000, 2001 Gerard Lantau
3 #
4 include config.mak
5
6 CFLAGS= $(OPTFLAGS) -Wall -I./libavcodec -I./libav 
7 LDFLAGS=  
8 ifeq ($(TARGET_GPROF),yes)
9 CFLAGS+=-p
10 LDFLAGS+=-p
11 endif
12
13 ifeq ($(CONFIG_WIN32),yes)
14 EXE=.exe
15 PROG=ffmpeg$(EXE)
16 else
17 EXT=
18 PROG=ffmpeg ffplay ffserver
19 endif
20
21 all: lib $(PROG)
22
23 lib:
24         $(MAKE) -C libavcodec all
25         $(MAKE) -C libav all
26
27 ffmpeg$(EXE): ffmpeg.o libav/libav.a libavcodec/libavcodec.a
28         $(CC) $(LDFLAGS) -o $@ $^ -lm
29
30 ffserver$(EXE): ffserver.o libav/libav.a libavcodec/libavcodec.a
31         $(CC) $(LDFLAGS) -o $@ $^ -lm
32
33 ffplay: ffmpeg$(EXE)
34         ln -sf $< $@
35
36 %.o: %.c
37         $(CC) $(CFLAGS) -c -o $@ $< 
38
39 install: all
40         install -s -m 755 $(PROG) $(prefix)/bin
41         ln -sf ffmpeg $(prefix)/bin/ffplay 
42
43 clean: 
44         $(MAKE) -C libavcodec clean
45         $(MAKE) -C libav clean
46         rm -f *.o *~ gmon.out TAGS $(PROG) 
47
48 distclean: clean
49         $(MAKE) -C libavcodec distclean
50         rm -f config.mak config.h
51
52 TAGS:
53         etags *.[ch] libav/*.[ch] libavcodec/*.[ch]