Mercurial > hg > xemacs-beta
diff src/config.h.in @ 428:3ecd8885ac67 r21-2-22
Import from CVS: tag r21-2-22
author | cvs |
---|---|
date | Mon, 13 Aug 2007 11:28:15 +0200 |
parents | |
children | 9d177e8d4150 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/config.h.in Mon Aug 13 11:28:15 2007 +0200 @@ -0,0 +1,827 @@ +/* XEmacs site configuration template file. -*- C -*- + Copyright (C) 1986, 1991-1994, 1998, 1999 Free Software Foundation, Inc. + +This file is part of XEmacs. + +XEmacs is free software; you can redistribute it and/or modify it +under the terms of the GNU General Public License as published by the +Free Software Foundation; either version 2, or (at your option) any +later version. + +XEmacs is distributed in the hope that it will be useful, but WITHOUT +ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +for more details. + +You should have received a copy of the GNU General Public License +along with XEmacs; see the file COPYING. If not, write to +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +Boston, MA 02111-1307, USA. */ + +/* Significantly divergent from FSF. */ + +/* No code in XEmacs #includes config.h twice, but some of the code + intended to work with other packages as well (like gmalloc.c) + think they can include it as many times as they like. */ +#ifndef _SRC_CONFIG_H_ +#define _SRC_CONFIG_H_ + +/* alloca twiddling belongs in one place, not the s&m headers + AIX requires this to be the first thing in the file. */ +#undef HAVE_ALLOCA_H + +#ifndef NOT_C_CODE +#ifdef __GNUC__ +#define alloca __builtin_alloca +#elif HAVE_ALLOCA_H +#include <alloca.h> +#elif defined(_AIX) +#pragma alloca +#elif ! defined (alloca) +char *alloca(); +#endif +#endif /* C code */ + + +/* Use this to add code in a structured way to FSF-maintained source + files so as to make it obvious where XEmacs changes are. */ +#define XEMACS 1 + +/* Allow s&m files to differentiate OS versions without having + multiple files to maintain. */ +#undef OS_RELEASE + +/* The configuration name. This is used as the install directory name + for the lib-src programs. */ +#undef EMACS_CONFIGURATION + +/* The configuration options. This is exported to Lisp. */ +#undef EMACS_CONFIG_OPTIONS + +/* The version info from version.sh. Used in #pragma ident in emacs.c */ +#undef EMACS_MAJOR_VERSION +#undef EMACS_MINOR_VERSION +#undef EMACS_PATCH_LEVEL +#undef EMACS_BETA_VERSION +#undef EMACS_VERSION +#undef XEMACS_CODENAME +/* InfoDock versions, not used with XEmacs */ +#undef INFODOCK_MAJOR_VERSION +#undef INFODOCK_MINOR_VERSION +#undef INFODOCK_BUILD_VERSION + +/* Make all functions available on AIX. See AC_AIX. */ +#undef _ALL_SOURCE + +/* Make all functions available on GNU libc systems. See features.h. */ +#undef _GNU_SOURCE + +/* Used to identify the XEmacs version in stack traces. */ +#undef STACK_TRACE_EYE_CATCHER + +/* Allow the configurer to specify if she wants site-lisp. */ +#undef INHIBIT_SITE_LISP + +/* Allow the configurer to specify if she wants site-modules. */ +#undef INHIBIT_SITE_MODULES + +/* This will be removed in 19.15. */ +/* Hah! Try 20.3 ... */ +/* Hah! Try never ... */ +/* If at first you don't succeed, try, try again. */ +/* #define LOSING_BYTECODE */ + +/* Undefine on systems which don't have processes */ +#undef HAVE_UNIX_PROCESSES + +/* Does XEmacs support floating-point numbers? */ +#undef LISP_FLOAT_TYPE + +/* Define GNU_MALLOC if you want to use the GNU memory allocator. */ +#undef GNU_MALLOC + +/* Define if you are using the GNU C Library. -- experimental. */ +#undef DOUG_LEA_MALLOC + +/* Define if you are using libmcheck.a from the GNU C Library. */ +#undef HAVE_LIBMCHECK + +/* Define if you are using dlmalloc from the Linux C library. */ +#undef _NO_MALLOC_WARNING_ + +/* Use the system malloc? */ +#undef USE_SYSTEM_MALLOC + +/* Use a debugging malloc? -- experimental */ +#undef USE_DEBUG_MALLOC + +/* Compile in TTY support? */ +#undef HAVE_TTY + +/* Compile in support for MS windows? */ +#undef HAVE_MS_WINDOWS + +/* special cygwin process handling? */ +#undef HAVE_MSG_SELECT + +/* Compile in support for the X window system? */ +#undef HAVE_X_WINDOWS + +/* Defines for building X applications */ +#ifdef HAVE_X_WINDOWS +/* The following will be defined if xmkmf thinks they are necessary */ +#undef SVR4 +#undef SYSV +#undef AIXV3 +#undef _POSIX_SOURCE +#undef _BSD_SOURCE +#undef _SVID_SOURCE +#undef X_LOCALE +#undef NARROWPROTO +/* The following should always be defined, no matter what xmkmf thinks. */ +#ifndef NeedFunctionPrototypes +#define NeedFunctionPrototypes 1 +#endif +#ifndef FUNCPROTO +#define FUNCPROTO 15 +#endif +#endif /* HAVE_X_WINDOWS */ + +/* Define HAVE_WINDOW_SYSTEM if any windowing system is available. */ +#if defined (HAVE_X_WINDOWS) || defined(HAVE_MS_WINDOWS) /* || defined (HAVE_NEXTSTEP) */ +#define HAVE_WINDOW_SYSTEM +#endif + +/* Define HAVE_UNIXOID_EVENT_LOOP if we use select() to wait for events. */ +#if defined (HAVE_X_WINDOWS) || defined (HAVE_TTY) || defined(HAVE_MSG_SELECT) +#define HAVE_UNIXOID_EVENT_LOOP +#endif + +/* Are we using XFree386? */ +#undef HAVE_XFREE386 + +#undef THIS_IS_X11R4 +#undef THIS_IS_X11R5 +#undef THIS_IS_X11R6 + +/* Where do we find bitmaps? */ +#undef BITMAPDIR + +/* USER_FULL_NAME returns a string that is the user's full name. + It can assume that the variable `pw' points to the password file + entry for this user. + + At some sites, the pw_gecos field contains the user's full name. + If neither this nor any other field contains the right thing, use + pw_name, giving the user's login name, since that is better than + nothing. */ +#define USER_FULL_NAME pw->pw_gecos + +/* Define AMPERSAND_FULL_NAME if you use the convention + that & in the full name stands for the login id. */ +#undef AMPERSAND_FULL_NAME + +/* Some things figured out by the configure script, grouped as they are in + configure.in. */ +#undef HAVE_MCHECK_H +#undef HAVE_MACH_MACH_H +#undef HAVE_SYS_STROPTS_H +#undef HAVE_SYS_TIMEB_H +#undef HAVE_SYS_TIME_H +#undef HAVE_UNISTD_H +#undef HAVE_UTIME_H +#undef HAVE_SYS_WAIT_H +#undef HAVE_LIBINTL_H +#undef HAVE_LIBGEN_H +#undef HAVE_LOCALE_H +#undef HAVE_FCNTL_H +#undef HAVE_ULIMIT_H +#undef HAVE_X11_XLOCALE_H +#undef HAVE_LINUX_VERSION_H +#undef HAVE_CYGWIN_VERSION_H +#undef HAVE_INTTYPES_H +#undef HAVE_SYS_UN_H +#undef HAVE_A_OUT_H +#undef STDC_HEADERS +#undef TIME_WITH_SYS_TIME +#undef WORDS_BIGENDIAN +#undef HAVE_VFORK_H +#undef HAVE_KSTAT_H +#undef HAVE_SYS_PSTAT_H +#undef vfork + +#undef HAVE_LONG_FILE_NAMES + +/* Use lock files to detect multiple edits of the same file? */ +#undef CLASH_DETECTION + +/* Have shared library support */ +#undef HAVE_DLOPEN +#undef HAVE_DLERROR +#undef HAVE__DLERROR +#undef HAVE_SHL_LOAD +#undef HAVE_DLD_INIT +#undef HAVE_SHLIB +#undef HAVE_DLFCN_H + +#undef HAVE_LIBKSTAT +#undef HAVE_LIBINTL +#undef HAVE_LIBDNET +#undef HAVE_LIBRESOLV + +/* Is `sys_siglist' declared by <signal.h>? */ +#undef SYS_SIGLIST_DECLARED + +/* Is `struct utimbuf' declared by <utime.h>? */ +#undef HAVE_STRUCT_UTIMBUF + +/* Is `struct timeval' declared by <sys/time.h>? */ +#undef HAVE_TIMEVAL + + +#undef TM_IN_SYS_TIME +#undef HAVE_TM_ZONE +#undef HAVE_TZNAME + +/* Is `h_errno' declared by <netdb.h>? */ +#undef HAVE_H_ERRNO + +/* Does `localtime' cache TZ? */ +#undef LOCALTIME_CACHE + +/* Can `gettimeofday' accept two arguments? */ +#undef GETTIMEOFDAY_ONE_ARGUMENT + +#undef HAVE_MMAP +#undef HAVE_STRCOLL +#undef HAVE_GETPGRP +#undef GETPGRP_VOID + +#undef HAVE_INVERSE_HYPERBOLIC + +#undef HAVE_CBRT +#undef HAVE_CLOSEDIR +#undef HAVE_DUP2 +#undef HAVE_EACCESS +#undef HAVE_FMOD +#undef HAVE_FPATHCONF +#undef HAVE_FREXP +#undef HAVE_FTIME +#undef HAVE_GETHOSTNAME +#undef HAVE_GETPAGESIZE +#undef HAVE_GETTIMEOFDAY +#undef HAVE_GETWD +#undef HAVE_GETCWD +#undef HAVE_GETPT +#undef HAVE_LOGB +#undef HAVE_LRAND48 +#undef HAVE_MATHERR +#undef HAVE_MKDIR +#undef HAVE_MKTIME +#undef HAVE_PERROR +#undef HAVE_POLL +#undef HAVE_RANDOM +#undef HAVE_REALPATH +#undef HAVE_RENAME +#undef HAVE_RES_INIT +#undef HAVE_RINT +#undef HAVE_RMDIR +#undef HAVE_SELECT +#undef HAVE_SETITIMER +#undef HAVE_SETPGID +#undef HAVE_SETSID +#undef HAVE_SIGBLOCK +#undef HAVE_SIGHOLD +#undef HAVE_SIGPROCMASK +#undef HAVE_SIGSETJMP +#undef HAVE_SNPRINTF +#undef HAVE_STPCPY +#undef HAVE_STRCASECMP +#undef HAVE_STRERROR +#undef HAVE_TZSET +#undef HAVE_ULIMIT +#undef HAVE_USLEEP +#undef HAVE_UTIMES +#undef HAVE_WAITPID +#undef HAVE_VSNPRINTF +#undef HAVE_SOCKETS +#undef HAVE_SOCKADDR_SUN_LEN +#undef HAVE_MULTICAST +#undef HAVE_SYSVIPC + +#undef SYSV_SYSTEM_DIR +#undef NONSYSTEM_DIR_LIBRARY + +#undef HAVE_TERMIOS +#undef HAVE_TERMIO +#undef NO_TERMIO +#undef SIGNALS_VIA_CHARACTERS + +#undef NLIST_STRUCT + +/* Compile in support for SOCKS? */ +#undef HAVE_SOCKS + +/* Compile in support for X pixmaps via the `xpm' library? */ +#undef HAVE_XPM +#undef FOR_MSW + +/* Compile in support for "X faces" via the `compface' library? + This enables graphical display of X-face headers in mail/news messages */ +#undef HAVE_XFACE + +/* Compile in support for JPEG images */ +#undef HAVE_JPEG + +/* Compile in support for TIFF images */ +#undef HAVE_TIFF + +/* Compile in support for GIF images */ +#undef HAVE_GIF + +/* Compile in support for PNG images */ +#undef HAVE_PNG + +/* Do you have the Xmu library? + This should always be the case except on losing HP-UX systems. */ +#undef HAVE_XMU + +/* Compile in support for DBM databases? May require libgdbm or libdbm. */ +#undef HAVE_DBM + +/* Compile in support for Berkeley DB style databases? May require libdb. */ +#undef HAVE_BERKELEY_DB +/* Full #include file path for Berkeley DB's db.h */ +#undef DB_H_PATH + +/* Do we have either DBM or Berkeley DB database support? */ +#undef HAVE_DATABASE + +/* Do we have LDAP support? */ +#undef HAVE_LDAP +/* Does the library define ldap_set_option () ? */ +#undef HAVE_LDAP_SET_OPTION +/* Does the library define ldap_get_lderrno () ? */ +#undef HAVE_LDAP_GET_LDERRNO +/* Does the library define ldap_result2error () ? */ +#undef HAVE_LDAP_RESULT2ERROR +/* Does the library define ldap_parse_result () ? */ +#undef HAVE_LDAP_PARSE_RESULT + +/* Do you have the Xauth library present? This will add some extra + functionality to gnuserv. */ +#undef HAVE_XAUTH + +/* Compile in support for gpm (General Purpose Mouse)? */ +#undef HAVE_GPM + +/* Compile in support for ncurses? */ +#undef HAVE_NCURSES +/* Full #include file paths for ncurses' curses.h and term.h. */ +#undef CURSES_H_PATH +#undef TERM_H_PATH + +/* Define USE_ASSERTIONS if you want the abort() to be changed to assert(). + If the assertion fails, assert_failed() will be called. This is + recommended for general use because it gives more info about the crash + than just the abort() message. Too many people "Can't find the corefile" + or have limit-ed core dumps out of existence. */ +#undef USE_ASSERTIONS + +/* Define one or more of the following if you want lots of extra checks + (e.g. structure validation) compiled in. These should be turned + on during the beta-test cycle. */ + +/* Check the entire extent structure of a buffer each time an extent + change is done, and do other extent-related checks. */ +#undef ERROR_CHECK_EXTENTS +/* Make sure that all X... macros are dereferencing the correct type, + and that all XSET... macros (as much as possible) are setting the + correct type of structure. Highly recommended for all + development work. */ +#undef ERROR_CHECK_TYPECHECK +/* Make sure valid buffer positions are passed to BUF_* macros. */ +#undef ERROR_CHECK_BUFPOS +/* Attempt to catch bugs related to garbage collection (e.g. not GCPRO'ing). */ +#undef ERROR_CHECK_GC +/* Attempt to catch freeing of a non-malloc()ed block, heap corruption, etc. */ +#undef ERROR_CHECK_MALLOC +/* Minor sanity checking of the bytecode interpreter. Useful for + debugging the byte compiler. */ +#undef ERROR_CHECK_BYTE_CODE + +/* Define DEBUG_XEMACS if you want extra debugging code compiled in. + This is mainly intended for use by developers. */ +#undef DEBUG_XEMACS + +/* Define MEMORY_USAGE_STATS if you want extra code compiled in to + determine where XEmacs' memory is going. */ +#undef MEMORY_USAGE_STATS + +/* Define QUANTIFY if using Quantify from Rational/Pure/Atria Software. + This adds some additional calls to control data collection. + It is only intended for use by the developers. */ +#undef QUANTIFY + +/* Define QUANTIFY if using Purify from Rational/Pure/Atria Software. + It is only intended for use by the developers. */ +#undef PURIFY + +#if (defined (QUANTIFY) || defined (PURIFY)) && !defined (XLIB_ILLEGAL_ACCESS) +#define XLIB_ILLEGAL_ACCESS 1 +#endif + +/* Define EXTERNAL_WIDGET to compile support for using the editor as a + widget within another program. */ +#undef EXTERNAL_WIDGET + +/* There are some special-case defines for gcc and lcc. */ +#undef USE_GCC +#undef USE_LCC + +/* Define this if you want level 2 internationalization compliance + (localized collation and formatting). Generally this should be + defined, unless your system doesn't have the strcoll() and + setlocale() library routines. This really should be (NOT! -mrb) + defined in the appropriate s/ or m/ file. */ +#undef I18N2 + +/* Define this if you want level 3 internationalization compliance + (localized messaging). This will cause a small runtime performance + penalty, as the strings are read from the message catalog(s). + For this you need the gettext() and dgetext() library routines. + WARNING, this code is under construction. */ +#undef I18N3 + +/* Compile in support for CDE (Common Desktop Environment) drag and drop? + Requires libDtSvc, which typically must be present at runtime. */ +#undef HAVE_CDE + +/* Compile in support for OffiX Drag and Drop? */ +#undef HAVE_OFFIX_DND + +/* Compile in generic Drag'n'Drop API */ +#undef HAVE_DRAGNDROP + +/* Compile in support for proper handling of WM_COMMAND. */ +#undef HAVE_WMCOMMAND + +/* Define this if you want Mule support (multi-byte character support). + There may be some performance penalty, although it should be small + if you're working with ASCII files. */ +#undef MULE + +/* Define this if you want file coding support */ +#undef FILE_CODING + +/* Do we want to use X window input methods for use with Mule? (requires X11R5) + If so, use raw Xlib or higher level Motif interface? */ +#undef HAVE_XIM +#undef XIM_XLIB +#undef XIM_MOTIF +#undef USE_XFONTSET + +/* Non-XIM input methods for use with Mule. */ +#undef HAVE_CANNA +#undef HAVE_WNN +#undef WNN6 + +/* Enable special GNU Make features in the Makefiles. */ +#undef USE_GNU_MAKE + +/* Debugging option: Don't automatically rebuild the DOC file. + This saves a lot of time when you're repeatedly + compiling-running-crashing. */ +#undef NO_DOC_FILE + +/* Defined by AC_C_CONST in configure.in */ +#undef const + +#define CONST const + +/* If defined, use unions instead of ints. A few systems (DEC Alpha) + seem to require this, probably because something with the int + definitions isn't right with 64-bit systems. */ +#undef USE_UNION_TYPE + +/* The configuration script defines opsysfile to be the name of the + s/...h file that describes the system type you are using. + The file is chosen based on the configuration name you give. + + See the file ../etc/MACHINES for a list of systems and the + configuration names to use for them. + + See s/template.h for documentation on writing s/...h files. */ + +#if defined (__cplusplus) && !defined (NOT_C_CODE) +extern "C" { +#endif +#undef config_opsysfile +#include config_opsysfile + +/* The configuration script defines machfile to be the name of the + m/...h file that describes the machine you are using. The file is + chosen based on the configuration name you give. + + See the file ../etc/MACHINES for a list of machines and the + configuration names to use for them. + + See m/template.h for documentation on writing m/...h files. */ +#undef config_machfile +#include config_machfile +#if defined (__cplusplus) && !defined (NOT_C_CODE) +} +#endif + +#if defined (USE_SYSTEM_MALLOC) && !defined (SYSTEM_MALLOC) +#define SYSTEM_MALLOC +#endif + +/* Use the relocating allocator for buffer space? */ +#undef REL_ALLOC + +/* Define the return type of signal handlers if the s/xxx.h file + did not already do so. */ +#define RETSIGTYPE void + +/* SIGTYPE is the macro we actually use. */ +#ifndef SIGTYPE +#define SIGTYPE RETSIGTYPE +#define SIGRETURN return +#endif + +/* Allow the source to use standard types */ +#undef ssize_t +#undef size_t +#undef pid_t +#undef mode_t +#undef off_t +#undef uid_t +#undef gid_t + +/* Define DYNODUMP if it is necessary to properly dump on this system. + Currently this is only Solaris 2.x, for x < 6. */ +#undef DYNODUMP + +/* Compile in support for Sun Sparcworks/WorkShop? */ +#undef SUNPRO + +/* Sun SparcStations, SGI machines, and HP9000s700s have built-in + support for playing sound files. (On Suns, the sound support is + usually found in /usr/demo/SOUND - you may need to install the + "SUNWaudmo" package.) */ +#undef HAVE_NATIVE_SOUND +/* Native sound may be provided via soundcard.h, in various directories */ +#undef SOUNDCARD_H_PATH + +/* Compile in support for NAS (Network Audio System)? + NAS_NO_ERROR_JUMP means that the NAS libraries don't include some + error handling changes. */ +#undef HAVE_NAS_SOUND +#undef NAS_NO_ERROR_JUMP + +/* Compile in support for ESD (Enlightened Sound Daemon)? */ +#undef HAVE_ESD_SOUND + +/* Compile in support for SunPro usage-tracking code? */ +#undef USAGE_TRACKING + +/* Compile in support for Tooltalk? */ +#undef TOOLTALK +/* tt_c.h might be in "Tt" or "desktop" subdirectories */ +#undef TT_C_H_PATH + +/* Toolkits used by lwlib for various widgets... */ +#undef LWLIB_USES_MOTIF +#undef LWLIB_USES_ATHENA +#undef LWLIB_MENUBARS_LUCID +#undef LWLIB_MENUBARS_MOTIF +#undef LWLIB_SCROLLBARS_LUCID +#undef LWLIB_SCROLLBARS_MOTIF +#undef LWLIB_SCROLLBARS_ATHENA +#undef LWLIB_SCROLLBARS_ATHENA3D +#undef LWLIB_DIALOGS_MOTIF +#undef LWLIB_DIALOGS_ATHENA +#undef LWLIB_DIALOGS_ATHENA3D +#undef LWLIB_TABS_LUCID +#undef LWLIB_WIDGETS_MOTIF +#undef LWLIB_WIDGETS_ATHENA + +/* Other things that can be disabled by configure. */ +#undef HAVE_MENUBARS +#undef HAVE_SCROLLBARS +#undef HAVE_DIALOGS +#undef HAVE_TOOLBARS +#undef HAVE_WIDGETS + + +#if defined (HAVE_MENUBARS) || defined (HAVE_DIALOGS) +#define HAVE_POPUPS +#endif + +/* If you are using SunOS 4.1.1 and X11r5, then you need this patch. + There is a stupid bug in the SunOS libc.a: two functions which X11r5 + uses, mbstowcs() and wcstombs(), are unusable when programs are + statically linked (as XEmacs must be) because the static version of + libc.a contains the *dynamic* versions of these functions. These + functions don't seem to be called when XEmacs is running, so it's + enough to define stubs for them. + + This appears to be fixed in SunOS 4.1.2. + + Also, SunOS 4.1.1 contains buggy versions of strcmp and strcpy that + sometimes reference memory past the end of the string, which can segv. + I don't know whether this is has been fixed as of 4.1.2 or 4.1.3. */ +#if defined (sparc) && !defined (USG) +#define OBJECTS_SYSTEM sunOS-fix.o strcmp.o strcpy.o +#endif + +/* If you turn this flag on, it forces encapsulation in all +circumstances; this can be used to make sure things compile OK +on various systems. */ +#undef DEBUG_ENCAPSULATION + +/* basic system calls */ + +#if defined (INTERRUPTIBLE_IO) || defined (DEBUG_ENCAPSULATION) +# define ENCAPSULATE_READ +# define ENCAPSULATE_WRITE +#endif +#if defined (INTERRUPTIBLE_OPEN) || defined (MULE) || defined (DEBUG_ENCAPSULATION) +# define ENCAPSULATE_OPEN +#endif +#if defined (INTERRUPTIBLE_CLOSE) || defined (DEBUG_ENCAPSULATION) +# define ENCAPSULATE_CLOSE +#endif + +/* stdio calls */ + +#if defined (INTERRUPTIBLE_IO) || defined (DEBUG_ENCAPSULATION) +# define ENCAPSULATE_FREAD +# define ENCAPSULATE_FWRITE +#endif +#if defined (INTERRUPTIBLE_OPEN) || defined (MULE) || defined (DEBUG_ENCAPSULATION) +# define ENCAPSULATE_FOPEN +#endif +#if defined (INTERRUPTIBLE_CLOSE) || defined (DEBUG_ENCAPSULATION) +# define ENCAPSULATE_FCLOSE +#endif + +/* directory calls */ + +#if defined (MULE) || defined (DEBUG_ENCAPSULATION) +# define ENCAPSULATE_CHDIR +# define ENCAPSULATE_MKDIR +# define ENCAPSULATE_OPENDIR +# define ENCAPSULATE_CLOSEDIR +# define ENCAPSULATE_READDIR +# define ENCAPSULATE_RMDIR + +/* file-information calls */ + +#ifdef HAVE_EACCESS +# define ENCAPSULATE_EACCESS +#endif +# define ENCAPSULATE_ACCESS +# define ENCAPSULATE_LSTAT +# define ENCAPSULATE_READLINK +# define ENCAPSULATE_STAT + +/* file-manipulation calls */ + +# define ENCAPSULATE_CHMOD +# define ENCAPSULATE_CREAT +# define ENCAPSULATE_LINK +# define ENCAPSULATE_RENAME +# define ENCAPSULATE_SYMLINK +# define ENCAPSULATE_UNLINK +# define ENCAPSULATE_EXECVP +#endif /* defined (MULE) || defined (DEBUG_ENCAPSULATION) */ + +#ifdef HAVE_CANNA +# define CANNA2 +# define CANNA_MULE +# define CANNA_PURESIZE 0 +#else /* not CANNA */ +# define CANNA_PURESIZE 0 +#endif /* not CANNA */ + +#if (defined (MSDOS) && defined (FEPCTRL)) || (defined (WIN32) && defined (USE_IME)) +#define HAVE_FEP +#endif + +#if defined (HAVE_SOCKS) && !defined (DO_NOT_SOCKSIFY) +#define accept Raccept +#define bind Rbind +#define connect Rconnect +#define getsockname Rgetsockname +#define listen Rlisten +#endif /* HAVE_SOCKS && !DO_NOT_SOCKSIFY */ + +#undef SIZEOF_SHORT +#undef SIZEOF_INT +#undef SIZEOF_LONG +#undef SIZEOF_LONG_LONG +#undef SIZEOF_VOID_P + +#ifndef BITS_PER_CHAR +#define BITS_PER_CHAR 8 +#endif +#define SHORTBITS (SIZEOF_SHORT * BITS_PER_CHAR) +#define INTBITS (SIZEOF_INT * BITS_PER_CHAR) +#define LONGBITS (SIZEOF_LONG * BITS_PER_CHAR) +#define LONG_LONG_BITS (SIZEOF_LONG_LONG * BITS_PER_CHAR) +#define VOID_P_BITS (SIZEOF_VOID_P * BITS_PER_CHAR) + +#ifndef NOT_C_CODE +#ifdef __cplusplus +#define HAVE_INLINE 1 +#define INLINE inline +#else /* not C++ */ +/* Does the keyword `inline' exist? */ +#undef HAVE_INLINE +#undef inline + +# ifdef HAVE_INLINE +# ifdef __GNUC__ +# ifdef DONT_EXTERN_INLINE_FUNCTIONS +# define INLINE inline +# else +# define INLINE extern inline +# endif +# else +# define INLINE static inline +# endif /* __GNUC__ */ +# else +# define INLINE static +# endif /* HAVE_INLINE */ +#endif /* not C++ */ +#endif /* C code */ + +#if defined (__cplusplus) && !defined (NOT_C_CODE) +/* Avoid C++ keywords used as ordinary C identifiers */ +#define class c_class +#define new c_new +#define this c_this +#define catch c_catch +#endif /* C++ */ + +/* Strictly speaking, only int or unsigned int are valid types in a + bitfield. In practice, we would like to use enums as bitfields. + The following should just result in warning avoidance: + warning: nonportable bit-field type */ +#ifdef __GNUC__ +#define enum_field(enumeration_type) enum enumeration_type +#else +#define enum_field(enumeration_type) unsigned int +#endif + +/* We want to avoid saving the signal mask if possible, because + that necessitates a system call. */ +#ifdef HAVE_SIGSETJMP +# define SETJMP(x) sigsetjmp (x, 0) +# define LONGJMP(x, y) siglongjmp (x, y) +# define JMP_BUF sigjmp_buf +#else +# define SETJMP(x) setjmp (x) +# define LONGJMP(x, y) longjmp (x, y) +# define JMP_BUF jmp_buf +#endif + +/* movemail options */ +/* Should movemail use POP3 for mail access? */ +#undef MAIL_USE_POP +/* Should movemail use kerberos for POP authentication? */ +#undef KERBEROS +/* Should movemail use hesiod for getting POP server host? */ +#undef HESIOD +/* Determine type of mail locking. */ +/* Play preprocessor games so that configure options override s&m files */ +#undef REAL_MAIL_USE_LOCKF +#undef REAL_MAIL_USE_FLOCK +#undef MAIL_USE_LOCKF +#undef MAIL_USE_FLOCK +#ifdef REAL_MAIL_USE_FLOCK +#define MAIL_USE_FLOCK +#endif +#ifdef REAL_MAIL_USE_LOCKF +#define MAIL_USE_LOCKF +#endif + +#undef PREFIX_USER_DEFINED +#undef EXEC_PREFIX_USER_DEFINED +#undef MODULEDIR_USER_DEFINED +#undef SITEMODULEDIR_USER_DEFINED +#undef DOCDIR_USER_DEFINED +#undef LISPDIR_USER_DEFINED +#undef PACKAGE_PATH_USER_DEFINED +#undef SITELISPDIR_USER_DEFINED +#undef ARCHLIBDIR_USER_DEFINED +#undef ETCDIR_USER_DEFINED +#undef LOCKDIR_USER_DEFINED +#undef INFODIR_USER_DEFINED +#undef INFOPATH_USER_DEFINED + +#undef PDUMP + +#endif /* _SRC_CONFIG_H_ */