forked from baidu/galaxy
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCOMAKE
executable file
·106 lines (82 loc) · 4.47 KB
/
COMAKE
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
97
98
99
100
101
102
103
104
105
#edit-mode: -*- python -*-
#coding:utf-8
#工作路径.
WORKROOT('../../../')
#使用硬链接copy.
CopyUsingHardLink(True)
#支持32位/64位平台编译
#ENABLE_MULTI_LIBS(True)
#C预处理器参数.
CPPFLAGS('-D_GNU_SOURCE -D__STDC_LIMIT_MACROS -DVERSION=\\\"1.9.8.7\\\" -D_BD_KERNEL_')
#为32位目标编译指定额外的预处理参数
#CPPFLAGS_32('-D_XOPEN_SOURE=500')
#C编译参数.
CFLAGS('-g -pipe -W -Wall -Werror -fPIC')
#C++编译参数.
CXXFLAGS('-g -pipe -W -Wall -fPIC')
# protoc
PROTOC('../../../third-64/protobuf/bin/protoc')
#头文件路径.
INCPATHS('. ./src ./output/include')
#使用库
#LIBS('./libgalaxy.a')
#链接参数.
LDFLAGS('-lpthread -lcrypto -lrt -lidn -lssl -lldap -lboost_regex')
#依赖模块
CONFIGS('public/sofa-pbrpc@trunk@comake')
CONFIGS('third-64/[email protected]')
CONFIGS('third-64/libcurl@base')
CONFIGS('third-64/leveldb@base')
CONFIGS('third-64/gflags@gflags_2-0-0-100_PD_BL')
#为32位/64位指定不同的依赖路径.
#CONFIGS_32('lib2/ullib')
#CONFIGS_64('lib2-64/ullib')
agent_sources='src/flags.cc\
common/logging.cc common/util.cc\
src/proto/task.proto src/proto/agent.proto src/proto/master.proto \
src/agent/task_runner.cc src/agent/task_manager.cc\
src/agent/cgroup.cc\
src/agent/workspace.cc src/agent/workspace_manager.cc \
src/agent/agent_impl.cc src/agent/agent_main.cc \
src/agent/downloader_manager.cc src/agent/curl_downloader.cc \
src/agent/binary_downloader.cc \
src/agent/resource_collector.cc \
src/agent/resource_manager.cc \
src/agent/resource_collector_engine.cc \
src/agent/utils.cc '
master_sources='src/flags.cc src/proto/task.proto src/proto/agent.proto src/proto/master.proto\
common/logging.cc src/master/master_impl.cc src/master/master_main.cc '
sdk_sources='common/logging.cc src/sdk/galaxy.cc src/proto/task.proto src/proto/master.proto'
sdk_headers='src/sdk/galaxy.h'
client_sources='src/client/galaxy_client.cc'
downloader_sources='src/agent/curl_downloader.cc test/curl_downloader_test.cc common/logging.cc src/flags.cc'
downloader_headers='src/agent/curl_downloader.h common/logging.h src/agent/downloader.h'
downloadermgr_sources='src/agent/curl_downloader.cc src/agent/downloader_manager.cc src/flags.cc test/downloader_manager_test.cc common/logging.cc src/agent/binary_downloader.cc'
downloadermgr_headers='src/agent/curl_downloader.h src/agent/downloader_manager.h common/logging.h src/agent/downloader.h'
#resource_collector_sources='test/resource_collector_test.cc'
resource_collector_sources='src/agent/resource_collector.cc test/resource_collector_test.cc common/logging.cc src/agent/resource_collector_engine.cc src/flags.cc'
resource_collector_headers='src/agent/resource_collector.h common/logging.h src/agent/resource_collector_engine.h'
agent_utils_sources='src/agent/utils.cc common/logging.cc test/agent_utils_test.cc'
agent_utils_remove_sources='src/agent/utils.cc common/logging.cc test/agent_utils_remove_test.cc'
agent_mock_sources='src/proto/master.proto common/logging.cc src/proto/task.proto src/proto/agent.proto test/pb_file_parser.cc test/agent_test_mock.cc'
master_mock_sources='src/proto/master.proto src/proto/task.proto test/pb_file_parser.cc test/master_test_mock.cc'
monitor_sources='common/logging.cc common/util.cc src/flags.cc src/monitor/monitor_main.cc src/monitor/monitor_impl.cc'
#Application('galaxy',Sources(user_sources))
Application('agent',Sources(agent_sources))
Application('master',Sources(master_sources))
#静态库
StaticLibrary('galaxy',Sources(sdk_sources),HeaderFiles(sdk_headers))
#Client
Application('galaxy_client',Sources(client_sources), Libraries('./libgalaxy.a'))
Application('curl_downloader_test', Sources(downloader_sources), HeaderFiles(downloader_headers))
Application('downloader_mgr_test', Sources(downloadermgr_sources), HeaderFiles(downloadermgr_headers));
Application('resource_collector_test', Sources(resource_collector_sources), HeaderFiles(resource_collector_headers));
Application('agent_utils_test', Sources(agent_utils_sources));
Application('agent_utils_remove_test', Sources(agent_utils_remove_sources));
Application('agent_mock', Sources(agent_mock_sources));
Application('master_mock', Sources(master_mock_sources));
Application('monitor_agent', Sources(monitor_sources));
#共享库
#SharedLibrary('galaxy',Sources(user_sources),HeaderFiles(user_headers))
#子目录
#Directory('demo')