From 2ff2732a789a14193dd4fac6b1d910ce96ac3d43 Mon Sep 17 00:00:00 2001 From: Weiyi Wang Date: Sat, 13 Oct 2018 11:57:21 -0400 Subject: only redefine 64 bit file operation for MSVC MinGW provides POSIX functions --- src/common/file_util.cpp | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/common/file_util.cpp b/src/common/file_util.cpp index 548463787..b52492da6 100644 --- a/src/common/file_util.cpp +++ b/src/common/file_util.cpp @@ -15,21 +15,24 @@ #ifdef _WIN32 #include // windows.h needs to be included before other windows headers -#include // for GetSaveFileName -#include // getcwd +#include // getcwd #include #include #include // for SHGetFolderPath #include #include "common/string_util.h" -// 64 bit offsets for windows +#ifdef _MSC_VER +// 64 bit offsets for MSVC #define fseeko _fseeki64 #define ftello _ftelli64 -#define atoll _atoi64 +#define fileno _fileno +#endif + +// 64 bit offsets for MSVC and MinGW. MinGW also needs this for using _wstat64 #define stat _stat64 #define fstat _fstat64 -#define fileno _fileno + #else #ifdef __APPLE__ #include -- cgit v1.2.3 From d9ca6351dd82ad644b6cbdbb8184c9b90bbfa9ed Mon Sep 17 00:00:00 2001 From: Weiyi Wang Date: Tue, 16 Oct 2018 13:23:07 -0400 Subject: cmake: mingw also needs _FILE_OFFSET_BITS=64 --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 6021a8054..6e98b557e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -170,7 +170,7 @@ endif() # On modern Unixes, this is typically already the case. The lone exception is # glibc, which may default to 32 bits. glibc allows this to be configured # by setting _FILE_OFFSET_BITS. -if(CMAKE_SYSTEM_NAME STREQUAL "Linux") +if(CMAKE_SYSTEM_NAME STREQUAL "Linux" OR MINGW) add_definitions(-D_FILE_OFFSET_BITS=64) endif() -- cgit v1.2.3