More for input buffer checks
[rtmpdump.git] / Makefile
bloba1595a8956b6e7be7e7d0fea17743b20679c95d6
1 VERSION=v2.4
3 prefix=/usr/local
5 CC=$(CROSS_COMPILE)gcc
6 LD=$(CROSS_COMPILE)ld
8 SYS=posix
9 #SYS=mingw
11 CRYPTO=OPENSSL
12 #CRYPTO=POLARSSL
13 #CRYPTO=GNUTLS
14 LIBZ=-lz
15 LIB_GNUTLS=-lgnutls -lhogweed -lnettle -lgmp $(LIBZ)
16 LIB_OPENSSL=-lssl -lcrypto $(LIBZ)
17 LIB_POLARSSL=-lpolarssl $(LIBZ)
18 CRYPTO_LIB=$(LIB_$(CRYPTO))
19 DEF_=-DNO_CRYPTO
20 CRYPTO_DEF=$(DEF_$(CRYPTO))
22 DEF=-DRTMPDUMP_VERSION=\"$(VERSION)\" $(CRYPTO_DEF) $(XDEF)
23 OPT=-O2
24 CFLAGS=-Wall $(XCFLAGS) $(INC) $(DEF) $(OPT)
25 LDFLAGS=-Wall $(XLDFLAGS)
27 bindir=$(prefix)/bin
28 sbindir=$(prefix)/sbin
29 mandir=$(prefix)/man
31 BINDIR=$(DESTDIR)$(bindir)
32 SBINDIR=$(DESTDIR)$(sbindir)
33 MANDIR=$(DESTDIR)$(mandir)
35 LIBS_posix=
36 LIBS_darwin=
37 LIBS_mingw=-lws2_32 -lwinmm -lgdi32
38 LIB_RTMP=-Llibrtmp -lrtmp
39 LIBS=$(LIB_RTMP) $(CRYPTO_LIB) $(LIBS_$(SYS)) $(XLIBS)
41 THREADLIB_posix=-lpthread
42 THREADLIB_darwin=-lpthread
43 THREADLIB_mingw=
44 THREADLIB=$(THREADLIB_$(SYS))
45 SLIBS=$(THREADLIB) $(LIBS)
47 LIBRTMP=librtmp/librtmp.a
48 INCRTMP=librtmp/rtmp_sys.h librtmp/rtmp.h librtmp/log.h librtmp/amf.h
50 EXT_posix=
51 EXT_darwin=
52 EXT_mingw=.exe
53 EXT=$(EXT_$(SYS))
55 PROGS=rtmpdump rtmpgw rtmpsrv rtmpsuck
57 all: $(LIBRTMP) $(PROGS)
59 $(PROGS): $(LIBRTMP)
61 install: $(PROGS)
62 -mkdir -p $(BINDIR) $(SBINDIR) $(MANDIR)/man1 $(MANDIR)/man8
63 cp rtmpdump$(EXT) $(BINDIR)
64 cp rtmpgw$(EXT) rtmpsrv$(EXT) rtmpsuck$(EXT) $(SBINDIR)
65 cp rtmpdump.1 $(MANDIR)/man1
66 cp rtmpgw.8 $(MANDIR)/man8
67 @cd librtmp; $(MAKE) install
69 clean:
70 rm -f *.o rtmpdump$(EXT) rtmpgw$(EXT) rtmpsrv$(EXT) rtmpsuck$(EXT)
71 @cd librtmp; $(MAKE) clean
73 FORCE:
75 $(LIBRTMP): FORCE
76 @cd librtmp; $(MAKE) all
78 rtmpdump: rtmpdump.o
79 $(CC) $(LDFLAGS) -o $@$(EXT) $@.o $(LIBS)
81 rtmpsrv: rtmpsrv.o thread.o
82 $(CC) $(LDFLAGS) -o $@$(EXT) $@.o thread.o $(SLIBS)
84 rtmpsuck: rtmpsuck.o thread.o
85 $(CC) $(LDFLAGS) -o $@$(EXT) $@.o thread.o $(SLIBS)
87 rtmpgw: rtmpgw.o thread.o
88 $(CC) $(LDFLAGS) -o $@$(EXT) $@.o thread.o $(SLIBS)
90 rtmpgw.o: rtmpgw.c $(INCRTMP) Makefile
91 rtmpdump.o: rtmpdump.c $(INCRTMP) Makefile
92 rtmpsrv.o: rtmpsrv.c $(INCRTMP) Makefile
93 rtmpsuck.o: rtmpsuck.c $(INCRTMP) Makefile
94 thread.o: thread.c thread.h