Suppress unnecessary non-ASCII chatter during build process.
[emacs.git] / admin / CPP-DEFINES
blobc11c3c3b4892786dbf046545c0af2197e76b5184
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 Most of these are from config.in, so it's probably better to put the
4 explanations in that file.  Ideally, everything would be defined and
5 documented in config.in, and this file would not be necessary.
8 ** Distinguishing OSes **
10 AIX
11 _AIX
12 CYGWIN          Compiling the Cygwin port.
13 __CYGWIN__      Ditto
14 GNU_LINUX
15 HPUX
16 IRIX6_5
17 MSDOS           Compiling the MS-DOS port.
18 __MSDOS__       Ditto.
19 __DJGPP_MINOR__ Minor version number of the DJGPP library; used only in msdos.c and dosfns.c.
20 DOS_NT          Compiling for either the MS-DOS or native MS-Windows port.
21 WINDOWSNT       Compiling the native MS-Windows (W32) port.
22 __MINGW32__     Compiling the W32 port with the MinGW port of GCC.
23 _MSC_VER        Compiling the W32 port with the Microsoft C compiler.
24 DARWIN_OS       Compiling on Mac OS X or pure Darwin (and using s/darwin.h).
25 SOLARIS2
26 USG
27 USG5
28 USG5_4
30 ** Distinguishing GUIs **
32 HAVE_NTGUI      Use the native W32 GUI for windows, frames, menus&scrollbars.
33 HAVE_NS         Use the NeXT/OpenStep/Cocoa UI under Mac OS X or GNUstep.
34 NS_IMPL_GNUSTEP Compile support for GNUstep implementation of NS GUI API.
35 NS_IMPL_COCOA   Compile support for Cocoa (Apple) implementation of NS GUI API.
36 HAVE_X11        Compile support for the X11 GUI.
37 HAVE_X_WINDOWS  Compile support for X Window system
38   (It looks like, nowadays, if HAVE_X11 is set, HAVE_X_WINDOWS must
39    be, and vice versa.  At least, this is true for configure, and
40    msdos; not sure about nt.)
41 HAVE_X11R6
42 HAVE_X11R6_XIM
43 HAVE_X11XTR6
44 USE_LUCID       Use the Lucid toolkit for menus&scrollbars.  Requires HAVE_X11.
45 USE_MOTIF       Use the Motif toolkit for menus&scrollbars.  Requires HAVE_X11.
46 USE_GTK         Use the Gtk   toolkit for menus&scrollbars.  Requires HAVE_X11.
48 ** Frame types **
50 FRAME_TERMCAP_P A tty (character terminal) frame.
51 FRAME_X_P       A frame on X Window system.
52 FRAME_MSDOS_P   An MS-DOS frame (used only by the DOS port).
53 FRAME_W32_P     A frame using native MS-Windows GUI.
54 FRAME_WINDOW_P  A GUI frame (like X, w32, etc.)
56 ** Support for accessing other processes on the system **
58 HAVE_PROCFS     The /proc filesystem is supported.
60 ** Compile-time options **
62 REL_ALLOC       Compile in the relocatable memory allocator ralloc.c.
63 SYSTEM_MALLOC   Use the system library's malloc.
64 subprocesses    System can use subprocesses (for M-x shell for example).
65                 Defined by default, only MSDOS undefines it.
66 DEBUG_LISP_OBJECT_TYPE Define it in lisp.h enable compile time checks
67                        on Lisp_Object use.
69 ** System specific macros
70 FIRST_PTY_LETTER
71 HAVE_PTYS
72 INTERRUPT_INPUT
73 NARROWPROTO
74 SEPCHAR
75 SYSTEM_TYPE
77 ** Misc macros
78 USER_FULL_NAME   If defined, overrides the default pw->pw_gecos for
79 getting at the full user name.  Only MSDOS overrides the default.
81 ** Miscellaneous defines.  Some of these might not be used in the code
82 anymore, so they can be removed.
84 AMPERSAND_FULL_NAME
85 BROKEN_DATAGRAM_SOCKETS
86 BROKEN_FIONREAD
87 BROKEN_GET_CURRENT_DIR_NAME
88 BROKEN_NON_BLOCKING_CONNECT
89 BROKEN_PTY_READ_AFTER_EAGAIN
90 CLASH_DETECTION
91 DATA_SEG_BITS
92 DEFAULT_SOUND_DEVICE
93 DEVICE_SEP
94 DIRECTORY_SEP
95 DONT_REOPEN_PTY
96 DOUG_LEA_MALLOC
97 EMACS_CONFIGURATION
98 EMACS_CONFIG_OPTIONS
99 EMACS_INT
100 EMACS_UINT
101 GC_MARK_SECONDARY_STACK
102 GC_MARK_STACK
103 GC_SETJMP_WORKS
104 GNU_MALLOC
105 HAVE_AIX_SMT_EXP
106 HAVE_ALARM
107 HAVE_ALLOCA
108 HAVE_ALLOCA_H
109 HAVE_ALSA
110 HAVE_ATTRIBUTE_ALIGNED
111 HAVE_BDFFONT
112 HAVE_BOXES
113 HAVE_C99_STRTOLD
114 HAVE_CFMAKERAW
115 HAVE_CFSETSPEED
116 HAVE_CLOCK_GETTIME
117 HAVE_CLOCK_SETTIME
118 HAVE_COFF_H
119 HAVE_COM_ERR_H
120 HAVE_COPYSIGN
121 HAVE_DBUS
122 HAVE_DBUS_TYPE_IS_VALID
123 HAVE_DBUS_VALIDATE_BUS_NAME
124 HAVE_DBUS_VALIDATE_INTERFACE
125 HAVE_DBUS_VALIDATE_MEMBER
126 HAVE_DBUS_VALIDATE_PATH
127 HAVE_DBUS_WATCH_GET_UNIX_FD
128 HAVE_DECL_GETENV
129 HAVE_DECL_LOCALTIME_R
130 HAVE_DECL_STRMODE
131 HAVE_DECL_STRTOIMAX
132 HAVE_DECL_STRTOLL
133 HAVE_DECL_STRTOULL
134 HAVE_DECL_STRTOUMAX
135 HAVE_DECL_SYS_SIGLIST
136 HAVE_DECL_TZNAME
137 HAVE_DECL___SYS_SIGLIST
138 HAVE_DES_H
139 HAVE_DEV_PTMX
140 HAVE_DIALOGS
141 HAVE_DIFFTIME
142 HAVE_DUP2
143 HAVE_ENDGRENT
144 HAVE_ENDPWENT
145 HAVE_ENVIRON_DECL
146 HAVE_EUIDACCESS
147 HAVE_FORK
148 HAVE_FREEIFADDRS
149 HAVE_FREETYPE
150 HAVE_FSEEKO
151 HAVE_FUTIMENS
152 HAVE_FUTIMES
153 HAVE_FUTIMESAT
154 HAVE_GAI_STRERROR
155 HAVE_GCONF
156 HAVE_GETADDRINFO
157 HAVE_GETDELIM
158 HAVE_GETGRENT
159 HAVE_GETHOSTNAME
160 HAVE_GETIFADDRS
161 HAVE_GETLINE
162 HAVE_GETLOADAVG
163 HAVE_GETOPT_H
164 HAVE_GETOPT_LONG_ONLY
165 HAVE_GETPAGESIZE
166 HAVE_GETPEERNAME
167 HAVE_GETPT
168 HAVE_GETPWENT
169 HAVE_GETRLIMIT
170 HAVE_GETRUSAGE
171 HAVE_GETSOCKNAME
172 HAVE_GETTIMEOFDAY
173 HAVE_GET_CURRENT_DIR_NAME
174 HAVE_GHOSTSCRIPT
175 HAVE_GIF
176 HAVE_GNUTLS
177 HAVE_GNUTLS_CALLBACK_CERTIFICATE_VERIFY
178 HAVE_GNUTLS_CERTIFICATE_SET_VERIFY_FUNCTION
179 HAVE_GPM
180 HAVE_GRANTPT
181 HAVE_GSETTINGS
182 HAVE_GTK3
183 HAVE_GTK_ADJUSTMENT_GET_PAGE_SIZE
184 HAVE_GTK_DIALOG_GET_ACTION_AREA
185 HAVE_GTK_FILE_SELECTION_NEW
186 HAVE_GTK_MAIN
187 HAVE_GTK_MULTIDISPLAY
188 HAVE_GTK_ORIENTABLE_SET_ORIENTATION
189 HAVE_GTK_WIDGET_GET_MAPPED
190 HAVE_GTK_WIDGET_GET_SENSITIVE
191 HAVE_GTK_WIDGET_GET_WINDOW
192 HAVE_GTK_WIDGET_SET_HAS_WINDOW
193 HAVE_GTK_WINDOW_SET_HAS_RESIZE_GRIP
194 HAVE_G_TYPE_INIT
195 HAVE_H_ERRNO
196 HAVE_IFADDRS_H
197 HAVE_IMAGEMAGICK
198 HAVE_INET_SOCKETS
199 HAVE_INTTYPES_H
200 HAVE_JPEG
201 HAVE_KERBEROSIV_DES_H
202 HAVE_KERBEROSIV_KRB_H
203 HAVE_KERBEROS_DES_H
204 HAVE_KERBEROS_KRB_H
205 HAVE_KRB5_ERROR_E_TEXT
206 HAVE_KRB5_ERROR_TEXT
207 HAVE_KRB5_H
208 HAVE_KRB_H
209 HAVE_LANGINFO_CODESET
210 HAVE_LIBCOM_ERR
211 HAVE_LIBCRYPTO
212 HAVE_LIBDES
213 HAVE_LIBDES425
214 HAVE_LIBDGC
215 HAVE_LIBDNET
216 HAVE_LIBHESIOD
217 HAVE_LIBK5CRYPTO
218 HAVE_LIBKRB
219 HAVE_LIBKRB4
220 HAVE_LIBKRB5
221 HAVE_LIBKSTAT
222 HAVE_LIBLOCKFILE
223 HAVE_LIBM
224 HAVE_LIBMAIL
225 HAVE_LIBOTF
226 HAVE_LIBPERFSTAT
227 HAVE_LIBPNG_PNG_H
228 HAVE_LIBPTHREADS
229 HAVE_LIBRESOLV
230 HAVE_LIBSELINUX
231 HAVE_LIBXEXT
232 HAVE_LIBXML2
233 HAVE_LIBXMU
234 HAVE_LINUX_VERSION_H
235 HAVE_LOCALTIME_R
236 HAVE_LOCAL_SOCKETS
237 HAVE_LONG_FILE_NAMES
238 HAVE_LONG_LONG_INT
239 HAVE_LRAND48
240 HAVE_LSTAT
241 HAVE_LUTIMES
242 HAVE_M17N_FLT
243 HAVE_MACHINE_SOUNDCARD_H
244 HAVE_MACH_MACH_H
245 HAVE_MAGICKEXPORTIMAGEPIXELS
246 HAVE_MAGICKMERGEIMAGELAYERS
247 HAVE_MAILLOCK_H
248 HAVE_MALLOC_MALLOC_H
249 HAVE_MATHERR
250 HAVE_MBSTATE_T
251 HAVE_MEMCMP
252 HAVE_MEMMOVE
253 HAVE_MEMORY_H
254 HAVE_MEMSET
255 HAVE_MENUS
256 HAVE_MKSTEMP
257 HAVE_MMAP
258 HAVE_MULTILINGUAL_MENU
259 HAVE_NANOTIME
260 HAVE_NET_IF_DL_H
261 HAVE_NET_IF_H
262 HAVE_NLIST_H
263 HAVE_OTF_GET_VARIATION_GLYPHS
264 HAVE_PERSONALITY_LINUX32
265 HAVE_PNG
266 HAVE_PNG_H
267 HAVE_POSIX_MEMALIGN
268 HAVE_PROCFS
269 HAVE_PSELECT
270 HAVE_PSTAT_GETDYNAMIC
271 HAVE_PTHREAD
272 HAVE_PTHREAD_H
273 HAVE_PTHREAD_SIGMASK
274 HAVE_PTYS
275 HAVE_PTY_H
276 HAVE_PWD_H
277 HAVE_RANDOM
278 HAVE_READLINK
279 HAVE_READLINKAT
280 HAVE_RECVFROM
281 HAVE_RES_INIT
282 HAVE_RINT
283 HAVE_RSVG
284 HAVE_SELECT
285 HAVE_SENDTO
286 HAVE_SEQPACKET
287 HAVE_SETITIMER
288 HAVE_SETLOCALE
289 HAVE_SETRLIMIT
290 HAVE_SHARED_GAME_DIR
291 HAVE_SHUTDOWN
292 HAVE_SIGNED_${GLTYPE}
293 HAVE_SIGNED_SIG_ATOMIC_T
294 HAVE_SIGNED_WCHAR_T
295 HAVE_SIGNED_WINT_T
296 HAVE_SIGSET_T
297 HAVE_SNPRINTF
298 HAVE_SOCKETS
299 HAVE_SOUND
300 HAVE_SOUNDCARD_H
301 HAVE_SPEED_T
302 HAVE_STDINT_H
303 HAVE_STDIO_EXT_H
304 HAVE_STDLIB_H
305 HAVE_STLIB_H_1
306 HAVE_STRINGS_H
307 HAVE_STRING_H
308 HAVE_STRNCASECMP
309 HAVE_STRSIGNAL
310 HAVE_STRTOIMAX
311 HAVE_STRTOLL
312 HAVE_STRTOULL
313 HAVE_STRTOUMAX
314 HAVE_STRUCT_ERA_ENTRY
315 HAVE_STRUCT_IFREQ_IFR_ADDR
316 HAVE_STRUCT_IFREQ_IFR_ADDR_SA_LEN
317 HAVE_STRUCT_IFREQ_IFR_BROADADDR
318 HAVE_STRUCT_IFREQ_IFR_FLAGS
319 HAVE_STRUCT_IFREQ_IFR_HWADDR
320 HAVE_STRUCT_IFREQ_IFR_NETMASK
321 HAVE_STRUCT_NLIST_N_UN_N_NAME
322 HAVE_STRUCT_STAT_ST_ATIMENSEC
323 HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC
324 HAVE_STRUCT_STAT_ST_ATIM_ST__TIM_TV_NSEC
325 HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC
326 HAVE_STRUCT_STAT_ST_BIRTHTIMENSEC
327 HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC
328 HAVE_STRUCT_STAT_ST_BIRTHTIM_TV_NSEC
329 HAVE_STRUCT_TIMEZONE
330 HAVE_STRUCT_TM_TM_ZONE
331 HAVE_STRUCT_UTIMBUF
332 HAVE_ST_DM_MODE
333 HAVE_SYMLINK
334 HAVE_SYNC
335 HAVE_SYS_BITYPES_H
336 HAVE_SYS_INTTYPES_H
337 HAVE_SYS_LOADAVG_H
338 HAVE_SYS_PARAM_H
339 HAVE_SYS_RESOURCE_H
340 HAVE_SYS_SELECT_H
341 HAVE_SYS_SOCKET_H
342 HAVE_SYS_SOUNDCARD_H
343 HAVE_SYS_STAT_H
344 HAVE_SYS_SYSTEMINFO_H
345 HAVE_SYS_TIMEB_H
346 HAVE_SYS_TIME_H
347 HAVE_SYS_TYPES_H
348 HAVE_SYS_UN_H
349 HAVE_SYS_UTSNAME_H
350 HAVE_SYS_VLIMIT_H
351 HAVE_SYS_WAIT_H
352 HAVE_TCATTR
353 HAVE_TERM_H
354 HAVE_TIFF
355 HAVE_TIMEVAL
356 HAVE_TM_GMTOFF
357 HAVE_TM_ZONE
358 HAVE_TOUCHLOCK
359 HAVE_TZNAME
360 HAVE_TZSET
361 HAVE_UNSIGNED_LONG_LONG_INT
362 HAVE_UTIL_H
363 HAVE_UTIMENSAT
364 HAVE_UTIMES
365 HAVE_UTIME_H
366 HAVE_UTMP_H
367 HAVE_VFORK
368 HAVE_VFORK_H
369 HAVE_WCHAR_H
370 HAVE_WCHAR_T
371 HAVE_WINDOW_SYSTEM
372 HAVE_WINSOCK2_H
373 HAVE_WORKING_FORK
374 HAVE_WORKING_UTIMES
375 HAVE_WORKING_VFORK
376 HAVE_WS2TCPIP_H
377 HAVE_XAW3D
378 HAVE_XFT
379 HAVE_XIM
380 HAVE_XKBGETKEYBOARD
381 HAVE_XPM
382 HAVE_XRMSETDATABASE
383 HAVE_XSCREENNUMBEROFSCREEN
384 HAVE_XSCREENRESOURCESTRING
385 HAVE_X_I18N
386 HAVE_X_MENU
387 HAVE_X_SM
388 HAVE_X_WINDOWS
389 HAVE__BOOL
390 HAVE__FTIME
391 HAVE___BUILTIN_UNWIND_INIT
392 HAVE___EXECUTABLE_START
393 HAVE___FPENDING
394 INTERNAL_TERMINAL
395 IS_ANY_SEP
396 IS_DIRECTORY_SEP
397 LOCALTIME_CACHE
398 MAIL_USE_FLOCK
399 MAIL_USE_LOCKF
400 MAIL_USE_POP
401 MAIL_USE_SYSTEM_LOCK
402 MAXPATHLEN
403 NLIST_STRUCT
404 NO_EDITRES
405 NSIG
406 NSIG_MINIMUM
407 NULL_DEVICE
408 PAGESIZE
409 PREFER_VSUSP
410 PTY_ITERATION
411 PTY_NAME_SPRINTF
412 PTY_OPEN
413 PTY_TTY_NAME_SPRINTF
414 PURESIZE
415 RUN_TIME_REMAP
416 SETUP_SLAVE_PTY
417 SIGNALS_VIA_CHARACTERS
418 STDC_HEADERS
419 SYSTEM_PURESIZE_EXTRA
420 SYSTEM_MALLOC
421 TAB3
422 TABDLY
423 TERM
424 TIME_WITH_SYS_TIME
425 TIOCSIGSEND
426 TM_IN_SYS_TIME
427 UNIX98_PTYS
428 USE_TOOLKIT_SCROLL_BARS
429 USG_SUBTTY_WORKS
430 VALBITS
431 XOS_NEEDS_TIME_H
432 _FILE_OFFSET_BITS
433 _LP64
434 _longjmp
435 _setjmp
436 abort
437 alloca
438 close
439 emacs
440 free
441 gmtime
442 localtime
443 malloc
444 random
445 read
446 realloc
447 select
448 umask
449 vfork
452 src/sysdep.c:
453 write
455 src/syssignal.h:
456 signal
457 sigmask
458 sigsetmask
461 lib/dup2.c:
462 dup2
464 lib/signal.h:
465 signal
467 lib/stdio.h:
468 fdopen
469 fopen
470 fwrite
471 popen
472 rename
474 lib/stdlib.h:
475 calloc
476 srandom     (conf_post.h may undo)
478 lib/strftime.c:
479 tzname
480 tzset
482 lib/sys/stat.h:
483 mkdir
485 lib/unistd.h:
486 chown
488 dup2
489 ftruncate
490 isatty
491 link
492 lseek
493 pipe
494 rmdir
495 sleep
496 unlink
499 MS DOS stuff:
501 _NAIVE_DOS_REGS
504 MS stuff:
506 USE_CRT_DLL
508 ms-w32.h:
509 DebPrint
510 EMACSDEBUG
511 MUST_UNDEF__STDC__
513 _VARARGS_
514 _WINSOCKAPI_
515 _WINSOCK_H
517 access
518 calloc
519 chdir
520 chmod
521 chown
522 creat
523 ctime
525 dup2
526 execlp
527 execvp  (also emacsclient.c [WINDOWSNT])
528 fdopen
529 fileno
530 fopen
531 fsync
532 ftruncate
533 getdefdir
534 getdisk
535 getpid
536 isatty
537 kill
538 link
539 lseek
540 mkdir
541 mktemp
542 open
543 pclose
544 pipe
545 popen
546 rename
547 rmdir
548 signal
549 sleep
550 spawnve
551 strdup
552 stricmp
553 strnicmp
554 strupr
555 sys_nerr
556 tzname
557 tzset
558 umask
559 unlink
560 utimbuf
561 utime
562 wait  (also movemail.c [WINDOWSNT])
563 write
565 lib-src/ntlib:
566 access
567 chdir
568 chmod
569 creat
571 dup2
572 execlp
573 execvp
574 fdopen
575 fileno
576 fopen
577 getpid
578 index
579 isatty
580 lseek
581 mkdir
582 mktemp
583 open
584 pclose
585 pipe
586 popen
587 rmdir
588 rindex
589 sleep
590 umask
591 unlink
592 utime