* src/minibuf.c (read_minibuf): Ignore caller's inhibit-read-only.
[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
DN
97DEFAULT_SOUND_DEVICE
98DEVICE_SEP
99DIRECTORY_SEP
100DONT_REOPEN_PTY
a0ce9ab7
DN
101DOUG_LEA_MALLOC
102DebPrint
103EMACSDEBUG
104EMACS_CONFIGURATION
105EMACS_CONFIG_OPTIONS
106EMACS_INT
107EMACS_UINT
a0ce9ab7 108FLOAT_CHECK_DOMAIN
a0ce9ab7 109GC_MARK_SECONDARY_STACK
f3041af1
DN
110GC_MARK_STACK
111GC_SETJMP_WORKS
f3041af1 112GNU_MALLOC
a0ce9ab7 113HAVE_AIX_SMT_EXP
a0ce9ab7 114HAVE_CBRT
f3041af1 115HAVE_CLOSEDIR
a0ce9ab7
DN
116HAVE_DUP2
117HAVE_EUIDACCESS
a0ce9ab7
DN
118HAVE_FMOD
119HAVE_FPATHCONF
120HAVE_FREXP
121HAVE_FSYNC
a0ce9ab7 122HAVE_GETCWD
a0ce9ab7
DN
123HAVE_GETHOSTNAME
124HAVE_GETLOADAVG
125HAVE_GETPAGESIZE
126HAVE_GETPT
f3041af1 127HAVE_GETTIMEOFDAY
a0ce9ab7
DN
128HAVE_GETWD
129HAVE_H_ERRNO
f3041af1 130HAVE_INET_SOCKETS
a0ce9ab7 131HAVE_INVERSE_HYPERBOLIC
a0ce9ab7 132HAVE_LIBKSTAT
a0ce9ab7
DN
133HAVE_LINUX_VERSION_H
134HAVE_LOGB
135HAVE_LONG_FILE_NAMES
136HAVE_LRAND48
137HAVE_MENUS
a0ce9ab7 138HAVE_MOUSE
a0ce9ab7 139HAVE_PSTAT_GETDYNAMIC
a0ce9ab7
DN
140HAVE_PWD_H
141HAVE_RANDOM
a0ce9ab7 142HAVE_RES_INIT
a0ce9ab7 143HAVE_RINT
f3041af1 144HAVE_SELECT
a0ce9ab7
DN
145HAVE_SETLOCALE
146HAVE_SETPGID
147HAVE_SETRLIMIT
148HAVE_SETSID
149HAVE_SHUTDOWN
d35e1cd7 150HAVE_SOCKETS
a0ce9ab7
DN
151HAVE_SOUND
152HAVE_STDLIB_H
f2a77c3a 153HAVE_STRING_H
a0ce9ab7 154HAVE_STRUCT_UTIMBUF
a0ce9ab7
DN
155HAVE_SYS_SELECT_H
156HAVE_SYS_SYSTEMINFO_H
157HAVE_SYS_TIMEB_H
158HAVE_SYS_TIME_H
f3041af1 159HAVE_TCATTR
a0ce9ab7
DN
160HAVE_TM_ZONE
161HAVE_TZSET
f3041af1 162HAVE_UNISTD_H
a0ce9ab7 163HAVE_UTIME_H
a0ce9ab7
DN
164HAVE_WINDOW_SYSTEM
165HAVE_WORKING_VFORK
166HAVE_XRMSETDATABASE
a0ce9ab7 167INTERNAL_TERMINAL
a0ce9ab7
DN
168IS_ANY_SEP
169IS_DIRECTORY_SEP
a0ce9ab7 170LOCALTIME_CACHE
1495e2fc 171MAIL_USE_FLOCK
a0ce9ab7
DN
172MAIL_USE_LOCKF
173MAIL_USE_POP
174MAIL_USE_SYSTEM_LOCK
175MAXPATHLEN
a0ce9ab7 176MUST_UNDEF__STDC__
f3041af1 177NLIST_STRUCT
f2a77c3a 178NO_ABORT
a0ce9ab7 179NO_EDITRES
a0ce9ab7 180NO_MATHERR
f3041af1 181NO_TERMIO
f3041af1
DN
182NSIG
183NSIG_MINIMUM
a0ce9ab7 184NULL_DEVICE
f3041af1 185ORDINARY_LINK
a0ce9ab7
DN
186O_RDONLY
187O_RDWR
a0ce9ab7 188PAGESIZE
f3041af1 189PENDING_OUTPUT_COUNT
f3041af1
DN
190PREFER_VSUSP
191PTY_ITERATION
d35e1cd7 192PTY_NAME_SPRINTF
f3041af1 193PTY_OPEN
d35e1cd7 194PTY_TTY_NAME_SPRINTF
f3041af1 195PURESIZE
f3041af1 196RUN_TIME_REMAP
a0ce9ab7 197SA_RESTART
a0ce9ab7 198SETPGRP_RELEASES_CTTY
f3041af1 199SETUP_SLAVE_PTY
a0ce9ab7
DN
200SIGALRM
201SIGCHLD
202SIGHUP
203SIGKILL
f3041af1 204SIGNALS_VIA_CHARACTERS
a0ce9ab7
DN
205SIGPIPE
206SIGQUIT
207SIGTRAP
a0ce9ab7 208STDC_HEADERS
a0ce9ab7 209SYSTEM_PURESIZE_EXTRA
bbbac910 210SYSTEM_MALLOC
f2a77c3a
DN
211TAB3
212TABDLY
a0ce9ab7 213TERM
a0ce9ab7
DN
214TIME_WITH_SYS_TIME
215TIOCSIGSEND
216TM_IN_SYS_TIME
f3041af1 217ULIMIT_BREAK_VALUE
a0ce9ab7
DN
218UNIX98_PTYS
219USE_CRT_DLL
a0ce9ab7 220USE_TOOLKIT_SCROLL_BARS
a0ce9ab7
DN
221USG_SUBTTY_WORKS
222VALBITS
f2a77c3a 223XOS_NEEDS_TIME_H
a0ce9ab7 224_FILE_OFFSET_BITS
a0ce9ab7 225_LP64
a0ce9ab7
DN
226_NAIVE_DOS_REGS
227_VARARGS_
228_WINSOCKAPI_
229_WINSOCK_H
f3041af1
DN
230_longjmp
231_setjmp
a0ce9ab7
DN
232_start
233abort
f3041af1 234alloca
38a414f0
GM
235close
236emacs
237free
238gmtime
239localtime
240malloc
241random
242read
243realloc
244select
245umask
246vfork
247
248
249src/sysdep.c:
250write
251
252src/syssignal.h:
253signal
254sigmask
255sigsetmask
256
257
258lib/dup2.c:
259dup2
260
261lib/signal.h:
262signal
263
264lib/sigprocmask.c:
265signal
266
267lib/stdio.h:
268fdopen
269fopen
270fwrite
271popen
272rename
273
274lib/stdlib.h:
275calloc
276srandom (conf_post.h may undo)
277
278lib/strftime.c:
279tzname
280tzset
281
282lib/sys/stat.h:
283mkdir
284
285lib/unistd.h:
286chown
287dup
288dup2
289ftruncate
290isatty
291link
292lseek
293pipe
294rmdir
295sleep
296unlink
297
298
299MS compat stuff:
300
301ms-w32.h:
302access
a0ce9ab7
DN
303calloc
304chdir
305chmod
306chown
a0ce9ab7
DN
307creat
308ctime
a0ce9ab7
DN
309dup
310dup2
a0ce9ab7 311execlp
38a414f0 312execvp (also emacsclient.c [WINDOWSNT])
a0ce9ab7 313fdopen
a0ce9ab7 314fileno
a0ce9ab7 315fopen
a0ce9ab7
DN
316fsync
317ftruncate
a0ce9ab7
DN
318getdefdir
319getdisk
a0ce9ab7 320getpid
a0ce9ab7
DN
321isatty
322kill
323link
a0ce9ab7
DN
324logb
325lseek
a0ce9ab7
DN
326mkdir
327mktemp
328open
329pclose
330pipe
331popen
a0ce9ab7 332rename
a0ce9ab7 333rmdir
a0ce9ab7 334signal
a0ce9ab7
DN
335sleep
336spawnve
a0ce9ab7 337strdup
a0ce9ab7
DN
338stricmp
339strnicmp
340strupr
a0ce9ab7 341sys_nerr
a0ce9ab7
DN
342tzname
343tzset
344umask
a0ce9ab7
DN
345unlink
346utimbuf
347utime
38a414f0 348wait (also movemail.c [WINDOWSNT])
a0ce9ab7 349write
38a414f0
GM
350
351lib-src/ntlib:
352access
353chdir
354chmod
355creat
356dup
357dup2
358execlp
359execvp
360fdopen
361fileno
362fopen
363getpid
364index
365isatty
366logb
367lseek
368mkdir
369mktemp
370open
371pclose
372pipe
373popen
374rmdir
375rindex
376sleep
377umask
378unlink
379utime