CMakeLists.txt 3.6 KB
Newer Older
1
CMAKE_MINIMUM_REQUIRED(VERSION 2.8...3.20)
H
hzcheng 已提交
2 3
PROJECT(TDengine)

S
slguan 已提交
4 5
INCLUDE_DIRECTORIES(inc)
INCLUDE_DIRECTORIES(jni)
6
INCLUDE_DIRECTORIES(${TD_COMMUNITY_DIR}/src/query/inc)
7
INCLUDE_DIRECTORIES(${TD_COMMUNITY_DIR}/deps/zlib-1.2.11/inc)
8
INCLUDE_DIRECTORIES(${TD_COMMUNITY_DIR}/src/plugins/http/inc)
S
slguan 已提交
9
AUX_SOURCE_DIRECTORY(src SRC)
S
slguan 已提交
10

S
TD-1057  
Shengliang Guan 已提交
11
IF (TD_LINUX)
S
slguan 已提交
12
  INCLUDE_DIRECTORIES(${TD_COMMUNITY_DIR}/deps/jni/linux)
13
  INCLUDE_DIRECTORIES(${TD_COMMUNITY_DIR}/deps/cJson/inc)
S
slguan 已提交
14 15

  # set the static lib name
S
slguan 已提交
16
  ADD_LIBRARY(taos_static STATIC ${SRC})
17
  TARGET_LINK_LIBRARIES(taos_static common query trpc tutil pthread m rt cJson ${VAR_TSZ})
S
slguan 已提交
18
  SET_TARGET_PROPERTIES(taos_static PROPERTIES OUTPUT_NAME "taos_static")
S
slguan 已提交
19
  SET_TARGET_PROPERTIES(taos_static PROPERTIES CLEAN_DIRECT_OUTPUT 1)
S
slguan 已提交
20

S
slguan 已提交
21 22
  # generate dynamic library (*.so)
  ADD_LIBRARY(taos SHARED ${SRC})
23
  TARGET_LINK_LIBRARIES(taos common query trpc tutil pthread m rt cJson)
24
  IF (TD_LINUX_64)
Z
zyyang 已提交
25
    TARGET_LINK_LIBRARIES(taos lua cJson)
26
  ENDIF ()
H
Haojun Liao 已提交
27

S
slguan 已提交
28 29 30 31 32
  SET_TARGET_PROPERTIES(taos PROPERTIES CLEAN_DIRECT_OUTPUT 1)

  #set version of .so
  #VERSION    so version
  #SOVERSION  api version
H
Hui Li 已提交
33 34
  #MESSAGE(STATUS "build version ${TD_VER_NUMBER}")
  SET_TARGET_PROPERTIES(taos PROPERTIES VERSION ${TD_VER_NUMBER} SOVERSION 1)
35 36 37

  ADD_SUBDIRECTORY(tests)

38 39
ELSEIF (TD_DARWIN)
  INCLUDE_DIRECTORIES(${TD_COMMUNITY_DIR}/deps/jni/linux)
40
  INCLUDE_DIRECTORIES(${TD_COMMUNITY_DIR}/deps/cJson/inc)
41 42 43

  # set the static lib name
  ADD_LIBRARY(taos_static STATIC ${SRC})
44
  TARGET_LINK_LIBRARIES(taos_static common query trpc tutil pthread m lua cJson)
45 46 47 48 49
  SET_TARGET_PROPERTIES(taos_static PROPERTIES OUTPUT_NAME "taos_static")
  SET_TARGET_PROPERTIES(taos_static PROPERTIES CLEAN_DIRECT_OUTPUT 1)

  # generate dynamic library (*.dylib)
  ADD_LIBRARY(taos SHARED ${SRC})
50
  TARGET_LINK_LIBRARIES(taos common query trpc tutil pthread m lua cJson)
51 52 53 54 55 56 57 58 59 60
  SET_TARGET_PROPERTIES(taos PROPERTIES CLEAN_DIRECT_OUTPUT 1)

  #set version of .dylib
  #VERSION    dylib version
  #SOVERSION  dylib version
  #MESSAGE(STATUS "build version ${TD_VER_NUMBER}")
  SET_TARGET_PROPERTIES(taos PROPERTIES VERSION ${TD_VER_NUMBER} SOVERSION 1)

  ADD_SUBDIRECTORY(tests)

S
TD-1037  
Shengliang Guan 已提交
61
ELSEIF (TD_WINDOWS)
S
slguan 已提交
62 63
  INCLUDE_DIRECTORIES(${TD_COMMUNITY_DIR}/deps/jni/windows)
  INCLUDE_DIRECTORIES(${TD_COMMUNITY_DIR}/deps/jni/windows/win32)
64
  INCLUDE_DIRECTORIES(${TD_COMMUNITY_DIR}/deps/cJson/inc)
65 66 67

  CONFIGURE_FILE("${TD_COMMUNITY_DIR}/src/client/src/taos.rc.in" "${TD_COMMUNITY_DIR}/src/client/src/taos.rc")

S
slguan 已提交
68
  ADD_LIBRARY(taos_static STATIC ${SRC})
69
  TARGET_LINK_LIBRARIES(taos_static trpc tutil query cJson)
S
slguan 已提交
70 71

  # generate dynamic library (*.dll)
72
  ADD_LIBRARY(taos SHARED ${SRC} ${TD_COMMUNITY_DIR}/src/client/src/taos.rc)
L
[#1054]  
lihui 已提交
73 74 75
  IF (NOT TD_GODLL)
    SET_TARGET_PROPERTIES(taos PROPERTIES LINK_FLAGS /DEF:${TD_COMMUNITY_DIR}/src/client/src/taos.def)
  ENDIF ()
76
  TARGET_LINK_LIBRARIES(taos trpc tutil query lua cJson)
S
slguan 已提交
77

S
TD-1057  
Shengliang Guan 已提交
78
ELSEIF (TD_DARWIN)
S
slguan 已提交
79
  SET(CMAKE_MACOSX_RPATH 1)
S
slguan 已提交
80
  INCLUDE_DIRECTORIES(${TD_COMMUNITY_DIR}/deps/jni/linux)
81
  INCLUDE_DIRECTORIES(${TD_COMMUNITY_DIR}/deps/cJson/inc)
S
slguan 已提交
82 83

  ADD_LIBRARY(taos_static STATIC ${SRC})
84
  TARGET_LINK_LIBRARIES(taos_static query trpc tutil pthread m lua cJson)
S
slguan 已提交
85 86 87 88
  SET_TARGET_PROPERTIES(taos_static PROPERTIES OUTPUT_NAME "taos_static")

  # generate dynamic library (*.dylib)
  ADD_LIBRARY(taos SHARED ${SRC})
89
  TARGET_LINK_LIBRARIES(taos query trpc tutil pthread m lua cJson)
S
slguan 已提交
90 91 92 93 94 95

  SET_TARGET_PROPERTIES(taos PROPERTIES CLEAN_DIRECT_OUTPUT 1)

  #set version of .so
  #VERSION    so version
  #SOVERSION  api version
H
Hui Li 已提交
96 97
  #MESSAGE(STATUS "build version ${TD_VER_NUMBER}")
  SET_TARGET_PROPERTIES(taos PROPERTIES VERSION ${TD_VER_NUMBER} SOVERSION 1)
S
slguan 已提交
98
ENDIF ()
H
hzcheng 已提交
99