Mercurial > hg > xemacs-beta
comparison src/config.h.in @ 771:943eaba38521
[xemacs-hg @ 2002-03-13 08:51:24 by ben]
The big ben-mule-21-5 check-in!
Various files were added and deleted. See CHANGES-ben-mule.
There are still some test suite failures. No crashes, though.
Many of the failures have to do with problems in the test suite itself
rather than in the actual code. I'll be addressing these in the next
day or so -- none of the test suite failures are at all critical.
Meanwhile I'll be trying to address the biggest issues -- i.e. build
or run failures, which will almost certainly happen on various platforms.
All comments should be sent to ben@xemacs.org -- use a Cc: if necessary
when sending to mailing lists. There will be pre- and post- tags,
something like
pre-ben-mule-21-5-merge-in, and
post-ben-mule-21-5-merge-in.
author | ben |
---|---|
date | Wed, 13 Mar 2002 08:54:06 +0000 |
parents | 76d5a3dd827a |
children | e65d9cf16707 |
comparison
equal
deleted
inserted
replaced
770:336a418893b5 | 771:943eaba38521 |
---|---|
1 /* XEmacs site configuration template file. -*- C -*- | 1 /* XEmacs site configuration template file. -*- C -*- |
2 Copyright (C) 1986, 1991-1994, 1998, 1999 Free Software Foundation, Inc. | 2 Copyright (C) 1986, 1991-1994, 1998, 1999 Free Software Foundation, Inc. |
3 Copyright (C) 2000, 2001, 2002 Ben Wing. | |
3 | 4 |
4 This file is part of XEmacs. | 5 This file is part of XEmacs. |
5 | 6 |
6 XEmacs is free software; you can redistribute it and/or modify it | 7 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 under the terms of the GNU General Public License as published by the |
24 intended to work with other packages as well (like gmalloc.c) | 25 intended to work with other packages as well (like gmalloc.c) |
25 think they can include it as many times as they like. */ | 26 think they can include it as many times as they like. */ |
26 #ifndef _SRC_CONFIG_H_ | 27 #ifndef _SRC_CONFIG_H_ |
27 #define _SRC_CONFIG_H_ | 28 #define _SRC_CONFIG_H_ |
28 | 29 |
30 /* | |
31 This file now serves both as config.h.in and simply as config.h under | |
32 Windows NT. Under Windows NT, there is no configure script that | |
33 operates, so it is necessary for the relevant constants to be set | |
34 manually, either by the user (for user options) or in s/windowsnt.h. | |
35 | |
36 Formerly, under NT there were three different places where constants | |
37 were defined -- nt/config.h, nt/xemacs.mak and s/windowsnt.h; now only | |
38 the latter two are used. (This separate config.h was a hassle because | |
39 it required constant synchronization between it and src/config.h.in.) | |
40 Since the options that are substituted by configure are written in | |
41 config.h.in with #undef, it is easy to make this file serve as | |
42 config.h under Windows NT. Options that are set by the user are | |
43 specified in the file config.inc.samp, which is included by xemacs.mak | |
44 (the makefile) and used to set command-line options to the | |
45 compiler. The sorts of options that relate to the system and not to | |
46 the user and which are normally auto-determined by configure are set | |
47 in windowsnt.h. | |
48 | |
49 What this means is that a little more care has to be taken in the way | |
50 things are arranged in config.h.in. In particular: | |
51 | |
52 -- Everything that is written with a #undef should be bracketed by | |
53 #ifdef WIN32_NO_CONFIGURE, and these #ifdefs should in general be | |
54 grouped together as much as possible. | |
55 | |
56 -- Things that are not #undefs should not go inside this bracketed | |
57 #ifdef, because these things typically set constants based on other | |
58 constants and those latter constants may be set elsewhere under | |
59 Windows NT. | |
60 | |
61 -- Any #ifdefs that depend on constants that may be set in windowsnt.h | |
62 need to be moved after the point at which this file is | |
63 included. This applies for example to the error checking macros. | |
64 */ | |
65 | |
66 #if defined (WIN32_NATIVE) && !defined (MINGW) | |
67 # define WIN32_NO_CONFIGURE | |
68 #endif | |
69 | |
29 /* Use this to add code in a structured way to FSF-maintained source | 70 /* Use this to add code in a structured way to FSF-maintained source |
30 files so as to make it obvious where XEmacs changes are. */ | 71 files so as to make it obvious where XEmacs changes are. */ |
31 #define XEMACS 1 | 72 #define XEMACS 1 |
73 | |
74 #ifndef WIN32_NO_CONFIGURE /* Defined in xemacs.mak or s/windowsnt.h: */ | |
32 | 75 |
33 /* Program name */ | 76 /* Program name */ |
34 #undef EMACS_PROGNAME | 77 #undef EMACS_PROGNAME |
35 | 78 |
36 /* Allow s&m files to differentiate OS versions without having | 79 /* Allow s&m files to differentiate OS versions without having |
134 #undef _POSIX_SOURCE | 177 #undef _POSIX_SOURCE |
135 #undef _BSD_SOURCE | 178 #undef _BSD_SOURCE |
136 #undef _SVID_SOURCE | 179 #undef _SVID_SOURCE |
137 #undef X_LOCALE | 180 #undef X_LOCALE |
138 #undef NARROWPROTO | 181 #undef NARROWPROTO |
182 #endif /* HAVE_X_WINDOWS */ | |
183 | |
184 #endif /* WIN32_NO_CONFIGURE */ | |
185 | |
186 #ifdef HAVE_X_WINDOWS | |
139 /* The following should always be defined, no matter what xmkmf thinks. */ | 187 /* The following should always be defined, no matter what xmkmf thinks. */ |
140 #ifndef NeedFunctionPrototypes | 188 #ifndef NeedFunctionPrototypes |
141 #define NeedFunctionPrototypes 1 | 189 #define NeedFunctionPrototypes 1 |
142 #endif | 190 #endif |
143 #ifndef FUNCPROTO | 191 #ifndef FUNCPROTO |
161 /* Define HAVE_UNIXOID_EVENT_LOOP if we use select() to wait for events. */ | 209 /* Define HAVE_UNIXOID_EVENT_LOOP if we use select() to wait for events. */ |
162 #if defined (HAVE_X_WINDOWS) || defined (HAVE_TTY) || defined(HAVE_MSG_SELECT) | 210 #if defined (HAVE_X_WINDOWS) || defined (HAVE_TTY) || defined(HAVE_MSG_SELECT) |
163 #define HAVE_UNIXOID_EVENT_LOOP | 211 #define HAVE_UNIXOID_EVENT_LOOP |
164 #endif | 212 #endif |
165 | 213 |
214 #ifndef WIN32_NO_CONFIGURE /* Defined in xemacs.mak or s/windowsnt.h: */ | |
215 | |
166 /* XFree86 has a different prototype for this function */ | 216 /* XFree86 has a different prototype for this function */ |
167 #undef HAVE_XREGISTERIMINSTANTIATECALLBACK | 217 #undef HAVE_XREGISTERIMINSTANTIATECALLBACK |
168 #undef XREGISTERIMINSTANTIATECALLBACK_NONSTANDARD_PROTOTYPE | 218 #undef XREGISTERIMINSTANTIATECALLBACK_NONSTANDARD_PROTOTYPE |
169 | 219 |
170 #undef THIS_IS_X11R4 | 220 #undef THIS_IS_X11R4 |
175 | 225 |
176 #undef HAVE_BALLOON_HELP | 226 #undef HAVE_BALLOON_HELP |
177 | 227 |
178 /* Where do we find bitmaps? */ | 228 /* Where do we find bitmaps? */ |
179 #undef BITMAPDIR | 229 #undef BITMAPDIR |
180 | |
181 /* USER_FULL_NAME returns a string that is the user's full name. | |
182 It can assume that the variable `pw' points to the password file | |
183 entry for this user. | |
184 | |
185 At some sites, the pw_gecos field contains the user's full name. | |
186 If neither this nor any other field contains the right thing, use | |
187 pw_name, giving the user's login name, since that is better than | |
188 nothing. */ | |
189 #define USER_FULL_NAME pw->pw_gecos | |
190 | 230 |
191 /* Define AMPERSAND_FULL_NAME if you use the convention | 231 /* Define AMPERSAND_FULL_NAME if you use the convention |
192 that & in the full name stands for the login id. */ | 232 that & in the full name stands for the login id. */ |
193 #undef AMPERSAND_FULL_NAME | 233 #undef AMPERSAND_FULL_NAME |
194 | 234 |
215 #undef HAVE_LIBINTL_H | 255 #undef HAVE_LIBINTL_H |
216 #undef HAVE_X11_XLOCALE_H | 256 #undef HAVE_X11_XLOCALE_H |
217 #undef STDC_HEADERS | 257 #undef STDC_HEADERS |
218 #undef TIME_WITH_SYS_TIME | 258 #undef TIME_WITH_SYS_TIME |
219 #undef WORDS_BIGENDIAN | 259 #undef WORDS_BIGENDIAN |
220 #undef HAVE_VFORK_H | |
221 #undef vfork | |
222 | 260 |
223 #undef HAVE_LONG_FILE_NAMES | 261 #undef HAVE_LONG_FILE_NAMES |
224 | 262 |
225 /* Use lock files to detect multiple edits of the same file? */ | 263 /* Use lock files to detect multiple edits of the same file? */ |
226 #undef CLASH_DETECTION | 264 #undef CLASH_DETECTION |
284 #undef HAVE_GETNAMEINFO | 322 #undef HAVE_GETNAMEINFO |
285 #undef HAVE_GETPAGESIZE | 323 #undef HAVE_GETPAGESIZE |
286 #undef HAVE_GETTIMEOFDAY | 324 #undef HAVE_GETTIMEOFDAY |
287 #undef HAVE_GETWD | 325 #undef HAVE_GETWD |
288 #undef HAVE_GETCWD | 326 #undef HAVE_GETCWD |
327 #undef HAVE_LINK | |
289 #undef HAVE_LOGB | 328 #undef HAVE_LOGB |
290 #undef HAVE_LRAND48 | 329 #undef HAVE_LRAND48 |
291 #undef HAVE_MATHERR | 330 #undef HAVE_MATHERR |
292 #undef HAVE_MKDIR | 331 #undef HAVE_MKDIR |
293 #undef HAVE_MKTIME | 332 #undef HAVE_MKTIME |
294 #undef HAVE_PERROR | 333 #undef HAVE_PERROR |
295 #undef HAVE_POLL | 334 #undef HAVE_POLL |
296 #undef HAVE_RANDOM | 335 #undef HAVE_RANDOM |
336 #undef HAVE_READLINK | |
297 #undef HAVE_REALPATH | 337 #undef HAVE_REALPATH |
298 #undef HAVE_RENAME | 338 #undef HAVE_RENAME |
299 #undef HAVE_RES_INIT | 339 #undef HAVE_RES_INIT |
300 #undef HAVE_RINT | 340 #undef HAVE_RINT |
301 #undef HAVE_RMDIR | 341 #undef HAVE_RMDIR |
308 #undef HAVE_SIGPROCMASK | 348 #undef HAVE_SIGPROCMASK |
309 #undef HAVE_SIGSETJMP | 349 #undef HAVE_SIGSETJMP |
310 #undef HAVE_SNPRINTF | 350 #undef HAVE_SNPRINTF |
311 #undef HAVE_STPCPY | 351 #undef HAVE_STPCPY |
312 #undef HAVE_STRERROR | 352 #undef HAVE_STRERROR |
353 #undef HAVE_SYMLINK | |
313 #undef HAVE_TZSET | 354 #undef HAVE_TZSET |
314 #undef HAVE_ULIMIT | 355 #undef HAVE_ULIMIT |
315 #undef HAVE_USLEEP | 356 #undef HAVE_USLEEP |
316 #undef HAVE_UTIME | 357 #undef HAVE_UTIME |
317 #undef HAVE_UTIMES | 358 #undef HAVE_UTIMES |
380 #undef HAVE_GIF | 421 #undef HAVE_GIF |
381 | 422 |
382 /* Compile in support for PNG images */ | 423 /* Compile in support for PNG images */ |
383 #undef HAVE_PNG | 424 #undef HAVE_PNG |
384 | 425 |
426 /* Compile in support for GZIP compression */ | |
427 #undef HAVE_ZLIB | |
428 | |
385 /* Do you have the Xmu library? | 429 /* Do you have the Xmu library? |
386 This should always be the case except on losing HP-UX systems. */ | 430 This should always be the case except on losing HP-UX systems. */ |
387 #undef HAVE_XMU | 431 #undef HAVE_XMU |
388 | 432 |
389 /* Compile in support for DBM databases? May require libgdbm or libdbm. */ | 433 /* Compile in support for DBM databases? May require libgdbm or libdbm. */ |
444 /* Make sure that all X... macros are dereferencing the correct type, | 488 /* Make sure that all X... macros are dereferencing the correct type, |
445 and that all XSET... macros (as much as possible) are setting the | 489 and that all XSET... macros (as much as possible) are setting the |
446 correct type of structure. Highly recommended for all | 490 correct type of structure. Highly recommended for all |
447 development work. */ | 491 development work. */ |
448 #undef ERROR_CHECK_TYPECHECK | 492 #undef ERROR_CHECK_TYPECHECK |
449 #ifdef ERROR_CHECK_TYPECHECK | |
450 #define type_checking_assert(assertion) assert (assertion) | |
451 #else | |
452 #define type_checking_assert(assertion) | |
453 #endif | |
454 | 493 |
455 /* Make sure valid buffer positions are passed to BUF_* macros. */ | 494 /* Make sure valid buffer positions are passed to BUF_* macros. */ |
456 #undef ERROR_CHECK_CHARBPOS | 495 #undef ERROR_CHECK_CHARBPOS |
457 #ifdef ERROR_CHECK_CHARBPOS | |
458 #define charbpos_checking_assert(assertion) assert (assertion) | |
459 #else | |
460 #define charbpos_checking_assert(assertion) | |
461 #endif | |
462 | 496 |
463 /* Attempt to catch bugs related to garbage collection (e.g. not GCPRO'ing). */ | 497 /* Attempt to catch bugs related to garbage collection (e.g. not GCPRO'ing). */ |
464 #undef ERROR_CHECK_GC | 498 #undef ERROR_CHECK_GC |
465 #ifdef ERROR_CHECK_GC | |
466 #define gc_checking_assert(assertion) assert (assertion) | |
467 #else | |
468 #define gc_checking_assert(assertion) | |
469 #endif | |
470 | 499 |
471 /* Attempt to catch freeing of a non-malloc()ed block, heap corruption, etc. */ | 500 /* Attempt to catch freeing of a non-malloc()ed block, heap corruption, etc. */ |
472 #undef ERROR_CHECK_MALLOC | 501 #undef ERROR_CHECK_MALLOC |
473 | 502 |
474 /* Minor sanity checking of the bytecode interpreter. Useful for | 503 /* Minor sanity checking of the bytecode interpreter. Useful for |
494 | 523 |
495 /* Define PURIFY if using Purify from Rational Software. | 524 /* Define PURIFY if using Purify from Rational Software. |
496 It is only intended for use by the developers. */ | 525 It is only intended for use by the developers. */ |
497 #undef PURIFY | 526 #undef PURIFY |
498 | 527 |
499 #if (defined (QUANTIFY) || defined (PURIFY)) && !defined (XLIB_ILLEGAL_ACCESS) | |
500 #define XLIB_ILLEGAL_ACCESS 1 | |
501 #endif | |
502 | |
503 /* Define EXTERNAL_WIDGET to compile support for using the editor as a | 528 /* Define EXTERNAL_WIDGET to compile support for using the editor as a |
504 widget within another program. */ | 529 widget within another program. */ |
505 #undef EXTERNAL_WIDGET | 530 #undef EXTERNAL_WIDGET |
506 | 531 |
507 /* There are some special-case defines for gcc and lcc. */ | 532 /* There are some special-case defines for gcc and lcc. */ |
508 #undef USE_GCC | 533 #undef USE_GCC |
509 #undef USE_LCC | 534 #undef USE_LCC |
510 | |
511 /* Define this if you want level 2 internationalization compliance | |
512 (localized collation and formatting). Generally this should be | |
513 defined, unless your system doesn't have the strcoll() and | |
514 setlocale() library routines. This really should be (NOT! -mrb) | |
515 defined in the appropriate s/ or m/ file. */ | |
516 #undef I18N2 | |
517 | |
518 /* Define this if you want level 3 internationalization compliance | |
519 (localized messaging). This will cause a small runtime performance | |
520 penalty, as the strings are read from the message catalog(s). | |
521 For this you need the gettext() and dgetext() library routines. | |
522 WARNING, this code is under construction. */ | |
523 #undef I18N3 | |
524 | 535 |
525 /* Compile in support for CDE (Common Desktop Environment) drag and drop? | 536 /* Compile in support for CDE (Common Desktop Environment) drag and drop? |
526 Requires libDtSvc, which typically must be present at runtime. */ | 537 Requires libDtSvc, which typically must be present at runtime. */ |
527 #undef HAVE_CDE | 538 #undef HAVE_CDE |
528 | 539 |
538 /* Define this if you want Mule support (multi-byte character support). | 549 /* Define this if you want Mule support (multi-byte character support). |
539 There may be some performance penalty, although it should be small | 550 There may be some performance penalty, although it should be small |
540 if you're working with ASCII files. */ | 551 if you're working with ASCII files. */ |
541 #undef MULE | 552 #undef MULE |
542 | 553 |
543 /* Define this if you want file coding support */ | 554 /* Define this if you want EOL detection of files to be on by default |
544 #undef FILE_CODING | 555 in a non-Mule Unix; otherwise, defaults will be set so that all |
556 files are read in as binary. Doesn't apply to Cygwin or MinGW. */ | |
557 #undef HAVE_DEFAULT_EOL_DETECTION | |
545 | 558 |
546 /* Do we want to use X window input methods for use with Mule? (requires X11R5) | 559 /* Do we want to use X window input methods for use with Mule? (requires X11R5) |
547 If so, use raw Xlib or higher level Motif interface? */ | 560 If so, use raw Xlib or higher level Motif interface? */ |
548 #undef HAVE_XIM | 561 #undef HAVE_XIM |
549 #undef XIM_XLIB | 562 #undef XIM_XLIB |
550 #undef XIM_MOTIF | 563 #undef XIM_MOTIF |
551 #undef USE_XFONTSET | |
552 | 564 |
553 /* Non-XIM input methods for use with Mule. */ | 565 /* Non-XIM input methods for use with Mule. */ |
554 #undef HAVE_CANNA | 566 #undef HAVE_CANNA |
555 #undef HAVE_WNN | 567 #undef HAVE_WNN |
556 #undef WNN6 | 568 #undef WNN6 |
557 | |
558 /* Enable special GNU Make features in the Makefiles. */ | |
559 #undef USE_GNU_MAKE | |
560 | 569 |
561 /* Debugging development option: Remove inessential but time consuming | 570 /* Debugging development option: Remove inessential but time consuming |
562 actions from happening during build. This saves a lot of time when | 571 actions from happening during build. This saves a lot of time when |
563 you're repeatedly compiling-running-crashing. This (1) doesn't | 572 you're repeatedly compiling-running-crashing. This (1) doesn't |
564 garbage-collect after loading each file during dumping, and (2) | 573 garbage-collect after loading each file during dumping, and (2) |
565 doesn't automatically rebuild the DOC file. (Remove it by hand to | 574 doesn't automatically rebuild the DOC file. (Remove it by hand to |
566 get it rebuilt.) | 575 get it rebuilt.) |
567 */ | 576 */ |
568 #undef QUICK_BUILD | 577 #undef QUICK_BUILD |
578 | |
579 /* If defined, use unions instead of ints. A few systems (DEC Alpha) | |
580 seem to require this, probably because something with the int | |
581 definitions isn't right with 64-bit systems. */ | |
582 #undef USE_UNION_TYPE | |
583 | |
584 /* Enable special GNU Make features in the Makefiles. */ | |
585 #undef USE_GNU_MAKE | |
569 | 586 |
570 /* Defined by AC_C_CONST in configure.in */ | 587 /* Defined by AC_C_CONST in configure.in */ |
571 #undef const | 588 #undef const |
572 | 589 |
573 /* Allow the source to use standard types. Include these before the | 590 /* Allow the source to use standard types. Include these before the |
579 #undef off_t | 596 #undef off_t |
580 #undef uid_t | 597 #undef uid_t |
581 #undef gid_t | 598 #undef gid_t |
582 #undef socklen_t | 599 #undef socklen_t |
583 | 600 |
584 /* If defined, use unions instead of ints. A few systems (DEC Alpha) | 601 #endif /* WIN32_NO_CONFIGURE */ |
585 seem to require this, probably because something with the int | 602 |
586 definitions isn't right with 64-bit systems. */ | 603 |
587 #undef USE_UNION_TYPE | 604 /* USER_FULL_NAME returns a string that is the user's full name. |
605 It can assume that the variable `pw' points to the password file | |
606 entry for this user. | |
607 | |
608 At some sites, the pw_gecos field contains the user's full name. | |
609 If neither this nor any other field contains the right thing, use | |
610 pw_name, giving the user's login name, since that is better than | |
611 nothing. */ | |
612 #define USER_FULL_NAME pw->pw_gecos | |
613 | |
614 #if (defined (QUANTIFY) || defined (PURIFY)) && !defined (XLIB_ILLEGAL_ACCESS) | |
615 #define XLIB_ILLEGAL_ACCESS 1 | |
616 #endif | |
588 | 617 |
589 /* alloca twiddling. | 618 /* alloca twiddling. |
590 Because we might be #including alloca.h here, feature test macros | 619 Because we might be #including alloca.h here, feature test macros |
591 such as _XOPEN_SOURCE must be defined above. */ | 620 such as _XOPEN_SOURCE must be defined above. */ |
621 | |
592 #undef HAVE_ALLOCA_H | 622 #undef HAVE_ALLOCA_H |
593 #ifndef NOT_C_CODE | 623 #ifndef NOT_C_CODE |
594 #ifdef __GNUC__ | 624 #if defined (__CYGWIN__) |
625 /* We get complaints about redefinitions if we just use the __GNUC__ | |
626 definition: stdlib.h also includes alloca.h, which defines it slightly | |
627 differently */ | |
628 #include <alloca.h> | |
629 #elif defined (__GNUC__) | |
595 #define alloca __builtin_alloca | 630 #define alloca __builtin_alloca |
596 #elif defined __DECC | 631 #elif defined (WIN32_NO_CONFIGURE) |
632 /* Defines size_t and alloca (). */ | |
633 #include <malloc.h> | |
634 #elif defined (__DECC) | |
597 #include <alloca.h> | 635 #include <alloca.h> |
598 #pragma intrinsic(alloca) | 636 #pragma intrinsic(alloca) |
599 #elif defined HAVE_ALLOCA_H | 637 #elif defined (HAVE_ALLOCA_H) |
600 #include <alloca.h> | 638 #include <alloca.h> |
601 #elif defined(_AIX) | 639 #elif defined (_AIX) |
602 /* AIX requires this before any "real" code in the translation unit. */ | 640 /* AIX requires this before any "real" code in the translation unit. */ |
603 #pragma alloca | 641 #pragma alloca |
604 #elif ! defined (alloca) | 642 #elif ! defined (alloca) |
605 void *alloca (); | 643 void *alloca (); |
606 #endif | 644 #endif |
613 #if defined (__cplusplus) && !defined (NOT_C_CODE) | 651 #if defined (__cplusplus) && !defined (NOT_C_CODE) |
614 extern "C" { | 652 extern "C" { |
615 #endif | 653 #endif |
616 | 654 |
617 #undef config_opsysfile | 655 #undef config_opsysfile |
618 #ifdef config_opsysfile | 656 #ifdef WIN32_NO_CONFIGURE |
657 #include "s/windowsnt.h" | |
658 #elif defined (config_opsysfile) | |
619 #include config_opsysfile | 659 #include config_opsysfile |
620 #endif | 660 #endif |
621 | 661 |
622 /* The configuration script may define `machfile' to be the name of | 662 /* The configuration script may define `machfile' to be the name of |
623 the m/...h file that describes the machine you are using. | 663 the m/...h file that describes the machine you are using. |
624 The file name is chosen based on the configuration name. */ | 664 The file name is chosen based on the configuration name. */ |
625 | 665 |
626 #undef config_machfile | 666 #undef config_machfile |
627 #ifdef config_machfile | 667 #ifdef WIN32_NO_CONFIGURE |
668 #include "m/windowsnt.h" | |
669 #elif defined (config_machfile) | |
628 #include config_machfile | 670 #include config_machfile |
629 #endif | 671 #endif |
630 | 672 |
631 #if defined (__cplusplus) && !defined (NOT_C_CODE) | 673 #if defined (__cplusplus) && !defined (NOT_C_CODE) |
632 } | 674 } |
654 #ifndef SIGTYPE | 696 #ifndef SIGTYPE |
655 #define SIGTYPE RETSIGTYPE | 697 #define SIGTYPE RETSIGTYPE |
656 #define SIGRETURN return | 698 #define SIGRETURN return |
657 #endif | 699 #endif |
658 | 700 |
701 #ifndef WIN32_NO_CONFIGURE /* Defined in xemacs.mak or s/windowsnt.h: */ | |
702 | |
659 /* Define DYNODUMP if it is necessary to properly dump on this system. | 703 /* Define DYNODUMP if it is necessary to properly dump on this system. |
660 Currently this is only Solaris 2.x, for x < 6. */ | 704 Currently this is only Solaris 2.x, for x < 6. */ |
661 #undef DYNODUMP | 705 #undef DYNODUMP |
662 | 706 |
663 /* Compile in support for Sun Sparcworks/WorkShop? */ | 707 /* Compile in support for Sun Sparcworks/WorkShop? */ |
666 /* Sun SparcStations, SGI machines, and HP9000s700s have built-in | 710 /* Sun SparcStations, SGI machines, and HP9000s700s have built-in |
667 support for playing sound files. (On Suns, the sound support is | 711 support for playing sound files. (On Suns, the sound support is |
668 usually found in /usr/demo/SOUND - you may need to install the | 712 usually found in /usr/demo/SOUND - you may need to install the |
669 "SUNWaudmo" package.) */ | 713 "SUNWaudmo" package.) */ |
670 #undef HAVE_NATIVE_SOUND | 714 #undef HAVE_NATIVE_SOUND |
715 | |
671 /* Native sound may be provided via soundcard.h, in various directories */ | 716 /* Native sound may be provided via soundcard.h, in various directories */ |
672 #undef SOUNDCARD_H_FILE | 717 #undef SOUNDCARD_H_FILE |
673 | 718 |
674 /* Compile in support for NAS (Network Audio System)? | 719 /* Compile in support for NAS (Network Audio System)? |
675 NAS_NO_ERROR_JUMP means that the NAS libraries don't include some | 720 NAS_NO_ERROR_JUMP means that the NAS libraries don't include some |
687 #undef TOOLTALK | 732 #undef TOOLTALK |
688 /* tt_c.h might be in "Tt" or "desktop" subdirectories */ | 733 /* tt_c.h might be in "Tt" or "desktop" subdirectories */ |
689 #undef TT_C_H_FILE | 734 #undef TT_C_H_FILE |
690 | 735 |
691 /* Toolkits used by lwlib for various widgets... */ | 736 /* Toolkits used by lwlib for various widgets... */ |
737 | |
692 #undef LWLIB_USES_MOTIF | 738 #undef LWLIB_USES_MOTIF |
693 #undef LWLIB_USES_ATHENA | 739 #undef LWLIB_USES_ATHENA |
694 #undef LWLIB_MENUBARS_LUCID | 740 #undef LWLIB_MENUBARS_LUCID |
695 #undef LWLIB_MENUBARS_MOTIF | 741 #undef LWLIB_MENUBARS_MOTIF |
696 #undef LWLIB_SCROLLBARS_LUCID | 742 #undef LWLIB_SCROLLBARS_LUCID |
710 #undef HAVE_SCROLLBARS | 756 #undef HAVE_SCROLLBARS |
711 #undef HAVE_DIALOGS | 757 #undef HAVE_DIALOGS |
712 #undef HAVE_TOOLBARS | 758 #undef HAVE_TOOLBARS |
713 #undef HAVE_WIDGETS | 759 #undef HAVE_WIDGETS |
714 | 760 |
761 #endif /* WIN32_NO_CONFIGURE */ | |
762 | |
763 #if defined (HAVE_MENUBARS) || defined (HAVE_SCROLLBARS) || defined (HAVE_DIALOGS) || defined (HAVE_TOOLBARS) || defined (HAVE_WIDGETS) | |
764 #define HAVE_GUI_OBJECTS | |
765 #endif | |
766 | |
767 /* For the moment, Athena widgets and dialogs may be very unstable and not | |
768 working well, but things under Windows work much better. configure by | |
769 default tries to turn Windows widgets and dialogs on, but the Athena | |
770 ones off, so let's separate the defines. */ | |
771 #if defined (HAVE_WIDGETS) && (defined (LWLIB_WIDGETS_MOTIF) || defined (LWLIB_WIDGETS_ATHENA)) | |
772 #define HAVE_X_WIDGETS | |
773 #endif | |
774 | |
775 #if defined (HAVE_DIALOGS) && (defined (LWLIB_DIALOGS_MOTIF) || defined (LWLIB_DIALOGS_ATHENA) || defined (LWLIB_DIALOGS_ATHENA3D)) | |
776 #define HAVE_X_DIALOGS | |
777 #endif | |
715 | 778 |
716 #if defined (HAVE_MENUBARS) || defined (HAVE_DIALOGS) | 779 #if defined (HAVE_MENUBARS) || defined (HAVE_DIALOGS) |
717 #define HAVE_POPUPS | 780 #define HAVE_POPUPS |
718 #endif | 781 #endif |
719 | 782 |
732 I don't know whether this has been fixed as of 4.1.2 or 4.1.3. */ | 795 I don't know whether this has been fixed as of 4.1.2 or 4.1.3. */ |
733 #if defined (sparc) && !defined (USG) | 796 #if defined (sparc) && !defined (USG) |
734 #define OBJECTS_SYSTEM sunOS-fix.o strcmp.o strcpy.o | 797 #define OBJECTS_SYSTEM sunOS-fix.o strcmp.o strcpy.o |
735 #endif | 798 #endif |
736 | 799 |
737 /* If you turn this flag on, it forces encapsulation in all | |
738 circumstances; this can be used to make sure things compile OK | |
739 on various systems. */ | |
740 #undef DEBUG_ENCAPSULATION | |
741 | |
742 /* basic system calls */ | |
743 | |
744 #if defined (INTERRUPTIBLE_IO) || defined (DEBUG_ENCAPSULATION) | |
745 # define ENCAPSULATE_READ | |
746 # define ENCAPSULATE_WRITE | |
747 #endif | |
748 #if defined (INTERRUPTIBLE_OPEN) || defined (MULE) || defined (DEBUG_ENCAPSULATION) | |
749 # define ENCAPSULATE_OPEN | |
750 #endif | |
751 #if defined (INTERRUPTIBLE_CLOSE) || defined (DEBUG_ENCAPSULATION) | |
752 # define ENCAPSULATE_CLOSE | |
753 #endif | |
754 | |
755 /* stdio calls */ | |
756 | |
757 #if defined (INTERRUPTIBLE_IO) || defined (DEBUG_ENCAPSULATION) | |
758 # define ENCAPSULATE_FREAD | |
759 # define ENCAPSULATE_FWRITE | |
760 #endif | |
761 #if defined (INTERRUPTIBLE_OPEN) || defined (MULE) || defined (DEBUG_ENCAPSULATION) | |
762 # define ENCAPSULATE_FOPEN | |
763 #endif | |
764 #if defined (INTERRUPTIBLE_CLOSE) || defined (DEBUG_ENCAPSULATION) | |
765 # define ENCAPSULATE_FCLOSE | |
766 #endif | |
767 | |
768 /* directory calls */ | |
769 | |
770 #if defined (MULE) || defined (DEBUG_ENCAPSULATION) | |
771 # define ENCAPSULATE_CHDIR | |
772 # define ENCAPSULATE_MKDIR | |
773 # define ENCAPSULATE_OPENDIR | |
774 # define ENCAPSULATE_CLOSEDIR | |
775 # define ENCAPSULATE_READDIR | |
776 # define ENCAPSULATE_RMDIR | |
777 | |
778 /* file-information calls */ | |
779 | |
780 #ifdef HAVE_EACCESS | |
781 # define ENCAPSULATE_EACCESS | |
782 #endif | |
783 # define ENCAPSULATE_ACCESS | |
784 # define ENCAPSULATE_LSTAT | |
785 # define ENCAPSULATE_READLINK | |
786 # define ENCAPSULATE_STAT | |
787 | |
788 /* file-manipulation calls */ | |
789 | |
790 # define ENCAPSULATE_CHMOD | |
791 # define ENCAPSULATE_CREAT | |
792 # define ENCAPSULATE_LINK | |
793 # define ENCAPSULATE_RENAME | |
794 # define ENCAPSULATE_SYMLINK | |
795 # define ENCAPSULATE_UNLINK | |
796 # define ENCAPSULATE_EXECVP | |
797 #endif /* defined (MULE) || defined (DEBUG_ENCAPSULATION) */ | |
798 | |
799 #ifdef HAVE_CANNA | 800 #ifdef HAVE_CANNA |
800 # define CANNA2 | 801 # define CANNA2 |
801 # define CANNA_MULE | 802 # define CANNA_MULE |
802 # define CANNA_PURESIZE 0 | 803 # define CANNA_PURESIZE 0 |
803 #else /* not CANNA */ | 804 #else /* not CANNA */ |
810 #define connect Rconnect | 811 #define connect Rconnect |
811 #define getsockname Rgetsockname | 812 #define getsockname Rgetsockname |
812 #define listen Rlisten | 813 #define listen Rlisten |
813 #endif /* HAVE_SOCKS && !DO_NOT_SOCKSIFY */ | 814 #endif /* HAVE_SOCKS && !DO_NOT_SOCKSIFY */ |
814 | 815 |
816 #ifndef WIN32_NO_CONFIGURE /* Defined in xemacs.mak or s/windowsnt.h: */ | |
817 | |
815 #undef SIZEOF_SHORT | 818 #undef SIZEOF_SHORT |
816 #undef SIZEOF_INT | 819 #undef SIZEOF_INT |
817 #undef SIZEOF_LONG | 820 #undef SIZEOF_LONG |
818 #undef SIZEOF_LONG_LONG | 821 #undef SIZEOF_LONG_LONG |
819 #undef SIZEOF_VOID_P | 822 #undef SIZEOF_VOID_P |
820 | 823 |
824 /* Does the keyword `inline' exist? */ | |
825 #undef inline | |
826 | |
827 #endif /* WIN32_NO_CONFIGURE */ | |
828 | |
821 #ifndef BITS_PER_CHAR | 829 #ifndef BITS_PER_CHAR |
822 #define BITS_PER_CHAR 8 | 830 #define BITS_PER_CHAR 8 |
823 #endif | 831 #endif |
824 #define SHORTBITS (SIZEOF_SHORT * BITS_PER_CHAR) | 832 #define SHORTBITS (SIZEOF_SHORT * BITS_PER_CHAR) |
825 #define INTBITS (SIZEOF_INT * BITS_PER_CHAR) | 833 #define INTBITS (SIZEOF_INT * BITS_PER_CHAR) |
828 #define VOID_P_BITS (SIZEOF_VOID_P * BITS_PER_CHAR) | 836 #define VOID_P_BITS (SIZEOF_VOID_P * BITS_PER_CHAR) |
829 | 837 |
830 /* Use `INLINE_HEADER' to define inline functions in .h files. | 838 /* Use `INLINE_HEADER' to define inline functions in .h files. |
831 Use `inline static' to define inline functions in .c files. | 839 Use `inline static' to define inline functions in .c files. |
832 See the Internals manual for examples and more information. */ | 840 See the Internals manual for examples and more information. */ |
833 | |
834 /* Does the keyword `inline' exist? */ | |
835 #undef inline | |
836 | 841 |
837 #if defined (__cplusplus) || ! defined (__GNUC__) | 842 #if defined (__cplusplus) || ! defined (__GNUC__) |
838 # define INLINE_HEADER inline static | 843 # define INLINE_HEADER inline static |
839 #elif defined (DONT_EXTERN_INLINE_HEADER_FUNCTIONS) | 844 #elif defined (DONT_EXTERN_INLINE_HEADER_FUNCTIONS) |
840 # define INLINE_HEADER inline | 845 # define INLINE_HEADER inline |
841 #else | 846 #else |
842 # define INLINE_HEADER inline extern | 847 # define INLINE_HEADER inline extern |
843 #endif | 848 #endif |
849 | |
850 /* Use DECLARE_INLINE_HEADER() to declare an inline function in a header | |
851 file, like this: (This avoids the need to write a prototype directly | |
852 followed by the function header itself.) | |
853 | |
854 DECLARE_INLINE_HEADER (int foo (int x)) | |
855 { | |
856 return x * x; | |
857 } | |
858 | |
859 */ | |
860 | |
861 #define DECLARE_INLINE_HEADER(header) \ | |
862 INLINE_HEADER header ; INLINE_HEADER header | |
844 | 863 |
845 #ifndef NOT_C_CODE /* Actually means C or C++ */ | 864 #ifndef NOT_C_CODE /* Actually means C or C++ */ |
846 # if defined (__cplusplus) | 865 # if defined (__cplusplus) |
847 /* Avoid C++ keywords used as ordinary C identifiers */ | 866 /* Avoid C++ keywords used as ordinary C identifiers */ |
848 # define class c_class | 867 # define class c_class |
875 #else | 894 #else |
876 # define SETJMP(x) setjmp (x) | 895 # define SETJMP(x) setjmp (x) |
877 # define LONGJMP(x, y) longjmp (x, y) | 896 # define LONGJMP(x, y) longjmp (x, y) |
878 # define JMP_BUF jmp_buf | 897 # define JMP_BUF jmp_buf |
879 #endif | 898 #endif |
899 | |
900 #ifndef WIN32_NO_CONFIGURE /* Defined in xemacs.mak or s/windowsnt.h: */ | |
880 | 901 |
881 /* movemail options */ | 902 /* movemail options */ |
882 /* Should movemail use POP3 for mail access? */ | 903 /* Should movemail use POP3 for mail access? */ |
883 #undef MAIL_USE_POP | 904 #undef MAIL_USE_POP |
884 /* Should movemail use kerberos for POP authentication? */ | 905 /* Should movemail use kerberos for POP authentication? */ |
907 #undef INFODIR_USER_DEFINED | 928 #undef INFODIR_USER_DEFINED |
908 #undef INFOPATH_USER_DEFINED | 929 #undef INFOPATH_USER_DEFINED |
909 | 930 |
910 #undef PDUMP | 931 #undef PDUMP |
911 | 932 |
933 #endif /* WIN32_NO_CONFIGURE */ | |
934 | |
935 #if defined (WIN32_NATIVE) || defined (CYGWIN) | |
936 # define HAVE_WIN32_CODING_SYSTEMS | |
937 #endif | |
938 | |
939 /* Move these down here so that the s/m files (esp. windowsnt.h) can | |
940 set them. */ | |
941 #ifdef ERROR_CHECK_TYPECHECK | |
942 #define type_checking_assert(assertion) assert (assertion) | |
943 #else | |
944 #define type_checking_assert(assertion) | |
945 #endif | |
946 #ifdef ERROR_CHECK_CHARBPOS | |
947 #define charbpos_checking_assert(assertion) assert (assertion) | |
948 #else | |
949 #define charbpos_checking_assert(assertion) | |
950 #endif | |
951 #ifdef ERROR_CHECK_GC | |
952 #define gc_checking_assert(assertion) assert (assertion) | |
953 #else | |
954 #define gc_checking_assert(assertion) | |
955 #endif | |
956 | |
912 #endif /* _SRC_CONFIG_H_ */ | 957 #endif /* _SRC_CONFIG_H_ */ |