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