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