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

S
slguan 已提交
4
INCLUDE_DIRECTORIES(${TD_OS_DIR}/inc)
S
slguan 已提交
5 6
INCLUDE_DIRECTORIES(${TD_COMMUNITY_DIR}/src/inc)
INCLUDE_DIRECTORIES(${TD_COMMUNITY_DIR}/src/util/inc)
S
slguan 已提交
7

L
lihui 已提交
8
IF ((TD_LINUX_64) OR (TD_LINUX_32 AND TD_ARM))
S
slguan 已提交
9 10
  AUX_SOURCE_DIRECTORY(src SRC)
  ADD_LIBRARY(tutil ${SRC})
H
hzcheng 已提交
11
  TARGET_LINK_LIBRARIES(tutil thirdparty pthread os m rt)
S
slguan 已提交
12
  IF (TD_CLUSTER) 
S
slguan 已提交
13
    ADD_DEFINITIONS(-DUSE_LIBICONV)
S
slguan 已提交
14 15 16 17 18 19 20 21 22 23 24 25 26 27
    TARGET_LINK_LIBRARIES(tutil iconv)
  ELSE()
    FIND_PATH(ICONV_INCLUDE_EXIST iconv.h /usr/include/ /usr/local/include/)
    IF (ICONV_INCLUDE_EXIST)
      ADD_DEFINITIONS(-DUSE_LIBICONV)
      FIND_PATH(ICONV_LIBRARY_A_EXIST libiconv.a /usr/lib/ /usr/local/lib/ /lib64)
      FIND_PATH(ICONV_LIBRARY_SO_EXIST libiconv.so /usr/lib/ /usr/local/lib/ /lib64)
      IF (ICONV_LIBRARY_A_EXIST OR ICONV_LIBRARY_SO_EXIST)
        MESSAGE(STATUS "Use the installed libiconv library")
        TARGET_LINK_LIBRARIES(tutil iconv)
      ELSE ()
        # libiconv library is already included in GLIBC,
        MESSAGE(STATUS "Use the iconv functions in GLIBC")
      ENDIF ()
S
slguan 已提交
28
    ELSE ()
S
slguan 已提交
29
      MESSAGE(STATUS "Failed to find iconv, use default encoding method")
S
slguan 已提交
30
    ENDIF ()
H
hzcheng 已提交
31
  ENDIF ()
H
hjxilinx 已提交
32 33

  ADD_SUBDIRECTORY(tests)
S
slguan 已提交
34
ELSEIF (TD_WINDOWS_64)
S
slguan 已提交
35
  ADD_DEFINITIONS(-DUSE_LIBICONV)
S
slguan 已提交
36 37 38 39
  INCLUDE_DIRECTORIES(${TD_COMMUNITY_DIR}/deps/pthread)
  INCLUDE_DIRECTORIES(${TD_COMMUNITY_DIR}/deps/iconv)
  INCLUDE_DIRECTORIES(${TD_COMMUNITY_DIR}/deps/regex)
  INCLUDE_DIRECTORIES(${TD_COMMUNITY_DIR}/src/inc)
S
slguan 已提交
40
  LIST(APPEND SRC ./src/hash.c)
S
slguan 已提交
41
  LIST(APPEND SRC ./src/ihash.c)
S
slguan 已提交
42
  LIST(APPEND SRC ./src/lz4.c)
S
slguan 已提交
43 44 45
  LIST(APPEND SRC ./src/shash.c)
  LIST(APPEND SRC ./src/tbase64.c)
  LIST(APPEND SRC ./src/tcache.c)
S
slguan 已提交
46
  LIST(APPEND SRC ./src/tcompression.c)
S
slguan 已提交
47 48 49 50 51 52 53 54 55 56
  LIST(APPEND SRC ./src/textbuffer.c)
  LIST(APPEND SRC ./src/tglobalcfg.c)
  LIST(APPEND SRC ./src/thash.c)
  LIST(APPEND SRC ./src/thashutil.c)
  LIST(APPEND SRC ./src/thistogram.c)
  LIST(APPEND SRC ./src/tidpool.c)
  LIST(APPEND SRC ./src/tinterpolation.c)
  LIST(APPEND SRC ./src/tlog.c)
  LIST(APPEND SRC ./src/tlosertree.c)
  LIST(APPEND SRC ./src/tmd5.c)
