CMakeLists.txt 3.9 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 11
  AUX_SOURCE_DIRECTORY(src SRC)
  ADD_LIBRARY(tutil ${SRC})
  TARGET_LINK_LIBRARIES(tutil 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 ()
S
slguan 已提交
32
ELSEIF (TD_WINDOWS_64)
S
slguan 已提交
33
  ADD_DEFINITIONS(-DUSE_LIBICONV)
S
slguan 已提交
34 35 36 37
  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 已提交
38
  LIST(APPEND SRC ./src/hash.c)
S
slguan 已提交
39
  LIST(APPEND SRC ./src/ihash.c)
S
slguan 已提交
40
  LIST(APPEND SRC ./src/lz4.c)
S
slguan 已提交
41 42 43
  LIST(APPEND SRC ./src/shash.c)
  LIST(APPEND SRC ./src/tbase64.c)
  LIST(APPEND SRC ./src/tcache.c)
S
slguan 已提交
44
  LIST(APPEND SRC ./src/tcompression.c)
S
slguan 已提交
45 46 47 48 49 50 51 52 53 54
  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 已提交
55
  LIST(APPEND SRC ./src/tmem.c)
S
slguan 已提交
56 57
  LIST(APPEND SRC ./src/tmempool.c)
  LIST(APPEND SRC ./src/tmodule.c)
S
slguan 已提交
58
  LIST(APPEND SRC ./src/tnote.c)
S
slguan 已提交
59 60 61
  LIST(APPEND SRC ./src/tsched.c)
  LIST(APPEND SRC ./src/tskiplist.c)
  LIST(APPEND SRC ./src/tsocket.c)
S
slguan 已提交
62
  LIST(APPEND SRC ./src/tstrbuild.c)
S
slguan 已提交
63 64 65 66 67 68
  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 已提交
69
  ADD_LIBRARY(tutil ${SRC}) 
S
slguan 已提交
70
  TARGET_LINK_LIBRARIES(tutil iconv regex pthread os winmm IPHLPAPI ws2_32)
S
slguan 已提交
71
ELSEIF(TD_DARWIN_64)
S
slguan 已提交
72
  ADD_DEFINITIONS(-DUSE_LIBICONV)
S
slguan 已提交
73
  LIST(APPEND SRC ./src/hash.c)
S
slguan 已提交
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
  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)
  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 已提交
104
  LIST(APPEND SRC ./src/hash.c)
S
slguan 已提交
105 106
  ADD_LIBRARY(tutil ${SRC})
  TARGET_LINK_LIBRARIES(tutil iconv pthread os)
S
slguan 已提交
107
ENDIF()
S
slguan 已提交
108

S
slguan 已提交
109
IF (TD_CLUSTER) 
S
#1177  
slguan 已提交
110
  TARGET_LINK_LIBRARIES(tutil mstorage)
S
slguan 已提交
111
ENDIF ()
H
hzcheng 已提交
112

S
slguan 已提交
113 114