From: Eli Zaretskii Date: Sat, 30 Mar 2013 12:25:48 +0000 (+0300) Subject: Fixed compilation problems in lib/. X-Git-Tag: emacs-24.3.90~173^2^2~42^2~45^2~387^2~2026^2~229^2~63^2~59 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=fff1aa4e84d0568c0295711f58fa18028d100744;p=emacs.git Fixed compilation problems in lib/. --- diff --git a/nt/inc/ms-w32.h b/nt/inc/ms-w32.h index 39820bf2f08..9817cd78cad 100644 --- a/nt/inc/ms-w32.h +++ b/nt/inc/ms-w32.h @@ -133,6 +133,20 @@ typedef unsigned short mode_t; extern char *getenv (); #endif +#ifdef __MINGW32__ +/* A kludge to avoid including header files in lib/. They cannot be + configured-out, and their stuff interferes with what we have + defined in this header and in other headers in nt/inc. Yuck! */ +#define __need_system_fcntl_h +#define _GL_FCNTL_H +#define _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H +#define _GL_ALREADY_INCLUDING_SIGNAL_H +#define _GL_ALREADY_INCLUDING_STDIO_H +#define __need_system_stdlib_h +#define _GL_TIME_H +#define __need_system_sys_stat_h +#endif + /* Prevent accidental use of features unavailable in older Windows versions we still support. MinGW64 defines this to a higher value in its system headers, and is not really compatible with values @@ -276,9 +290,6 @@ typedef int pid_t; #define popen _popen #define pclose _pclose #define umask _umask -#ifndef _MSC_VER -#define utimbuf _utimbuf -#endif #define strdup _strdup #define strupr _strupr #define strnicmp _strnicmp @@ -295,10 +306,6 @@ int _getpid (void); array, and triggers an error message. */ #include #define tzname _tzname -#if !defined (_MSC_VER) || (_MSC_VER < 1400) -#undef utime -#define utime _utime -#endif /* 'struct timespec' is used by time-related functions in lib/ and elsewhere, but we don't use lib/time.h where the structure is diff --git a/nt/inc/sys/stat.h b/nt/inc/sys/stat.h index f6785c56477..857acce1815 100644 --- a/nt/inc/sys/stat.h +++ b/nt/inc/sys/stat.h @@ -83,6 +83,9 @@ along with GNU Emacs. If not, see . */ #define S_TYPEISSHM(p) 0 #define S_TYPEISTMO(p) 0 +#define UTIME_NOW (-1) +#define UTIME_OMIT (-2) + struct stat { unsigned __int64 st_ino; /* ino_t in sys/types.h is too narrow */ dev_t st_dev; diff --git a/src/w32.c b/src/w32.c index 0fa5970124a..fb069c36673 100644 --- a/src/w32.c +++ b/src/w32.c @@ -4430,9 +4430,9 @@ fstat (int desc, struct stat * buf) } int -utime (const char *name, struct utimbuf *times) +utime (const char *name, struct _utimbuf *times) { - struct utimbuf deftime; + struct _utimbuf deftime; HANDLE fh; FILETIME mtime; FILETIME atime;