85 lines
2.6 KiB
CMake
85 lines
2.6 KiB
CMake
CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
|
|
PROJECT(TDengine)
|
|
|
|
INCLUDE_DIRECTORIES(${TD_COMMUNITY_DIR}/src/client/inc)
|
|
|
|
FIND_PACKAGE(Git)
|
|
IF (GIT_FOUND)
|
|
MESSAGE("Git found")
|
|
EXECUTE_PROCESS(
|
|
COMMAND ${GIT_EXECUTABLE} log --pretty=oneline -n 1 ${CMAKE_CURRENT_LIST_DIR}/taosdemo.c
|
|
RESULT_VARIABLE RESULT
|
|
OUTPUT_VARIABLE TAOSDEMO_COMMIT)
|
|
EXECUTE_PROCESS(
|
|
COMMAND bash "-c" "echo '${TAOSDEMO_COMMIT}' | awk '{print $1}' | cut -c -9"
|
|
RESULT_VARIABLE RESULT
|
|
OUTPUT_VARIABLE TAOSDEMO_COMMIT_SHA1)
|
|
EXECUTE_PROCESS(
|
|
COMMAND ${GIT_EXECUTABLE} status -z -s ${CMAKE_CURRENT_LIST_DIR}/taosdemo.c
|
|
RESULT_VARIABLE RESULT
|
|
OUTPUT_VARIABLE TAOSDEMO_STATUS)
|
|
EXECUTE_PROCESS(
|
|
COMMAND bash "-c" "echo '${TAOSDEMO_STATUS}' | awk '{print $1}'"
|
|
RESULT_VARIABLE RESULT
|
|
OUTPUT_VARIABLE TAOSDEMO_STATUS)
|
|
MESSAGE("taosdemo.c status: " ${TAOSDEMO_STATUS})
|
|
ELSE()
|
|
MESSAGE("Git not found")
|
|
SET(TAOSDEMO_COMMIT_SHA1 "unknown")
|
|
SET(TAOSDEMO_STATUS "unknown")
|
|
ENDIF (GIT_FOUND)
|
|
|
|
STRING(STRIP ${TAOSDEMO_COMMIT_SHA1} TAOSDEMO_COMMIT_SHA1)
|
|
MESSAGE("taosdemo's latest commit in short is:" ${TAOSDEMO_COMMIT_SHA1})
|
|
STRING(STRIP ${TAOSDEMO_STATUS} TAOSDEMO_STATUS)
|
|
|
|
IF (TAOSDEMO_STATUS MATCHES "M")
|
|
SET(TAOSDEMO_STATUS "modified")
|
|
ELSE()
|
|
SET(TAOSDEMO_STATUS "")
|
|
ENDIF ()
|
|
MESSAGE("taosdemo's status is:" ${TAOSDEMO_STATUS})
|
|
|
|
ADD_DEFINITIONS(-DTAOSDEMO_COMMIT_SHA1="${TAOSDEMO_COMMIT_SHA1}")
|
|
ADD_DEFINITIONS(-DTAOSDEMO_STATUS="${TAOSDEMO_STATUS}")
|
|
|
|
MESSAGE("VERNUMBER is:" ${VERNUMBER})
|
|
IF ("${VERNUMBER}" STREQUAL "")
|
|
SET(TD_VERSION_NUMBER "TDengine-version-unknown")
|
|
ELSE()
|
|
SET(TD_VERSION_NUMBER ${VERNUMBER})
|
|
ENDIF ()
|
|
MESSAGE("TD_VERSION_NUMBER is:" ${TD_VERSION_NUMBER})
|
|
ADD_DEFINITIONS(-DTD_VERNUMBER="${TD_VERSION_NUMBER}")
|
|
|
|
IF (TD_LINUX)
|
|
AUX_SOURCE_DIRECTORY(. SRC)
|
|
ADD_EXECUTABLE(taosdemo ${SRC})
|
|
|
|
IF (TD_SOMODE_STATIC)
|
|
TARGET_LINK_LIBRARIES(taosdemo taos_static cJson)
|
|
ELSE ()
|
|
TARGET_LINK_LIBRARIES(taosdemo taos cJson)
|
|
ENDIF ()
|
|
ELSEIF (TD_WINDOWS)
|
|
AUX_SOURCE_DIRECTORY(. SRC)
|
|
ADD_EXECUTABLE(taosdemo ${SRC})
|
|
SET_SOURCE_FILES_PROPERTIES(./taosdemo.c PROPERTIES COMPILE_FLAGS -w)
|
|
IF (TD_SOMODE_STATIC)
|
|
TARGET_LINK_LIBRARIES(taosdemo taos_static cJson)
|
|
ELSE ()
|
|
TARGET_LINK_LIBRARIES(taosdemo taos cJson})
|
|
ENDIF ()
|
|
ELSEIF (TD_DARWIN)
|
|
# missing a few dependencies, such as <argp.h>
|
|
AUX_SOURCE_DIRECTORY(. SRC)
|
|
ADD_EXECUTABLE(taosdemo ${SRC})
|
|
|
|
IF (TD_SOMODE_STATIC)
|
|
TARGET_LINK_LIBRARIES(taosdemo taos_static cJson)
|
|
ELSE ()
|
|
TARGET_LINK_LIBRARIES(taosdemo taos cJson)
|
|
ENDIF ()
|
|
ENDIF ()
|
|
|