1 /* src/config.in. Generated from configure.in by autoheader. */
3 /* GNU Emacs site configuration template file.
4 Copyright (C) 1988, 93, 94, 99, 2000, 2002 Free Software Foundation, Inc.
6 This file is part of GNU Emacs.
8 GNU Emacs is free software; you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation; either version 2, or (at your option)
13 GNU Emacs is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
18 You should have received a copy of the GNU General Public License
19 along with GNU Emacs; see the file COPYING. If not, write to the
20 Free Software Foundation, Inc., 59 Temple Place - Suite 330,
21 Boston, MA 02111-1307, USA. */
24 /* No code in Emacs #includes config.h twice, but some bits of code
25 intended to work with other packages as well (like gmalloc.c)
26 think they can include it as many times as they like. */
27 #ifndef EMACS_CONFIG_H
28 #define EMACS_CONFIG_H
31 /* Define to 1 if the mktime function is broken. */
34 /* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP
35 systems. This function is required for `alloca.c' support on those systems.
37 #undef CRAY_STACKSEG_END
39 /* Define to 1 if using `alloca.c'. */
42 /* Define to 1 if using `getloadavg.c'. */
45 /* Define C_SWITCH_X_SITE to contain any special flags your compiler may need
46 to deal with X Windows. For instance, if you've defined HAVE_X_WINDOWS
47 above and your X include files aren't in a place that your compiler can
48 find on its own, you might want to add "-I/..." or something similar. */
49 #undef C_SWITCH_X_SITE
51 /* Define to 1 for DGUX with <sys/dg_sys_info.h>. */
54 /* Define to 1 if you are using the GNU C Library. */
55 #undef DOUG_LEA_MALLOC
57 /* Define to the canonical Emacs configuration name. */
58 #undef EMACS_CONFIGURATION
60 /* Define to the options passed to configure. */
61 #undef EMACS_CONFIG_OPTIONS
63 /* Define to 1 if the `getloadavg' function needs to be run setuid or setgid.
65 #undef GETLOADAVG_PRIVILEGED
67 /* Define to 1 if the `getpgrp' function requires zero arguments. */
70 /* Define to 1 if gettimeofday accepts only one argument. */
71 #undef GETTIMEOFDAY_ONE_ARGUMENT
73 /* Define to 1 if you want to use the GNU memory allocator. */
76 /* Define to 1 if the file /usr/lpp/X11/bin/smt.exp exists. */
77 #undef HAVE_AIX_SMT_EXP
79 /* Define to 1 if you have the `alarm' function. */
82 /* Define to 1 if you have `alloca', as a function or macro. */
85 /* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).
89 /* Define to 1 if you have the `bcmp' function. */
92 /* Define to 1 if you have the `bcopy' function. */
95 /* Define to 1 if you have the `bzero' function. */
98 /* Define to 1 if you are using the Carbon API on Mac OS X. */
101 /* Define to 1 if you have the `cbrt' function. */
104 /* Define to 1 if you have the `closedir' function. */
107 /* Define to 1 if you have the <coff.h> header file. */
110 /* Define to 1 if you have the <com_err.h> header file. */
111 #undef HAVE_COM_ERR_H
113 /* Define to 1 if you have the declaration of `sys_siglist', and to 0 if you
115 #undef HAVE_DECL_SYS_SIGLIST
117 /* Define to 1 if you have the declaration of `__sys_siglist', and to 0 if you
119 #undef HAVE_DECL___SYS_SIGLIST
121 /* Define to 1 if you have the <des.h> header file. */
124 /* Define to 1 if dynamic ptys are supported. */
127 /* Define to 1 if you have the `dup2' function. */
130 /* Define to 1 if you have the `euidaccess' function. */
131 #undef HAVE_EUIDACCESS
133 /* Define to 1 if you have the <fcntl.h> header file. */
136 /* Define to 1 if you have the `fmod' function. */
139 /* Define to 1 if you have the `fork' function. */
142 /* Define to 1 if you have the `fpathconf' function. */
143 #undef HAVE_FPATHCONF
145 /* Define to 1 if you have the `frexp' function. */
148 /* Define to 1 if fseeko (and presumably ftello) exists and is declared. */
151 /* Define to 1 if you have the `fsync' function. */
154 /* Define to 1 if you have the `ftime' function. */
157 /* Define to 1 if you have the `gai_strerror' function. */
158 #undef HAVE_GAI_STRERROR
160 /* Define to 1 if you have the `getaddrinfo' function. */
161 #undef HAVE_GETADDRINFO
163 /* Define to 1 if you have the `getcwd' function. */
166 /* Define to 1 if you have the `getdelim' function. */
169 /* Define to 1 if you have the `getdomainname' function. */
170 #undef HAVE_GETDOMAINNAME
172 /* Define to 1 if you have the `gethostname' function. */
173 #undef HAVE_GETHOSTNAME
175 /* Define to 1 if you have the `getline' function. */
178 /* Define to 1 if you have the `getloadavg' function. */
179 #undef HAVE_GETLOADAVG
181 /* Define to 1 if you have the `getpagesize' function. */
182 #undef HAVE_GETPAGESIZE
184 /* Define to 1 if you have the `getpeername' function. */
185 #undef HAVE_GETPEERNAME
187 /* Define to 1 if you have the `getpt' function. */
190 /* Define to 1 if you have the `getsockname' function. */
191 #undef HAVE_GETSOCKNAME
193 /* Define to 1 if you have the `getsockopt' function. */
194 #undef HAVE_GETSOCKOPT
196 /* Define to 1 if you have the `gettimeofday' function. */
197 #undef HAVE_GETTIMEOFDAY
199 /* Define to 1 if you have the `getwd' function. */
202 /* Define to 1 if you have the ungif library (-lungif). */
205 /* Define to 1 if you have the `grantpt' function. */
208 /* Define to 1 if using GTK. */
211 /* Define to 1 if netdb.h declares h_errno. */
214 /* Define to 1 if you have the `index' function. */
217 /* Define to 1 if you have inet sockets. */
218 #undef HAVE_INET_SOCKETS
220 /* Define to 1 if you have the <inttypes.h> header file. */
221 #undef HAVE_INTTYPES_H
223 /* Define to 1 if you have the jpeg library (-ljpeg). */
226 /* Define to 1 if you have the <kerberosIV/des.h> header file. */
227 #undef HAVE_KERBEROSIV_DES_H
229 /* Define to 1 if you have the <kerberosIV/krb.h> header file. */
230 #undef HAVE_KERBEROSIV_KRB_H
232 /* Define to 1 if you have the <kerberos/des.h> header file. */
233 #undef HAVE_KERBEROS_DES_H
235 /* Define to 1 if you have the <kerberos/krb.h> header file. */
236 #undef HAVE_KERBEROS_KRB_H
238 /* Define to 1 if you have the <krb5.h> header file. */
241 /* Define to 1 if you have the <krb.h> header file. */
244 /* Define if you have <langinfo.h> and nl_langinfo(CODESET). */
245 #undef HAVE_LANGINFO_CODESET
247 /* Define to 1 if you have the `com_err' library (-lcom_err). */
248 #undef HAVE_LIBCOM_ERR
250 /* Define to 1 if you have the `crypto' library (-lcrypto). */
251 #undef HAVE_LIBCRYPTO
253 /* Define to 1 if you have the `des' library (-ldes). */
256 /* Define to 1 if you have the `des425' library (-ldes425). */
257 #undef HAVE_LIBDES425
259 /* Define to 1 if you have the `dgc' library (-ldgc). */
262 /* Define to 1 if you have the `dnet' library (-ldnet). */
265 /* Define to 1 if you have the hesiod library (-lhesiod). */
266 #undef HAVE_LIBHESIOD
268 /* Define to 1 if you have the `intl' library (-lintl). */
271 /* Define to 1 if you have the `k5crypto' library (-lk5crypto). */
272 #undef HAVE_LIBK5CRYPTO
274 /* Define to 1 if you have the `krb' library (-lkrb). */
277 /* Define to 1 if you have the `krb4' library (-lkrb4). */
280 /* Define to 1 if you have the `krb5' library (-lkrb5). */
283 /* Define to 1 if you have the `kstat' library (-lkstat). */
286 /* Define to 1 if you have the `lockfile' library (-llockfile). */
287 #undef HAVE_LIBLOCKFILE
289 /* Define to 1 if you have the `m' library (-lm). */
292 /* Define to 1 if you have the `mail' library (-lmail). */
295 /* Define to 1 if you have the `ncurses' library (-lncurses). */
296 #undef HAVE_LIBNCURSES
298 /* Define to 1 if you have the `pthreads' library (-lpthreads). */
299 #undef HAVE_LIBPTHREADS
301 /* Define to 1 if you have the resolv library (-lresolv). */
302 #undef HAVE_LIBRESOLV
304 /* Define to 1 if you have the `Xext' library (-lXext). */
307 /* Define to 1 if you have the `Xmu' library (-lXmu). */
310 /* Define to 1 if you have the Xp library (-lXp). */
313 /* Define to 1 if you have the <limits.h> header file. */
316 /* Define to 1 if you have the <linux/version.h> header file. */
317 #undef HAVE_LINUX_VERSION_H
319 /* Define to 1 if you have the `logb' function. */
322 /* Define to 1 if you support file names longer than 14 characters. */
323 #undef HAVE_LONG_FILE_NAMES
325 /* Define to 1 if you have the `lrand48' function. */
328 /* Define to 1 if you have the <machine/soundcard.h> header file. */
329 #undef HAVE_MACHINE_SOUNDCARD_H
331 /* Define to 1 if you have the <mach/mach.h> header file. */
332 #undef HAVE_MACH_MACH_H
334 /* Define to 1 if you have the <maillock.h> header file. */
335 #undef HAVE_MAILLOCK_H
337 /* Define to 1 if you have the `mblen' function. */
340 /* Define to 1 if you have the `mbrlen' function. */
343 /* Define to 1 if you have the `mbsinit' function. */
346 /* Define to 1 if you have the `memmove' function. */
349 /* Define to 1 if you have the <memory.h> header file. */
352 /* Define to 1 if you have the `memset' function. */
355 /* Define to 1 if you have mouse menus. (This is automatic if you use X, but
356 the option to specify it remains.) It is also defined with other window
357 systems that support xmenu.c. */
360 /* Define to 1 if you have the `mkdir' function. */
363 /* Define to 1 if you have the `mkstemp' function. */
366 /* Define to 1 if you have the `mktime' function. */
369 /* Define to 1 if you have a working `mmap' system call. */
372 /* Define to 1 if you have Motif 2.1 or newer. */
373 #undef HAVE_MOTIF_2_1
375 /* Define to 1 if you have the `mremap' function. */
378 /* Define to 1 if you have the <nlist.h> header file. */
381 /* Define to 1 if you have the png library (-lpng). */
384 /* Define to 1 if you have the `pstat_getdynamic' function. */
385 #undef HAVE_PSTAT_GETDYNAMIC
387 /* Define to 1 if you have the <pty.h> header file. */
390 /* Define to 1 if you have the `random' function. */
393 /* Define to 1 if you have the `recvfrom' function. */
396 /* Define to 1 if you have the `rename' function. */
399 /* Define to 1 if you have the `res_init' function. */
402 /* Define to 1 if you have the `rindex' function. */
405 /* Define to 1 if you have the `rint' function. */
408 /* Define to 1 if you have the `rmdir' function. */
411 /* Define to 1 if you have the `select' function. */
414 /* Define to 1 if you have the `sendto' function. */
417 /* Define to 1 if you have the `setitimer' function. */
418 #undef HAVE_SETITIMER
420 /* Define to 1 if you have the `setlocale' function. */
421 #undef HAVE_SETLOCALE
423 /* Define to 1 if you have the `setpgid' function. */
426 /* Define to 1 if you have the `setrlimit' function. */
427 #undef HAVE_SETRLIMIT
429 /* Define to 1 if you have the `setsid' function. */
432 /* Define to 1 if you have the `setsockopt' function. */
433 #undef HAVE_SETSOCKOPT
435 /* Define to 1 if you have the `shutdown' function. */
438 /* Define to 1 if the system has the type `size_t'. */
441 /* Define to 1 if you have the <soundcard.h> header file. */
442 #undef HAVE_SOUNDCARD_H
444 /* Define to 1 if `speed_t' is declared by <termios.h>. */
447 /* Define to 1 if you have the <stdint.h> header file. */
450 /* Define to 1 if you have the <stdio_ext.h> header file. */
451 #undef HAVE_STDIO_EXT_H
453 /* Define to 1 if you have the <stdlib.h> header file. */
456 /* Define to 1 if you have the `strerror' function. */
459 /* Define to 1 if you have the `strftime' function. */
462 /* Define to 1 if you have the <strings.h> header file. */
463 #undef HAVE_STRINGS_H
465 /* Define to 1 if you have the <string.h> header file. */
468 /* Define to 1 if you have the `strsignal' function. */
469 #undef HAVE_STRSIGNAL
471 /* Define to 1 if `n_un.n_name' is member of `struct nlist'. */
472 #undef HAVE_STRUCT_NLIST_N_UN_N_NAME
474 /* Define to 1 if `tm_zone' is member of `struct tm'. */
475 #undef HAVE_STRUCT_TM_TM_ZONE
477 /* Define to 1 if `struct utimbuf' is declared by <utime.h>. */
478 #undef HAVE_STRUCT_UTIMBUF
480 /* Define to 1 if you have the `sysinfo' function. */
483 /* Define to 1 if you have the <sys/mman.h> header file. */
484 #undef HAVE_SYS_MMAN_H
486 /* Define to 1 if you have the <sys/param.h> header file. */
487 #undef HAVE_SYS_PARAM_H
489 /* Define to 1 if you have the <sys/resource.h> header file. */
490 #undef HAVE_SYS_RESOURCE_H
492 /* Define to 1 if you have the <sys/select.h> header file. */
493 #undef HAVE_SYS_SELECT_H
495 /* Define to 1 if you have the <sys/soundcard.h> header file. */
496 #undef HAVE_SYS_SOUNDCARD_H
498 /* Define to 1 if you have the <sys/stat.h> header file. */
499 #undef HAVE_SYS_STAT_H
501 /* Define to 1 if you have the <sys/systeminfo.h> header file. */
502 #undef HAVE_SYS_SYSTEMINFO_H
504 /* Define to 1 if you have the <sys/timeb.h> header file. */
505 #undef HAVE_SYS_TIMEB_H
507 /* Define to 1 if you have the <sys/time.h> header file. */
508 #undef HAVE_SYS_TIME_H
510 /* Define to 1 if you have the <sys/types.h> header file. */
511 #undef HAVE_SYS_TYPES_H
513 /* Define to 1 if you have the <sys/un.h> header file. */
516 /* Define to 1 if you have the <sys/vlimit.h> header file. */
517 #undef HAVE_SYS_VLIMIT_H
519 /* Define to 1 if you have <sys/wait.h> that is POSIX.1 compatible. */
520 #undef HAVE_SYS_WAIT_H
522 /* Define to 1 if you have the <termcap.h> header file. */
523 #undef HAVE_TERMCAP_H
525 /* Define to 1 if you have the <termios.h> header file. */
526 #undef HAVE_TERMIOS_H
528 /* Define to 1 if you have the <term.h> header file. */
531 /* Define to 1 if you have the tiff library (-ltiff). */
534 /* Define to 1 if `struct timeval' is declared by <sys/time.h>. */
537 /* Define to 1 if `tm_gmtoff' is member of `struct tm'. */
538 #undef HAVE_TM_GMTOFF
540 /* Define to 1 if your `struct tm' has `tm_zone'. Deprecated, use
541 `HAVE_STRUCT_TM_TM_ZONE' instead. */
544 /* Define to 1 if you have the `touchlock' function. */
545 #undef HAVE_TOUCHLOCK
547 /* Define to 1 if you don't have `tm_zone' but do have the external array
551 /* Define to 1 if you have the `tzset' function. */
554 /* Define to 1 if you have the `ualarm' function. */
557 /* Define to 1 if you have the <unistd.h> header file. */
560 /* Define to 1 if you have the `utimes' function. */
563 /* Define to 1 if you have the <utime.h> header file. */
566 /* Define to 1 if you have the `vfork' function. */
569 /* Define to 1 if you have the <vfork.h> header file. */
572 /* Define to 1 if `fork' works. */
573 #undef HAVE_WORKING_FORK
575 /* Define to 1 if `vfork' works. */
576 #undef HAVE_WORKING_VFORK
578 /* Define to 1 if you want to use version 11 of X windows. Otherwise, Emacs
579 expects to use version 10. */
582 /* Define to 1 if you have the X11R5 or newer version of Xlib. */
585 /* Define to 1 if you have the X11R6 or newer version of Xlib. */
588 /* Define to 1 if you have the X11R6 or newer version of Xt. */
591 /* Define to 1 if you have the Xaw3d library (-lXaw3d). */
594 /* Define to 1 if you're using XFree386. */
597 /* Define to 1 if you have the XkbGetKeyboard function. */
598 #undef HAVE_XKBGETKEYBOARD
600 /* Define to 1 if you have the Xpm libary (-lXpm). */
603 /* Define to 1 if you have the `XrmSetDatabase' function. */
604 #undef HAVE_XRMSETDATABASE
606 /* Define to 1 if you have the `XScreenNumberOfScreen' function. */
607 #undef HAVE_XSCREENNUMBEROFSCREEN
609 /* Define to 1 if you have the `XScreenResourceString' function. */
610 #undef HAVE_XSCREENRESOURCESTRING
612 /* Define to 1 if you have the `XSetWMProtocols' function. */
613 #undef HAVE_XSETWMPROTOCOLS
615 /* Define to 1 if you have the SM library (-lSM). */
618 /* Define to 1 if you want to use the X window system. */
619 #undef HAVE_X_WINDOWS
621 /* Define to 1 if you have the `__fpending' function. */
622 #undef HAVE___FPENDING
624 /* Define to support using a Hesiod database to find the POP server. */
627 /* Define to support Kerberos-authenticated POP mail retrieval. */
630 /* Define to use Kerberos 5 instead of Kerberos 4. */
633 /* Define LD_SWITCH_X_SITE to contain any special flags your loader may need
634 to deal with X Windows. For instance, if you've defined HAVE_X_WINDOWS
635 above and your X libraries aren't in a place that your loader can find on
636 its own, you might want to add "-L/..." or something similar. */
637 #undef LD_SWITCH_X_SITE
639 /* Define LD_SWITCH_X_SITE_AUX with an -R option in case it's needed (for
640 Solaris, for example). */
641 #undef LD_SWITCH_X_SITE_AUX
643 /* Define to -llockfile if it is usable. */
646 /* Define to 1 if localtime caches TZ. */
647 #undef LOCALTIME_CACHE
649 /* Define to support POP mail retrieval. */
652 /* Define to 1 if your `struct nlist' has an `n_un' member. Obsolete, depend
653 on `HAVE_STRUCT_NLIST_N_UN_N_NAME */
654 #undef NLIST_NAME_UNION
656 /* Define to 1 if you have <nlist.h>. */
659 /* Define to 1 if you don't have struct exception in math.h. */
662 /* Define to the address where bug reports for this package should be sent. */
663 #undef PACKAGE_BUGREPORT
665 /* Define to the full name of this package. */
668 /* Define to the full name and version of this package. */
669 #undef PACKAGE_STRING
671 /* Define to the one symbol short name of this package. */
672 #undef PACKAGE_TARNAME
674 /* Define to the version of this package. */
675 #undef PACKAGE_VERSION
677 /* Define as `void' if your compiler accepts `void *'; otherwise define as
681 /* Define to 1 if the C compiler supports function prototypes. */
684 /* Define REL_ALLOC if you want to use the relocating allocator for buffer
688 /* Define as the return type of signal handlers (`int' or `void'). */
691 /* If using the C implementation of alloca, define if you know the
692 direction of stack growth for your system; otherwise it will be
693 automatically deduced at run-time.
694 STACK_DIRECTION > 0 => grows toward higher addresses
695 STACK_DIRECTION < 0 => grows toward lower addresses
696 STACK_DIRECTION = 0 => direction of growth unknown */
697 #undef STACK_DIRECTION
699 /* Define to 1 if you have the ANSI C header files. */
702 /* Define to 1 on System V Release 4. */
705 /* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
706 #undef TIME_WITH_SYS_TIME
708 /* Define to 1 if your <sys/time.h> declares `struct tm'. */
709 #undef TM_IN_SYS_TIME
711 /* Define to 1 for Encore UMAX. */
714 /* Define to 1 for Encore UMAX 4.3 that has <inq_status/cpustats.h> instead of
718 /* Define to the unexec source file name. */
721 /* Define to 1 if we should use toolkit scroll bars. */
722 #undef USE_TOOLKIT_SCROLL_BARS
724 /* Define to 1 if we should use XIM, if it is available. */
727 /* Define to 1 if using an X toolkit. */
730 /* Define to 1 if on AIX 3.
731 System headers sometimes define this.
732 We just want to avoid a redefinition error message. */
737 /* Number of bits in a file offset, on hosts where this is settable. */
738 #undef _FILE_OFFSET_BITS
740 /* Enable GNU extensions on systems that have them. */
745 /* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */
746 #undef _LARGEFILE_SOURCE
748 /* Define for large files, on AIX-style hosts. */
751 /* Define like PROTOTYPES; this can be used by system headers. */
754 /* Define to compiler's equivalent of C99 restrict keyword. Don't define if
755 equivalent is `__restrict'. */
758 /* Define to compiler's equivalent of C99 restrict keyword in array
759 declarations. Define as empty for no equivalent. */
760 #undef __restrict_arr
762 /* Define to the used machine dependent file. */
763 #undef config_machfile
765 /* Define to the used os dependent file. */
766 #undef config_opsysfile
768 /* Define to empty if `const' does not conform to ANSI C. */
771 /* Define to `int' if <sys/types.h> does not define. */
774 /* Define to any substitute for sys_siglist. */
777 /* Define as `fork' if `vfork' does not work. */
780 /* Define to empty if the keyword `volatile' does not work. Warning: valid
781 code using `volatile' can become incorrect without. Disable with care. */
785 /* If we're using any sort of window system, define some consequences. */
786 #ifdef HAVE_X_WINDOWS
787 #define HAVE_WINDOW_SYSTEM
792 /* If we're using the Carbon API on Mac OS X, define a few more
793 variables as well. */
795 #define HAVE_WINDOW_SYSTEM
799 /* Define USER_FULL_NAME to return a string
800 that is the user's full name.
801 It can assume that the variable `pw'
802 points to the password file entry for this user.
804 At some sites, the pw_gecos field contains
805 the user's full name. If neither this nor any other
806 field contains the right thing, use pw_name,
807 giving the user's login name, since that is better than nothing. */
808 #define USER_FULL_NAME pw->pw_gecos
810 /* Define AMPERSAND_FULL_NAME if you use the convention
811 that & in the full name stands for the login id. */
812 /* Turned on June 1996 supposing nobody will mind it. */
813 #define AMPERSAND_FULL_NAME
815 /* Define HAVE_SOUND if we have sound support. We know it works
816 and compiles only on the specified platforms. For others,
817 it probably doesn't make sense to try. */
819 #if defined __FreeBSD__ || defined __NetBSD__ || defined __linux__
820 #ifdef HAVE_MACHINE_SOUNDCARD_H
823 #ifdef HAVE_SYS_SOUNDCARD_H
826 #ifdef HAVE_SOUNDCARD_H
829 #endif /* __FreeBSD__ || __NetBSD__ || __linux__ */
831 /* If using GNU, then support inline function declarations. */
832 /* Don't try to switch on inline handling as detected by AC_C_INLINE
833 generally, because even if non-gcc compilers accept `inline', they
834 may reject `extern inline'. */
836 #define INLINE __inline__
841 /* Include the os and machine dependent files. */
842 #include config_opsysfile
843 #include config_machfile
845 /* Load in the conversion definitions if this system
846 needs them and the source file being compiled has not
847 said to inhibit this. There should be no need for you
848 to alter these lines. */
851 #ifndef NO_SHORTNAMES
852 #include "../shortnames/remap.h"
853 #endif /* not NO_SHORTNAMES */
854 #endif /* SHORTNAMES */
856 /* If no remapping takes place, static variables cannot be dumped as
857 pure, so don't worry about the `static' keyword. */
862 /* Define `subprocesses' should be defined if you want to
863 have code for asynchronous subprocesses
864 (as used in M-x compile and M-x shell).
865 These do not work for some USG systems yet;
866 for the ones where they work, the s/SYSTEM.h file defines this flag. */
870 /* #define subprocesses */
874 /* SIGTYPE is the macro we actually use. */
876 #define SIGTYPE RETSIGTYPE
879 #ifdef emacs /* Don't do this for lib-src. */
880 /* Tell regex.c to use a type compatible with Emacs. */
881 #define RE_TRANSLATE_TYPE Lisp_Object
882 #define RE_TRANSLATE(TBL, C) CHAR_TABLE_TRANSLATE (TBL, C)
883 #define RE_TRANSLATE_P(TBL) (XFASTINT (TBL) != 0)
886 /* Avoid link-time collision with system mktime if we will use our own. */
887 #if ! HAVE_MKTIME || BROKEN_MKTIME
888 #define mktime emacs_mktime
891 /* The rest of the code currently tests the CPP symbol BSTRING.
892 Override any claims made by the system-description files.
893 Note that on some SCO version it is possible to have bcopy and not bcmp. */
895 #if defined (HAVE_BCOPY) && defined (HAVE_BCMP)
899 /* Some of the files of Emacs which are intended for use with other
900 programs assume that if you have a config.h file, you must declare
903 This declaration shouldn't appear when alloca.s or Makefile.in
904 includes config.h. */
906 extern char *getenv ();
909 /* These default definitions are good for almost all machines.
910 The exceptions override them in m/MACHINE.h. */
912 #ifndef BITS_PER_CHAR
913 #define BITS_PER_CHAR 8
916 #ifndef BITS_PER_SHORT
917 #define BITS_PER_SHORT 16
920 /* Note that lisp.h uses this in a preprocessor conditional, so it
921 would not work to use sizeof. That being so, we do all of them
922 without sizeof, for uniformity's sake. */
924 #define BITS_PER_INT 32
927 #ifndef BITS_PER_LONG
929 #define BITS_PER_LONG 64
931 #define BITS_PER_LONG 32
935 /* Define if the compiler supports function prototypes. It may do so
936 but not define __STDC__ (e.g. DEC C by default) or may define it as
941 # if defined PROTOTYPES
942 # define __P(args) args
944 # define __P(args) ()
948 /* Don't include "string.h" or <stdlib.h> in non-C code. */
953 #ifdef HAVE_STRINGS_H
954 #include "strings.h" /* May be needed for bcopy & al. */
960 # ifdef HAVE_ALLOCA_H
962 # else /* AIX files deal with #pragma. */
963 # ifndef alloca /* predefined by HP cc +Olibcalls */
966 # endif /* HAVE_ALLOCA_H */
967 #endif /* __GNUC__ */
969 typedef unsigned size_t;
971 #endif /* NOT_C_CODE */
973 /* Define HAVE_X_I18N if we have usable i18n support. */
977 #elif defined HAVE_X11R5 && !defined X11R5_INHIBIT_I18N
981 /* Define HAVE_X11R6_XIM if we have usable X11R6-style XIM support. */
983 #if defined HAVE_X11R6 && !defined INHIBIT_X11R6_XIM
984 #define HAVE_X11R6_XIM
987 /* Should we enable expensive run-time checking of data types? */
988 #undef ENABLE_CHECKING
990 #if defined __GNUC__ && (__GNUC__ > 2 \
991 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 5))
992 #define NO_RETURN __attribute__ ((__noreturn__))
994 #define NO_RETURN /* nothing */
997 /* These won't be used automatically yet. We also need to know, at least,
998 that the stack is continuous. */
1000 # ifndef GC_SETJMP_WORKS
1001 /* GC_SETJMP_WORKS is nearly always appropriate for GCC --
1002 see NON_SAVING_SETJMP in the target descriptions. */
1003 /* Exceptions (see NON_SAVING_SETJMP in target description) are ns32k,
1004 SCO5 non-ELF (but Emacs specifies ELF) and SVR3 on x86.
1005 Fixme: Deal with ns32k, SVR3. */
1006 # define GC_SETJMP_WORKS 1
1008 # ifndef GC_LISP_OBJECT_ALIGNMENT
1009 # define GC_LISP_OBJECT_ALIGNMENT (__alignof__ (Lisp_Object))
1014 #define bcopy(a,b,s) memcpy (b,a,s)
1017 #define bzero(a,s) memset (a,0,s)
1023 #endif /* EMACS_CONFIG_H */