-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
96 lines (81 loc) · 2.17 KB
/
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
INC_FLAGS = -I. -Iinclude -I$(BOOST_HOME)/include
CFLAGS = -std=c++11 -Wall
ifeq ($(OUTPUT_TARGET), -DSHARED_LIB)
TARGETS = libpywrap.so
CFLAGS += -fPIC -shared -fno-strict-aliasing
ifeq ($(PY), -DSUPPORT_PYTHON3)
INC_FLAGS += -I$(PYTHON3_INC)
LIB_FLAGS += -lpython3.5
else
ifeq ($(PY), -DSUPPORT_PYTHON2)
INC_FLAGS += -I$(PYTHON2_INC)
LIB_FLAGS += -lpython2.7
endif
endif
else
TARGETS = X
endif
ifeq ($(DEBUG), ON)
CFLAGS += -g -O0
else
CFLAGS += -O2
endif
ifeq ($(OPENCV), -DWITH_OPENCV)
ifeq ($(CV), -DSUPPORT_CV3)
INC_FLAGS += -I$(OPENCV3_HOME)/include
LIB_FLAGS += -L$(OPENCV3_HOME)/lib
else
ifeq ($(CV), -DSUPPORT_CV2)
INC_FLAGS += -I$(OPENCV2_HOME)/include
LIB_FLAGS += -L$(OPENCV2_HOME)/lib
CFLAGS += -lopencv_core -lopencv_highgui -lopencv_imgproc -lopencv_video -lopencv_videostab
endif
endif
endif
ifeq ($(LOG4CXX), -DWITH_LOG4CXX)
INC_FLAGS += -I$(LOG4CXX_HOME)/include
LIB_FLAGS += -L$(LOG4CXX_HOME)/lib -llog4cxx
endif
ifeq ($(SUPPORT_SEETATECH), -DWITH_SEETATECH)
INC_FLAGS += -I$(SEETATECH_HOME)/include
LIB_FLAGS += -L$(SEETATECH_HOME)/lib -lVIPLFaceDetector500 -lVIPLPointDetector500
endif
ifeq ($(FILECONF), -DWITH_FILECONF)
INC_FLAGS += -I$(JSONCPP184_HOME)/include
LIB_FLAGS += -L$(JSONCPP184_HOME)/lib -ljsoncpp
endif
ifeq ($(MONGODB), -DWITH_MONGODB)
INC_FLAGS += -I/usr/local/include/libmongoc-1.0
INC_FLAGS += -I/usr/local/include/mongocxx/v_noabi
INC_FLAGS += -I/usr/local/include/bsoncxx/v_noabi
INC_FLAGS += -I/usr/local/include/libbson-1.0
LIB_FLAGS += -lbsoncxx -lmongocxx
endif
ifeq ($(MYSQL), -DWITH_MYSQL)
INC_FLAGS += -I$(MYSQLCPPCONN_HOME)/include
LIB_FLAGS += -L$(MYSQLCPPCONN_HOME)/lib -lmysqlcppconn
endif
ifeq ($(UUID), -DWITH_UUID)
CFLAGS += -luuid
endif
ifeq ($(os_type), Linux)
CFLAGS += -DOS_LINUX
endif
ifeq ($(os_arch), x86_64)
OSARCH = -m64
endif
CFLAGS += $(BOOST)
CFLAGS += $(OPENCV)
CFLAGS += $(LOG4CXX)
CFLAGS += $(FILECONF)
CFLAGS += $(MONGODB)
CFLAGS += $(MYSQL)
CFLAGS += $(OUTPUT_TARGET)
CFLAGS += $(PY)
CFLAGS += $(INC_FLAGS)
CFLAGS += $(LIB_FLAGS)
all:
g++ src/*.cc $(CFLAGS) -lpthread -o $(TARGETS)
mv $(TARGETS) release
clean:
rm release/$(TARGETS) -f