-
Notifications
You must be signed in to change notification settings - Fork 19
/
Copy pathMakefile
36 lines (24 loc) · 800 Bytes
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
all: libredispp.a libredispp.so unittests perftest multitest transtest
CXX ?= g++
CXXFLAGS ?= -std=c++11 -g -O0 -Isrc $(EXTRA_CXXFLAGS) -Werror
VPATH += src test
%.o: %.cpp
$(CXX) $(CXXFLAGS) -c $^ -o $@
libredispp.a: redispp.o
ar cr libredispp.a redispp.o
%.pic.o: %.cpp
$(CXX) -fPIC $(CXXFLAGS) -c $^ -o $@
libredispp.so: redispp.pic.o
$(CXX) -shared $^ -o $@
unittests: test.o libredispp.a
$(CXX) $^ libredispp.a -o $@
perftest: perf.o libredispp.a
$(CXX) $^ libredispp.a -o $@
multitest: multi.o libredispp.a
$(CXX) $^ libredispp.a -o $@
transtest: trans.o libredispp.a
$(CXX) $^ libredispp.a -o $@
clang-format:
for f in src/*.cpp src/*.h test/*.cpp; do clang-format $$f | sponge $$f; done
clean:
rm -f *.o libredispp.a libredispp.so perftest unittests multitest transtest