Replace bcopy, bzero, bcmp by memcpy, memmove, memset, memcmp
[bpt/emacs.git] / admin / CPP-DEFINES
index 621f65a..f0438b7 100644 (file)
@@ -3,29 +3,28 @@ 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).
+__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.
-IRIX6_5         Compiling on Irix-6.5
+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_CARBON    Compile support for the Carbon GUI.  Requires MAC_OS?
+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
-X11            ??  Makefile.in suggests it's equivalent to HAVE_X11
+  (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.
@@ -35,214 +34,365 @@ USE_GTK           Use the Gtk   toolkit for menus&scrollbars.  Requires HAVE_X11.
 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.)
 
+** 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, decribed in detail in src/s/template.h
+CLASH_DETECTION
+COFF
+FIRST_PTY_LETTER
+HAVE_PTYS
+HAVE_TERMIO
+HAVE_TERMIOS
+INTERRUPT_INPUT
+NARROWPROTO
+SEPCHAR
+SIGTYPE
+SYSTEM_TYPE
+
+** Machine specific macros, decribed in detail in src/m/template.h
+EXPLICIT_SIGN_EXTEND
+LOAD_AVE_CVT
+LOAD_AVE_TYPE
+NO_REMAP
+VIRT_ADDR_VARIES
+WORDS_BIG_ENDIAN
+
+** 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
 
-** Temporarily put defines from removed files here, check if these macros need to be documented or removed because they are not used anymore.  ** 
+** 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.
+
 
-ADDR_CORRECT
-ADJUST_TEXTBASE
-ADJUST_TEXT_SCNHDR_SIZE
-A_TEXT_OFFSET
-A_TEXT_SEEK
-BAUD_CONVERT
+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_TIOCGETC
-BROKEN_TIOCGWINSZ
+BROKEN_SIGPOLL
+BROKEN_SIGPTY
 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
+DBL_MIN_REPLACEMENT
 DECLARE_GETPWUID_WITH_UID_T
-DEFAULT_ENTRY_ADDRESS
-DOT_GLOBAL_START
-DUMMIES
-ELF
-EXEC_PAGESIZE
-EXPLICIT_SIGN_EXTEND
-FIRST_PTY_LETTER
+DEFAULT_SOUND_DEVICE
+DEVICE_SEP
+DIRECTORY_SEP
+DONT_REOPEN_PTY
+DOUG_LEA_MALLOC
+DebPrint
+EMACSDEBUG
+EMACS_CONFIGURATION
+EMACS_CONFIG_OPTIONS
+EMACS_INT
+EMACS_UINT
+FILE_SYSTEM_CASE
+FLOAT_CHECK_DOMAIN
 FSCALE
+GC_LISP_OBJECT_ALIGNMENT
+GC_MARK_SECONDARY_STACK
 GC_MARK_STACK
 GC_SETJMP_WORKS
-GETPGRP_NO_ARG
+GMALLOC_INHIBIT_VALLOC
+GNU_LIBRARY_PENDING_OUTPUT_COUNT
+GNU_LINUX
 GNU_MALLOC
-HAVE_ALLOCA
+HAVE_AIX_SMT_EXP
+HAVE_CBRT
 HAVE_CLOSEDIR
-HAVE_CONFIG_H
-HAVE_CRTN
+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_INDEX
 HAVE_INET_SOCKETS
-HAVE_LIBDNET
-HAVE_LIBINTL
-HAVE_LIBRESOLV
-HAVE_PTYS
+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_RINDEX
+HAVE_RINT
+HAVE_RMDIR
 HAVE_SELECT
+HAVE_SETLOCALE
+HAVE_SETPGID
+HAVE_SETRLIMIT
+HAVE_SETSID
+HAVE_SHUTDOWN
 HAVE_SOCKETS
-HAVE_SYSVIPC
+HAVE_SOUND
+HAVE_STDLIB_H
+HAVE_STRERROR
+HAVE_STRFTIME
+HAVE_STRING_H
+HAVE_STRUCT_UTIMBUF
+HAVE_SYSINFO
 HAVE_SYSV_SIGPAUSE
-HAVE_SYS_WAIT_H
+HAVE_SYS_SELECT_H
+HAVE_SYS_SYSTEMINFO_H
+HAVE_SYS_TIMEB_H
+HAVE_SYS_TIME_H
 HAVE_TCATTR
-HAVE_TERMIO
-HAVE_TERMIOS
+HAVE_TERMIOS_H
 HAVE_TEXT_START
-HAVE_UNION_WAIT
+HAVE_TIMEVAL
+HAVE_TM_ZONE
+HAVE_TZSET
 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
+HAVE_UTIME_H
+HAVE_VOLATILE
+HAVE_WINDOW_SYSTEM
+HAVE_WORKING_VFORK
+HAVE_XRMSETDATABASE
+HPUX
+INTERNAL_TERMINAL
+IS_ANY_SEP
+IS_DIRECTORY_SEP
 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
