-
Notifications
You must be signed in to change notification settings - Fork 14
/
Copy pathcmake-tcf-lib.txt
73 lines (60 loc) · 2.04 KB
/
cmake-tcf-lib.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
# -*- cmake -*-
if (WIN32)
if(NOT TCF_OPSYS)
set(TCF_OPSYS "Windows")
endif()
if(NOT TCF_MACHINE)
set(TCF_MACHINE "x86_64")
endif()
endif (WIN32)
set(TCF_BASE_DIR ${TCF_DIR}/agent)
# sources to build
set(TCF_SRCS)
# get all regular source files
file(GLOB TCF_SRCS_REL RELATIVE ${TCF_BASE_DIR}
${TCF_BASE_DIR}/system/${TCF_OPSYS}/tcf/*.c
${TCF_BASE_DIR}/machine/${TCF_MACHINE}/tcf/*.c
${TCF_BASE_DIR}/tcf/framework/*.c
${TCF_BASE_DIR}/tcf/services/*.c
${TCF_BASE_DIR}/tcf/main/*.c)
# remove non-library files
file(GLOB TCF_MAIN_REL RELATIVE ${TCF_BASE_DIR}
${TCF_BASE_DIR}/tcf/main/main*.c)
list(REMOVE_ITEM TCF_SRCS_REL ${TCF_MAIN_REL})
if(DEFINED TCF_EXTRA_DIR)
# get extra all source files
file(GLOB TCF_EXTRA_SRCS_REL RELATIVE ${TCF_EXTRA_DIR}
${TCF_EXTRA_DIR}/system/${TCF_OPSYS}/tcf/*.c
${TCF_EXTRA_DIR}/machine/${TCF_MACHINE}/tcf/*.c
${TCF_EXTRA_DIR}/tcf/framework/*.c
${TCF_EXTRA_DIR}/tcf/services/*.c
${TCF_EXTRA_DIR}/tcf/main/*.c)
# Override regular files with extra files
list(REMOVE_ITEM TCF_SRCS_REL ${TCF_EXTRA_SRCS_REL})
foreach(file ${TCF_EXTRA_SRCS_REL})
list(APPEND TCF_SRCS ${TCF_EXTRA_DIR}/${file})
endforeach(file)
endif()
foreach(file ${TCF_SRCS_REL})
list(APPEND TCF_SRCS ${TCF_BASE_DIR}/${file})
endforeach(file)
if(DEFINED TCF_EXTRA_DIR)
include_directories(${TCF_EXTRA_DIR} ${TCF_EXTRA_DIR}/system/${TCF_OPSYS} ${TCF_EXTRA_DIR}/machine/${TCF_MACHINE})
endif()
include_directories(${TCF_BASE_DIR} ${TCF_BASE_DIR}/system/${TCF_OPSYS} ${TCF_BASE_DIR}/machine/${TCF_MACHINE})
set_source_files_properties(${TCF_SRCS} PROPERTIES
COMPILE_FLAGS "${MULTI_THREADED_COMPILE_FLAGS}")
add_library(${TCF_LIB_NAME} ${TCF_LIB_TYPE} ${TCF_SRCS})
target_link_libraries(${TCF_LIB_NAME}
${UUID_LIB_NAME} ${MULTI_THREADED_LINK_LIBS} ${SOCKET_LINK_LIBS})
if(SSL_LIB_NAME)
target_link_libraries(${TCF_LIB_NAME} ${SSL_LIB_NAME})
else()
add_definitions("-DENABLE_SSL=0")
endif()
if(DEFINED TCF_PLUGIN_PATH)
add_definitions(-DPATH_Plugins=${TCF_PLUGIN_PATH})
if (UNIX)
target_link_libraries(${TCF_LIB_NAME} dl)
endif()
endif()