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