diff --git a/deps/MsvcLibX/src/utimes.c b/deps/MsvcLibX/src/utimes.c index e7c760ce5b659f24c174e596d747ada85ff1a4db..7638b932b41518b90d575e423aa2d9df01b249d6 100644 --- a/deps/MsvcLibX/src/utimes.c +++ b/deps/MsvcLibX/src/utimes.c @@ -64,7 +64,7 @@ void Filetime2Timeval(const FILETIME *pFT, struct timeval *ptv) { ULARGE_INTEGER ull; ull.LowPart = pFT->dwLowDateTime; ull.HighPart = pFT->dwHighDateTime; - ptv->tv_sec = ull.QuadPart / 10000000ULL - 11644473600ULL; + ptv->tv_sec = (long)(ull.QuadPart / 10000000ULL - 11644473600ULL); ptv->tv_usec = (int32_t)((ull.QuadPart % 10000000ULL)/10); } diff --git a/src/os/src/windows/CMakeLists.txt b/src/os/src/windows/CMakeLists.txt index 131533c5c5d92acc9478807762c86029f01b2167..588d3b7f68ea6f54051d4723a0730b9316f53157 100644 --- a/src/os/src/windows/CMakeLists.txt +++ b/src/os/src/windows/CMakeLists.txt @@ -4,4 +4,4 @@ PROJECT(TDengine) AUX_SOURCE_DIRECTORY(. SRC) ADD_LIBRARY(os ${SRC}) -TARGET_LINK_LIBRARIES(os winmm IPHLPAPI ws2_32) +TARGET_LINK_LIBRARIES(os winmm IPHLPAPI ws2_32 MsvcLibXw64) diff --git a/src/query/CMakeLists.txt b/src/query/CMakeLists.txt index b9e7ff59e5f8a2bb28b570918385302465a1acc7..e2bee4285fd94fc71899247f7d2ed94849f30a93 100644 --- a/src/query/CMakeLists.txt +++ b/src/query/CMakeLists.txt @@ -13,5 +13,5 @@ IF (TD_LINUX) TARGET_LINK_LIBRARIES(query tsdb tutil m rt) ADD_SUBDIRECTORY(tests) ELSEIF (TD_WINDOWS) - TARGET_LINK_LIBRARIES(query tutil) + TARGET_LINK_LIBRARIES(query tsdb tutil) ENDIF () diff --git a/src/tsdb/CMakeLists.txt b/src/tsdb/CMakeLists.txt index cef1d0bba7ada660ef5f8059c264b2bdfd0056d2..7831e492cafb5acfc351a4c249351f1ab62504b5 100644 --- a/src/tsdb/CMakeLists.txt +++ b/src/tsdb/CMakeLists.txt @@ -10,6 +10,26 @@ IF (TD_LINUX) # Someone has no gtest directory, so comment it # ADD_SUBDIRECTORY(tests) ELSEIF (TD_WINDOWS) +SET(CMAKE_MODULE_PATH ${TD_COMMUNITY_DIR}/deps/MsvcLibX/cmake) + include(FindWindowsSDK) + get_mywindowssdk_include_dirs(${WINDOWSSDK_PREFERRED_DIR} WINSDK_INCLUDE_DIR) + get_ucrt_include_dirs(${WINDOWSSDK_PREFERRED_DIR} UCRT_INCLUDE_DIR) + + Add_Definitions("-DWSDKINCLUDE=${WINSDK_INCLUDE_DIR}") + + include(FindMSVC) + Add_Definitions("-DMSVCINCLUDE=${VC_INCLUDE_DIR}") + + IF ((NOT DEFINED UCRT_INCLUDE_DIR) OR (UCRT_INCLUDE_DIR STREQUAL "NOTFOUND")) + Message(STATUS "UCRT_INCLUDE_DIR notu found, set it to vc incude dir") + SET(UCRT_INCLUDE_DIR "${VC_INCLUDE_DIR}") + Add_Definitions("-DUCRTINCLUDE=${VC_INCLUDE_DIR}") + ELSE () + Add_Definitions("-DUCRTINCLUDE=${UCRT_INCLUDE_DIR}") + ENDIF () + + INCLUDE_DIRECTORIES(${TD_COMMUNITY_DIR}/deps/MsvcLibX/include) + ADD_LIBRARY(tsdb ${SRC}) TARGET_LINK_LIBRARIES(tsdb common tutil) ENDIF () diff --git a/src/tsdb/src/tsdbFile.c b/src/tsdb/src/tsdbFile.c index 8cec7c08e1048b1668ac9297cdfd07829ee95d35..4cb5f7641425ab001a1aacad045be439180bd3b7 100644 --- a/src/tsdb/src/tsdbFile.c +++ b/src/tsdb/src/tsdbFile.c @@ -18,6 +18,8 @@ #include "tchecksum.h" #include "tsdbMain.h" #include "tutil.h" +#include "dirent.h" + #define TAOS_RANDOM_FILE_FAIL_TEST #ifdef TSDB_IDX