123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347 |
- 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 **
- CYGWIN Compiling the Cygwin port.
- __CYGWIN__ Ditto
- MSDOS Compiling the MS-DOS port.
- __MSDOS__ Ditto.
- __DJGPP_MINOR__ Minor version number of the DJGPP library; used only in msdos.c and dosfns.c.
- 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.
- DARWIN_OS Compiling on Mac OS X or pure Darwin (and using s/darwin.h).
- ** Distinguishing GUIs **
- HAVE_NTGUI Use the native W32 GUI for windows, frames, menus&scrollbars.
- HAVE_NS Use the NeXT/OpenStep/Cocoa UI under Mac OS X or GNUstep.
- NS_IMPL_GNUSTEP Compile support for GNUstep implementation of NS GUI API.
- NS_IMPL_COCOA Compile support for Cocoa (Apple) implementation of NS GUI API.
- HAVE_X11 Compile support for the X11 GUI.
- HAVE_X_WINDOWS Compile support for X Window system
- (It looks like, nowadays, if HAVE_X11 is set, HAVE_X_WINDOWS must
- be, and vice versa. At least, this is true for configure, and
- msdos; not sure about nt.)
- 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_W32_P A frame using native MS-Windows GUI.
- FRAME_WINDOW_P A GUI frame (like X, w32, etc.)
- ** Support for accessing other processes on the system **
- HAVE_PROCFS The /proc filesystem is supported.
- ** Compile-time options **
- REL_ALLOC Compile in the relocatable memory allocator ralloc.c.
- SYSTEM_MALLOC Use the system library's malloc.
- subprocesses System can use subprocesses (for M-x shell for example). Defined by default, only MSDOS undefines it.
- USE_LISP_UNION_TYPE Define it in lisp.h to make Lisp_Object be a union type instead of the default int.
- ** System specific macros, described in detail in src/s/template.h
- CLASH_DETECTION
- COFF
- FIRST_PTY_LETTER
- HAVE_PTYS
- INTERRUPT_INPUT
- NARROWPROTO
- SEPCHAR
- SYSTEM_TYPE
- ** Misc macros
- USER_FULL_NAME If defined, overrides the default pw->pw_gecos for getting at the full user name. Only MSDOS overrides the default.
- ** Replace, the definition is trivial: SWITCH_ENUM_CAST
- ** 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.
- AIX
- AMPERSAND_FULL_NAME
- BITS_PER_EMACS_INT
- BITS_PER_LONG
- BITS_PER_CHAR
- BITS_PER_SHORT
- BITS_PER_INT
- BROKEN_DATAGRAM_SOCKETS
- BROKEN_FIONREAD
- BROKEN_GET_CURRENT_DIR_NAME
- BROKEN_NON_BLOCKING_CONNECT
- BROKEN_PTY_READ_AFTER_EAGAIN
- BROKEN_SA_RESTART
- BROKEN_SIGAIO
- BROKEN_SIGIO
- BROKEN_SIGPOLL
- BROKEN_SIGPTY
- BSD4_2
- BSD4_3
- BSD_SYSTEM
- CLASH_DETECTION
- DATA_SEG_BITS
- DATA_START
- DBL_MIN_REPLACEMENT
- DEFAULT_SOUND_DEVICE
- DEVICE_SEP
- DIRECTORY_SEP
- DONT_REOPEN_PTY
- DOUG_LEA_MALLOC
- DebPrint
- EMACSDEBUG
- EMACS_CONFIGURATION
- EMACS_CONFIG_OPTIONS
- EMACS_INT
- EMACS_UINT
- FLOAT_CHECK_DOMAIN
- GC_LISP_OBJECT_ALIGNMENT
- GC_MARK_SECONDARY_STACK
- GC_MARK_STACK
- GC_SETJMP_WORKS
- GMALLOC_INHIBIT_VALLOC
- GNU_LIBRARY_PENDING_OUTPUT_COUNT
- GNU_LINUX
- GNU_MALLOC
- HAVE_AIX_SMT_EXP
- HAVE_CBRT
- HAVE_CLOSEDIR
- HAVE_DUP2
- HAVE_EUIDACCESS
- HAVE_FMOD
- HAVE_FPATHCONF
- HAVE_FREXP
- HAVE_FSYNC
- HAVE_FTIME
- HAVE_GETCWD
- HAVE_GETDOMAINNAME
- HAVE_GETHOSTNAME
- HAVE_GETLOADAVG
- HAVE_GETPAGESIZE
- HAVE_GETPT
- HAVE_GETTIMEOFDAY
- HAVE_GETWD
- HAVE_H_ERRNO
- HAVE_INET_SOCKETS
- HAVE_INVERSE_HYPERBOLIC
- HAVE_LIBKSTAT
- HAVE_LIMITS_H
- HAVE_LINUX_VERSION_H
- HAVE_LOGB
- HAVE_LONG_FILE_NAMES
- HAVE_LRAND48
- HAVE_MENUS
- HAVE_MKDIR
- HAVE_MKTIME
- HAVE_MOUSE
- HAVE_PERROR
- HAVE_PSTAT_GETDYNAMIC
- HAVE_PWD_H
- HAVE_RANDOM
- HAVE_RENAME
- HAVE_RES_INIT
- HAVE_RINT
- HAVE_RMDIR
- HAVE_SELECT
- HAVE_SETLOCALE
- HAVE_SETPGID
- HAVE_SETRLIMIT
- HAVE_SETSID
- HAVE_SHUTDOWN
- HAVE_SOCKETS
- HAVE_SOUND
- HAVE_STDLIB_H
- HAVE_STRERROR
- HAVE_STRFTIME
- HAVE_STRING_H
- HAVE_STRUCT_UTIMBUF
- HAVE_SYSINFO
- HAVE_SYSV_SIGPAUSE
- HAVE_SYS_SELECT_H
- HAVE_SYS_SYSTEMINFO_H
- HAVE_SYS_TIMEB_H
- HAVE_SYS_TIME_H
- HAVE_TCATTR
- HAVE_TIMEVAL
- HAVE_TM_ZONE
- HAVE_TZSET
- HAVE_UNISTD_H
- HAVE_UTIMES
- HAVE_UTIME_H
- HAVE_WINDOW_SYSTEM
- HAVE_WORKING_VFORK
- HAVE_XRMSETDATABASE
- HPUX
- INTERNAL_TERMINAL
- IS_ANY_SEP
- IS_DIRECTORY_SEP
- LINKER
- LINUX_VERSION_CODE
- LISP_FLOAT_TYPE
- LNOFLSH
- LOCALTIME_CACHE
- MAIL_USE_FLOCK
- MAIL_USE_LOCKF
- MAIL_USE_POP
- MAIL_USE_SYSTEM_LOCK
- MAXPATHLEN
- MIN_PTY_KERNEL_VERSION -- only used on Mac
- MODE_LINE_BINARY_TEXT
- MUST_UNDEF__STDC__
- NLIST_STRUCT
- NO_ABORT
- NO_EDITRES
- NO_MATHERR
- NO_TERMIO
- NSIG
- NSIG_MINIMUM
- NULL
- NULL_DEVICE
- ORDINARY_LINK
- O_APPEND
- O_RDONLY
- O_RDWR
- PAGESIZE
- PENDING_OUTPUT_COUNT
- POSIX
- PREFER_VSUSP
- PTY_ITERATION
- PTY_NAME_SPRINTF
- PTY_OPEN
- PTY_TTY_NAME_SPRINTF
- PURESIZE
- RUN_TIME_REMAP
- SA_RESTART
- SEGMENT_MASK
- SETPGRP_RELEASES_CTTY
- SETUP_SLAVE_PTY
- SIGALRM
- SIGCHLD
- SIGHUP
- SIGKILL
- SIGNALS_VIA_CHARACTERS
- SIGPIPE
- SIGQUIT
- SIGTRAP
- SOLARIS2
- STDC_HEADERS
- SYSTEM_PURESIZE_EXTRA
- SYSTEM_MALLOC
- SYSV_SYSTEM_DIR
- TAB3
- TABDLY
- TERM
- TIME_WITH_SYS_TIME
- TIOCSIGSEND
- TM_IN_SYS_TIME
- ULIMIT_BREAK_VALUE
- UNIX98_PTYS
- USE_CRT_DLL
- USE_TOOLKIT_SCROLL_BARS
- USG
- USG5
- USG5_4
- USG_SUBTTY_WORKS
- VALBITS
- WRETCODE
- XOS_NEEDS_TIME_H
- _AIX
- _ARCH_PPC64
- _FILE_OFFSET_BITS
- _LP64
- _MALLOC_INTERNAL
- _NAIVE_DOS_REGS
- _VARARGS_
- _WINSOCKAPI_
- _WINSOCK_H
- _longjmp
- _setjmp
- _start
- abort
- access
- alloca
- brk
- calloc
- chdir
- chmod
- chown
- close
- const
- creat
- ctime
- dup
- dup2
- edata
- emacs
- etext
- execlp
- execvp
- fdopen
- fileno
- fopen
- free
- fsync
- ftruncate
- fwrite
- getdefdir
- getdisk
- getenv
- getpid
- getuid
- gmtime
- index
- isatty
- kill
- link
- linux
- localtime
- logb
- lseek
- malloc
- mkdir
- mktemp
- open
- pclose
- pipe
- popen
- random
- read
- realloc
- rename
- rindex
- rmdir
- sbrk
- select
- sigmask
- signal
- sigsetmask
- sleep
- spawnve
- srandom
- strdup
- strerror
- stricmp
- strnicmp
- strupr
- sys_nerr
- system
- temacs
- tzname
- tzset
- umask
- unix
- unlink
- utimbuf
- utime
- vfork
- wait
- write
- xfree
|