diff --git a/tools/taos-tools/src/CMakeLists.txt b/tools/taos-tools/src/CMakeLists.txt index c98c7487a1..072baee219 100644 --- a/tools/taos-tools/src/CMakeLists.txt +++ b/tools/taos-tools/src/CMakeLists.txt @@ -36,85 +36,57 @@ ELSEIF (CMAKE_SYSTEM_PROCESSOR MATCHES "loongarch64") MESSAGE(STATUS "Set CPUTYPE to loongarch64") ENDIF () +# +# collect --version information +# + +MESSAGE("collect --version show info:") +# version +IF (DEFINED TD_VER_NUMBER) + ADD_DEFINITIONS(-DTD_VER_NUMBER="${TD_VER_NUMBER}") + MESSAGE("version:${TD_VER_NUMBER}") +ELSE () + # abort build + MESSAGE(FATAL_ERROR "build taos-tools not found TD_VER_NUMBER define.") +ENDIF () + +# commit id FIND_PACKAGE(Git) IF(GIT_FOUND) - #commit id + # get EXECUTE_PROCESS( COMMAND git log -1 --format=%H WORKING_DIRECTORY ${TD_COMMUNITY_DIR} - OUTPUT_VARIABLE TAOSBENCHMARK_COMMIT_SHA1 + OUTPUT_VARIABLE TAOSBENCHMARK_COMMIT_ID ) EXECUTE_PROCESS( COMMAND git log -1 --format=%H WORKING_DIRECTORY ${TD_COMMUNITY_DIR} - OUTPUT_VARIABLE TAOSDUMP_COMMIT_SHA1 - ) - MESSAGE("taosBenchmark commid_id:${TAOSBENCHMARK_COMMIT_SHA1}") - MESSAGE("taosdump commid_id:${TAOSDUMP_COMMIT_SHA1}") - - # version - IF (DEFINED TD_VER_NUMBER) - # use tdengine version - SET(TAOSBENCHMARK_TAG ${TD_VER_NUMBER}) - SET(TAOSDUMP_TAG ${TD_VER_NUMBER}) - MESSAGE(STATUS "use TD_VER_NUMBER version: " ${TD_VER_NUMBER}) - ELSE () - # use internal version - EXECUTE_PROCESS( - COMMAND sh "-c" "echo '${TAOSDUMP_FULLTAG}' | awk -F '-' '{print $2}'" - RESULT_VARIABLE RESULT - OUTPUT_VARIABLE TAOSDUMP_TAG - ) - MESSAGE(STATUS "taosdump use origin version: " ${TAOSDUMP_TAG}) - EXECUTE_PROCESS( - COMMAND sh "-c" "echo '${TAOSBENCHMARK_FULLTAG}' | awk -F '-' '{print $2}'" - RESULT_VARIABLE RESULT - OUTPUT_VARIABLE TAOSBENCHMARK_TAG - ) - MESSAGE(STATUS "taosBenchmark use origin version: " ${TAOSBENCHMARK_TAG}) - ENDIF () + OUTPUT_VARIABLE TAOSDUMP_COMMIT_ID + ) + + # show + MESSAGE("") + MESSAGE("taosdump commit id: ${TAOSDUMP_COMMIT_ID}") + MESSAGE("taosBenchmark commit id: ${TAOSBENCHMARK_COMMIT_ID}") + MESSAGE("") + # define + ADD_DEFINITIONS(-DTAOSDUMP_COMMIT_ID="${TAOSDUMP_COMMIT_ID}") + ADD_DEFINITIONS(-DTAOSBENCHMARK_COMMIT_ID="${TAOSBENCHMARK_COMMIT_ID}") ELSE() - MESSAGE("Git not found") - SET(TAOSDUMP_COMMIT_SHA1 "unknown") - SET(TAOSBENCHMARK_COMMIT_SHA1 "unknown") - SET(TAOSDUMP_TAG "0.1.0") - SET(TAOSDUMP_STATUS "unknown") - SET(TAOSBENCHMARK_STATUS "unknown") + MESSAGE(FATAL_ERROR "build taos-tools FIND_PACKAGE(Git) failed.") ENDIF (GIT_FOUND) -STRING(STRIP "${TAOSDUMP_STATUS}" TAOSDUMP_STATUS) -STRING(STRIP "${TAOSBENCHMARK_STATUS}" TAOSBENCHMARK_STATUS) +# build date +ADD_DEFINITIONS(-DBUILD_DATA="${TD_VER_OSTYPE}-${TD_VER_CPUTYPE} ${TD_VER_DATE}") +MESSAGE("build:${TD_VER_OSTYPE}-${TD_VER_CPUTYPE} ${TD_VER_DATE}") -IF (TAOSDUMP_STATUS MATCHES "M") - SET(TAOSDUMP_STATUS "modified") -ELSE() - SET(TAOSDUMP_STATUS "") -ENDIF () -IF (TAOSBENCHMARK_STATUS MATCHES "M") - SET(TAOSBENCHMARK_STATUS "modified") -ELSE() - SET(TAOSBENCHMARK_STATUS "") -ENDIF () - -MESSAGE("") -MESSAGE("taosdump last tag: ${TAOSDUMP_TAG}") -MESSAGE("taosdump commit: ${TAOSDUMP_COMMIT_SHA1}") -MESSAGE("taosdump status: ${TAOSDUMP_STATUS}") -MESSAGE("") -MESSAGE("taosBenchmark last tag: ${TAOSBENCHMARK_TAG}") -MESSAGE("taosBenchmark commit: ${TAOSBENCHMARK_COMMIT_SHA1}") -MESSAGE("taosBenchmark status: ${TAOSBENCHMARK_STATUS}") -MESSAGE("") - -ADD_DEFINITIONS(-DTAOSDUMP_TAG="${TAOSDUMP_TAG}") -ADD_DEFINITIONS(-DTAOSDUMP_COMMIT_SHA1="${TAOSDUMP_COMMIT_SHA1}") -ADD_DEFINITIONS(-DTAOSDUMP_STATUS="${TAOSDUMP_STATUS}") -ADD_DEFINITIONS(-DTAOSBENCHMARK_TAG="${TAOSBENCHMARK_TAG}") -ADD_DEFINITIONS(-DTAOSBENCHMARK_COMMIT_SHA1="${TAOSBENCHMARK_COMMIT_SHA1}") -ADD_DEFINITIONS(-DTAOSBENCHMARK_STATUS="${TAOSBENCHMARK_STATUS}") +# +# build proj +# LINK_DIRECTORIES(${CMAKE_BINARY_DIR}/build/lib ${CMAKE_BINARY_DIR}/build/lib64) LINK_DIRECTORIES(/usr/lib /usr/lib64) INCLUDE_DIRECTORIES(/usr/local/taos/include) @@ -179,6 +151,7 @@ IF (${CMAKE_SYSTEM_NAME} MATCHES "Linux" OR ${CMAKE_SYSTEM_NAME} MATCHES "Darwin ENDIF() ENDIF () + # websocket IF (${WEBSOCKET}) ADD_DEFINITIONS(-DWEBSOCKET) INCLUDE_DIRECTORIES(/usr/local/include/) @@ -204,6 +177,7 @@ IF (${CMAKE_SYSTEM_NAME} MATCHES "Linux" OR ${CMAKE_SYSTEM_NAME} MATCHES "Darwin SET(GCC_COVERAGE_LINK_FLAGS "-lgcov --coverage") ENDIF () + # sanitizer IF (${BUILD_SANITIZER}) MESSAGE("${Yellow} Enable memory sanitize by BUILD_SANITIZER ${ColourReset}") IF (${OS_ID} MATCHES "Darwin") @@ -215,6 +189,7 @@ IF (${CMAKE_SYSTEM_NAME} MATCHES "Linux" OR ${CMAKE_SYSTEM_NAME} MATCHES "Darwin SET(TOOLS_SANITIZE_FLAG "") ENDIF () + # TOOLS_BUILD_TYPE IF (${TOOLS_BUILD_TYPE} MATCHES "Debug") IF ((${TOOLS_SANITIZE} MATCHES "true") OR (${BUILD_SANITIZER})) MESSAGE("${Yellow} Enable memory sanitize by TOOLS_SANITIZE ${ColourReset}") diff --git a/tools/taos-tools/src/benchCommandOpt.c b/tools/taos-tools/src/benchCommandOpt.c index b868e19bae..d38ee25525 100644 --- a/tools/taos-tools/src/benchCommandOpt.c +++ b/tools/taos-tools/src/benchCommandOpt.c @@ -16,20 +16,6 @@ extern char g_configDir[MAX_PATH_LEN]; -// get taosBenchmark commit number version -#ifndef TAOSBENCHMARK_COMMIT_SHA1 -#define TAOSBENCHMARK_COMMIT_SHA1 "unknown" -#endif - -#ifndef TAOSBENCHMARK_TAG -#define TAOSBENCHMARK_TAG "0.1.0" -#endif - -#ifndef TAOSBENCHMARK_STATUS -#define TAOSBENCHMARK_STATUS "unknown" -#endif - - char *g_aggreFuncDemo[] = {"*", "count(*)", "avg(current)", @@ -42,16 +28,10 @@ char *g_aggreFunc[] = {"*", "count(*)", "avg(C0)", "sum(C0)", "max(C0)", "min(C0)", "first(C0)", "last(C0)"}; void printVersion() { - char taosBenchmark_ver[] = TAOSBENCHMARK_TAG; - char taosBenchmark_commit[] = TAOSBENCHMARK_COMMIT_SHA1; - char taosBenchmark_status[] = TAOSBENCHMARK_STATUS; - - // version - printf("taosBenchmark version: %s\ngit: %s\n", taosBenchmark_ver, taosBenchmark_commit); - printf("build: %s\n", getBuildInfo()); - if (strlen(taosBenchmark_status) > 0) { - printf("status: %s\n", taosBenchmark_status); - } + // version, macro define in src/CMakeLists.txt + printf("taosBenchmark version: %s\n", TD_VER_NUMBER); + printf("git: %s\n", TAOSBENCHMARK_COMMIT_ID); + printf("build: %s\n", BUILD_DATA); } void parseFieldDatatype(char *dataType, BArray *fields, bool isTag) { diff --git a/tools/taos-tools/src/taosdump.c b/tools/taos-tools/src/taosdump.c index 7a7b890168..6a2cffe407 100644 --- a/tools/taos-tools/src/taosdump.c +++ b/tools/taos-tools/src/taosdump.c @@ -236,8 +236,6 @@ struct arguments g_args = { 1000 // retrySleepMs }; - - static uint64_t getUniqueIDFromEpoch() { struct timeval tv; @@ -256,24 +254,17 @@ static uint64_t getUniqueIDFromEpoch() { return id; } - +// --version -V static void printVersion(FILE *file) { - char taostools_longver[] = TAOSDUMP_TAG; - char taosdump_status[] = TAOSDUMP_STATUS; - - char *dupSeq = strdup(taostools_longver); - char *running = dupSeq; - char *taostools_ver = strsep(&running, "-"); - - char taosdump_commit[] = TAOSDUMP_COMMIT_SHA1; - - fprintf(file,"taosdump version: %s\ngit: %s\n", taostools_ver, taosdump_commit); - printf("build: %s\n", getBuildInfo()); - if (strlen(taosdump_status) > 0) { - fprintf(file, "status:%s\n", taosdump_status); + if (file == NULL) { + printf("fail, printVersion file is null.\n"); + return ; } - free(dupSeq); + // version, macro define in src/CMakeLists.txt + fprintf(file, "taosBenchmark version: %s\n", TD_VER_NUMBER); + fprintf(file, "git: %s\n", TAOSDUMP_COMMIT_ID); + fprintf(file, "build: %s\n", BUILD_DATA); } static char *typeToStr(int type) {