]>
Commit | Line | Data |
---|---|---|
1 | # Redis dependency Makefile | |
2 | ||
3 | uname_S:= $(shell sh -c 'uname -s 2>/dev/null || echo not') | |
4 | ||
5 | CCCOLOR="\033[34m" | |
6 | LINKCOLOR="\033[34;1m" | |
7 | SRCCOLOR="\033[33m" | |
8 | BINCOLOR="\033[37;1m" | |
9 | MAKECOLOR="\033[32;1m" | |
10 | ENDCOLOR="\033[0m" | |
11 | ||
12 | default: | |
13 | @echo "Explicit target required" | |
14 | ||
15 | .PHONY: default | |
16 | ||
17 | # Prerequisites target | |
18 | .make-prerequisites: | |
19 | @touch $@ | |
20 | ||
21 | # Clean everything when CFLAGS is different | |
22 | ifneq ($(shell sh -c '[ -f .make-cflags ] && cat .make-cflags || echo none'), $(CFLAGS)) | |
23 | .make-cflags: distclean | |
24 | -(echo "$(CFLAGS)" > .make-cflags) | |
25 | .make-prerequisites: .make-cflags | |
26 | endif | |
27 | ||
28 | # Clean everything when LDFLAGS is different | |
29 | ifneq ($(shell sh -c '[ -f .make-ldflags ] && cat .make-ldflags || echo none'), $(LDFLAGS)) | |
30 | .make-ldflags: distclean | |
31 | -(echo "$(LDFLAGS)" > .make-ldflags) | |
32 | .make-prerequisites: .make-ldflags | |
33 | endif | |
34 | ||
35 | distclean: | |
36 | -(cd hiredis && $(MAKE) clean) > /dev/null || true | |
37 | -(cd linenoise && $(MAKE) clean) > /dev/null || true | |
38 | -(cd lua && $(MAKE) clean) > /dev/null || true | |
39 | -(cd jemalloc && [ -f Makefile ] && $(MAKE) distclean) > /dev/null || true | |
40 | -(rm -f .make-*) | |
41 | ||
42 | .PHONY: distclean | |
43 | ||
44 | hiredis: .make-prerequisites | |
45 | @printf '%b %b\n' $(MAKECOLOR)MAKE$(ENDCOLOR) $(BINCOLOR)$@$(ENDCOLOR) | |
46 | cd hiredis && $(MAKE) static | |
47 | ||
48 | .PHONY: hiredis | |
49 | ||
50 | linenoise: .make-prerequisites | |
51 | @printf '%b %b\n' $(MAKECOLOR)MAKE$(ENDCOLOR) $(BINCOLOR)$@$(ENDCOLOR) | |
52 | cd linenoise && $(MAKE) | |
53 | ||
54 | .PHONY: linenoise | |
55 | ||
56 | ifeq ($(uname_S),SunOS) | |
57 | # Make isinf() available | |
58 | LUA_CFLAGS= -D__C99FEATURES__=1 | |
59 | endif | |
60 | ||
61 | LUA_CFLAGS+= -O2 -Wall -DLUA_ANSI $(CFLAGS) | |
62 | LUA_LDFLAGS+= $(LDFLAGS) | |
63 | ||
64 | lua: .make-prerequisites | |
65 | @printf '%b %b\n' $(MAKECOLOR)MAKE$(ENDCOLOR) $(BINCOLOR)$@$(ENDCOLOR) | |
66 | cd lua/src && $(MAKE) all CFLAGS="$(LUA_CFLAGS)" MYLDFLAGS="$(LUA_LDFLAGS)" | |
67 | ||
68 | .PHONY: lua | |
69 | ||
70 | JEMALLOC_CFLAGS= -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops $(CFLAGS) | |
71 | JEMALLOC_LDFLAGS= $(LDFLAGS) | |
72 | ||
73 | jemalloc: .make-prerequisites | |
74 | @printf '%b %b\n' $(MAKECOLOR)MAKE$(ENDCOLOR) $(BINCOLOR)$@$(ENDCOLOR) | |
75 | cd jemalloc && ./configure --with-jemalloc-prefix=je_ --enable-cc-silence CFLAGS="$(JEMALLOC_CFLAGS)" LDFLAGS="$(JEMALLOC_LDFLAGS)" | |
76 | cd jemalloc && $(MAKE) lib/libjemalloc.a | |
77 | ||
78 | .PHONY: jemalloc |