S
slguan 已提交
57
  LIST(APPEND SRC ./src/tmem.c)
S
slguan 已提交
58 59
  LIST(APPEND SRC ./src/tmempool.c)
  LIST(APPEND SRC ./src/tmodule.c)
S
slguan 已提交
60
  LIST(APPEND SRC ./src/tnote.c)
61
  LIST(APPEND SRC ./src/tpercentile.c)
S
slguan 已提交
62 63 64
  LIST(APPEND SRC ./src/tsched.c)
  LIST(APPEND SRC ./src/tskiplist.c)
  LIST(APPEND SRC ./src/tsocket.c)
S
slguan 已提交
65
  LIST(APPEND SRC ./src/tstrbuild.c)
S
slguan 已提交
66 67 68 69 70 71
  LIST(APPEND SRC ./src/ttime.c)
  LIST(APPEND SRC ./src/ttimer.c)
  LIST(APPEND SRC ./src/ttokenizer.c)
  LIST(APPEND SRC ./src/ttypes.c)
  LIST(APPEND SRC ./src/tutil.c)
  LIST(APPEND SRC ./src/version.c)
S
slguan 已提交
72
  ADD_LIBRARY(tutil ${SRC}) 
H
hzcheng 已提交
73
  TARGET_LINK_LIBRARIES(tutil thirdparty iconv regex pthread os winmm IPHLPAPI ws2_32)
S
slguan 已提交
74
ELSEIF(TD_DARWIN_64)
S
slguan 已提交
75
  ADD_DEFINITIONS(-DUSE_LIBICONV)
S
slguan 已提交
76
  LIST(APPEND SRC ./src/hash.c)
S
slguan 已提交
77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96
  LIST(APPEND SRC ./src/ihash.c)
  LIST(APPEND SRC ./src/lz4.c)
  LIST(APPEND SRC ./src/shash.c)
  LIST(APPEND SRC ./src/tbase64.c)
  LIST(APPEND SRC ./src/tcache.c)
  LIST(APPEND SRC ./src/tcompression.c)
  LIST(APPEND SRC ./src/textbuffer.c)
  LIST(APPEND SRC ./src/tglobalcfg.c)
  LIST(APPEND SRC ./src/thash.c)
  LIST(APPEND SRC ./src/thashutil.c)
  LIST(APPEND SRC ./src/thistogram.c)
  LIST(APPEND SRC ./src/tidpool.c)
  LIST(APPEND SRC ./src/tinterpolation.c)
  LIST(APPEND SRC ./src/tlog.c)
  LIST(APPEND SRC ./src/tlosertree.c)
  LIST(APPEND SRC ./src/tmd5.c)
  LIST(APPEND SRC ./src/tmem.c)
  LIST(APPEND SRC ./src/tmempool.c)
  LIST(APPEND SRC ./src/tmodule.c)
  LIST(APPEND SRC ./src/tnote.c)
97
  LIST(APPEND SRC ./src/tpercentile.c)
S
slguan 已提交
98 99 100 101 102 103 104 105 106 107
  LIST(APPEND SRC ./src/tsched.c)
  LIST(APPEND SRC ./src/tskiplist.c)
  LIST(APPEND SRC ./src/tsocket.c)
  LIST(APPEND SRC ./src/tstrbuild.c)
  LIST(APPEND SRC ./src/ttime.c)
  LIST(APPEND SRC ./src/ttimer.c)
  LIST(APPEND SRC ./src/ttokenizer.c)
  LIST(APPEND SRC ./src/ttypes.c)
  LIST(APPEND SRC ./src/tutil.c)
  LIST(APPEND SRC ./src/version.c)
sangshuduo's avatar
sangshuduo 已提交
108
  LIST(APPEND SRC ./src/hash.c)
S
slguan 已提交
109
  ADD_LIBRARY(tutil ${SRC})
H
hzcheng 已提交
110
  TARGET_LINK_LIBRARIES(tutil thirdparty iconv pthread os)
S
slguan 已提交
111
ENDIF()
S
slguan 已提交
112

S
slguan 已提交
113 114 115
#IF (TD_CLUSTER)
#  TARGET_LINK_LIBRARIES(tutil mstorage)
#ENDIF ()
H
hzcheng 已提交
116

S
slguan 已提交
117