Remove GNU_LIBRARY_PENDING_OUTPUT_COUNT
[bpt/emacs.git] / admin / CPP-DEFINES
CommitLineData
aa5fea59
SM
1Here are some of the cpp macros used, together with some short explanation
2of their use. Feel free to add more macros and more categories.
8922df07
GM
3Most of these are from config.in, so it's probably better to put the
4explanations in that file. Ideally, everything would be defined and
5documented in config.in, and this file would not be necessary.
6
aa5fea59
SM
7
8** Distinguishing OSes **
9
8922df07
GM
10AIX
11_AIX
12BSD4_2
13BSD_SYSTEM
aa5fea59 14CYGWIN Compiling the Cygwin port.
077e3aa8 15__CYGWIN__ Ditto
8922df07
GM
16GNU_LINUX
17HPUX
18IRIX6_5
077e3aa8
EZ
19MSDOS Compiling the MS-DOS port.
20__MSDOS__ Ditto.
796bb936 21__DJGPP_MINOR__ Minor version number of the DJGPP library; used only in msdos.c and dosfns.c.
077e3aa8
EZ
22DOS_NT Compiling for either the MS-DOS or native MS-Windows port.
23WINDOWSNT Compiling the native MS-Windows (W32) port.
24__MINGW32__ Compiling the W32 port with the MinGW port of GCC.
25_MSC_VER Compiling the W32 port with the Microsoft C compiler.
14145fa3 26DARWIN_OS Compiling on Mac OS X or pure Darwin (and using s/darwin.h).
8922df07
GM
27SOLARIS2
28USG
29USG5
30USG5_4
aa5fea59
SM
31
32** Distinguishing GUIs **
33
077e3aa8 34HAVE_NTGUI Use the native W32 GUI for windows, frames, menus&scrollbars.
14145fa3 35HAVE_NS Use the NeXT/OpenStep/Cocoa UI under Mac OS X or GNUstep.
d1a5744d 36NS_IMPL_GNUSTEP Compile support for GNUstep implementation of NS GUI API.
edfda783 37NS_IMPL_COCOA Compile support for Cocoa (Apple) implementation of NS GUI API.
aa5fea59 38HAVE_X11 Compile support for the X11 GUI.
077e3aa8 39HAVE_X_WINDOWS Compile support for X Window system
3df7b338
GM
40 (It looks like, nowadays, if HAVE_X11 is set, HAVE_X_WINDOWS must
41 be, and vice versa. At least, this is true for configure, and
42 msdos; not sure about nt.)
aa5fea59
SM
43USE_LUCID Use the Lucid toolkit for menus&scrollbars. Requires HAVE_X11.
44USE_MOTIF Use the Motif toolkit for menus&scrollbars. Requires HAVE_X11.
45USE_GTK Use the Gtk toolkit for menus&scrollbars. Requires HAVE_X11.
46
077e3aa8
EZ
47** Frame types **
48
49FRAME_TERMCAP_P A tty (character terminal) frame.
50FRAME_X_P A frame on X Window system.
51FRAME_MSDOS_P An MS-DOS frame (used only by the DOS port).
077e3aa8
EZ
52FRAME_W32_P A frame using native MS-Windows GUI.
53FRAME_WINDOW_P A GUI frame (like X, w32, etc.)
54
c3179b06
EZ
55** Support for accessing other processes on the system **
56
57HAVE_PROCFS The /proc filesystem is supported.
c3179b06 58
077e3aa8 59** Compile-time options **
c3179b06 60
077e3aa8
EZ
61REL_ALLOC Compile in the relocatable memory allocator ralloc.c.
62SYSTEM_MALLOC Use the system library's malloc.
8922df07
GM
63subprocesses System can use subprocesses (for M-x shell for example).
64 Defined by default, only MSDOS undefines it.
65DEBUG_LISP_OBJECT_TYPE Define it in lisp.h enable compile time checks
66 on Lisp_Object use.
077e3aa8 67
8922df07 68** System specific macros
0f21c005
DN
69FIRST_PTY_LETTER
70HAVE_PTYS
0f21c005 71INTERRUPT_INPUT
0f21c005 72NARROWPROTO
0f21c005 73SEPCHAR
0f21c005 74SYSTEM_TYPE
0f21c005 75
2b5b9582 76** Misc macros
8922df07
GM
77USER_FULL_NAME If defined, overrides the default pw->pw_gecos for
78getting at the full user name. Only MSDOS overrides the default.
2b5b9582 79
8922df07
GM
80** Miscellaneous defines. Some of these might not be used in the code
81anymore, so they can be removed.
a0ce9ab7 82
a0ce9ab7 83AMPERSAND_FULL_NAME
a0ce9ab7 84BROKEN_DATAGRAM_SOCKETS
f3041af1 85BROKEN_FIONREAD
a0ce9ab7
DN
86BROKEN_GET_CURRENT_DIR_NAME
87BROKEN_NON_BLOCKING_CONNECT
88BROKEN_PTY_READ_AFTER_EAGAIN
89BROKEN_SA_RESTART
90BROKEN_SIGAIO
f3041af1 91BROKEN_SIGIO
a0ce9ab7
DN
92BROKEN_SIGPOLL
93BROKEN_SIGPTY
d35e1cd7 94CLASH_DETECTION
f3041af1
DN
95DATA_SEG_BITS
96DATA_START
a0ce9ab7 97DBL_MIN_REPLACEMENT
a0ce9ab7
DN
98DEFAULT_SOUND_DEVICE
99DEVICE_SEP
100DIRECTORY_SEP
101DONT_REOPEN_PTY
a0ce9ab7
DN
102DOUG_LEA_MALLOC
103DebPrint
104EMACSDEBUG
105EMACS_CONFIGURATION
106EMACS_CONFIG_OPTIONS
107EMACS_INT
108EMACS_UINT
a0ce9ab7 109FLOAT_CHECK_DOMAIN
a0ce9ab7
DN
110GC_LISP_OBJECT_ALIGNMENT
111GC_MARK_SECONDARY_STACK
f3041af1
DN
112GC_MARK_STACK
113GC_SETJMP_WORKS
a0ce9ab7 114GMALLOC_INHIBIT_VALLOC
f3041af1 115GNU_MALLOC
a0ce9ab7 116HAVE_AIX_SMT_EXP
a0ce9ab7 117HAVE_CBRT
f3041af1 118HAVE_CLOSEDIR
a0ce9ab7
DN
119HAVE_DUP2
120HAVE_EUIDACCESS
a0ce9ab7
DN
121HAVE_FMOD
122HAVE_FPATHCONF
123HAVE_FREXP
124HAVE_FSYNC
a0ce9ab7 125HAVE_GETCWD
a0ce9ab7
DN
126HAVE_GETHOSTNAME
127HAVE_GETLOADAVG
128HAVE_GETPAGESIZE
129HAVE_GETPT
f3041af1 130HAVE_GETTIMEOFDAY
a0ce9ab7
DN
131HAVE_GETWD
132HAVE_H_ERRNO
f3041af1 133HAVE_INET_SOCKETS
a0ce9ab7 134HAVE_INVERSE_HYPERBOLIC
a0ce9ab7 135HAVE_LIBKSTAT
a0ce9ab7
DN
136HAVE_LIMITS_H
137HAVE_LINUX_VERSION_H
138HAVE_LOGB
139HAVE_LONG_FILE_NAMES
140HAVE_LRAND48
141HAVE_MENUS
a0ce9ab7
DN
142HAVE_MKTIME
143HAVE_MOUSE
a0ce9ab7 144HAVE_PSTAT_GETDYNAMIC
a0ce9ab7
DN
145HAVE_PWD_H
146HAVE_RANDOM
a0ce9ab7 147HAVE_RES_INIT
a0ce9ab7 148HAVE_RINT
f3041af1 149HAVE_SELECT
a0ce9ab7
DN
150HAVE_SETLOCALE
151HAVE_SETPGID
152HAVE_SETRLIMIT
153HAVE_SETSID
154HAVE_SHUTDOWN
d35e1cd7 155HAVE_SOCKETS
a0ce9ab7
DN
156HAVE_SOUND
157HAVE_STDLIB_H
a0ce9ab7 158HAVE_STRFTIME
f2a77c3a 159HAVE_STRING_H
a0ce9ab7 160HAVE_STRUCT_UTIMBUF
a0ce9ab7
DN
161HAVE_SYS_SELECT_H
162HAVE_SYS_SYSTEMINFO_H
163HAVE_SYS_TIMEB_H
164HAVE_SYS_TIME_H
f3041af1 165HAVE_TCATTR
a0ce9ab7
DN
166HAVE_TM_ZONE
167HAVE_TZSET
f3041af1 168HAVE_UNISTD_H
a0ce9ab7 169HAVE_UTIME_H
a0ce9ab7
DN
170HAVE_WINDOW_SYSTEM
171HAVE_WORKING_VFORK
172HAVE_XRMSETDATABASE
a0ce9ab7 173INTERNAL_TERMINAL
a0ce9ab7
DN
174IS_ANY_SEP
175IS_DIRECTORY_SEP
0176a259 176LINUX_VERSION_CODE
a0ce9ab7 177LOCALTIME_CACHE
1495e2fc 178MAIL_USE_FLOCK
a0ce9ab7
DN
179MAIL_USE_LOCKF
180MAIL_USE_POP
181MAIL_USE_SYSTEM_LOCK
182MAXPATHLEN
a0ce9ab7 183MODE_LINE_BINARY_TEXT
a0ce9ab7 184MUST_UNDEF__STDC__
f3041af1 185NLIST_STRUCT
f2a77c3a 186NO_ABORT
a0ce9ab7 187NO_EDITRES
a0ce9ab7 188NO_MATHERR
f3041af1 189NO_TERMIO
f3041af1
DN
190NSIG
191NSIG_MINIMUM
a0ce9ab7 192NULL_DEVICE
f3041af1 193ORDINARY_LINK
a0ce9ab7 194O_APPEND
a0ce9ab7
DN
195O_RDONLY
196O_RDWR
a0ce9ab7 197PAGESIZE
f3041af1 198PENDING_OUTPUT_COUNT
f3041af1
DN
199PREFER_VSUSP
200PTY_ITERATION
d35e1cd7 201PTY_NAME_SPRINTF
f3041af1 202PTY_OPEN
d35e1cd7 203PTY_TTY_NAME_SPRINTF
f3041af1 204PURESIZE
f3041af1 205RUN_TIME_REMAP
a0ce9ab7 206SA_RESTART
f3041af1 207SEGMENT_MASK
a0ce9ab7 208SETPGRP_RELEASES_CTTY
f3041af1 209SETUP_SLAVE_PTY
a0ce9ab7
DN
210SIGALRM
211SIGCHLD
212SIGHUP
213SIGKILL
f3041af1 214SIGNALS_VIA_CHARACTERS
a0ce9ab7
DN
215SIGPIPE
216SIGQUIT
217SIGTRAP
a0ce9ab7 218STDC_HEADERS
a0ce9ab7 219SYSTEM_PURESIZE_EXTRA
bbbac910 220SYSTEM_MALLOC
f3041af1 221SYSV_SYSTEM_DIR
f2a77c3a
DN
222TAB3
223TABDLY
a0ce9ab7 224TERM
a0ce9ab7
DN
225TIME_WITH_SYS_TIME
226TIOCSIGSEND
227TM_IN_SYS_TIME
f3041af1 228ULIMIT_BREAK_VALUE
a0ce9ab7
DN
229UNIX98_PTYS
230USE_CRT_DLL
a0ce9ab7 231USE_TOOLKIT_SCROLL_BARS
a0ce9ab7
DN
232USG_SUBTTY_WORKS
233VALBITS
f2a77c3a 234XOS_NEEDS_TIME_H
a0ce9ab7 235_FILE_OFFSET_BITS
a0ce9ab7
DN
236_LP64
237_MALLOC_INTERNAL
238_NAIVE_DOS_REGS
239_VARARGS_
240_WINSOCKAPI_
241_WINSOCK_H
f3041af1
DN
242_longjmp
243_setjmp
a0ce9ab7
DN
244_start
245abort
246access
f3041af1 247alloca
a0ce9ab7 248brk
a0ce9ab7
DN
249calloc
250chdir
251chmod
252chown
253close
a0ce9ab7
DN
254creat
255ctime
a0ce9ab7
DN
256dup
257dup2
258edata
f3041af1 259emacs
f3041af1 260etext
a0ce9ab7
DN
261execlp
262execvp
a0ce9ab7 263fdopen
a0ce9ab7 264fileno
a0ce9ab7 265fopen
a0ce9ab7
DN
266free
267fsync
268ftruncate
269fwrite
270getdefdir
271getdisk
272getenv
273getpid
274getuid
a0ce9ab7 275gmtime
f3041af1 276index
a0ce9ab7
DN
277isatty
278kill
279link
280linux
281localtime
282logb
283lseek
a0ce9ab7 284malloc
a0ce9ab7
DN
285mkdir
286mktemp
287open
288pclose
289pipe
290popen
a0ce9ab7
DN
291random
292read
293realloc
294rename
295rindex
296rmdir
297sbrk
298select
299sigmask
300signal
301sigsetmask
302sleep
303spawnve
304srandom
a0ce9ab7 305strdup
a0ce9ab7
DN
306stricmp
307strnicmp
308strupr
a0ce9ab7
DN
309sys_nerr
310system
311temacs
312tzname
313tzset
314umask
315unix
316unlink
317utimbuf
318utime
319vfork
320wait
321write
322xfree