Mercurial > hg > xemacs-beta
comparison src/s/cygwin32.h @ 231:557eaa0339bf r20-5b14
Import from CVS: tag r20-5b14
author | cvs |
---|---|
date | Mon, 13 Aug 2007 10:13:48 +0200 |
parents | |
children | 41f2f0e326e9 |
comparison
equal
deleted
inserted
replaced
230:39ed1d2bdd9d | 231:557eaa0339bf |
---|---|
1 /* System description file for Windows NT. | |
2 Copyright (C) 1993, 1994, 1995 Free Software Foundation, Inc. | |
3 | |
4 This file is part of GNU Emacs. | |
5 | |
6 GNU Emacs is free software; you can redistribute it and/or modify | |
7 it under the terms of the GNU General Public License as published by | |
8 the Free Software Foundation; either version 2, or (at your option) | |
9 any later version. | |
10 | |
11 GNU Emacs is distributed in the hope that it will be useful, | |
12 but WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
14 GNU General Public License for more details. | |
15 | |
16 You should have received a copy of the GNU General Public License | |
17 along with XEmacs; see the file COPYING. If not, write to | |
18 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, | |
19 Boston, MA 02111-1307, USA. */ | |
20 | |
21 /* Synched up with: FSF 19.31. */ | |
22 | |
23 /* | |
24 #ifndef WINDOWSNT | |
25 #define WINDOWSNT | |
26 #endif | |
27 | |
28 #ifndef DOS_NT | |
29 #define DOS_NT | |
30 #endif | |
31 */ | |
32 | |
33 /* Need the win32 api */ | |
34 #ifndef NOT_C_CODE | |
35 #ifdef CONST | |
36 #undef CONST | |
37 #endif | |
38 | |
39 /* Start and end of text and data. */ | |
40 extern void* _data_start__; | |
41 extern void* _data_end__; | |
42 | |
43 #include <windows.h> | |
44 #endif | |
45 | |
46 #ifndef HAVE_MS_WINDOWS | |
47 #define HAVE_MS_WINDOWS | |
48 #endif | |
49 | |
50 /*#ifndef HAVE_SCROLLBARS | |
51 #define HAVE_SCROLLBARS | |
52 #endif*/ | |
53 | |
54 #ifndef HAVE_NTGUI | |
55 #define HAVE_NTGUI | |
56 #endif | |
57 | |
58 #ifndef ORDINARY_LINK | |
59 #define ORDINARY_LINK | |
60 #endif | |
61 | |
62 #undef MOD_ALT | |
63 #undef MOD_CONTROL | |
64 #undef MOD_SHIFT | |
65 | |
66 #define SIF_TRACKPOS 0x0010 | |
67 #define FW_BLACK FW_HEAVY | |
68 #define FW_ULTRABOLD FW_EXTRABOLD | |
69 #define FW_ULTRALIGHT FW_EXTRALIGHT | |
70 #define TMPF_FIXED_PITCH 0x01 | |
71 #define VK_APPS 0x5D | |
72 #define SIGPROF 0 | |
73 #define NO_LIM_DATA | |
74 #define HAVE_TEXT_START | |
75 | |
76 #define LIBS_SYSTEM "-luser32 -lgdi32" | |
77 | |
78 #undef MAIL_USE_SYSTEM_LOCK | |
79 | |
80 /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | |
81 * group of arguments and treat it as an array of the arguments. */ | |
82 | |
83 #define NO_ARG_ARRAY | |
84 | |
85 /* Define WORD_MACHINE if addresses and such have | |
86 * to be corrected before they can be used as byte counts. */ | |
87 | |
88 #define WORD_MACHINE | |
89 | |
90 /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | |
91 the 24-bit bit field into an int. In other words, if bit fields | |
92 are always unsigned. | |
93 | |
94 If you use NO_UNION_TYPE, this flag does not matter. */ | |
95 | |
96 #define EXPLICIT_SIGN_EXTEND | |
97 | |
98 /* Data type of load average, as read out of kmem. */ | |
99 | |
100 #define LOAD_AVE_TYPE long | |
101 | |
102 /* Convert that into an integer that is 100 for a load average of 1.0 */ | |
103 | |
104 #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) | |
105 | |
106 /* Define CANNOT_DUMP on machines where unexec does not work. | |
107 Then the function dump-emacs will not be defined | |
108 and temacs will do (load "loadup") automatically unless told otherwise. */ | |
109 | |
110 #define CANNOT_DUMP 1 | |
111 #define CANNOT_UNEXEC 1 | |
112 #define UNEXEC /* unexnt.o */ | |
113 | |
114 #define DATA_START _data_start__ | |
115 #define DATA_END _data_end__ | |
116 | |
117 /* Define VIRT_ADDR_VARIES if the virtual addresses of | |
118 pure and impure space as loaded can vary, and even their | |
119 relative order cannot be relied on. | |
120 | |
121 Otherwise Emacs assumes that text space precedes data space, | |
122 numerically. */ | |
123 | |
124 /* Text does precede data space, but this is never a safe assumption. */ | |
125 #define VIRT_ADDR_VARIES | |
126 | |
127 /* If you are compiling with a non-C calling convention but need to | |
128 declare vararg routines differently, put it here */ | |
129 #define _VARARGS_ __cdecl | |
130 | |
131 /* If you are providing a function to something that will call the | |
132 function back (like a signal handler and signal, or main) its calling | |
133 convention must be whatever standard the libraries expect */ | |
134 #define _CALLBACK_ __cdecl | |
135 | |
136 /* SYSTEM_TYPE should indicate the kind of system you are using. | |
137 It sets the Lisp variable system-type. */ | |
138 | |
139 #define SYSTEM_TYPE "cygwin32" | |
140 | |
141 #define NO_MATHERR | |
142 | |
143 /* NOMULTIPLEJOBS should be defined if your system's shell | |
144 does not have "job control" (the ability to stop a program, | |
145 run some other program, then continue the first one). */ | |
146 | |
147 #define NOMULTIPLEJOBS | |
148 | |
149 /* Letter to use in finding device name of first pty, | |
150 if system supports pty's. 'a' means it is /dev/ptya0 */ | |
151 | |
152 #define FIRST_PTY_LETTER 'a' | |
153 | |
154 /* | |
155 * Define HAVE_PTYS if the system supports pty devices. | |
156 */ | |
157 | |
158 /* #define HAVE_PTYS */ | |
159 | |
160 /* If your system uses COFF (Common Object File Format) then define the | |
161 preprocessor symbol "COFF". */ | |
162 | |
163 #define COFF | |
164 | |
165 /* NT supports Winsock which is close enough (with some hacks) */ | |
166 | |
167 #define HAVE_SOCKETS | |
168 | |
169 /* define MAIL_USE_FLOCK if the mailer uses flock | |
170 to interlock access to /usr/spool/mail/$USER. | |
171 The alternative is that a lock file named | |
172 /usr/spool/mail/$USER.lock. */ | |
173 | |
174 /* If the character used to separate elements of the executable path | |
175 is not ':', #define this to be the appropriate character constant. */ | |
176 #define SEPCHAR ';' | |
177 | |
178 /* ============================================================ */ | |
179 | |
180 /* Here, add any special hacks needed | |
181 to make Emacs work on this system. For example, | |
182 you might define certain system call names that don't | |
183 exist on your system, or that do different things on | |
184 your system and must be used only through an encapsulation | |
185 (Which you should place, by convention, in sysdep.c). */ | |
186 | |
187 /* Define this to be the separator between path elements */ | |
188 /* #define DIRECTORY_SEP XINT (Vdirectory_sep_char) */ | |
189 | |
190 /* Define this to be the separator between devices and paths */ | |
191 #define DEVICE_SEP ':' | |
192 | |
193 #define SIGWINCH NSIG | |
194 | |
195 /* We'll support either convention on NT. */ | |
196 #define IS_DIRECTORY_SEP(_c_) ((_c_) == '/' || (_c_) == '\\') | |
197 #define IS_ANY_SEP(_c_) (IS_DIRECTORY_SEP (_c_) || IS_DEVICE_SEP (_c_)) | |
198 | |
199 /* The null device on Windows NT. */ | |
200 #define NULL_DEVICE "NUL:" | |
201 #define EXEC_SUFFIXES ".exe:.com:.bat:.cmd:" | |
202 | |
203 #if 0 | |
204 #define HAVE_RENAME | |
205 | |
206 #define HAVE_TZNAME | |
207 | |
208 #define HAVE_LONG_FILE_NAMES | |
209 | |
210 #define HAVE_BCOPY | |
211 #define HAVE_BCMP | |
212 | |
213 #define HAVE_MOUSE | |
214 #endif | |
215 | |
216 #define HAVE_WINDOW_SYSTEM | |
217 #define HAVE_FACES | |
218 | |
219 #define MODE_LINE_BINARY_TEXT(_b_) (NILP ((_b_)->buffer_file_type) ? "T" : "B") | |
220 | |
221 /* For integration with MSDOS support. | |
222 #define getdisk() (_getdrive () - 1) | |
223 #define getdefdir(_drv, _buf) _getdcwd (_drv, _buf, MAXPATHLEN) | |
224 */ | |
225 | |
226 /* Define this so that winsock.h definitions don't get included when windows.h | |
227 is... I don't know if they do the right thing for emacs. For this to | |
228 have proper effect, config.h must always be included before windows.h. | |
229 #define _WINSOCKAPI_ 1 | |
230 */ | |
231 | |
232 /* Defines size_t and alloca (). */ | |
233 | |
234 /* We need a little extra space, see ../../lisp/loadup.el */ | |
235 #define SYSTEM_PURESIZE_EXTRA 15000 | |
236 | |
237 /* ============================================================ */ |