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