annotate src/config.h.in @ 665:fdefd0186b75

[xemacs-hg @ 2001-09-20 06:28:42 by ben] The great integral types renaming. The purpose of this is to rationalize the names used for various integral types, so that they match their intended uses and follow consist conventions, and eliminate types that were not semantically different from each other. The conventions are: -- All integral types that measure quantities of anything are signed. Some people disagree vociferously with this, but their arguments are mostly theoretical, and are vastly outweighed by the practical headaches of mixing signed and unsigned values, and more importantly by the far increased likelihood of inadvertent bugs: Because of the broken "viral" nature of unsigned quantities in C (operations involving mixed signed/unsigned are done unsigned, when exactly the opposite is nearly always wanted), even a single error in declaring a quantity unsigned that should be signed, or even the even more subtle error of comparing signed and unsigned values and forgetting the necessary cast, can be catastrophic, as comparisons will yield wrong results. -Wsign-compare is turned on specifically to catch this, but this tends to result in a great number of warnings when mixing signed and unsigned, and the casts are annoying. More has been written on this elsewhere. -- All such quantity types just mentioned boil down to EMACS_INT, which is 32 bits on 32-bit machines and 64 bits on 64-bit machines. This is guaranteed to be the same size as Lisp objects of type `int', and (as far as I can tell) of size_t (unsigned!) and ssize_t. The only type below that is not an EMACS_INT is Hashcode, which is an unsigned value of the same size as EMACS_INT. -- Type names should be relatively short (no more than 10 characters or so), with the first letter capitalized and no underscores if they can at all be avoided. -- "count" == a zero-based measurement of some quantity. Includes sizes, offsets, and indexes. -- "bpos" == a one-based measurement of a position in a buffer. "Charbpos" and "Bytebpos" count text in the buffer, rather than bytes in memory; thus Bytebpos does not directly correspond to the memory representation. Use "Membpos" for this. -- "Char" refers to internal-format characters, not to the C type "char", which is really a byte. -- For the actual name changes, see the script below. I ran the following script to do the conversion. (NOTE: This script is idempotent. You can safely run it multiple times and it will not screw up previous results -- in fact, it will do nothing if nothing has changed. Thus, it can be run repeatedly as necessary to handle patches coming in from old workspaces, or old branches.) There are two tags, just before and just after the change: `pre-integral-type-rename' and `post-integral-type-rename'. When merging code from the main trunk into a branch, the best thing to do is first merge up to `pre-integral-type-rename', then apply the script and associated changes, then merge from `post-integral-type-change' to the present. (Alternatively, just do the merging in one operation; but you may then have a lot of conflicts needing to be resolved by hand.) Script `fixtypes.sh' follows: ----------------------------------- cut ------------------------------------ files="*.[ch] s/*.h m/*.h config.h.in ../configure.in Makefile.in.in ../lib-src/*.[ch] ../lwlib/*.[ch]" gr Memory_Count Bytecount $files gr Lstream_Data_Count Bytecount $files gr Element_Count Elemcount $files gr Hash_Code Hashcode $files gr extcount bytecount $files gr bufpos charbpos $files gr bytind bytebpos $files gr memind membpos $files gr bufbyte intbyte $files gr Extcount Bytecount $files gr Bufpos Charbpos $files gr Bytind Bytebpos $files gr Memind Membpos $files gr Bufbyte Intbyte $files gr EXTCOUNT BYTECOUNT $files gr BUFPOS CHARBPOS $files gr BYTIND BYTEBPOS $files gr MEMIND MEMBPOS $files gr BUFBYTE INTBYTE $files gr MEMORY_COUNT BYTECOUNT $files gr LSTREAM_DATA_COUNT BYTECOUNT $files gr ELEMENT_COUNT ELEMCOUNT $files gr HASH_CODE HASHCODE $files ----------------------------------- cut ------------------------------------ `fixtypes.sh' is a Bourne-shell script; it uses 'gr': ----------------------------------- cut ------------------------------------ #!/bin/sh # Usage is like this: # gr FROM TO FILES ... # globally replace FROM with TO in FILES. FROM and TO are regular expressions. # backup files are stored in the `backup' directory. from="$1" to="$2" shift 2 echo ${1+"$@"} | xargs global-replace "s/$from/$to/g" ----------------------------------- cut ------------------------------------ `gr' in turn uses a Perl script to do its real work, `global-replace', which follows: ----------------------------------- cut ------------------------------------ : #-*- Perl -*- ### global-modify --- modify the contents of a file by a Perl expression ## Copyright (C) 1999 Martin Buchholz. ## Copyright (C) 2001 Ben Wing. ## Authors: Martin Buchholz <martin@xemacs.org>, Ben Wing <ben@xemacs.org> ## Maintainer: Ben Wing <ben@xemacs.org> ## Current Version: 1.0, May 5, 2001 # This program 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. # # This program 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. eval 'exec perl -w -S $0 ${1+"$@"}' if 0; use strict; use FileHandle; use Carp; use Getopt::Long; use File::Basename; (my $myName = $0) =~ s@.*/@@; my $usage=" Usage: $myName [--help] [--backup-dir=DIR] [--line-mode] [--hunk-mode] PERLEXPR FILE ... Globally modify a file, either line by line or in one big hunk. Typical usage is like this: [with GNU print, GNU xargs: guaranteed to handle spaces, quotes, etc. in file names] find . -name '*.[ch]' -print0 | xargs -0 $0 's/\bCONST\b/const/g'\n [with non-GNU print, xargs] find . -name '*.[ch]' -print | xargs $0 's/\bCONST\b/const/g'\n The file is read in, either line by line (with --line-mode specified) or in one big hunk (with --hunk-mode specified; it's the default), and the Perl expression is then evalled with \$_ set to the line or hunk of text, including the terminating newline if there is one. It should destructively modify the value there, storing the changed result in \$_. Files in which any modifications are made are backed up to the directory specified using --backup-dir, or to `backup' by default. To disable this, use --backup-dir= with no argument. Hunk mode is the default because it is MUCH MUCH faster than line-by-line. Use line-by-line only when it matters, e.g. you want to do a replacement only once per line (the default without the `g' argument). Conversely, when using hunk mode, *ALWAYS* use `g'; otherwise, you will only make one replacement in the entire file! "; my %options = (); $Getopt::Long::ignorecase = 0; &GetOptions ( \%options, 'help', 'backup-dir=s', 'line-mode', 'hunk-mode', ); die $usage if $options{"help"} or @ARGV <= 1; my $code = shift; die $usage if grep (-d || ! -w, @ARGV); sub SafeOpen { open ((my $fh = new FileHandle), $_[0]); confess "Can't open $_[0]: $!" if ! defined $fh; return $fh; } sub SafeClose { close $_[0] or confess "Can't close $_[0]: $!"; } sub FileContents { my $fh = SafeOpen ("< $_[0]"); my $olddollarslash = $/; local $/ = undef; my $contents = <$fh>; $/ = $olddollarslash; return $contents; } sub WriteStringToFile { my $fh = SafeOpen ("> $_[0]"); binmode $fh; print $fh $_[1] or confess "$_[0]: $!\n"; SafeClose $fh; } foreach my $file (@ARGV) { my $changed_p = 0; my $new_contents = ""; if ($options{"line-mode"}) { my $fh = SafeOpen $file; while (<$fh>) { my $save_line = $_; eval $code; $changed_p = 1 if $save_line ne $_; $new_contents .= $_; } } else { my $orig_contents = $_ = FileContents $file; eval $code; if ($_ ne $orig_contents) { $changed_p = 1; $new_contents = $_; } } if ($changed_p) { my $backdir = $options{"backup-dir"}; $backdir = "backup" if !defined ($backdir); if ($backdir) { my ($name, $path, $suffix) = fileparse ($file, ""); my $backfulldir = $path . $backdir; my $backfile = "$backfulldir/$name"; mkdir $backfulldir, 0755 unless -d $backfulldir; print "modifying $file (original saved in $backfile)\n"; rename $file, $backfile; } WriteStringToFile ($file, $new_contents); } } ----------------------------------- cut ------------------------------------ In addition to those programs, I needed to fix up a few other things, particularly relating to the duplicate definitions of types, now that some types merged with others. Specifically: 1. in lisp.h, removed duplicate declarations of Bytecount. The changed code should now look like this: (In each code snippet below, the first and last lines are the same as the original, as are all lines outside of those lines. That allows you to locate the section to be replaced, and replace the stuff in that section, verifying that there isn't anything new added that would need to be kept.) --------------------------------- snip ------------------------------------- /* Counts of bytes or chars */ typedef EMACS_INT Bytecount; typedef EMACS_INT Charcount; /* Counts of elements */ typedef EMACS_INT Elemcount; /* Hash codes */ typedef unsigned long Hashcode; /* ------------------------ dynamic arrays ------------------- */ --------------------------------- snip ------------------------------------- 2. in lstream.h, removed duplicate declaration of Bytecount. Rewrote the comment about this type. The changed code should now look like this: --------------------------------- snip ------------------------------------- #endif /* The have been some arguments over the what the type should be that specifies a count of bytes in a data block to be written out or read in, using Lstream_read(), Lstream_write(), and related functions. Originally it was long, which worked fine; Martin "corrected" these to size_t and ssize_t on the grounds that this is theoretically cleaner and is in keeping with the C standards. Unfortunately, this practice is horribly error-prone due to design flaws in the way that mixed signed/unsigned arithmetic happens. In fact, by doing this change, Martin introduced a subtle but fatal error that caused the operation of sending large mail messages to the SMTP server under Windows to fail. By putting all values back to be signed, avoiding any signed/unsigned mixing, the bug immediately went away. The type then in use was Lstream_Data_Count, so that it be reverted cleanly if a vote came to that. Now it is Bytecount. Some earlier comments about why the type must be signed: This MUST BE SIGNED, since it also is used in functions that return the number of bytes actually read to or written from in an operation, and these functions can return -1 to signal error. Note that the standard Unix read() and write() functions define the count going in as a size_t, which is UNSIGNED, and the count going out as an ssize_t, which is SIGNED. This is a horrible design flaw. Not only is it highly likely to lead to logic errors when a -1 gets interpreted as a large positive number, but operations are bound to fail in all sorts of horrible ways when a number in the upper-half of the size_t range is passed in -- this number is unrepresentable as an ssize_t, so code that checks to see how many bytes are actually written (which is mandatory if you are dealing with certain types of devices) will get completely screwed up. --ben */ typedef enum lstream_buffering --------------------------------- snip ------------------------------------- 3. in dumper.c, there are four places, all inside of switch() statements, where XD_BYTECOUNT appears twice as a case tag. In each case, the two case blocks contain identical code, and you should *REMOVE THE SECOND* and leave the first.
author ben
date Thu, 20 Sep 2001 06:31:11 +0000
parents 4f50f8a33f96
children 76d5a3dd827a
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1 /* XEmacs site configuration template file. -*- C -*-
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
2 Copyright (C) 1986, 1991-1994, 1998, 1999 Free Software Foundation, Inc.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
3
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
4 This file is part of XEmacs.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
5
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
6 XEmacs is free software; you can redistribute it and/or modify it
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
7 under the terms of the GNU General Public License as published by the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
8 Free Software Foundation; either version 2, or (at your option) any
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
9 later version.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
10
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
11 XEmacs is distributed in the hope that it will be useful, but WITHOUT
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
12 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
13 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
14 for more details.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
15
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
16 You should have received a copy of the GNU General Public License
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
17 along with XEmacs; see the file COPYING. If not, write to
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
18 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
19 Boston, MA 02111-1307, USA. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
20
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
21 /* Significantly divergent from FSF. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
22
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
23 /* No code in XEmacs #includes config.h twice, but some of the code
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
24 intended to work with other packages as well (like gmalloc.c)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
25 think they can include it as many times as they like. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
26 #ifndef _SRC_CONFIG_H_
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
27 #define _SRC_CONFIG_H_
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
28
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
29 /* Use this to add code in a structured way to FSF-maintained source
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
30 files so as to make it obvious where XEmacs changes are. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
31 #define XEMACS 1
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
32
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
33 /* Program name */
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
34 #undef EMACS_PROGNAME
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
35
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
36 /* Allow s&m files to differentiate OS versions without having
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
37 multiple files to maintain. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
38 #undef OS_RELEASE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
39
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
40 /* The configuration name. This is used as the install directory name
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
41 for the lib-src programs. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
42 #undef EMACS_CONFIGURATION
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
43
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
44 /* The configuration options. This is exported to Lisp. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
45 #undef EMACS_CONFIG_OPTIONS
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
46
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
47 /* The version info from version.sh. Used in #pragma ident in emacs.c */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
48 #undef EMACS_MAJOR_VERSION
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
49 #undef EMACS_MINOR_VERSION
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
50 #undef EMACS_PATCH_LEVEL
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
51 #undef EMACS_BETA_VERSION
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
52 #undef EMACS_VERSION
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
53 #undef XEMACS_CODENAME
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
54 /* InfoDock versions, not used with XEmacs */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
55 #undef INFODOCK_MAJOR_VERSION
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
56 #undef INFODOCK_MINOR_VERSION
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
57 #undef INFODOCK_BUILD_VERSION
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
58
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
59 /* Make functions from IEEE Stds 1003.[123] available. */
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
60 #undef _POSIX_C_SOURCE
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
61
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
62 /* Make some functions from Unix98 available. */
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
63 #undef _XOPEN_SOURCE
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
64
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
65 /* Make "extensions" from Unix98 available. */
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
66 #undef _XOPEN_SOURCE_EXTENDED
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
67
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
68 /* Make all functions available on AIX. See AC_AIX. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
69 #undef _ALL_SOURCE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
70
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
71 /* Make all functions available on GNU libc systems. See features.h. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
72 #undef _GNU_SOURCE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
73
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
74 /* Make all functions available on Solaris 2 systems. */
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
75 #undef __EXTENSIONS__
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
76
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
77 /* Used to identify the XEmacs version in stack traces. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
78 #undef STACK_TRACE_EYE_CATCHER
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
79
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
80 /* Allow the configurer to specify if she wants site-lisp. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
81 #undef INHIBIT_SITE_LISP
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
82
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
83 /* Allow the configurer to specify if she wants site-modules. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
84 #undef INHIBIT_SITE_MODULES
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
85
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
86 /* This will be removed in 19.15. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
87 /* Hah! Try 20.3 ... */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
88 /* Hah! Try never ... */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
89 /* If at first you don't succeed, try, try again. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
90 /* #define LOSING_BYTECODE */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
91
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
92 /* Undefine on systems which don't have processes */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
93 #undef HAVE_UNIX_PROCESSES
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
94
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
95 /* Does XEmacs support floating-point numbers? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
96 #undef LISP_FLOAT_TYPE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
97
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
98 /* Define GNU_MALLOC if you want to use the GNU memory allocator. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
99 #undef GNU_MALLOC
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
100
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
101 /* Define if you are using the GNU C Library. -- experimental. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
102 #undef DOUG_LEA_MALLOC
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
103
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
104 /* Define if you are using libmcheck.a from the GNU C Library. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
105 #undef HAVE_LIBMCHECK
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
106
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
107 /* Define if you are using dlmalloc from the Linux C library. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
108 #undef _NO_MALLOC_WARNING_
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
109
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
110 /* Use the system malloc? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
111 #undef USE_SYSTEM_MALLOC
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
112
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
113 /* Use a debugging malloc? -- experimental */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
114 #undef USE_DEBUG_MALLOC
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
115
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
116 /* Compile in TTY support? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
117 #undef HAVE_TTY
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
118
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
119 /* Compile in support for MS windows? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
120 #undef HAVE_MS_WINDOWS
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
121
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
122 /* special cygwin process handling? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
123 #undef HAVE_MSG_SELECT
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
124
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
125 /* Compile in support for the X window system? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
126 #undef HAVE_X_WINDOWS
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
127
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
128 /* Defines for building X applications */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
129 #ifdef HAVE_X_WINDOWS
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
130 /* The following will be defined if xmkmf thinks they are necessary */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
131 #undef SVR4
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
132 #undef SYSV
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
133 #undef AIXV3
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
134 #undef _POSIX_SOURCE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
135 #undef _BSD_SOURCE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
136 #undef _SVID_SOURCE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
137 #undef X_LOCALE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
138 #undef NARROWPROTO
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
139 /* The following should always be defined, no matter what xmkmf thinks. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
140 #ifndef NeedFunctionPrototypes
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
141 #define NeedFunctionPrototypes 1
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
142 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
143 #ifndef FUNCPROTO
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
144 #define FUNCPROTO 15
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
145 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
146 #endif /* HAVE_X_WINDOWS */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
147
462
0784d089fdc9 Import from CVS: tag r21-2-46
cvs
parents: 460
diff changeset
148 /* Defines for building Gtk applications */
0784d089fdc9 Import from CVS: tag r21-2-46
cvs
parents: 460
diff changeset
149 #undef HAVE_GNOME
0784d089fdc9 Import from CVS: tag r21-2-46
cvs
parents: 460
diff changeset
150 #undef HAVE_GTK
0784d089fdc9 Import from CVS: tag r21-2-46
cvs
parents: 460
diff changeset
151 #undef HAVE_GDK_IMLIB_INIT
0784d089fdc9 Import from CVS: tag r21-2-46
cvs
parents: 460
diff changeset
152 #undef HAVE_GLADE_GLADE_H
0784d089fdc9 Import from CVS: tag r21-2-46
cvs
parents: 460
diff changeset
153 #undef HAVE_GLADE_H
0784d089fdc9 Import from CVS: tag r21-2-46
cvs
parents: 460
diff changeset
154 #undef LIBGLADE_XML_TXTDOMAIN
0784d089fdc9 Import from CVS: tag r21-2-46
cvs
parents: 460
diff changeset
155
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
156 /* Define HAVE_WINDOW_SYSTEM if any windowing system is available. */
462
0784d089fdc9 Import from CVS: tag r21-2-46
cvs
parents: 460
diff changeset
157 #if defined (HAVE_GTK) || defined (HAVE_X_WINDOWS) || defined(HAVE_MS_WINDOWS) /* || defined (HAVE_NEXTSTEP) */
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
158 #define HAVE_WINDOW_SYSTEM
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
159 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
160
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
161 /* Define HAVE_UNIXOID_EVENT_LOOP if we use select() to wait for events. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
162 #if defined (HAVE_X_WINDOWS) || defined (HAVE_TTY) || defined(HAVE_MSG_SELECT)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
163 #define HAVE_UNIXOID_EVENT_LOOP
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
164 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
165
444
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
166 /* XFree86 has a different prototype for this function */
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
167 #undef HAVE_XREGISTERIMINSTANTIATECALLBACK
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
168 #undef XREGISTERIMINSTANTIATECALLBACK_NONSTANDARD_PROTOTYPE
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
169
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
170 #undef THIS_IS_X11R4
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
171 #undef THIS_IS_X11R5
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
172 #undef THIS_IS_X11R6
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
173
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
174 #undef HAVE_XCONVERTCASE
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
175
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
176 #undef HAVE_BALLOON_HELP
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
177
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
178 /* Where do we find bitmaps? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
179 #undef BITMAPDIR
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
180
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
181 /* USER_FULL_NAME returns a string that is the user's full name.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
182 It can assume that the variable `pw' points to the password file
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
183 entry for this user.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
184
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
185 At some sites, the pw_gecos field contains the user's full name.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
186 If neither this nor any other field contains the right thing, use
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
187 pw_name, giving the user's login name, since that is better than
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
188 nothing. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
189 #define USER_FULL_NAME pw->pw_gecos
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
190
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
191 /* Define AMPERSAND_FULL_NAME if you use the convention
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
192 that & in the full name stands for the login id. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
193 #undef AMPERSAND_FULL_NAME
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
194
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
195 /* Some things figured out by the configure script, grouped as they are in
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
196 configure.in. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
197 #undef HAVE_MCHECK_H
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
198 #undef HAVE_A_OUT_H
446
1ccc32a20af4 Import from CVS: tag r21-2-38
cvs
parents: 444
diff changeset
199 #undef HAVE_ELF_H
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
200 #undef HAVE_CYGWIN_VERSION_H
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
201 #undef HAVE_FCNTL_H
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
202 #undef HAVE_INTTYPES_H
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
203 #undef HAVE_LIBGEN_H
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
204 #undef HAVE_LOCALE_H
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
205 #undef HAVE_MACH_MACH_H
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
206 #undef HAVE_SYS_PARAM_H
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
207 #undef HAVE_SYS_PSTAT_H
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
208 #undef HAVE_SYS_TIME_H
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
209 #undef HAVE_SYS_TIMEB_H
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
210 #undef HAVE_SYS_UN_H
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
211 #undef HAVE_ULIMIT_H
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
212 #undef HAVE_UNISTD_H
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
213
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
214 #undef HAVE_SYS_WAIT_H
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
215 #undef HAVE_LIBINTL_H
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
216 #undef HAVE_X11_XLOCALE_H
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
217 #undef STDC_HEADERS
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
218 #undef TIME_WITH_SYS_TIME
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
219 #undef WORDS_BIGENDIAN
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
220 #undef HAVE_VFORK_H
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
221 #undef vfork
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
222
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
223 #undef HAVE_LONG_FILE_NAMES
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
224
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
225 /* Use lock files to detect multiple edits of the same file? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
226 #undef CLASH_DETECTION
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
227
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
228 /* Have shared library support */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
229 #undef HAVE_DLOPEN
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
230 #undef HAVE_DLERROR
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
231 #undef HAVE__DLERROR
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
232 #undef HAVE_SHL_LOAD
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
233 #undef HAVE_DLD_INIT
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
234 #undef HAVE_SHLIB
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
235
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
236 #undef HAVE_LIBINTL
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
237 #undef HAVE_LIBDNET
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
238 #undef HAVE_LIBRESOLV
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
239
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
240 /* Is `sys_siglist' declared by <signal.h>? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
241 #undef SYS_SIGLIST_DECLARED
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
242
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
243 /* Is `struct timeval' declared by <sys/time.h>? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
244 #undef HAVE_TIMEVAL
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
245
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
246
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
247 #undef TM_IN_SYS_TIME
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
248 #undef HAVE_TM_ZONE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
249 #undef HAVE_TZNAME
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
250
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
251 /* For `getloadavg' provided by system */
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
252 #undef HAVE_GETLOADAVG
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
253 #undef HAVE_SYS_LOADAVG_H
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
254 /* For implementing `getloadavg' ourselves */
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
255 #undef HAVE_LIBKSTAT
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
256 #undef HAVE_KSTAT_H
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
257
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
258 /* Is `h_errno' declared by <netdb.h>? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
259 #undef HAVE_H_ERRNO
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
260
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
261 /* Does `localtime' cache TZ? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
262 #undef LOCALTIME_CACHE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
263
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
264 /* Can `gettimeofday' accept two arguments? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
265 #undef GETTIMEOFDAY_ONE_ARGUMENT
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
266
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
267 #undef HAVE_MMAP
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
268 #undef HAVE_STRCOLL
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
269 #undef HAVE_GETPGRP
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
270 #undef GETPGRP_VOID
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
271
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
272 #undef HAVE_INVERSE_HYPERBOLIC
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
273
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
274 #undef HAVE_CBRT
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
275 #undef HAVE_CLOSEDIR
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
276 #undef HAVE_DUP2
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
277 #undef HAVE_EACCESS
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
278 #undef HAVE_FMOD
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
279 #undef HAVE_FPATHCONF
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
280 #undef HAVE_FREXP
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
281 #undef HAVE_FTIME
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
282 #undef HAVE_GETADDRINFO
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
283 #undef HAVE_GETHOSTNAME
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
284 #undef HAVE_GETNAMEINFO
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
285 #undef HAVE_GETPAGESIZE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
286 #undef HAVE_GETTIMEOFDAY
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
287 #undef HAVE_GETWD
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
288 #undef HAVE_GETCWD
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
289 #undef HAVE_LOGB
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
290 #undef HAVE_LRAND48
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
291 #undef HAVE_MATHERR
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
292 #undef HAVE_MKDIR
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
293 #undef HAVE_MKTIME
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
294 #undef HAVE_PERROR
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
295 #undef HAVE_POLL
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
296 #undef HAVE_RANDOM
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
297 #undef HAVE_REALPATH
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
298 #undef HAVE_RENAME
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
299 #undef HAVE_RES_INIT
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
300 #undef HAVE_RINT
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
301 #undef HAVE_RMDIR
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
302 #undef HAVE_SELECT
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
303 #undef HAVE_SETITIMER
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
304 #undef HAVE_SETPGID
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
305 #undef HAVE_SETSID
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
306 #undef HAVE_SIGBLOCK
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
307 #undef HAVE_SIGHOLD
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
308 #undef HAVE_SIGPROCMASK
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
309 #undef HAVE_SIGSETJMP
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
310 #undef HAVE_SNPRINTF
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
311 #undef HAVE_STPCPY
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
312 #undef HAVE_STRERROR
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
313 #undef HAVE_TZSET
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
314 #undef HAVE_ULIMIT
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
315 #undef HAVE_USLEEP
460
223736d75acb Import from CVS: tag r21-2-45
cvs
parents: 458
diff changeset
316 #undef HAVE_UTIME
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
317 #undef HAVE_UTIMES
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
318 #undef HAVE_WAITPID
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
319 #undef HAVE_VSNPRINTF
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
320
535
c69610198c35 [xemacs-hg @ 2001-05-14 04:52:02 by martinb]
martinb
parents: 462
diff changeset
321 /* Many flavors of PTY support */
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
322 #undef HAVE_GETPT /* glibc's easy pty allocation function */
444
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
323 #undef HAVE__GETPTY /* SGI's easy pty allocation function */
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
324 #undef HAVE_OPENPTY /* BSD's easy pty allocation function */
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
325 #undef HAVE_GRANTPT /* Unix98 */
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
326 #undef HAVE_UNLOCKPT /* Unix98 */
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
327 #undef HAVE_PTSNAME /* Unix98 */
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
328 #undef HAVE_KILLPG /* BSD */
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
329 #undef HAVE_TCGETPGRP /* Posix 1 */
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
330 #undef HAVE_ISASTREAM /* SysV streams */
535
c69610198c35 [xemacs-hg @ 2001-05-14 04:52:02 by martinb]
martinb
parents: 462
diff changeset
331 #undef HAVE_SYS_PTY_H /* AIX */
c69610198c35 [xemacs-hg @ 2001-05-14 04:52:02 by martinb]
martinb
parents: 462
diff changeset
332 #undef HAVE_SYS_PTYIO_H /* HP-UX */
c69610198c35 [xemacs-hg @ 2001-05-14 04:52:02 by martinb]
martinb
parents: 462
diff changeset
333 #undef HAVE_PTY_H /* Linux, Tru64 */
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
334 #undef HAVE_LIBUTIL_H /* BSD openpty */
458
c33ae14dd6d0 Import from CVS: tag r21-2-44
cvs
parents: 452
diff changeset
335 #undef HAVE_UTIL_H /* NetBSD openpty */
444
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
336 #undef HAVE_STROPTS_H /* SysV streams */
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
337 #undef HAVE_STRTIO_H /* SysV streams TIOCSIGNAL */
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
338
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
339 #undef HAVE_SOCKETS
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
340 #undef HAVE_SOCKADDR_SUN_LEN
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
341 #undef HAVE_MULTICAST
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
342 #undef HAVE_SYSVIPC
438
84b14dcb0985 Import from CVS: tag r21-2-27
cvs
parents: 434
diff changeset
343 #undef HAVE_LOCKF
84b14dcb0985 Import from CVS: tag r21-2-27
cvs
parents: 434
diff changeset
344 #undef HAVE_FLOCK
84b14dcb0985 Import from CVS: tag r21-2-27
cvs
parents: 434
diff changeset
345 #undef HAVE_FSYNC
84b14dcb0985 Import from CVS: tag r21-2-27
cvs
parents: 434
diff changeset
346 #undef HAVE_FTRUNCATE
84b14dcb0985 Import from CVS: tag r21-2-27
cvs
parents: 434
diff changeset
347 #undef HAVE_UMASK
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
348
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
349 #undef SYSV_SYSTEM_DIR
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
350 #undef NONSYSTEM_DIR_LIBRARY
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
351
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
352 #undef HAVE_TERMIOS
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
353 #undef HAVE_TERMIO
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
354 #undef NO_TERMIO
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
355 #undef SIGNALS_VIA_CHARACTERS
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
356
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
357 #undef NLIST_STRUCT
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
358
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
359 /* Compile in support for SOCKS? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
360 #undef HAVE_SOCKS
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
361
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
362 /* Compile in support for X pixmaps via the `xpm' library? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
363 #undef HAVE_XPM
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
364 #undef FOR_MSW
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
365
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
366 /* Compile in support for "X faces" via the `compface' library?
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
367 This enables graphical display of X-face headers in mail/news messages */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
368 #undef HAVE_XFACE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
369
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
370 /* Compile in support for JPEG images */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
371 #undef HAVE_JPEG
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
372
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
373 /* Compile in support for TIFF images */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
374 #undef HAVE_TIFF
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
375
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
376 /* Compile in support for GIF images */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
377 #undef HAVE_GIF
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
378
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
379 /* Compile in support for PNG images */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
380 #undef HAVE_PNG
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
381
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
382 /* Do you have the Xmu library?
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
383 This should always be the case except on losing HP-UX systems. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
384 #undef HAVE_XMU
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
385
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
386 /* Compile in support for DBM databases? May require libgdbm or libdbm. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
387 #undef HAVE_DBM
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
388
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
389 /* Compile in support for Berkeley DB style databases? May require libdb. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
390 #undef HAVE_BERKELEY_DB
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
391 /* Full #include file path for Berkeley DB's db.h */
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
392 #undef DB_H_FILE
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
393
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
394 /* Do we have either DBM or Berkeley DB database support? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
395 #undef HAVE_DATABASE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
396
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
397 /* Do we have LDAP support? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
398 #undef HAVE_LDAP
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
399 /* Does the library define ldap_set_option () ? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
400 #undef HAVE_LDAP_SET_OPTION
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
401 /* Does the library define ldap_get_lderrno () ? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
402 #undef HAVE_LDAP_GET_LDERRNO
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
403 /* Does the library define ldap_result2error () ? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
404 #undef HAVE_LDAP_RESULT2ERROR
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
405 /* Does the library define ldap_parse_result () ? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
406 #undef HAVE_LDAP_PARSE_RESULT
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
407
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
408 /* Do we have PostgreSQL RDBMS support? */
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
409 #undef HAVE_POSTGRESQL
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
410 #undef HAVE_POSTGRESQLV7
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
411 #undef LIBPQ_FE_H_FILE /* main PostgreSQL header file */
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
412
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
413 /* Do you have the Xauth library present? This will add some extra
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
414 functionality to gnuserv. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
415 #undef HAVE_XAUTH
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
416
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
417 /* Compile in support for gpm (General Purpose Mouse)? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
418 #undef HAVE_GPM
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
419
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
420 /* Compile in support for ncurses? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
421 #undef HAVE_NCURSES
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
422 /* Full #include file paths for ncurses' curses.h and term.h. */
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
423 #undef CURSES_H_FILE
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
424 #undef TERM_H_FILE
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
425
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
426 /* Define USE_ASSERTIONS if you want the abort() to be changed to assert().
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
427 If the assertion fails, assert_failed() will be called. This is
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
428 recommended for general use because it gives more info about the crash
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
429 than just the abort() message. Too many people "Can't find the corefile"
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
430 or have limit-ed core dumps out of existence. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
431 #undef USE_ASSERTIONS
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
432
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
433 /* Define one or more of the following if you want lots of extra checks
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
434 (e.g. structure validation) compiled in. These should be turned
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
435 on during the beta-test cycle. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
436
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
437 /* Check the entire extent structure of a buffer each time an extent
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
438 change is done, and do other extent-related checks. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
439 #undef ERROR_CHECK_EXTENTS
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
440
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
441 /* Make sure that all X... macros are dereferencing the correct type,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
442 and that all XSET... macros (as much as possible) are setting the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
443 correct type of structure. Highly recommended for all
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
444 development work. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
445 #undef ERROR_CHECK_TYPECHECK
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
446 #ifdef ERROR_CHECK_TYPECHECK
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
447 #define type_checking_assert(assertion) assert (assertion)
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
448 #else
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
449 #define type_checking_assert(assertion)
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
450 #endif
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
451
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
452 /* Make sure valid buffer positions are passed to BUF_* macros. */
665
fdefd0186b75 [xemacs-hg @ 2001-09-20 06:28:42 by ben]
ben
parents: 615
diff changeset
453 #undef ERROR_CHECK_CHARBPOS
fdefd0186b75 [xemacs-hg @ 2001-09-20 06:28:42 by ben]
ben
parents: 615
diff changeset
454 #ifdef ERROR_CHECK_CHARBPOS
fdefd0186b75 [xemacs-hg @ 2001-09-20 06:28:42 by ben]
ben
parents: 615
diff changeset
455 #define charbpos_checking_assert(assertion) assert (assertion)
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
456 #else
665
fdefd0186b75 [xemacs-hg @ 2001-09-20 06:28:42 by ben]
ben
parents: 615
diff changeset
457 #define charbpos_checking_assert(assertion)
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
458 #endif
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
459
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
460 /* Attempt to catch bugs related to garbage collection (e.g. not GCPRO'ing). */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
461 #undef ERROR_CHECK_GC
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
462 #ifdef ERROR_CHECK_GC
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
463 #define gc_checking_assert(assertion) assert (assertion)
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
464 #else
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
465 #define gc_checking_assert(assertion)
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
466 #endif
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
467
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
468 /* Attempt to catch freeing of a non-malloc()ed block, heap corruption, etc. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
469 #undef ERROR_CHECK_MALLOC
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
470
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
471 /* Minor sanity checking of the bytecode interpreter. Useful for
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
472 debugging the byte compiler. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
473 #undef ERROR_CHECK_BYTE_CODE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
474
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
475 /* Minor sanity checking of glyphs, especially subwindows and
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
476 widgets. */
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
477 #undef ERROR_CHECK_GLYPHS
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
478
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
479 /* Define DEBUG_XEMACS if you want extra debugging code compiled in.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
480 This is mainly intended for use by developers. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
481 #undef DEBUG_XEMACS
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
482
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
483 /* Define MEMORY_USAGE_STATS if you want extra code compiled in to
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
484 determine where XEmacs' memory is going. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
485 #undef MEMORY_USAGE_STATS
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
486
460
223736d75acb Import from CVS: tag r21-2-45
cvs
parents: 458
diff changeset
487 /* Define QUANTIFY if using Quantify from Rational Software.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
488 This adds some additional calls to control data collection.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
489 It is only intended for use by the developers. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
490 #undef QUANTIFY
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
491
460
223736d75acb Import from CVS: tag r21-2-45
cvs
parents: 458
diff changeset
492 /* Define PURIFY if using Purify from Rational Software.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
493 It is only intended for use by the developers. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
494 #undef PURIFY
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
495
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
496 #if (defined (QUANTIFY) || defined (PURIFY)) && !defined (XLIB_ILLEGAL_ACCESS)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
497 #define XLIB_ILLEGAL_ACCESS 1
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
498 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
499
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
500 /* Define EXTERNAL_WIDGET to compile support for using the editor as a
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
501 widget within another program. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
502 #undef EXTERNAL_WIDGET
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
503
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
504 /* There are some special-case defines for gcc and lcc. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
505 #undef USE_GCC
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
506 #undef USE_LCC
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
507
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
508 /* Define this if you want level 2 internationalization compliance
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
509 (localized collation and formatting). Generally this should be
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
510 defined, unless your system doesn't have the strcoll() and
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
511 setlocale() library routines. This really should be (NOT! -mrb)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
512 defined in the appropriate s/ or m/ file. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
513 #undef I18N2
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
514
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
515 /* Define this if you want level 3 internationalization compliance
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
516 (localized messaging). This will cause a small runtime performance
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
517 penalty, as the strings are read from the message catalog(s).
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
518 For this you need the gettext() and dgetext() library routines.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
519 WARNING, this code is under construction. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
520 #undef I18N3
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
521
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
522 /* Compile in support for CDE (Common Desktop Environment) drag and drop?
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
523 Requires libDtSvc, which typically must be present at runtime. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
524 #undef HAVE_CDE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
525
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
526 /* Compile in support for OffiX Drag and Drop? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
527 #undef HAVE_OFFIX_DND
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
528
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
529 /* Compile in generic Drag'n'Drop API */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
530 #undef HAVE_DRAGNDROP
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
531
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
532 /* Compile in support for proper handling of WM_COMMAND. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
533 #undef HAVE_WMCOMMAND
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
534
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
535 /* Define this if you want Mule support (multi-byte character support).
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
536 There may be some performance penalty, although it should be small
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
537 if you're working with ASCII files. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
538 #undef MULE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
539
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
540 /* Define this if you want file coding support */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
541 #undef FILE_CODING
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
542
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
543 /* Do we want to use X window input methods for use with Mule? (requires X11R5)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
544 If so, use raw Xlib or higher level Motif interface? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
545 #undef HAVE_XIM
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
546 #undef XIM_XLIB
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
547 #undef XIM_MOTIF
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
548 #undef USE_XFONTSET
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
549
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
550 /* Non-XIM input methods for use with Mule. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
551 #undef HAVE_CANNA
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
552 #undef HAVE_WNN
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
553 #undef WNN6
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
554
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
555 /* Enable special GNU Make features in the Makefiles. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
556 #undef USE_GNU_MAKE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
557
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
558 /* Debugging development option: Remove inessential but time consuming
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
559 actions from happening during build. This saves a lot of time when
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
560 you're repeatedly compiling-running-crashing. This (1) doesn't
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
561 garbage-collect after loading each file during dumping, and (2)
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
562 doesn't automatically rebuild the DOC file. (Remove it by hand to
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
563 get it rebuilt.)
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
564 */
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
565 #undef QUICK_BUILD
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
566
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
567 /* Defined by AC_C_CONST in configure.in */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
568 #undef const
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
569
434
9d177e8d4150 Import from CVS: tag r21-2-25
cvs
parents: 428
diff changeset
570 /* Allow the source to use standard types. Include these before the
9d177e8d4150 Import from CVS: tag r21-2-25
cvs
parents: 428
diff changeset
571 s&m files so that they can use them. */
9d177e8d4150 Import from CVS: tag r21-2-25
cvs
parents: 428
diff changeset
572 #undef ssize_t
9d177e8d4150 Import from CVS: tag r21-2-25
cvs
parents: 428
diff changeset
573 #undef size_t
9d177e8d4150 Import from CVS: tag r21-2-25
cvs
parents: 428
diff changeset
574 #undef pid_t
9d177e8d4150 Import from CVS: tag r21-2-25
cvs
parents: 428
diff changeset
575 #undef mode_t
9d177e8d4150 Import from CVS: tag r21-2-25
cvs
parents: 428
diff changeset
576 #undef off_t
9d177e8d4150 Import from CVS: tag r21-2-25
cvs
parents: 428
diff changeset
577 #undef uid_t
9d177e8d4150 Import from CVS: tag r21-2-25
cvs
parents: 428
diff changeset
578 #undef gid_t
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
579 #undef socklen_t
434
9d177e8d4150 Import from CVS: tag r21-2-25
cvs
parents: 428
diff changeset
580
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
581 /* If defined, use unions instead of ints. A few systems (DEC Alpha)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
582 seem to require this, probably because something with the int
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
583 definitions isn't right with 64-bit systems. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
584 #undef USE_UNION_TYPE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
585
615
4f50f8a33f96 [xemacs-hg @ 2001-06-11 04:44:52 by martinb]
martinb
parents: 567
diff changeset
586 /* alloca twiddling.
4f50f8a33f96 [xemacs-hg @ 2001-06-11 04:44:52 by martinb]
martinb
parents: 567
diff changeset
587 Because we might be #including alloca.h here, feature test macros
4f50f8a33f96 [xemacs-hg @ 2001-06-11 04:44:52 by martinb]
martinb
parents: 567
diff changeset
588 such as _XOPEN_SOURCE must be defined above. */
4f50f8a33f96 [xemacs-hg @ 2001-06-11 04:44:52 by martinb]
martinb
parents: 567
diff changeset
589 #undef HAVE_ALLOCA_H
4f50f8a33f96 [xemacs-hg @ 2001-06-11 04:44:52 by martinb]
martinb
parents: 567
diff changeset
590 #ifndef NOT_C_CODE
4f50f8a33f96 [xemacs-hg @ 2001-06-11 04:44:52 by martinb]
martinb
parents: 567
diff changeset
591 #ifdef __GNUC__
4f50f8a33f96 [xemacs-hg @ 2001-06-11 04:44:52 by martinb]
martinb
parents: 567
diff changeset
592 #define alloca __builtin_alloca
4f50f8a33f96 [xemacs-hg @ 2001-06-11 04:44:52 by martinb]
martinb
parents: 567
diff changeset
593 #elif defined __DECC
4f50f8a33f96 [xemacs-hg @ 2001-06-11 04:44:52 by martinb]
martinb
parents: 567
diff changeset
594 #include <alloca.h>
4f50f8a33f96 [xemacs-hg @ 2001-06-11 04:44:52 by martinb]
martinb
parents: 567
diff changeset
595 #pragma intrinsic(alloca)
4f50f8a33f96 [xemacs-hg @ 2001-06-11 04:44:52 by martinb]
martinb
parents: 567
diff changeset
596 #elif defined HAVE_ALLOCA_H
4f50f8a33f96 [xemacs-hg @ 2001-06-11 04:44:52 by martinb]
martinb
parents: 567
diff changeset
597 #include <alloca.h>
4f50f8a33f96 [xemacs-hg @ 2001-06-11 04:44:52 by martinb]
martinb
parents: 567
diff changeset
598 #elif defined(_AIX)
4f50f8a33f96 [xemacs-hg @ 2001-06-11 04:44:52 by martinb]
martinb
parents: 567
diff changeset
599 /* AIX requires this before any "real" code in the translation unit. */
4f50f8a33f96 [xemacs-hg @ 2001-06-11 04:44:52 by martinb]
martinb
parents: 567
diff changeset
600 #pragma alloca
4f50f8a33f96 [xemacs-hg @ 2001-06-11 04:44:52 by martinb]
martinb
parents: 567
diff changeset
601 #elif ! defined (alloca)
4f50f8a33f96 [xemacs-hg @ 2001-06-11 04:44:52 by martinb]
martinb
parents: 567
diff changeset
602 void *alloca ();
4f50f8a33f96 [xemacs-hg @ 2001-06-11 04:44:52 by martinb]
martinb
parents: 567
diff changeset
603 #endif
4f50f8a33f96 [xemacs-hg @ 2001-06-11 04:44:52 by martinb]
martinb
parents: 567
diff changeset
604 #endif /* C code */
4f50f8a33f96 [xemacs-hg @ 2001-06-11 04:44:52 by martinb]
martinb
parents: 567
diff changeset
605
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
606 /* The configuration script may define `opsysfile' to be the name of
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
607 the s/...h file that describes your operating system.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
608 The file name is chosen based on the configuration name. */
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
609
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
610 #if defined (__cplusplus) && !defined (NOT_C_CODE)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
611 extern "C" {
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
612 #endif
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
613
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
614 #undef config_opsysfile
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
615 #ifdef config_opsysfile
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
616 #include config_opsysfile
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
617 #endif
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
618
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
619 /* The configuration script may define `machfile' to be the name of
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
620 the m/...h file that describes the machine you are using.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
621 The file name is chosen based on the configuration name. */
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
622
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
623 #undef config_machfile
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
624 #ifdef config_machfile
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
625 #include config_machfile
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
626 #endif
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
627
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
628 #if defined (__cplusplus) && !defined (NOT_C_CODE)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
629 }
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
630 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
631
557
f486da5f1a3b [xemacs-hg @ 2001-05-22 06:49:12 by martinb]
martinb
parents: 535
diff changeset
632 /* s&m files shouldn't be required to define anything, or even to exist.
f486da5f1a3b [xemacs-hg @ 2001-05-22 06:49:12 by martinb]
martinb
parents: 535
diff changeset
633 If the s&m files don't define SYSTEM_TYPE, configure will select an
f486da5f1a3b [xemacs-hg @ 2001-05-22 06:49:12 by martinb]
martinb
parents: 535
diff changeset
634 appropriate default value. */
f486da5f1a3b [xemacs-hg @ 2001-05-22 06:49:12 by martinb]
martinb
parents: 535
diff changeset
635 #ifndef SYSTEM_TYPE
f486da5f1a3b [xemacs-hg @ 2001-05-22 06:49:12 by martinb]
martinb
parents: 535
diff changeset
636 #undef SYSTEM_TYPE
f486da5f1a3b [xemacs-hg @ 2001-05-22 06:49:12 by martinb]
martinb
parents: 535
diff changeset
637 #endif
f486da5f1a3b [xemacs-hg @ 2001-05-22 06:49:12 by martinb]
martinb
parents: 535
diff changeset
638
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
639 #if defined (USE_SYSTEM_MALLOC) && !defined (SYSTEM_MALLOC)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
640 #define SYSTEM_MALLOC
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
641 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
642
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
643 /* Use the relocating allocator for buffer space? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
644 #undef REL_ALLOC
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
645
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
646 /* Define the return type of signal handlers if the s/xxx.h file
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
647 did not already do so. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
648 #define RETSIGTYPE void
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
649
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
650 /* SIGTYPE is the macro we actually use. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
651 #ifndef SIGTYPE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
652 #define SIGTYPE RETSIGTYPE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
653 #define SIGRETURN return
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
654 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
655
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
656 /* Define DYNODUMP if it is necessary to properly dump on this system.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
657 Currently this is only Solaris 2.x, for x < 6. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
658 #undef DYNODUMP
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
659
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
660 /* Compile in support for Sun Sparcworks/WorkShop? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
661 #undef SUNPRO
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
662
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
663 /* Sun SparcStations, SGI machines, and HP9000s700s have built-in
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
664 support for playing sound files. (On Suns, the sound support is
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
665 usually found in /usr/demo/SOUND - you may need to install the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
666 "SUNWaudmo" package.) */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
667 #undef HAVE_NATIVE_SOUND
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
668 /* Native sound may be provided via soundcard.h, in various directories */
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
669 #undef SOUNDCARD_H_FILE
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
670
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
671 /* Compile in support for NAS (Network Audio System)?
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
672 NAS_NO_ERROR_JUMP means that the NAS libraries don't include some
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
673 error handling changes. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
674 #undef HAVE_NAS_SOUND
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
675 #undef NAS_NO_ERROR_JUMP
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
676
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
677 /* Compile in support for ESD (Enlightened Sound Daemon)? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
678 #undef HAVE_ESD_SOUND
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
679
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
680 /* Compile in support for SunPro usage-tracking code? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
681 #undef USAGE_TRACKING
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
682
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
683 /* Compile in support for Tooltalk? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
684 #undef TOOLTALK
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
685 /* tt_c.h might be in "Tt" or "desktop" subdirectories */
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
686 #undef TT_C_H_FILE
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
687
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
688 /* Toolkits used by lwlib for various widgets... */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
689 #undef LWLIB_USES_MOTIF
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
690 #undef LWLIB_USES_ATHENA
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
691 #undef LWLIB_MENUBARS_LUCID
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
692 #undef LWLIB_MENUBARS_MOTIF
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
693 #undef LWLIB_SCROLLBARS_LUCID
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
694 #undef LWLIB_SCROLLBARS_MOTIF
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
695 #undef LWLIB_SCROLLBARS_ATHENA
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
696 #undef LWLIB_SCROLLBARS_ATHENA3D
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
697 #undef LWLIB_DIALOGS_MOTIF
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
698 #undef LWLIB_DIALOGS_ATHENA
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
699 #undef LWLIB_DIALOGS_ATHENA3D
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
700 #undef LWLIB_TABS_LUCID
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
701 #undef LWLIB_WIDGETS_MOTIF
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
702 #undef LWLIB_WIDGETS_ATHENA
440
8de8e3f6228a Import from CVS: tag r21-2-28
cvs
parents: 438
diff changeset
703 #undef HAVE_ATHENA_3D
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
704
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
705 /* Other things that can be disabled by configure. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
706 #undef HAVE_MENUBARS
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
707 #undef HAVE_SCROLLBARS
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
708 #undef HAVE_DIALOGS
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
709 #undef HAVE_TOOLBARS
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
710 #undef HAVE_WIDGETS
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
711
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
712
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
713 #if defined (HAVE_MENUBARS) || defined (HAVE_DIALOGS)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
714 #define HAVE_POPUPS
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
715 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
716
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
717 /* If you are using SunOS 4.1.1 and X11r5, then you need this patch.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
718 There is a stupid bug in the SunOS libc.a: two functions which X11r5
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
719 uses, mbstowcs() and wcstombs(), are unusable when programs are
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
720 statically linked (as XEmacs must be) because the static version of
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
721 libc.a contains the *dynamic* versions of these functions. These
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
722 functions don't seem to be called when XEmacs is running, so it's
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
723 enough to define stubs for them.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
724
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
725 This appears to be fixed in SunOS 4.1.2.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
726
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
727 Also, SunOS 4.1.1 contains buggy versions of strcmp and strcpy that
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
728 sometimes reference memory past the end of the string, which can segv.
444
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
729 I don't know whether this has been fixed as of 4.1.2 or 4.1.3. */
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
730 #if defined (sparc) && !defined (USG)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
731 #define OBJECTS_SYSTEM sunOS-fix.o strcmp.o strcpy.o
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
732 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
733
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
734 /* If you turn this flag on, it forces encapsulation in all
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
735 circumstances; this can be used to make sure things compile OK
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
736 on various systems. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
737 #undef DEBUG_ENCAPSULATION
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
738
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
739 /* basic system calls */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
740
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
741 #if defined (INTERRUPTIBLE_IO) || defined (DEBUG_ENCAPSULATION)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
742 # define ENCAPSULATE_READ
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
743 # define ENCAPSULATE_WRITE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
744 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
745 #if defined (INTERRUPTIBLE_OPEN) || defined (MULE) || defined (DEBUG_ENCAPSULATION)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
746 # define ENCAPSULATE_OPEN
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
747 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
748 #if defined (INTERRUPTIBLE_CLOSE) || defined (DEBUG_ENCAPSULATION)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
749 # define ENCAPSULATE_CLOSE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
750 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
751
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
752 /* stdio calls */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
753
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
754 #if defined (INTERRUPTIBLE_IO) || defined (DEBUG_ENCAPSULATION)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
755 # define ENCAPSULATE_FREAD
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
756 # define ENCAPSULATE_FWRITE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
757 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
758 #if defined (INTERRUPTIBLE_OPEN) || defined (MULE) || defined (DEBUG_ENCAPSULATION)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
759 # define ENCAPSULATE_FOPEN
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
760 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
761 #if defined (INTERRUPTIBLE_CLOSE) || defined (DEBUG_ENCAPSULATION)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
762 # define ENCAPSULATE_FCLOSE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
763 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
764
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
765 /* directory calls */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
766
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
767 #if defined (MULE) || defined (DEBUG_ENCAPSULATION)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
768 # define ENCAPSULATE_CHDIR
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
769 # define ENCAPSULATE_MKDIR
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
770 # define ENCAPSULATE_OPENDIR
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
771 # define ENCAPSULATE_CLOSEDIR
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
772 # define ENCAPSULATE_READDIR
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
773 # define ENCAPSULATE_RMDIR
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
774
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
775 /* file-information calls */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
776
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
777 #ifdef HAVE_EACCESS
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
778 # define ENCAPSULATE_EACCESS
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
779 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
780 # define ENCAPSULATE_ACCESS
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
781 # define ENCAPSULATE_LSTAT
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
782 # define ENCAPSULATE_READLINK
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
783 # define ENCAPSULATE_STAT
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
784
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
785 /* file-manipulation calls */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
786
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
787 # define ENCAPSULATE_CHMOD
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
788 # define ENCAPSULATE_CREAT
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
789 # define ENCAPSULATE_LINK
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
790 # define ENCAPSULATE_RENAME
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
791 # define ENCAPSULATE_SYMLINK
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
792 # define ENCAPSULATE_UNLINK
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
793 # define ENCAPSULATE_EXECVP
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
794 #endif /* defined (MULE) || defined (DEBUG_ENCAPSULATION) */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
795
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
796 #ifdef HAVE_CANNA
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
797 # define CANNA2
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
798 # define CANNA_MULE
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
799 # define CANNA_PURESIZE 0
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
800 #else /* not CANNA */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
801 # define CANNA_PURESIZE 0
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
802 #endif /* not CANNA */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
803
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
804 #if defined (HAVE_SOCKS) && !defined (DO_NOT_SOCKSIFY)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
805 #define accept Raccept
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
806 #define bind Rbind
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
807 #define connect Rconnect
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
808 #define getsockname Rgetsockname
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
809 #define listen Rlisten
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
810 #endif /* HAVE_SOCKS && !DO_NOT_SOCKSIFY */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
811
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
812 #undef SIZEOF_SHORT
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
813 #undef SIZEOF_INT
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
814 #undef SIZEOF_LONG
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
815 #undef SIZEOF_LONG_LONG
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
816 #undef SIZEOF_VOID_P
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
817
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
818 #ifndef BITS_PER_CHAR
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
819 #define BITS_PER_CHAR 8
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
820 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
821 #define SHORTBITS (SIZEOF_SHORT * BITS_PER_CHAR)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
822 #define INTBITS (SIZEOF_INT * BITS_PER_CHAR)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
823 #define LONGBITS (SIZEOF_LONG * BITS_PER_CHAR)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
824 #define LONG_LONG_BITS (SIZEOF_LONG_LONG * BITS_PER_CHAR)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
825 #define VOID_P_BITS (SIZEOF_VOID_P * BITS_PER_CHAR)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
826
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
827 /* Use `INLINE_HEADER' to define inline functions in .h files.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
828 Use `inline static' to define inline functions in .c files.
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
829 See the Internals manual for examples and more information. */
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
830
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
831 /* Does the keyword `inline' exist? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
832 #undef inline
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
833
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
834 #if defined (__cplusplus) || ! defined (__GNUC__)
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
835 # define INLINE_HEADER inline static
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
836 #elif defined (DONT_EXTERN_INLINE_HEADER_FUNCTIONS)
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
837 # define INLINE_HEADER inline
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
838 #else
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
839 # define INLINE_HEADER inline extern
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
840 #endif
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
841
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
842 #ifndef NOT_C_CODE /* Actually means C or C++ */
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
843 # if defined (__cplusplus)
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
844 /* Avoid C++ keywords used as ordinary C identifiers */
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
845 # define class c_class
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
846 # define new c_new
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
847 # define this c_this
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
848 # define catch c_catch
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
849
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
850 # define EXTERN_C extern "C"
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
851 # else /* C code */
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
852 # define EXTERN_C extern
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
853 # endif
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 440
diff changeset
854 #endif /* C or C++ */
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
855
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
856 /* Strictly speaking, only int or unsigned int are valid types in a
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
857 bitfield. In practice, we would like to use enums as bitfields.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
858 The following should just result in warning avoidance:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
859 warning: nonportable bit-field type */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
860 #ifdef __GNUC__
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
861 #define enum_field(enumeration_type) enum enumeration_type
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
862 #else
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
863 #define enum_field(enumeration_type) unsigned int
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
864 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
865
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
866 /* We want to avoid saving the signal mask if possible, because
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
867 that necessitates a system call. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
868 #ifdef HAVE_SIGSETJMP
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
869 # define SETJMP(x) sigsetjmp (x, 0)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
870 # define LONGJMP(x, y) siglongjmp (x, y)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
871 # define JMP_BUF sigjmp_buf
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
872 #else
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
873 # define SETJMP(x) setjmp (x)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
874 # define LONGJMP(x, y) longjmp (x, y)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
875 # define JMP_BUF jmp_buf
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
876 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
877
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
878 /* movemail options */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
879 /* Should movemail use POP3 for mail access? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
880 #undef MAIL_USE_POP
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
881 /* Should movemail use kerberos for POP authentication? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
882 #undef KERBEROS
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
883 /* Should movemail use hesiod for getting POP server host? */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
884 #undef HESIOD
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
885 /* Determine type of mail locking. */
438
84b14dcb0985 Import from CVS: tag r21-2-27
cvs
parents: 434
diff changeset
886 #undef MAIL_LOCK_LOCKF
84b14dcb0985 Import from CVS: tag r21-2-27
cvs
parents: 434
diff changeset
887 #undef MAIL_LOCK_FLOCK
84b14dcb0985 Import from CVS: tag r21-2-27
cvs
parents: 434
diff changeset
888 #undef MAIL_LOCK_DOT
84b14dcb0985 Import from CVS: tag r21-2-27
cvs
parents: 434
diff changeset
889 #undef MAIL_LOCK_LOCKING
84b14dcb0985 Import from CVS: tag r21-2-27
cvs
parents: 434
diff changeset
890 #undef MAIL_LOCK_MMDF
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
891
567
4a2749e56f92 [xemacs-hg @ 2001-05-24 11:21:32 by yoshiki]
yoshiki
parents: 557
diff changeset
892 #undef HAVE_MKSTEMP
4a2749e56f92 [xemacs-hg @ 2001-05-24 11:21:32 by yoshiki]
yoshiki
parents: 557
diff changeset
893
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
894 #undef PREFIX_USER_DEFINED
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
895 #undef EXEC_PREFIX_USER_DEFINED
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
896 #undef MODULEDIR_USER_DEFINED
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
897 #undef SITEMODULEDIR_USER_DEFINED
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
898 #undef DOCDIR_USER_DEFINED
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
899 #undef LISPDIR_USER_DEFINED
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
900 #undef PACKAGE_PATH_USER_DEFINED
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
901 #undef SITELISPDIR_USER_DEFINED
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
902 #undef ARCHLIBDIR_USER_DEFINED
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
903 #undef ETCDIR_USER_DEFINED
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
904 #undef INFODIR_USER_DEFINED
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
905 #undef INFOPATH_USER_DEFINED
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
906
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
907 #undef PDUMP
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
908
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
909 #endif /* _SRC_CONFIG_H_ */