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