1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-11-25 07:28:20 +00:00
emacs/admin/CPP-DEFINES
2008-02-24 18:36:51 +00:00

249 lines
4.5 KiB
Plaintext

Here are some of the cpp macros used, together with some short explanation
of their use. Feel free to add more macros and more categories.
** Distinguishing OSes **
MAC_OS Compiling for the `mac' window-system.
MAC_OS8 Compiling for Mac OS Classic (v8 or v9). No longer supported, all code using it can be removed.
MAC_OSX Compiling for Mac OS X. Not bare Darwin.
CYGWIN Compiling the Cygwin port.
__CYGWIN__ Ditto
MSDOS Compiling the MS-DOS port.
__MSDOS__ Ditto.
__DJGPP__ Major version number of the DJGPP library for the DOS port.
__DJGPP_MINOR__ Minor version number of the DJGPP library.
__GO32__ Compiling the DOS port with DJGPP v1.x (obsolete).
DOS_NT Compiling for either the MS-DOS or native MS-Windows port.
WINDOWSNT Compiling the native MS-Windows (W32) port.
__MINGW32__ Compiling the W32 port with the MinGW port of GCC.
_MSC_VER Compiling the W32 port with the Microsoft C compiler.
IRIX6_5 Compiling on Irix-6.5
** Distinguishing GUIs **
HAVE_NTGUI Use the native W32 GUI for windows, frames, menus&scrollbars.
HAVE_CARBON Compile support for the Carbon GUI. Requires MAC_OS?
HAVE_X11 Compile support for the X11 GUI.
HAVE_X_WINDOWS Compile support for X Window system
X11 ?? Makefile.in suggests it's equivalent to HAVE_X11
USE_LUCID Use the Lucid toolkit for menus&scrollbars. Requires HAVE_X11.
USE_MOTIF Use the Motif toolkit for menus&scrollbars. Requires HAVE_X11.
USE_GTK Use the Gtk toolkit for menus&scrollbars. Requires HAVE_X11.
** Frame types **
FRAME_TERMCAP_P A tty (character terminal) frame.
FRAME_X_P A frame on X Window system.
FRAME_MSDOS_P An MS-DOS frame (used only by the DOS port).
FRAME_MAC_P A Mac frame.
FRAME_W32_P A frame using native MS-Windows GUI.
FRAME_WINDOW_P A GUI frame (like X, w32, etc.)
** Compile-time options **
REL_ALLOC Compile in the relocatable memory allocator ralloc.c.
SYSTEM_MALLOC Use the system library's malloc.
** Replace, the definition is trivial: SWITCH_ENUM_CAST
** Temporarily put defines from removed files here, check if these macros need to be documented or removed because they are not used anymore. **
ADDR_CORRECT
ADJUST_TEXTBASE
ADJUST_TEXT_SCNHDR_SIZE
A_TEXT_OFFSET
A_TEXT_SEEK
BAUD_CONVERT
BROKEN_FIONREAD
BROKEN_SIGIO
BROKEN_TIOCGETC
BROKEN_TIOCGWINSZ
BSD4_2
BSD4_3
BSD4_4
BSD_PGRPS
BSD_SYSTEM
BSTRING
CANNOT_DUMP
CLASH_DETECTION
COFF
COFF_BSD_SYMBOLS
CRT0_DUMMIES
C_DEBUG_SWITCH
C_OPTIMIZE_SWITCH
C_SWITCH_MACHINE
C_SWITCH_SYSTEM
DATA_END
DATA_SECTION_ALIGNMENT
DATA_SEG_BITS
DATA_START
DEBUG
DECLARE_GETPWUID_WITH_UID_T
DEFAULT_ENTRY_ADDRESS
DOT_GLOBAL_START
DUMMIES
ELF
EXEC_PAGESIZE
EXPLICIT_SIGN_EXTEND
FIRST_PTY_LETTER
FSCALE
GC_MARK_STACK
GC_SETJMP_WORKS
GETPGRP_NO_ARG
GNU_MALLOC
HAVE_ALLOCA
HAVE_CLOSEDIR
HAVE_CONFIG_H
HAVE_CRTN
HAVE_GETTIMEOFDAY
HAVE_INET_SOCKETS
HAVE_LIBDNET
HAVE_LIBINTL
HAVE_LIBRESOLV
HAVE_PTYS
HAVE_SELECT
HAVE_SOCKETS
HAVE_SYSVIPC
HAVE_SYSV_SIGPAUSE
HAVE_SYS_WAIT_H
HAVE_TCATTR
HAVE_TERMIO
HAVE_TERMIOS
HAVE_TEXT_START
HAVE_UNION_WAIT
HAVE_UNISTD_H
HAVE_UNIX_DOMAIN
HAVE_UTIMES
HAVE_WAIT_HEADER
HAVE_X11R6
HAVE_XSCREENNUMBEROFSCREEN
HAVE_X_WINDOWS
INHIBIT_X11R6_XIM
INTEL386
INTERRUPT_INPUT
IRIS
IRIS_4D
KERNEL_FILE
LDAV_SYMBOL
LD_SWITCH_MACHINE
LD_SWITCH_SYSTEM
LD_SWITCH_SYSTEM_TEMACS
LIBS_DEBUG
LIBS_MACHINE
LIBS_SYSTEM
LIBS_TERMCAP
LIBX11_SYSTEM
LIBXMU
LIB_GCC
LIB_MOTIF
LIB_STANDARD
LIB_X11_LIB
LINKER
LOAD_AVE_CVT
LOAD_AVE_TYPE
MAIL_USE_FLOCK
MKDIR_PROTOTYPE
MOTIF
NARROWPROTO
NEED_ERRNO
NEED_PTEM_H
NEED_SIOCTL
NLIST_STRUCT
NOMULTIPLEJOBS
NONSYSTEM_DIR_LIBRARY
NOT_C_CODE
NO_ARG_ARRAY
NO_REMAP
NO_SIOCTL_H
NO_SOCK_SIGIO
NO_TERMIO
NO_UNION_TYPE
NSIG
NSIG_MINIMUM
OBJECTS_MACHINE
ORDINARY_LINK
O_NDELAY
PENDING_OUTPUT_COUNT
PERROR
PNTR_COMPARISON_TYPE
POSIX_SIGNALS
PREFER_VSUSP
PTY_ITERATION
PTY_NAME_SPRINTF
PTY_OPEN
PTY_TTY_NAME_SPRINTF
PURESIZE
READ
REL_ALLOC
RUN_TIME_REMAP
SECTION_ALIGNMENT
SEEK
SEGMENT_MASK
SEGSIZ
SETUP_SLAVE_PTY
SIGMASKTYPE
SIGNALS_VIA_CHARACTERS
SIGN_EXTEND_CHAR
SIGTYPE
START_FILES
SVR4
SYSTEM_MALLOC
SYSTEM_TYPE
SYSV_PTYS
SYSV_SYSTEM_DIR
S_IEXEC
S_IFDIR
S_IFLNK
S_IFMT
S_IREAD
S_IWRITE
TERMCAP
TERMINFO
TEXT_END
TEXT_START
THIS_IS_MAKEFILE
ULIMIT_BREAK_VALUE
UNEXEC
USE_MMAP_FOR_BUFFERS
USG
USG5
USG5_3
USG5_4
USG_JOBCTRL
USG_SHARED_LIBRARIES
VIRT_ADDR_VARIES
WORDS_BIG_ENDIAN
WORD_MACHINE
XINT
XSET
XUINT
X_DEFAULT_FONT
_ABIN32
_MIPS_SZLONG
_POSIX_SOURCE
_longjmp
_setjmp
alloca
data_start
drem
emacs
entry
etext
fatal
fchmod
getpgrp
hp9000s800
index
jmp_buf
longjmp
m68000
m68k
magic
mc68000
mips
sel
subprocesses
sun
text_start
# arch-tag: bc80061a-1168-4911-9766-46aaf2640250