CPP-DEFINES 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347
  1. Here are some of the cpp macros used, together with some short explanation
  2. of their use. Feel free to add more macros and more categories.
  3. ** Distinguishing OSes **
  4. CYGWIN Compiling the Cygwin port.
  5. __CYGWIN__ Ditto
  6. MSDOS Compiling the MS-DOS port.
  7. __MSDOS__ Ditto.
  8. __DJGPP_MINOR__ Minor version number of the DJGPP library; used only in msdos.c and dosfns.c.
  9. DOS_NT Compiling for either the MS-DOS or native MS-Windows port.
  10. WINDOWSNT Compiling the native MS-Windows (W32) port.
  11. __MINGW32__ Compiling the W32 port with the MinGW port of GCC.
  12. _MSC_VER Compiling the W32 port with the Microsoft C compiler.
  13. DARWIN_OS Compiling on Mac OS X or pure Darwin (and using s/darwin.h).
  14. ** Distinguishing GUIs **
  15. HAVE_NTGUI Use the native W32 GUI for windows, frames, menus&scrollbars.
  16. HAVE_NS Use the NeXT/OpenStep/Cocoa UI under Mac OS X or GNUstep.
  17. NS_IMPL_GNUSTEP Compile support for GNUstep implementation of NS GUI API.
  18. NS_IMPL_COCOA Compile support for Cocoa (Apple) implementation of NS GUI API.
  19. HAVE_X11 Compile support for the X11 GUI.
  20. HAVE_X_WINDOWS Compile support for X Window system
  21. (It looks like, nowadays, if HAVE_X11 is set, HAVE_X_WINDOWS must
  22. be, and vice versa. At least, this is true for configure, and
  23. msdos; not sure about nt.)
  24. USE_LUCID Use the Lucid toolkit for menus&scrollbars. Requires HAVE_X11.
  25. USE_MOTIF Use the Motif toolkit for menus&scrollbars. Requires HAVE_X11.
  26. USE_GTK Use the Gtk toolkit for menus&scrollbars. Requires HAVE_X11.
  27. ** Frame types **
  28. FRAME_TERMCAP_P A tty (character terminal) frame.
  29. FRAME_X_P A frame on X Window system.
  30. FRAME_MSDOS_P An MS-DOS frame (used only by the DOS port).
  31. FRAME_W32_P A frame using native MS-Windows GUI.
  32. FRAME_WINDOW_P A GUI frame (like X, w32, etc.)
  33. ** Support for accessing other processes on the system **
  34. HAVE_PROCFS The /proc filesystem is supported.
  35. ** Compile-time options **
  36. REL_ALLOC Compile in the relocatable memory allocator ralloc.c.
  37. SYSTEM_MALLOC Use the system library's malloc.
  38. subprocesses System can use subprocesses (for M-x shell for example). Defined by default, only MSDOS undefines it.
  39. USE_LISP_UNION_TYPE Define it in lisp.h to make Lisp_Object be a union type instead of the default int.
  40. ** System specific macros, described in detail in src/s/template.h
  41. CLASH_DETECTION
  42. COFF
  43. FIRST_PTY_LETTER
  44. HAVE_PTYS
  45. INTERRUPT_INPUT
  46. NARROWPROTO
  47. SEPCHAR
  48. SYSTEM_TYPE
  49. ** Misc macros
  50. USER_FULL_NAME If defined, overrides the default pw->pw_gecos for getting at the full user name. Only MSDOS overrides the default.
  51. ** Replace, the definition is trivial: SWITCH_ENUM_CAST
  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. AIX
  54. AMPERSAND_FULL_NAME
  55. BITS_PER_EMACS_INT
  56. BITS_PER_LONG
  57. BITS_PER_CHAR
  58. BITS_PER_SHORT
  59. BITS_PER_INT
  60. BROKEN_DATAGRAM_SOCKETS
  61. BROKEN_FIONREAD
  62. BROKEN_GET_CURRENT_DIR_NAME
  63. BROKEN_NON_BLOCKING_CONNECT
  64. BROKEN_PTY_READ_AFTER_EAGAIN
  65. BROKEN_SA_RESTART
  66. BROKEN_SIGAIO
  67. BROKEN_SIGIO
  68. BROKEN_SIGPOLL
  69. BROKEN_SIGPTY
  70. BSD4_2
  71. BSD4_3
  72. BSD_SYSTEM
  73. CLASH_DETECTION
  74. DATA_SEG_BITS
  75. DATA_START
  76. DBL_MIN_REPLACEMENT
  77. DEFAULT_SOUND_DEVICE
  78. DEVICE_SEP
  79. DIRECTORY_SEP
  80. DONT_REOPEN_PTY
  81. DOUG_LEA_MALLOC
  82. DebPrint
  83. EMACSDEBUG
  84. EMACS_CONFIGURATION
  85. EMACS_CONFIG_OPTIONS
  86. EMACS_INT
  87. EMACS_UINT
  88. FLOAT_CHECK_DOMAIN
  89. GC_LISP_OBJECT_ALIGNMENT
  90. GC_MARK_SECONDARY_STACK
  91. GC_MARK_STACK
  92. GC_SETJMP_WORKS
  93. GMALLOC_INHIBIT_VALLOC
  94. GNU_LIBRARY_PENDING_OUTPUT_COUNT
  95. GNU_LINUX
  96. GNU_MALLOC
  97. HAVE_AIX_SMT_EXP
  98. HAVE_CBRT
  99. HAVE_CLOSEDIR
  100. HAVE_DUP2
  101. HAVE_EUIDACCESS
  102. HAVE_FMOD
  103. HAVE_FPATHCONF
  104. HAVE_FREXP
  105. HAVE_FSYNC
  106. HAVE_FTIME
  107. HAVE_GETCWD
  108. HAVE_GETDOMAINNAME
  109. HAVE_GETHOSTNAME
  110. HAVE_GETLOADAVG
  111. HAVE_GETPAGESIZE
  112. HAVE_GETPT
  113. HAVE_GETTIMEOFDAY
  114. HAVE_GETWD
  115. HAVE_H_ERRNO
  116. HAVE_INET_SOCKETS
  117. HAVE_INVERSE_HYPERBOLIC
  118. HAVE_LIBKSTAT
  119. HAVE_LIMITS_H
  120. HAVE_LINUX_VERSION_H
  121. HAVE_LOGB
  122. HAVE_LONG_FILE_NAMES
  123. HAVE_LRAND48
  124. HAVE_MENUS
  125. HAVE_MKDIR
  126. HAVE_MKTIME
  127. HAVE_MOUSE
  128. HAVE_PERROR
  129. HAVE_PSTAT_GETDYNAMIC
  130. HAVE_PWD_H
  131. HAVE_RANDOM
  132. HAVE_RENAME
  133. HAVE_RES_INIT
  134. HAVE_RINT
  135. HAVE_RMDIR
  136. HAVE_SELECT
  137. HAVE_SETLOCALE
  138. HAVE_SETPGID
  139. HAVE_SETRLIMIT
  140. HAVE_SETSID
  141. HAVE_SHUTDOWN
  142. HAVE_SOCKETS
  143. HAVE_SOUND
  144. HAVE_STDLIB_H
  145. HAVE_STRERROR
  146. HAVE_STRFTIME
  147. HAVE_STRING_H
  148. HAVE_STRUCT_UTIMBUF
  149. HAVE_SYSINFO
  150. HAVE_SYSV_SIGPAUSE
  151. HAVE_SYS_SELECT_H
  152. HAVE_SYS_SYSTEMINFO_H
  153. HAVE_SYS_TIMEB_H
  154. HAVE_SYS_TIME_H
  155. HAVE_TCATTR
  156. HAVE_TIMEVAL
  157. HAVE_TM_ZONE
  158. HAVE_TZSET
  159. HAVE_UNISTD_H
  160. HAVE_UTIMES
  161. HAVE_UTIME_H
  162. HAVE_WINDOW_SYSTEM
  163. HAVE_WORKING_VFORK
  164. HAVE_XRMSETDATABASE
  165. HPUX
  166. INTERNAL_TERMINAL
  167. IS_ANY_SEP
  168. IS_DIRECTORY_SEP
  169. LINKER
  170. LINUX_VERSION_CODE
  171. LISP_FLOAT_TYPE
  172. LNOFLSH
  173. LOCALTIME_CACHE
  174. MAIL_USE_FLOCK
  175. MAIL_USE_LOCKF
  176. MAIL_USE_POP
  177. MAIL_USE_SYSTEM_LOCK
  178. MAXPATHLEN
  179. MIN_PTY_KERNEL_VERSION -- only used on Mac
  180. MODE_LINE_BINARY_TEXT
  181. MUST_UNDEF__STDC__
  182. NLIST_STRUCT
  183. NO_ABORT
  184. NO_EDITRES
  185. NO_MATHERR
  186. NO_TERMIO
  187. NSIG
  188. NSIG_MINIMUM
  189. NULL
  190. NULL_DEVICE
  191. ORDINARY_LINK
  192. O_APPEND
  193. O_RDONLY
  194. O_RDWR
  195. PAGESIZE
  196. PENDING_OUTPUT_COUNT
  197. POSIX
  198. PREFER_VSUSP
  199. PTY_ITERATION
  200. PTY_NAME_SPRINTF
  201. PTY_OPEN
  202. PTY_TTY_NAME_SPRINTF
  203. PURESIZE
  204. RUN_TIME_REMAP
  205. SA_RESTART
  206. SEGMENT_MASK
  207. SETPGRP_RELEASES_CTTY
  208. SETUP_SLAVE_PTY
  209. SIGALRM
  210. SIGCHLD
  211. SIGHUP
  212. SIGKILL
  213. SIGNALS_VIA_CHARACTERS
  214. SIGPIPE
  215. SIGQUIT
  216. SIGTRAP
  217. SOLARIS2
  218. STDC_HEADERS
  219. SYSTEM_PURESIZE_EXTRA
  220. SYSTEM_MALLOC
  221. SYSV_SYSTEM_DIR
  222. TAB3
  223. TABDLY
  224. TERM
  225. TIME_WITH_SYS_TIME
  226. TIOCSIGSEND
  227. TM_IN_SYS_TIME
  228. ULIMIT_BREAK_VALUE
  229. UNIX98_PTYS
  230. USE_CRT_DLL
  231. USE_TOOLKIT_SCROLL_BARS
  232. USG
  233. USG5
  234. USG5_4
  235. USG_SUBTTY_WORKS
  236. VALBITS
  237. WRETCODE
  238. XOS_NEEDS_TIME_H
  239. _AIX
  240. _ARCH_PPC64
  241. _FILE_OFFSET_BITS
  242. _LP64
  243. _MALLOC_INTERNAL
  244. _NAIVE_DOS_REGS
  245. _VARARGS_
  246. _WINSOCKAPI_
  247. _WINSOCK_H
  248. _longjmp
  249. _setjmp
  250. _start
  251. abort
  252. access
  253. alloca
  254. brk
  255. calloc
  256. chdir
  257. chmod
  258. chown
  259. close
  260. const
  261. creat
  262. ctime
  263. dup
  264. dup2
  265. edata
  266. emacs
  267. etext
  268. execlp
  269. execvp
  270. fdopen
  271. fileno
  272. fopen
  273. free
  274. fsync
  275. ftruncate
  276. fwrite
  277. getdefdir
  278. getdisk
  279. getenv
  280. getpid
  281. getuid
  282. gmtime
  283. index
  284. isatty
  285. kill
  286. link
  287. linux
  288. localtime
  289. logb
  290. lseek
  291. malloc
  292. mkdir
  293. mktemp
  294. open
  295. pclose
  296. pipe
  297. popen
  298. random
  299. read
  300. realloc
  301. rename
  302. rindex
  303. rmdir
  304. sbrk
  305. select
  306. sigmask
  307. signal
  308. sigsetmask
  309. sleep
  310. spawnve
  311. srandom
  312. strdup
  313. strerror
  314. stricmp
  315. strnicmp
  316. strupr
  317. sys_nerr
  318. system
  319. temacs
  320. tzname
  321. tzset
  322. umask
  323. unix
  324. unlink
  325. utimbuf
  326. utime
  327. vfork
  328. wait
  329. write
  330. xfree