From: Wolfgang Stöggl Date: Mon, 27 Nov 2017 14:03:24 +0000 (+0100) Subject: Fix build errors (MinGW-w64) X-Git-Tag: v1.7.1~88^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=refs%2Fpull%2F844%2Fhead;p=thirdparty%2Frrdtool-1.x.git Fix build errors (MinGW-w64) - rrd.h, fixed build error: rrd.h:66:17: error: conflicting types for 'ssize_t' typedef size_t ssize_t; Remark: MinGW-w64 has ssize_t and off_t - rrd_restore.c, fixed build error: rrd_restore.c:29:17: error: conflicting types for 'ssize_t' typedef size_t ssize_t; - rrd_utils.c, fixed build error: rrd_utils.c:226:10: error: too many arguments to function 'mkdir' if ((mkdir(pathname, mode) != 0) && (errno != EEXIST)) { --- diff --git a/src/rrd.h b/src/rrd.h index 873c5b0d..0fb5f072 100644 --- a/src/rrd.h +++ b/src/rrd.h @@ -63,9 +63,11 @@ extern "C" { #endif #define strtoll _strtoi64 #endif +#ifndef __MINGW32__ /* MinGW-w64 has ssize_t and off_t */ typedef size_t ssize_t; typedef long off_t; -#endif +#endif +#endif #include #include /* for FILE */ diff --git a/src/rrd_restore.c b/src/rrd_restore.c index 9c7f7cfd..1afe753d 100644 --- a/src/rrd_restore.c +++ b/src/rrd_restore.c @@ -26,9 +26,11 @@ #ifndef WIN32 # include /* for off_t */ #else +#ifndef __MINGW32__ /* MinGW-w64 has ssize_t and off_t */ typedef size_t ssize_t; typedef long off_t; -#endif +#endif +#endif #include #if defined(_WIN32) && !defined(__CYGWIN__) && !defined(__CYGWIN32__) diff --git a/src/rrd_utils.c b/src/rrd_utils.c index 12e016eb..f26be8cc 100644 --- a/src/rrd_utils.c +++ b/src/rrd_utils.c @@ -217,7 +217,7 @@ int rrd_mkdir_p(const char *pathname_unsafe, mode_t mode) free(base_dir); /* keep errno as set by mkdir() */ -#ifdef _MSC_VER +#if defined(_MSC_VER) || defined(__MINGW32__) if (0 != mkdir(pathname)) { free(pathname); return -1;