+LINUX_VERSION_CODE
+LISP_FLOAT_TYPE
+LNOFLSH
+LOCALTIME_CACHE
 MAIL_USE_FLOCK
-MKDIR_PROTOTYPE
-MOTIF
-NARROWPROTO
-NEED_ERRNO
-NEED_PTEM_H
-NEED_SIOCTL
+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
-NOMULTIPLEJOBS
-NONSYSTEM_DIR_LIBRARY
-NOT_C_CODE
-NO_ARG_ARRAY
-NO_REMAP
-NO_SIOCTL_H
-NO_SOCK_SIGIO
+NO_ABORT
+NO_EDITRES
+NO_MATHERR
 NO_TERMIO
-NO_UNION_TYPE
 NSIG
 NSIG_MINIMUM
-OBJECTS_MACHINE
+NULL
+NULL_DEVICE
 ORDINARY_LINK
-O_NDELAY
+O_APPEND
+O_RDONLY
+O_RDWR
+PAGESIZE
 PENDING_OUTPUT_COUNT
-PERROR
-PNTR_COMPARISON_TYPE
-POSIX_SIGNALS
+POSIX
 PREFER_VSUSP
 PTY_ITERATION
 PTY_NAME_SPRINTF
 PTY_OPEN
 PTY_TTY_NAME_SPRINTF
 PURESIZE
-READ
-REL_ALLOC
 RUN_TIME_REMAP
-SECTION_ALIGNMENT
-SEEK
+SA_RESTART
+SECTION_ALIGNMENT  -- was only used by s/lynxos.h, maybe all code depending on it can be removed.
 SEGMENT_MASK
-SEGSIZ
+SETPGRP_RELEASES_CTTY
 SETUP_SLAVE_PTY
-SIGMASKTYPE
+SIGALRM
+SIGCHLD
+SIGHUP
+SIGKILL
 SIGNALS_VIA_CHARACTERS
-SIGN_EXTEND_CHAR
+SIGPIPE
+SIGQUIT
+SIGTRAP
 SIGTYPE
-START_FILES
-SVR4
+SOLARIS2
+STDC_HEADERS
+SYMS_SYSTEM
+SYSTEM_PURESIZE_EXTRA
 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
+TAB3
+TABDLY
+TERM
 TEXT_START
-THIS_IS_MAKEFILE
+THIS_IS_CONFIGURE
+TIME_WITH_SYS_TIME
+TIOCSIGSEND
+TM_IN_SYS_TIME
 ULIMIT_BREAK_VALUE
-UNEXEC
-USE_MMAP_FOR_BUFFERS
+UNIX98_PTYS
+USE_CRT_DLL
+USE_TOOLKIT_SCROLL_BARS
 USG
 USG5
-USG5_3
 USG5_4
-USG_JOBCTRL
-USG_SHARED_LIBRARIES
-VIRT_ADDR_VARIES
+USG_SUBTTY_WORKS
+VALBITS
 WORDS_BIG_ENDIAN
-WORD_MACHINE
+WRETCODE
 XINT
+XOS_NEEDS_TIME_H
+XPNTR
 XSET
 XUINT
-X_DEFAULT_FONT
-_ABIN32
-_MIPS_SZLONG
-_POSIX_SOURCE
+_AIX
+_ARCH_PPC64
+_CALLBACK_
+_FILE_OFFSET_BITS
+_LP64
+_MALLOC_INTERNAL
+_NAIVE_DOS_REGS
+_VARARGS_
+_WINSOCKAPI_
+_WINSOCK_H
+__ELF__
+__FreeBSD__
+__GNUC__
+__GNU_LIBRARY__
+__GNUC_MINOR__
+__NetBSD__
+__OpenBSD__
+__STDC__
+__arch64__
+__cplusplus
+__hpux
+__ia64__
+__linux__
+__mc68000__
+__mips__
 _longjmp
 _setjmp
+_start
+abort
+access
 alloca
-data_start
-drem
+brk
+calloc
+chdir
+chmod
+chown
+close
+const
+creat
+ctime
+dup
+dup2
+edata
 emacs
-entry
 etext
-fatal
-fchmod
-getpgrp
-hp9000s800
+execlp
+execvp
+fdopen
+fileno
+fopen
+free
+fsync
+ftruncate
+fwrite
+getdefdir
+getdisk
+getenv
+getpid
+getuid
+gmtime
+i386
 index
-jmp_buf
-longjmp
-m68000
+init_process
+isatty
+kill
+link
+linux
+localtime
+logb
+lseek
 m68k
-magic
-mc68000
-mips
-sel
-subprocesses
-sun
-text_start
+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
 
 # arch-tag: bc80061a-1168-4911-9766-46aaf2640250