]> git.lizzy.rs Git - rudp.git/blob - Makefile
first commit
[rudp.git] / Makefile
1 OUTDIR=rel
2 CFLAGS=-D__LINUX__ -Wall
3 LDFLAGS=-lpthread -lrt
4
5 ifneq ($(strip $(rel)), 1)
6 CFLAGS += -D_DEBUG -g
7 #CFLAGS += -D_DEBUG_RUDP
8 OUTDIR=dbg
9 else
10 CFLAGS += -O2
11 endif
12
13 ifeq ($(strip $(target)), android)
14 CROSS=arm-linux-androideabi-
15 OUTDIR := $(addsuffix -android, $(OUTDIR))
16 LDFLAGS=-lm -c
17 endif
18
19 CC=$(CROSS)gcc
20 AR=$(CROSS)ar
21 LDFLAGS+= -L$(OUTDIR) -lrudp
22
23 LIBSRC = rudp.c platform_adpt.c crc32.c rudp.h rudp_imp.h       #rudp_timer.c
24 LIBOBJS = $(patsubst %.c, $(OUTDIR)/%.o, $(filter %.c, $(LIBSRC)))
25
26 TARGETS=*.o *.a rudpsvr rudpclt simulconn
27 TARGETS := $(addprefix $(OUTDIR)/, $(TARGETS))
28
29 .PHONY: clean chkdir
30
31 all: chkdir $(OUTDIR)/librudp.a
32
33 test: chkdir $(OUTDIR)/rudpsvr $(OUTDIR)/rudpclt $(OUTDIR)/simulconn $(OUTDIR)/nblk_svr \
34         $(OUTDIR)/rudpsels $(OUTDIR)/rudpselc $(OUTDIR)/rudpsel #$(OUTDIR)/simconn
35
36
37 $(OUTDIR)/nblk_svr: $(OUTDIR)/librudp.a $(OUTDIR)/nblk_svr.o
38         $(CC) -o $@ $^ $(LDFLAGS)
39
40 $(OUTDIR)/rudpsvr: $(OUTDIR)/librudp.a $(OUTDIR)/rudpsvr.o
41         $(CC) -o $@ $^ $(LDFLAGS) 
42
43 $(OUTDIR)/rudpclt: $(OUTDIR)/librudp.a $(OUTDIR)/rudpclt.o
44         $(CC) -o $@ $^ $(LDFLAGS)
45
46 $(OUTDIR)/simulconn: $(OUTDIR)/librudp.a $(OUTDIR)/simulconn.o
47         $(CC) -o $@ $^ $(LDFLAGS)
48
49 $(OUTDIR)/librudp.a: $(LIBOBJS) 
50         $(AR) -r $@ $^
51
52 $(OUTDIR)/simconn: $(OUTDIR)/librudp.a $(OUTDIR)/simconn.o
53         $(CC) -o $@ $^ $(LDFLAGS) 
54
55 $(OUTDIR)/punch: $(OUTDIR)/librudp.a $(OUTDIR)/rudp_punch.o
56         $(CC) -o $@ $^ $(LDFLAGS)
57
58 $(OUTDIR)/rudpsels: $(OUTDIR)/librudp.a $(OUTDIR)/rudpsels.o
59         $(CC) -o $@ $^ $(LDFLAGS)
60
61 $(OUTDIR)/rudpsel: $(OUTDIR)/librudp.a $(OUTDIR)/rudpsel.o
62         $(CC) -o $@ $^ $(LDFLAGS)
63
64 $(OUTDIR)/rudpselc: $(OUTDIR)/librudp.a $(OUTDIR)/rudpselc.o
65         $(CC) -o $@ $^ $(LDFLAGS)
66
67 #$(LIBOBJS): $(LIBSRC)
68
69 $(OUTDIR)/%.o: %.c
70         $(CC) -c -o $@ $^ $(CFLAGS)
71
72
73 clean: 
74         rm -f $(TARGETS)
75
76 chkdir:
77         @if [ ! -d $(OUTDIR) ]; then mkdir $(OUTDIR); fi