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