* s/usg5-4.h (ADDR_CORRECT): Remove, unused.
[bpt/emacs.git] / admin / CPP-DEFINES
1 Here are some of the cpp macros used, together with some short explanation
2 of their use. Feel free to add more macros and more categories.
3
4 ** Distinguishing OSes **
5
6 MAC_OS8 Compiling for Mac OS Classic (v8 or v9). No longer supported, all code using it can be removed.
7 MAC_OSX Compiling for Mac OS X. Not bare Darwin.
8 CYGWIN Compiling the Cygwin port.
9 __CYGWIN__ Ditto
10 MSDOS Compiling the MS-DOS port.
11 __MSDOS__ Ditto.
12 __DJGPP__ Major version number of the DJGPP library for the DOS port.
13 __DJGPP_MINOR__ Minor version number of the DJGPP library.
14 __GO32__ Compiling the DOS port with DJGPP v1.x (obsolete).
15 DOS_NT Compiling for either the MS-DOS or native MS-Windows port.
16 WINDOWSNT Compiling the native MS-Windows (W32) port.
17 __MINGW32__ Compiling the W32 port with the MinGW port of GCC.
18 _MSC_VER Compiling the W32 port with the Microsoft C compiler.
19 USE_LISP_UNION_TYPE Define it in lisp.h to make Lisp_Object be a union type instead of the default int.
20
21 ** Distinguishing GUIs **
22
23 HAVE_NTGUI Use the native W32 GUI for windows, frames, menus&scrollbars.
24 MAC_OS Compiling for the `mac' window-system.
25 HAVE_CARBON Compile support for the Carbon GUI. Requires MAC_OS?
26 HAVE_NS Use the NeXT/OpenStep/Cocoa UI under Mac OS X or GNUstep.
27 NS_IMPL_GNUSTEP Compile support for GNUSTEP implementation of NS GUI API.
28 NS_IMPL_COCOA Compile support for Cocoa (Apple) implementation of NS GUI API.
29 HAVE_X11 Compile support for the X11 GUI.
30 HAVE_X_WINDOWS Compile support for X Window system
31 X11 ?? Makefile.in suggests it's equivalent to HAVE_X11
32 USE_LUCID Use the Lucid toolkit for menus&scrollbars. Requires HAVE_X11.
33 USE_MOTIF Use the Motif toolkit for menus&scrollbars. Requires HAVE_X11.
34 USE_GTK Use the Gtk toolkit for menus&scrollbars. Requires HAVE_X11.
35
36 ** Frame types **
37
38 FRAME_TERMCAP_P A tty (character terminal) frame.
39 FRAME_X_P A frame on X Window system.
40 FRAME_MSDOS_P An MS-DOS frame (used only by the DOS port).
41 FRAME_MAC_P A Mac frame.
42 FRAME_W32_P A frame using native MS-Windows GUI.
43 FRAME_WINDOW_P A GUI frame (like X, w32, etc.)
44
45 ** Compile-time options **
46 REL_ALLOC Compile in the relocatable memory allocator ralloc.c.
47 SYSTEM_MALLOC Use the system library's malloc.
48 subprocesses System can use subprocesses (for M-x shell for example). Defined by default, only MSDOS undefines it.
49
50 ** Replace, the definition is trivial: SWITCH_ENUM_CAST
51
52 ** Defines from src/m/*.h and src/s/*.h. Some of these might not be used in the code anymore, so they can be removed. The HAVE_* definitions are probably handled by autoconf, so it might be possible to just remove them from src/[sm]/*.h.
53
54
55 AIX
56 AMPERSAND_FULL_NAME
57 A_TEXT_OFFSET
58 A_TEXT_SEEK
59 BCOPY_DOWNWARD_SAFE
60 BCOPY_UPWARD_SAFE
61 BITS_PER_EMACS_INT
62 BITS_PER_LONG
63 BROKEN_DATAGRAM_SOCKETS
64 BROKEN_FIONREAD
65 BROKEN_GET_CURRENT_DIR_NAME
66 BROKEN_NON_BLOCKING_CONNECT
67 BROKEN_PTY_READ_AFTER_EAGAIN
68 BROKEN_SA_RESTART
69 BROKEN_SIGAIO
70 BROKEN_SIGIO
71 BROKEN_SIGPOLL
72 BROKEN_SIGPTY
73 BSD4_2
74 BSD4_3
75 BSD_PGRPS
76 BSD_SYSTEM
77 BSTRING
78 CANNOT_DUMP
79 CLASH_DETECTION
80 COFF
81 COFF_BSD_SYMBOLS
82 CRT0_DUMMIES
83 C_DEBUG_SWITCH
84 C_SWITCH_MACHINE
85 C_SWITCH_SYSTEM
86 C_SWITCH_SYSTEM_TEMACS
87 C_SWITCH_X_SYSTEM
88 DATA_SEG_BITS
89 DATA_START
90 DBL_MIN_REPLACEMENT
91 DECLARE_GETPWUID_WITH_UID_T
92 DEFAULT_SOUND_DEVICE
93 DEVICE_SEP
94 DIRECTORY_SEP
95 DONT_REOPEN_PTY
96 DOT_GLOBAL_START
97 DOUG_LEA_MALLOC
98 DebPrint
99 EMACSDEBUG
100 EMACS_CONFIGURATION
101 EMACS_CONFIG_OPTIONS
102 EMACS_INT
103 EMACS_UINT
104 END_FILES_1
105 EXPLICIT_SIGN_EXTEND
106 FILE_SYSTEM_CASE
107 FIRST_PTY_LETTER
108 FLOAT_CHECK_DOMAIN
109 FSCALE
110 Fread
111 GAP_USE_BCOPY
112 GC_LISP_OBJECT_ALIGNMENT
113 GC_MARK_SECONDARY_STACK
114 GC_MARK_STACK
115 GC_SETJMP_WORKS
116 GMALLOC_INHIBIT_VALLOC
117 GNU_LIBRARY_PENDING_OUTPUT_COUNT
118 GNU_LINUX
119 GNU_MALLOC
120 HAVE_AIX_SMT_EXP
121 HAVE_ALLOCA
122 HAVE_AVAILABILITYMACROS_H
123 HAVE_BCMP
124 HAVE_BCOPY
125 HAVE_CBRT
126 HAVE_CLOSEDIR
127 HAVE_CRTIN
128 HAVE_DUP2
129 HAVE_EUIDACCESS
130 HAVE_FMOD
131 HAVE_FPATHCONF
132 HAVE_FREXP
133 HAVE_FSYNC
134 HAVE_FTIME
135 HAVE_GETCWD
136 HAVE_GETDOMAINNAME
137 HAVE_GETHOSTNAME
138 HAVE_GETLOADAVG
139 HAVE_GETPAGESIZE
140 HAVE_GETPT
141 HAVE_GETTIMEOFDAY
142 HAVE_GETWD
143 HAVE_H_ERRNO
144 HAVE_INDEX
145 HAVE_INET_SOCKETS
146 HAVE_INVERSE_HYPERBOLIC
147 HAVE_LIB64_DIR
148 HAVE_LIBKSTAT
149 HAVE_LIBNCURSES
150 HAVE_LIBPTHREADS
151 HAVE_LIBXMU
152 HAVE_LIMITS_H
153 HAVE_LINUX_VERSION_H
154 HAVE_LOGB
155 HAVE_LONG_FILE_NAMES
156 HAVE_LRAND48
157 HAVE_MENUS
158 HAVE_MKDIR
159 HAVE_MKTIME
160 HAVE_MOUSE
161 HAVE_PERROR
162 HAVE_PSTAT_GETDYNAMIC
163 HAVE_PTYS
164 HAVE_PWD_H
165 HAVE_RANDOM
166 HAVE_RENAME
167 HAVE_RES_INIT
168 HAVE_RINDEX
169 HAVE_RINT
170 HAVE_RMDIR
171 HAVE_SELECT
172 HAVE_SETLOCALE
173 HAVE_SETPGID
174 HAVE_SETRLIMIT
175 HAVE_SETSID
176 HAVE_SHUTDOWN
177 HAVE_SOCKETS
178 HAVE_SOUND
179 HAVE_STDLIB_H
180 HAVE_STRERROR
181 HAVE_STRFTIME
182 HAVE_STRING_H
183 HAVE_STRUCT_UTIMBUF
184 HAVE_SYSINFO
185 HAVE_SYSV_SIGPAUSE
186 HAVE_SYS_SELECT_H
187 HAVE_SYS_SYSTEMINFO_H
188 HAVE_SYS_TIMEB_H
189 HAVE_SYS_TIME_H
190 HAVE_TCATTR
191 HAVE_TERMIO
192 HAVE_TERMIOS
193 HAVE_TERMIOS_H
194 HAVE_TEXT_START
195 HAVE_TIMEVAL
196 HAVE_TM_ZONE
197 HAVE_TZSET
198 HAVE_UNISTD_H
199 HAVE_UTIMES
200 HAVE_UTIME_H
201 HAVE_VOLATILE
202 HAVE_WINDOW_SYSTEM
203 HAVE_WORKING_VFORK
204 HAVE_XRMSETDATABASE
205 HPUX
206 IBMR2AIX
207 INHIBIT_X11R6_XIM
208 INTERNAL_TERMINAL
209 INTERRUPT_INPUT
210 IS_ANY_SEP
211 IS_DIRECTORY_SEP
212 KERNEL_FILE
213 LDAV_SYMBOL
214 LD_SWITCH_MACHINE
215 LD_SWITCH_MACHINE_TEMACS
216 LD_SWITCH_SYSTEM
217 LD_SWITCH_SYSTEM_TEMACS
218 LD_SWITCH_SYSTEM_tmp
219 LD_SWITCH_X_DEFAULT
220 LIBS_DEBUG
221 LIBS_IMAGE
222 LIBS_MACHINE
223 LIBS_SYSTEM
224 LIBS_TERMCAP
225 LIBX11_SYSTEM
226 LIBXMU
227 LIB_GCC
228 LIB_MATH
229 LIB_MOTIF
230 LIB_STANDARD
231 LINKER
232 LINK_CRTL_SHARE
233 LINUX_VERSION_CODE
234 LISP_FLOAT_TYPE
235 LNOFLSH
236 LOAD_AVE_CVT
237 LOAD_AVE_TYPE
238 LOCALTIME_CACHE
239 MAIL_USE_FLOCK
240 MAIL_USE_LOCKF
241 MAIL_USE_POP
242 MAIL_USE_SYSTEM_LOCK
243 MAXPATHLEN
244 MAX_PRINT_CHARS
245 MIN_PTY_KERNEL_VERSION -- only used on Mac
246 MODE_LINE_BINARY_TEXT
247 MULTI_KBOARD
248 MUST_UNDEF__STDC__
249 NARROWPROTO
250 NEED_BSDTTY
251 NEED_ERRNO
252 NEED_LIBW
253 NEED_UNISTD_H
254 NLIST_STRUCT
255 NOMULTIPLEJOBS
256 NONSYSTEM_DIR_LIBRARY
257 NOT_C_CODE
258 NOT_USING_MOTIF
259 NO_ABORT
260 NO_ARG_ARRAY
261 NO_EDITRES
262 NO_HYPHENS_IN_FILENAMES
263 NO_MATHERR
264 NO_REMAP
265 NO_SHARED_LIBS
266 NO_SOCK_SIGIO
267 NO_TERMIO
268 NSIG
269 NSIG_MINIMUM
270 NULL
271 NULL_DEVICE
272 N_TXTOFF
273 ORDINARY_LINK
274 OTHER_FILES
275 O_APPEND
276 O_BINARY
277 O_CREAT
278 O_EXCL
279 O_RDONLY
280 O_RDWR
281 O_TEXT
282 O_TRUNC
283 O_WRONLY
284 PAGESIZE
285 PENDING_OUTPUT_COUNT
286 POSIX
287 POSIX_SIGNALS
288 PREFER_VSUSP
289 PTY_ITERATION
290 PTY_NAME_SPRINTF
291 PTY_OPEN
292 PTY_TTY_NAME_SPRINTF
293 PURESIZE
294 RUN_TIME_REMAP
295 SA_RESTART
296 SECTION_ALIGNMENT
297 SEGMENT_MASK
298 SEPCHAR
299 SETPGRP_RELEASES_CTTY
300 SETUP_SLAVE_PTY
301 SHARABLE_LIB_BUG
302 SIGALRM
303 SIGCHLD
304 SIGHUP
305 SIGKILL
306 SIGNALS_VIA_CHARACTERS
307 SIGPIPE
308 SIGQUIT
309 SIGTRAP
310 SIGTYPE
311 SOLARIS2
312 START_FILES
313 START_FILES_1
314 STDC_HEADERS
315 SYMS_SYSTEM
316 SYSTEM_PURESIZE_EXTRA
317 SYSTEM_TYPE
318 SYSTEM_MALLOC
319 SYSV_SYSTEM_DIR
320 Srandom
321 TAB3
322 TABDLY
323 TERM
324 TERMINFO
325 TEXT_END
326 TEXT_START
327 THIS_IS_CONFIGURE
328 THIS_IS_MAKEFILE
329 TIME_WITH_SYS_TIME
330 TIOCSIGSEND
331 TM_IN_SYS_TIME
332 ULIMIT_BREAK_VALUE
333 UNEXEC
334 UNIX98_PTYS
335 USE_CRT_DLL
336 USE_MAC_IMAGE_IO
337 USE_MMAP_FOR_BUFFERS
338 USE_TOOLKIT_SCROLL_BARS
339 USG
340 USG5
341 USG5_4
342 USG_SUBTTY_WORKS
343 VALBITS
344 VIRT_ADDR_VARIES
345 VMS
346 WORDS_BIG_ENDIAN
347 WRETCODE
348 XINT
349 XOS_NEEDS_TIME_H
350 XPNTR
351 XSET
352 XUINT
353 _AIX
354 _ARCH_PPC64
355 _CALLBACK_
356 _FILE_OFFSET_BITS
357 _LP64
358 _MALLOC_INTERNAL
359 _NAIVE_DOS_REGS
360 _VARARGS_
361 _WINSOCKAPI_
362 _WINSOCK_H
363 __ELF__
364 __FreeBSD__
365 __FreeBSD_version
366 __GNUC__
367 __GNU_LIBRARY__
368 __GNUC_MINOR__
369 __NetBSD__
370 __OpenBSD__
371 __STDC__
372 __arch64__
373 __cplusplus
374 __hpux
375 __ia64__
376 __linux__
377 __mc68000__
378 __mips__
379 _longjmp
380 _setjmp
381 _start
382 abort
383 access
384 alloca
385 bcmp
386 bcopy
387 brk
388 bzero
389 calloc
390 chdir
391 chmod
392 chown
393 close
394 const
395 creat
396 ctime
397 dup
398 dup2
399 edata
400 emacs
401 etext
402 execlp
403 execvp
404 fdopen
405 fileno
406 fopen
407 free
408 fsync
409 ftruncate
410 fwrite
411 getdefdir
412 getdisk
413 getenv
414 getpid
415 getuid
416 gmtime
417 i386
418 index
419 init_process
420 isatty
421 kill
422 link
423 linux
424 localtime
425 logb
426 lseek
427 m68k
428 malloc
429 mkdir
430 mktemp
431 open
432 pclose
433 pipe
434 popen
435 random
436 read
437 realloc
438 rename
439 rindex
440 rmdir
441 sbrk
442 select
443 sigmask
444 signal
445 sigsetmask
446 sleep
447 spawnve
448 srandom
449 strdup
450 strerror
451 stricmp
452 strnicmp
453 strupr
454 sys_nerr
455 system
456 temacs
457 tzname
458 tzset
459 umask
460 unix
461 unlink
462 utimbuf
463 utime
464 vfork
465 wait
466 write
467 xfree
468
469 # arch-tag: bc80061a-1168-4911-9766-46aaf2640250