HCoop
/
bpt
/
emacs.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Support MSVC build with newer versions of Visual Studio.
[bpt/emacs.git]
/
src
/
s
/
ms-w32.h
diff --git
a/src/s/ms-w32.h
b/src/s/ms-w32.h
index
813c3ce
..
519f6e7
100644
(file)
--- a/
src/s/ms-w32.h
+++ b/
src/s/ms-w32.h
@@
-86,6
+86,12
@@
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#define IS_ANY_SEP(_c_) (IS_DIRECTORY_SEP (_c_) || IS_DEVICE_SEP (_c_))
#include <sys/types.h>
#define IS_ANY_SEP(_c_) (IS_DIRECTORY_SEP (_c_) || IS_DEVICE_SEP (_c_))
#include <sys/types.h>
+
+#ifdef _MSC_VER
+typedef unsigned long sigset_t;
+typedef int ssize_t;
+#endif
+
struct sigaction {
int sa_flags;
void (*sa_handler)(int);
struct sigaction {
int sa_flags;
void (*sa_handler)(int);
@@
-181,6
+187,12
@@
struct sigaction {
#ifdef emacs
#ifdef emacs
+#ifdef _MSC_VER
+#include <sys/timeb.h>
+#include <sys/stat.h>
+#include <signal.h>
+#endif
+
/* Calls that are emulated or shadowed. */
#undef access
#define access sys_access
/* Calls that are emulated or shadowed. */
#undef access
#define access sys_access
@@
-270,6
+282,15
@@
typedef int pid_t;
#define utime _utime
#endif
#define utime _utime
#endif
+#ifdef _MSC_VER
+/* MSVC gets link-time errors without these redirections. */
+#define fstat(a, b) sys_fstat(a, b)
+#define stat(a, b) sys_stat(a, b)
+#if _MSC_VER >= 1400
+#define utime sys_utime
+#endif
+#endif
+
/* This is hacky, but is necessary to avoid warnings about macro
redefinitions using the SDK compilers. */
#ifndef __STDC__
/* This is hacky, but is necessary to avoid warnings about macro
redefinitions using the SDK compilers. */
#ifndef __STDC__
@@
-317,13
+338,17
@@
extern char *get_emacs_configuration_options (void);
#define _WINSOCK_H
/* Defines size_t and alloca (). */
#define _WINSOCK_H
/* Defines size_t and alloca (). */
-#if
def USE_CRT_DLL
+#if
(defined(_MSC_VER) && defined(emacs)) || defined(USE_CRT_DLL)
#define malloc e_malloc
#define free e_free
#define realloc e_realloc
#define calloc e_calloc
#endif
#define malloc e_malloc
#define free e_free
#define realloc e_realloc
#define calloc e_calloc
#endif
+#ifdef _MSC_VER
+#define alloca _alloca
+#else
#include <malloc.h>
#include <malloc.h>
+#endif
#include <sys/stat.h>
#include <sys/stat.h>