aboutsummaryrefslogtreecommitdiffstats
path: root/src/s
diff options
context:
space:
mode:
authorKarl Heuer <[email protected]>1995-04-12 02:32:26 +0000
committerKarl Heuer <[email protected]>1995-04-12 02:32:26 +0000
commit3360970aa277b32e8b46df80fbf7b64f37e77acb (patch)
tree9c8f5b2769efc4611727a983cf9a2d786f4e142e /src/s
parent0534d577c72012d935788856cfa25ce80c6a5998 (diff)
(HAVE_RANDOM): Defined.
(random): Macro undefined. (srandom): Macro undefined. (HAVE_UTIME): Defined. (utime): Defined. (EMACS_CONFIGURATION): Defined. (_VARARGS_): Defined. (_CALLBACK_): Defined. (ctime): Defined to be nt_ctime. (NULL): Defined when missing from included system files. (EMACS_CONFIG_OPTIONS): Defined. (LISP_FLOAT_TYPE): Defined. (HAVE_TZNAME): Defined. (HAVE_TIMEVAL): Defined. (struct timeval): Defined. (struct timezone): Defined. (struct nt_stat): Defined.
Diffstat (limited to 'src/s')
-rw-r--r--src/s/ms-w32.h88
1 files changed, 75 insertions, 13 deletions
diff --git a/src/s/ms-w32.h b/src/s/ms-w32.h
index 7ea725866f..fcd02138b8 100644
--- a/src/s/ms-w32.h
+++ b/src/s/ms-w32.h
@@ -1,5 +1,5 @@
/* System description file for Windows NT.
- Copyright (C) 1993, 1994 Free Software Foundation, Inc.
+ Copyright (C) 1993, 1994, 1995 Free Software Foundation, Inc.
This file is part of GNU Emacs.
@@ -39,6 +39,15 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
#define DOS_NT /* MSDOS or WINDOWSNT */
#endif
+/* If you are compiling with a non-C calling convention but need to
+ declare vararg routines differently, put it here */
+#define _VARARGS_ __cdecl
+
+/* If you are providing a function to something that will call the
+ function back (like a signal handler and signal, or main) its calling
+ convention must be whatever standard the libraries expect */
+#define _CALLBACK_ __cdecl
+
/* SYSTEM_TYPE should indicate the kind of system you are using.
It sets the Lisp variable system-type. */
@@ -103,7 +112,20 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
* Look in <sys/time.h> for a timeval structure.
*/
-/* #define HAVE_TIMEVAL */
+#define HAVE_TIMEVAL
+struct timeval
+ {
+ long tv_sec; /* seconds */
+ long tv_usec; /* microseconds */
+ };
+struct timezone
+ {
+ int tz_minuteswest; /* minutes west of Greenwich */
+ int tz_dsttime; /* type of dst correction */
+ };
+
+void gettimeofday (struct timeval *, struct timezone *);
+
/*
* Define HAVE_SELECT if the system supports the `select' system call.
@@ -197,12 +219,17 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
#define MAXPATHLEN _MAX_PATH
#endif
-#define HAVE_DUP2 1
-#define HAVE_RENAME 1
-#define HAVE_RMDIR 1
-#define HAVE_MKDIR 1
+#define LISP_FLOAT_TYPE
+
+#define HAVE_DUP2 1
+#define HAVE_RENAME 1
+#define HAVE_RMDIR 1
+#define HAVE_MKDIR 1
#define HAVE_GETHOSTNAME 1
-#define HAVE_MOUSE 1
+#define HAVE_RANDOM 1
+#define USE_UTIME 1
+#define HAVE_MOUSE 1
+#define HAVE_TZNAME 1
#define MODE_LINE_BINARY_TEXT(_b_) (NILP ((_b_)->buffer_file_type) ? "T" : "B")
@@ -227,19 +254,19 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
#define mktemp _mktemp
#define open _open
#define pipe _pipe
-#define random rand
#define read _read
#define rmdir _rmdir
#define sleep nt_sleep
-#define srandom srand
#define unlink _unlink
#define umask _umask
+#define utime _utime
#define write _write
#define _longjmp longjmp
#define spawnve win32_spawnve
#define wait win32_wait
#define signal win32_signal
#define rindex strrchr
+#define ctime nt_ctime /* Place a wrapper around ctime (see nt.c). */
/* Defines that we need that aren't in the standard signal.h */
#define SIGHUP 1 /* Hang up */
@@ -254,6 +281,9 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
#define getdisk() (_getdrive () - 1)
#define getdefdir(_drv, _buf) _getdcwd (_drv, _buf, MAXPATHLEN)
+#define EMACS_CONFIGURATION get_emacs_configuration ()
+#define EMACS_CONFIG_OPTIONS "NT" /* Not very meaningful yet. */
+
/* Define this so that winsock.h definitions don't get included when windows.h
is... I don't know if they do the right thing for emacs. For this to
have proper effect, config.h must always be included before windows.h. */
@@ -262,8 +292,40 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
/* Defines size_t and alloca (). */
#include <malloc.h>
-/* ============================================================ */
-
-/* Give us extra pure storage. */
+/* We have to handle stat specially. However, #defining stat to
+ something else not only redefines uses of the function, but also
+ redefines uses of the type struct stat. What unfortunate parallel
+ naming. */
+#include <sys/stat.h>
+struct nt_stat
+ {
+ struct _stat statbuf;
+ };
+
+#ifdef stat
+#undef stat
+#endif
+#define stat nt_stat
+#define st_dev statbuf.st_dev
+#define st_ino statbuf.st_ino
+#define st_mode statbuf.st_mode
+#define st_nlink statbuf.st_nlink
+#define st_uid statbuf.st_uid
+#define st_gid statbuf.st_gid
+#define st_rdev statbuf.st_rdev
+#define st_size statbuf.st_size
+#define st_atime statbuf.st_atime
+#define st_mtime statbuf.st_mtime
+#define st_ctime statbuf.st_ctime
+
+/* Define for those source files that do not include enough NT
+ system files. */
+#ifndef NULL
+#ifdef __cplusplus
+#define NULL 0
+#else
+#define NULL ((void *)0)
+#endif
+#endif
-#define SYSTEM_PURESIZE_EXTRA 52000
+/* ============================================================ */