Mercurial > hg > xemacs-beta
comparison nt/config.h @ 100:4be1180a9e89 r20-1b2
Import from CVS: tag r20-1b2
author | cvs |
---|---|
date | Mon, 13 Aug 2007 09:15:11 +0200 |
parents | |
children | 7d55a9ba150c |
comparison
equal
deleted
inserted
replaced
99:2d83cbd90d8d | 100:4be1180a9e89 |
---|---|
1 /* XEmacs site configuration template file. -*- C -*- | |
2 Copyright (C) 1986, 1991, 1992, 1993, 1994 Free Software Foundation, Inc. | |
3 | |
4 This file is part of XEmacs. | |
5 | |
6 XEmacs is free software; you can redistribute it and/or modify it | |
7 under the terms of the GNU General Public License as published by the | |
8 Free Software Foundation; either version 2, or (at your option) any | |
9 later version. | |
10 | |
11 XEmacs is distributed in the hope that it will be useful, but WITHOUT | |
12 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | |
13 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | |
14 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.30 (more or less). */ | |
22 | |
23 /* No code in XEmacs #includes config.h twice, but some of the code | |
24 intended to work with other packages as well (like gmalloc.c) | |
25 think they can include it as many times as they like. */ | |
26 #ifndef _CONFIG_H_ | |
27 #define _CONFIG_H_ | |
28 | |
29 /* #### This will be removed in 19.15. */ | |
30 #define LOSING_BYTECODE | |
31 | |
32 #define NTHEAP_PROBE_BASE 1 | |
33 | |
34 /* These are all defined in the top-level Makefile by configure. | |
35 They're here only for reference. */ | |
36 | |
37 /* Define LISP_FLOAT_TYPE if you want XEmacs to support floating-point | |
38 numbers. */ | |
39 #undef LISP_FLOAT_TYPE | |
40 | |
41 /* Define GNU_MALLOC if you want to use the *new* GNU memory allocator. */ | |
42 #define GNU_MALLOC | |
43 | |
44 /* Define USE_SYSTEM_MALLOC if you forcing the use of it. */ | |
45 #undef USE_SYSTEM_MALLOC | |
46 | |
47 /* Define HAVE_TTY if you want TTY support compiled in. */ | |
48 #undef HAVE_TTY | |
49 | |
50 /* Define HAVE_X_WINDOWS if you want to use the X window system. */ | |
51 #define HAVE_X_WINDOWS | |
52 | |
53 /* Define HAVE_NEXTSTEP if you want to use the NeXTstep window system. */ | |
54 #undef HAVE_NEXTSTEP | |
55 | |
56 /* Define HAVE_WINDOW_SYSTEM if any windowing system is available. */ | |
57 #if defined (HAVE_X_WINDOWS) || defined (HAVE_NEXTSTEP) | |
58 #define HAVE_WINDOW_SYSTEM | |
59 #endif | |
60 | |
61 /* Define HAVE_UNIXOID_EVENT_LOOP if we use select() to wait for events. */ | |
62 #if defined (HAVE_X_WINDOWS) || defined (HAVE_TTY) | |
63 #define HAVE_UNIXOID_EVENT_LOOP | |
64 #endif | |
65 | |
66 /* Define this if you're using XFree386. */ | |
67 #undef HAVE_XFREE386 | |
68 | |
69 #undef THIS_IS_X11R4 | |
70 #undef THIS_IS_X11R5 | |
71 #define THIS_IS_X11R6 | |
72 | |
73 /* Define USER_FULL_NAME to return a string | |
74 that is the user's full name. | |
75 It can assume that the variable `pw' | |
76 points to the password file entry for this user. | |
77 | |
78 At some sites, the pw_gecos field contains | |
79 the user's full name. If neither this nor any other | |
80 field contains the right thing, use pw_name, | |
81 giving the user's login name, since that is better than nothing. */ | |
82 #if 0 | |
83 #define USER_FULL_NAME pw->pw_gecos | |
84 #endif | |
85 #define USER_FULL_NAME unknown | |
86 | |
87 /* Define AMPERSAND_FULL_NAME if you use the convention | |
88 that & in the full name stands for the login id. */ | |
89 #undef AMPERSAND_FULL_NAME | |
90 | |
91 /* Some things figured out by the configure script, grouped as they are in | |
92 configure.in. */ | |
93 #undef HAVE_MACH_MACH_H | |
94 #undef HAVE_SYS_STROPTS_H | |
95 #undef HAVE_SYS_TIMEB_H | |
96 #undef HAVE_UNISTD_H | |
97 #undef HAVE_UTIME_H | |
98 #undef HAVE_SYS_WAIT_H | |
99 #undef HAVE_LIBGEN_H | |
100 #undef HAVE_LINUX_VERSION_H | |
101 #undef WORDS_BIGENDIAN | |
102 #undef TIME_WITH_SYS_TIME | |
103 | |
104 #define HAVE_SYS_TIME_H | |
105 #define HAVE_LOCALE_H | |
106 #define HAVE_X11_LOCALE_H | |
107 #define STDC_HEADERS | |
108 | |
109 #define HAVE_LONG_FILE_NAMES | |
110 | |
111 #ifdef HAVE_LONG_FILE_NAMES | |
112 #define CLASH_DETECTION | |
113 #endif | |
114 | |
115 #undef HAVE_LIBDNET | |
116 #undef HAVE_LIBRESOLV | |
117 | |
118 /* Define if `sys_siglist' is declared by <signal.h>. */ | |
119 #undef SYS_SIGLIST_DECLARED | |
120 | |
121 /* Define if `struct utimbuf' is declared by <utime.h>. */ | |
122 #undef HAVE_STRUCT_UTIMBUF | |
123 | |
124 /* Define if `struct timeval' is declared by <sys/time.h>. */ | |
125 #define HAVE_TIMEVAL | |
126 | |
127 | |
128 #undef TM_IN_SYS_TIME | |
129 #undef HAVE_TM_ZONE | |
130 #undef HAVE_TZNAME | |
131 | |
132 /* Define if netdb.h declares h_errno. */ | |
133 #undef HAVE_H_ERRNO | |
134 | |
135 /* Define if localtime caches TZ */ | |
136 #undef LOCALTIME_CACHE | |
137 | |
138 /* Define if gettimeofday can't accept two arguments */ | |
139 #ifdef HAVE_X_WINDOWS | |
140 #define GETTIMEOFDAY_ONE_ARGUMENT | |
141 #else | |
142 #undef GETTIMEOFDAY_ONE_ARGUMENT | |
143 #endif | |
144 | |
145 /* Define in keyword `inline' exists. */ | |
146 #undef HAVE_INLINE | |
147 | |
148 #undef HAVE_ALLOCA_H | |
149 #undef HAVE_VFORK_H | |
150 #undef vfork | |
151 | |
152 #undef HAVE_MMAP | |
153 #undef HAVE_STRCOLL | |
154 | |
155 #undef SIZEOF_SHORT | |
156 #undef SIZEOF_INT | |
157 #undef SIZEOF_LONG | |
158 | |
159 #undef HAVE_ACOSH | |
160 #undef HAVE_ASINH | |
161 #undef HAVE_ATANH | |
162 | |
163 #if defined (HAVE_ACOSH) && defined (HAVE_ASINH) && defined (HAVE_ATANH) | |
164 #define HAVE_INVERSE_HYPERBOLIC | |
165 #endif | |
166 | |
167 #undef HAVE_CBRT | |
168 #define HAVE_CLOSEDIR | |
169 #undef HAVE_DUP2 | |
170 #undef HAVE_EACCESS | |
171 #undef HAVE_FMOD | |
172 #undef HAVE_FPATHCONF | |
173 #undef HAVE_FREXP | |
174 #undef HAVE_FTIME | |
175 #undef HAVE_GETHOSTNAME | |
176 #undef HAVE_GETPAGESIZE | |
177 #define HAVE_GETTIMEOFDAY | |
178 #define HAVE_GETWD | |
179 #undef HAVE_LOGB | |
180 #undef HAVE_LRAND48 | |
181 #undef HAVE_MATHERR | |
182 #undef HAVE_MKDIR | |
183 #undef HAVE_MKTIME | |
184 #undef HAVE_PERROR | |
185 #undef HAVE_POLL | |
186 #undef HAVE_RANDOM | |
187 #undef HAVE_REALPATH | |
188 #undef HAVE_RENAME | |
189 #undef HAVE_RES_INIT | |
190 #undef HAVE_RINT | |
191 #undef HAVE_RMDIR | |
192 #define HAVE_SELECT | |
193 #undef HAVE_SETITIMER | |
194 #undef HAVE_SETPGID | |
195 #undef HAVE_SETSID | |
196 #undef HAVE_SIGBLOCK | |
197 #undef HAVE_SIGHOLD | |
198 #undef HAVE_SIGPROCMASK | |
199 #undef HAVE_SIGSETJMP | |
200 #undef HAVE_STRCASECMP | |
201 #define HAVE_STRERROR | |
202 #undef HAVE_TZSET | |
203 #undef HAVE_UTIMES | |
204 #undef HAVE_WAITPID | |
205 | |
206 #define HAVE_SOCKETS | |
207 #undef HAVE_SOCKADDR_SUN_LEN | |
208 #undef HAVE_SYSVIPC | |
209 | |
210 #undef SYSV_SYSTEM_DIR | |
211 #undef NONSYSTEM_DIR_LIBRARY | |
212 | |
213 #undef HAVE_TERMIOS | |
214 #undef HAVE_TERMIO | |
215 | |
216 #undef NLIST_STRUCT | |
217 | |
218 #undef UNEXEC_SRC | |
219 #undef AIX_SMT_EXP | |
220 | |
221 /* Define HAVE_SOCKS if you have the `socks' library and want XEmacs to | |
222 use it. */ | |
223 #undef HAVE_SOCKS | |
224 | |
225 /* Define HAVE_TERM if you run the `term' program (e.g. under Linux) and | |
226 want XEmacs to use it. */ | |
227 #undef HAVE_TERM | |
228 | |
229 /* Define HAVE_XPM if you have the `xpm' library and want XEmacs to use it. */ | |
230 #undef HAVE_XPM | |
231 | |
232 /* Define HAVE_XFACE if you have the `compface' library and want to use it. | |
233 This will permit X-face pixmaps in mail and news messages to display | |
234 quickly. */ | |
235 #undef HAVE_XFACE | |
236 | |
237 /* Define HAVE_GIF if you want XEmacs to support converting GIF | |
238 (Graphics Interchange Format) images. */ | |
239 #undef HAVE_GIF | |
240 | |
241 /* Define HAVE_JPEG if you have the JPEG library and want XEmacs to use it. | |
242 This is for converting JPEG images. */ | |
243 #undef HAVE_JPEG | |
244 | |
245 /* Define HAVE_PNG if you have the PNG library and want XEmacs to use it. | |
246 This is for converting PNG images. */ | |
247 #undef HAVE_PNG | |
248 | |
249 /* Define HAVE_PNG_GNUZ if you want to use -lgz instead of -lz for PNG. */ | |
250 #undef HAVE_PNG_GNUZ | |
251 | |
252 /* Define HAVE_TIFF if you have the TIFF library and want XEmacs to use it. | |
253 This is for converting TIFF images. */ | |
254 #undef HAVE_TIFF | |
255 | |
256 /* Define HAVE_XMU if you have the Xmu library. This should always be | |
257 the case except on losing HPUX systems. */ | |
258 #define HAVE_XMU | |
259 | |
260 /* Define HAVE_DBM if you want to use the DBM libraries */ | |
261 #undef HAVE_DBM | |
262 | |
263 /* Define HAVE_GNU_DBM if you want to use the GNU DBM libraries; | |
264 if you define this, you should also define HAVE_DBM */ | |
265 #undef HAVE_GNU_DBM | |
266 | |
267 /* Define HAVE_BERKELEY_DB if you want to use the BerkDB libraries */ | |
268 #undef HAVE_BERKELEY_DB | |
269 | |
270 /* Define HAVE_LIBGDBM if you have -lgdbm (separated from HAVE_DBM | |
271 stuff because FreeBSD has the DBM routines in libc) */ | |
272 #undef HAVE_LIBGDBM | |
273 | |
274 /* Define HAVE_LIBDBM if you have -ldbm */ | |
275 #undef HAVE_LIBDBM | |
276 | |
277 /* Define HAVE_LIBDB if you have -ldb */ | |
278 #undef HAVE_LIBDB | |
279 | |
280 #if defined (HAVE_DBM) || defined (HAVE_BERKELEY_DB) | |
281 # define HAVE_DATABASE | |
282 #endif | |
283 | |
284 /* Define HAVE_XAUTH if the Xauth library is present. This will add | |
285 some extra functionality to gnuserv. */ | |
286 #undef HAVE_XAUTH | |
287 | |
288 /* Define HAVE_XLOCALE_H if X11/Xlocale.h is present. */ | |
289 #define HAVE_XLOCALE_H | |
290 | |
291 /* Define HAVE_NCURSES if -lncurses is present. */ | |
292 #undef HAVE_NCURSES | |
293 | |
294 /* Define HAVE_NCURSES_CURSES_H if ncurses/curses.h is present. */ | |
295 #undef HAVE_NCURSES_CURSES_H | |
296 | |
297 /* Define HAVE_NCURSES_TERM_H if ncurses/term.h is present. */ | |
298 #undef HAVE_NCURSES_TERM_H | |
299 | |
300 /* Define EPOCH to include extra functionality that was present in Epoch. | |
301 This code has received only limited testing. */ | |
302 #undef EPOCH | |
303 | |
304 #define LOWTAGS | |
305 | |
306 /* Define USE_ASSERTIONS if you want the abort() to be changed to assert() | |
307 If the assertion fails, assert_failed() will be called. This is | |
308 recommended for general use because it gives more info about the crash | |
309 than just the abort() message. Too many people "Can't find the corefile" | |
310 or have limited core dumps out of existence. */ | |
311 #define USE_ASSERTIONS | |
312 | |
313 /* Define one or more of the following if you want lots of extra checks | |
314 (e.g. structure validation) compiled in. These should be turned | |
315 on during the beta-test cycle. */ | |
316 | |
317 /* Check the entire extent structure of a buffer each time an extent | |
318 change is done, and do other extent-related checks. */ | |
319 #define ERROR_CHECK_EXTENTS | |
320 /* Make sure that all X... macros are dereferencing the correct type, | |
321 and that all XSET... macros (as much as possible) are setting the | |
322 correct type of structure. Highly recommended for all | |
323 development work. */ | |
324 #define ERROR_CHECK_TYPECHECK | |
325 /* Make sure valid buffer positions are passed to BUF_* macros. */ | |
326 #define ERROR_CHECK_BUFPOS | |
327 /* Attempt to catch bugs related to garbage collection (e.g. | |
328 insufficient GCPRO'ing). */ | |
329 #define ERROR_CHECK_GC | |
330 /* Attempt to catch freeing of a non-malloc()ed block, heap corruption, | |
331 etc. */ | |
332 #define ERROR_CHECK_MALLOC | |
333 | |
334 /* Define DEBUG_XEMACS if you want extra debugging code compiled in. | |
335 This is mainly intended for use by developers. */ | |
336 #define DEBUG_XEMACS 0 | |
337 | |
338 /* Define MEMORY_USAGE_STATS if you want extra code compiled in to | |
339 determine where XEmacs's memory is going. */ | |
340 #undef MEMORY_USAGE_STATS | |
341 | |
342 /* Define QUANTIFY if using Quantify from Pure Software. This adds | |
343 some additional calls to control data collection. This is only | |
344 intended for use by the developers. */ | |
345 #undef QUANTIFY | |
346 | |
347 /* Define EXTERNAL_WIDGET to compile support for using the editor as a | |
348 widget in another program. */ | |
349 #undef EXTERNAL_WIDGET | |
350 | |
351 /* There are some special-case defines for gcc and lcc. */ | |
352 #undef USE_GCC | |
353 #undef USE_LCC | |
354 | |
355 /* Allow the user to override the default value of PURESIZE at configure | |
356 time. This must come before we include the sys files in order for | |
357 it to be able to override any changes in them. */ | |
358 #undef PURESIZE | |
359 | |
360 | |
361 /* Define this if you want to use the Common Desktop Environment | |
362 */ | |
363 #undef HAVE_CDE | |
364 | |
365 /* Mocklisp Support. */ | |
366 #undef MOCKLISP_SUPPORT | |
367 | |
368 /* enable special GNU Make features in the Makefiles. */ | |
369 #undef USE_GNU_MAKE | |
370 | |
371 /* Undocumented debugging option: Don't automatically rebuild the DOC | |
372 file. This saves a lot of time when you're repeatedly | |
373 compiling-running-crashing. */ | |
374 #undef NO_DOC_FILE | |
375 | |
376 /* To eliminate use of `const' in the XEmacs sources, | |
377 do `#define CONST_IS_LOSING' */ | |
378 #define CONST_IS_LOSING | |
379 | |
380 # undef CONST | |
381 # ifdef CONST_IS_LOSING | |
382 # define CONST | |
383 # else | |
384 # define CONST const | |
385 # endif /* CONST */ | |
386 | |
387 /* If not defined, use unions instead of ints. A few systems (DEC Alpha) | |
388 seem to require this, probably because something with the int | |
389 definitions isn't right with 64-bit systems. | |
390 | |
391 (It's NO_UNION_TYPE instead of USE_UNION_TYPE for historical reasons.) | |
392 */ | |
393 #undef NO_UNION_TYPE | |
394 | |
395 /* The configuration script defines opsysfile to be the name of the | |
396 s/...h file that describes the system type you are using. The file | |
397 is chosen based on the configuration name you give. | |
398 | |
399 See the file ../etc/MACHINES for a list of systems and the | |
400 configuration names to use for them. | |
401 | |
402 See s/template.h for documentation on writing s/...h files. */ | |
403 #include "s/windowsnt.h" | |
404 | |
405 /* The configuration script defines machfile to be the name of the | |
406 m/...h file that describes the machine you are using. The file is | |
407 chosen based on the configuration name you give. | |
408 | |
409 See the file ../etc/MACHINES for a list of machines and the | |
410 configuration names to use for them. | |
411 | |
412 See m/template.h for documentation on writing m/...h files. */ | |
413 #include "m/windowsnt.h" | |
414 | |
415 #if defined (USE_SYSTEM_MALLOC) && !defined (SYSTEM_MALLOC) | |
416 #define SYSTEM_MALLOC | |
417 #endif | |
418 | |
419 /* The configuration name. This is used as the install directory name | |
420 for the lib-src programs. */ | |
421 #undef EMACS_CONFIGURATION | |
422 | |
423 /* Load in the conversion definitions if this system | |
424 needs them and the source file being compiled has not | |
425 said to inhibit this. There should be no need for you | |
426 to alter these lines. */ | |
427 | |
428 #ifdef SHORTNAMES | |
429 #ifndef NO_SHORTNAMES | |
430 #include "../shortnames/remap.h" | |
431 #endif /* not NO_SHORTNAMES */ | |
432 #endif /* SHORTNAMES */ | |
433 | |
434 /* Define REL_ALLOC if you want to use the relocating allocator for | |
435 buffer space. */ | |
436 #undef REL_ALLOC | |
437 | |
438 /* Define LD_SWITCH_SITE to contain any special flags your loader may need. */ | |
439 #undef LD_SWITCH_SITE | |
440 | |
441 /* Define C_SWITCH_SITE to contain any special flags your compiler needs. */ | |
442 #undef C_SWITCH_SITE | |
443 | |
444 /* Define LD_SWITCH_X_SITE to contain any special flags your loader | |
445 may need to deal with X Windows. For instance, if you've defined | |
446 HAVE_X_WINDOWS above and your X libraries aren't in a place that | |
447 your loader can find on its own, you might want to add "-L/..." or | |
448 something similar. */ | |
449 #undef LD_SWITCH_X_SITE | |
450 | |
451 /* Define LD_SWITCH_X_SITE_AUX with an -R option | |
452 in case it's needed (for Solaris, for example). */ | |
453 #undef LD_SWITCH_X_SITE_AUX | |
454 | |
455 /* Define C_SWITCH_X_SITE to contain any special flags your compiler | |
456 may need to deal with X Windows. For instance, if you've defined | |
457 HAVE_X_WINDOWS above and your X include files aren't in a place | |
458 that your compiler can find on its own, you might want to add | |
459 "-I/..." or something similar. */ | |
460 #undef C_SWITCH_X_SITE | |
461 | |
462 /* Define the return type of signal handlers if the s-xxx file | |
463 did not already do so. */ | |
464 #define RETSIGTYPE void | |
465 | |
466 /* SIGTYPE is the macro we actually use. */ | |
467 #ifndef SIGTYPE | |
468 #define SIGTYPE RETSIGTYPE | |
469 #define SIGRETURN return | |
470 #endif | |
471 | |
472 /* Define DYNODUMP if it is necessary to properly dump on this system. | |
473 Currently this is only Solaris. */ | |
474 #undef DYNODUMP | |
475 | |
476 /* Define NEED_XILDOFF if the -xildoff flag must be passed to cc to | |
477 avoid invoking the incremental linker ild which is incompatible | |
478 with dynodump. This is needed for recent Sunsoft compilers. */ | |
479 #undef NEED_XILDOFF | |
480 | |
481 /* Define ENERGIZE to compile with support for the Energize Programming System. | |
482 If you do this, don't forget to define ENERGIZE in lwlib/Imakefile as well. | |
483 You will need to set your C_SWITCH_SITE and LD_SWITCH_SITE to point at the | |
484 Energize connection library (libconn.a) and associated header files. | |
485 */ | |
486 #undef ENERGIZE | |
487 #undef ENERGIZE_2 | |
488 #undef ENERGIZE_3 | |
489 | |
490 /* Define SUNPRO to compiled in support for Sun Sparcworks. */ | |
491 #undef SUNPRO | |
492 | |
493 /* Sun SparcStations, SGI machines, and HP9000s700s have support for playing | |
494 different sound files as beeps. If you are on a SparcStation but do not | |
495 have the sound option installed for some reason, then undefine | |
496 HAVE_NATIVE_SOUND. (It's usually found in /usr/demo/SOUND/ on SunOS 4 | |
497 and Solaris systems; on Solaris, you may need to install the "SUNWaudmo" | |
498 package.) | |
499 */ | |
500 #undef HAVE_NATIVE_SOUND | |
501 | |
502 /* If you wish to compile with support for the Network Audio System | |
503 system define HAVE_NAS_SOUND. | |
504 NAS_NO_ERROR_JUMP means that the NAS libraries don't inlcude some | |
505 error handling changes. | |
506 */ | |
507 #undef HAVE_NAS_SOUND | |
508 #undef NAS_NO_ERROR_JUMP | |
509 | |
510 /* Compile in support for SunPro usage-tracking code. */ | |
511 #undef USAGE_TRACKING | |
512 | |
513 /* Define TOOLTALK if your site supports the ToolTalk library. */ | |
514 #undef TOOLTALK | |
515 | |
516 #undef LWLIB_USES_MOTIF | |
517 #define LWLIB_MENUBARS_LUCID | |
518 #undef LWLIB_MENUBARS_MOTIF | |
519 #define LWLIB_SCROLLBARS_LUCID | |
520 #undef LWLIB_SCROLLBARS_MOTIF | |
521 #undef LWLIB_SCROLLBARS_ATHENA | |
522 #undef LWLIB_DIALOGS_MOTIF | |
523 #define LWLIB_DIALOGS_ATHENA | |
524 | |
525 /* Other things that can be disabled by configure. */ | |
526 #define HAVE_MENUBARS | |
527 #define HAVE_SCROLLBARS | |
528 #define HAVE_DIALOGS | |
529 #undef HAVE_TOOLBARS | |
530 | |
531 | |
532 #if defined (HAVE_MENUBARS) || defined (HAVE_DIALOGS) | |
533 #define HAVE_POPUPS | |
534 #endif | |
535 | |
536 /* If you are using SunOS 4.1.1 and X11r5, then you need this patch. | |
537 There is a stupid bug in the SunOS libc.a: two functions which X11r5 | |
538 uses, mbstowcs() and wcstombs(), are unusable when programs are | |
539 statically linked (as XEmacs must be) because the static version of | |
540 libc.a contains the *dynamic* versions of these functions. These | |
541 functions don't seem to be called when XEmacs is running, so it's | |
542 enough to define stubs for them. | |
543 | |
544 This appears to be fixed in SunOS 4.1.2. | |
545 | |
546 Also, SunOS 4.1.1 contains buggy versions of strcmp and strcpy that | |
547 sometimes reference memory past the end of the string, which can segv. | |
548 I don't know whether this is has been fixed as of 4.1.2 or 4.1.3. | |
549 */ | |
550 #if defined (sparc) && !defined (USG) | |
551 #define OBJECTS_SYSTEM sunOS-fix.o strcmp.o strcpy.o | |
552 #endif | |
553 | |
554 /* If you turn this flag on, it forces encapsulation in all | |
555 circumstances; this can be used to make sure things compile OK | |
556 on various systems. */ | |
557 #undef DEBUG_ENCAPSULATION | |
558 #define DONT_ENCAPSULATE | |
559 | |
560 /* basic system calls */ | |
561 | |
562 #if defined (INTERRUPTIBLE_IO) || defined (DEBUG_ENCAPSULATION) | |
563 # define ENCAPSULATE_READ | |
564 # define ENCAPSULATE_WRITE | |
565 #endif | |
566 #if defined (INTERRUPTIBLE_OPEN) || defined (DEBUG_ENCAPSULATION) | |
567 # define ENCAPSULATE_OPEN | |
568 #endif | |
569 #if defined (INTERRUPTIBLE_CLOSE) || defined (DEBUG_ENCAPSULATION) | |
570 # define ENCAPSULATE_CLOSE | |
571 #endif | |
572 | |
573 /* stdio calls */ | |
574 | |
575 #if defined (INTERRUPTIBLE_IO) || defined (DEBUG_ENCAPSULATION) | |
576 # define ENCAPSULATE_FREAD | |
577 # define ENCAPSULATE_FWRITE | |
578 #endif | |
579 #if defined (INTERRUPTIBLE_OPEN) || defined (DEBUG_ENCAPSULATION) | |
580 # define ENCAPSULATE_FOPEN | |
581 #endif | |
582 #if defined (INTERRUPTIBLE_CLOSE) || defined (DEBUG_ENCAPSULATION) | |
583 # define ENCAPSULATE_FCLOSE | |
584 #endif | |
585 | |
586 /* directory calls */ | |
587 | |
588 #if defined (DEBUG_ENCAPSULATION) | |
589 # define ENCAPSULATE_CHDIR | |
590 # define ENCAPSULATE_MKDIR | |
591 # define ENCAPSULATE_OPENDIR | |
592 # define ENCAPSULATE_READDIR | |
593 # define ENCAPSULATE_RMDIR | |
594 #endif | |
595 | |
596 /* file-information calls */ | |
597 | |
598 #if defined (DEBUG_ENCAPSULATION) | |
599 # define ENCAPSULATE_ACCESS | |
600 # define ENCAPSULATE_LSTAT | |
601 # define ENCAPSULATE_READLINK | |
602 # define ENCAPSULATE_STAT | |
603 #endif | |
604 | |
605 /* file-manipulation calls */ | |
606 | |
607 #if defined (DEBUG_ENCAPSULATION) | |
608 # define ENCAPSULATE_CHMOD | |
609 # define ENCAPSULATE_CREAT | |
610 # define ENCAPSULATE_LINK | |
611 # define ENCAPSULATE_RENAME | |
612 # define ENCAPSULATE_SYMLINK | |
613 # define ENCAPSULATE_UNLINK | |
614 #endif | |
615 | |
616 #if (defined (MSDOS) && defined (FEPCTRL)) || (defined (WIN32) && defined (USE_IME)) | |
617 #define HAVE_FEP | |
618 #endif | |
619 | |
620 #if defined (HAVE_SOCKS) && !defined (DO_NOT_SOCKSIFY) | |
621 #define accept Raccept | |
622 #define bind Rbind | |
623 #define connect Rconnect | |
624 #define getsockname Rgetsockname | |
625 #define listen Rlisten | |
626 #endif /* HAVE_SOCKS && !DO_NOT_SOCKSIFY */ | |
627 | |
628 #ifndef SHORTBITS | |
629 #define SHORTBITS (8 * SIZEOF_SHORT) | |
630 #endif | |
631 #ifndef INTBITS | |
632 #define INTBITS (8 * SIZEOF_INT) | |
633 #endif | |
634 #ifndef LONGBITS | |
635 #define LONGBITS (8 * SIZEOF_LONG) | |
636 #endif | |
637 | |
638 #ifdef HAVE_INLINE | |
639 # if defined (__GNUC__) | |
640 # if defined (DONT_EXTERN_INLINE_FUNCTIONS) | |
641 # define INLINE inline | |
642 # else | |
643 # define INLINE extern inline | |
644 # endif | |
645 # else | |
646 # define INLINE static inline | |
647 # endif | |
648 #else | |
649 # define INLINE static | |
650 #endif | |
651 | |
652 /* We want to avoid saving the signal mask if possible, because | |
653 that necessitates a system call. */ | |
654 #ifdef HAVE_SIGSETJMP | |
655 # define SETJMP(x) sigsetjmp (x, 0) | |
656 # define LONGJMP(x, y) siglongjmp (x, y) | |
657 # define JMP_BUF sigjmp_buf | |
658 #else | |
659 # define SETJMP(x) setjmp (x) | |
660 # define LONGJMP(x, y) longjmp (x, y) | |
661 # define JMP_BUF jmp_buf | |
662 #endif | |
663 | |
664 #endif /* _CONFIG_H_ */ |