-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathCMakeLists.txt
86 lines (66 loc) · 1.71 KB
/
CMakeLists.txt
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
#THESE VAR should be setted like this:
#cmake -DCROSS_COMPILE=arm-linux-
#CROSS_COMPILE compiler prefix, such as "arm-linux-"
set(CMAKE_C_COMPILER ${CROSS_COMPILE}gcc)
set(CMAKE_CXX_COMPILER ${CROSS_COMPILE}g++)
cmake_minimum_required (VERSION 2.6)
SET(PROJECTNAME GRPC)
PROJECT (${PROJECTNAME})
SET(TOP_BINARY_DIR ${${PROJECTNAME}_BINARY_DIR})
SET(TOP_SOURCE_DIR ${${PROJECTNAME}_SOURCE_DIR})
MESSAGE(STATUS "This is config path "${CONFIG_PATH})
MESSAGE(STATUS "This is BINARY dir " ${TOP_BINARY_DIR})
MESSAGE(STATUS "This is SOURCE dir "${TOP_SOURCE_DIR})
MESSAGE(STATUS "CROSS_COMPILE is "${CROSS_COMPILE})
#SET(CMAKE_INSTALL_PREFIX $ENV{HOME}/progs)
SET(CMAKE_INSTALL_PREFIX /progs)
add_definitions(-Wall -Wno-unused)
add_definitions(-g)
#add_definitions(-ffunction-sections -fdata-sections)
#ADD_SUBDIRECTORY(libs)
INCLUDE_DIRECTORIES(${TOP_SOURCE_DIR}/src)
INCLUDE_DIRECTORIES(${TOP_SOURCE_DIR}/src/generate)
INCLUDE_DIRECTORIES(${TOP_SOURCE_DIR}/cJSON)
if (NOT DEFINED CROSS_COMPILE)
SET(CROSS_COMPILE x86)
endif()
SET(BOARD ${CROSS_COMPILE})
ADD_SUBDIRECTORY(cJSON)
ADD_SUBDIRECTORY(src)
#ADD_SUBDIRECTORY(test-httpclient)
LINK_DIRECTORIES(
${TOP_BINARY_DIR}/
)
ADD_EXECUTABLE(server server.c)
ADD_EXECUTABLE(client client.c)
ADD_EXECUTABLE(tcpclient tcpclient.c)
TARGET_LINK_LIBRARIES(server
# -static
grpc
cJSON
rt
pthread
stdc++
resolv
m
)
TARGET_LINK_LIBRARIES(client
-static
grpc
cJSON
rt
pthread
stdc++
resolv
m
)
TARGET_LINK_LIBRARIES(tcpclient
-static
grpc
cJSON
rt
pthread
stdc++
resolv
m
)