]> code.delx.au - gnu-emacs/blob - admin/CPP-DEFINES
Remove unneeded #define POSIX
[gnu-emacs] / 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 DEBUG_LISP_OBJECT_TYPE Define it in lisp.h enable compile time checks on Lisp_Object use.
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/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/s/*.h.
67
68
69 AIX
70 AMPERSAND_FULL_NAME
71 BROKEN_DATAGRAM_SOCKETS
72 BROKEN_FIONREAD
73 BROKEN_GET_CURRENT_DIR_NAME
74 BROKEN_NON_BLOCKING_CONNECT
75 BROKEN_PTY_READ_AFTER_EAGAIN
76 BROKEN_SA_RESTART
77 BROKEN_SIGAIO
78 BROKEN_SIGIO
79 BROKEN_SIGPOLL
80 BROKEN_SIGPTY
81 BSD4_2
82 BSD_SYSTEM
83 CLASH_DETECTION
84 DATA_SEG_BITS
85 DATA_START
86 DBL_MIN_REPLACEMENT
87 DEFAULT_SOUND_DEVICE
88 DEVICE_SEP
89 DIRECTORY_SEP
90 DONT_REOPEN_PTY
91 DOUG_LEA_MALLOC
92 DebPrint
93 EMACSDEBUG
94 EMACS_CONFIGURATION
95 EMACS_CONFIG_OPTIONS
96 EMACS_INT
97 EMACS_UINT
98 FILE_SYSTEM_CASE
99 FLOAT_CHECK_DOMAIN
100 GC_LISP_OBJECT_ALIGNMENT
101 GC_MARK_SECONDARY_STACK
102 GC_MARK_STACK
103 GC_SETJMP_WORKS
104 GMALLOC_INHIBIT_VALLOC
105 GNU_LIBRARY_PENDING_OUTPUT_COUNT
106 GNU_LINUX
107 GNU_MALLOC
108 HAVE_AIX_SMT_EXP
109 HAVE_CBRT
110 HAVE_CLOSEDIR
111 HAVE_DUP2
112 HAVE_EUIDACCESS
113 HAVE_FMOD
114 HAVE_FPATHCONF
115 HAVE_FREXP
116 HAVE_FSYNC
117 HAVE_GETCWD
118 HAVE_GETHOSTNAME
119 HAVE_GETLOADAVG
120 HAVE_GETPAGESIZE
121 HAVE_GETPT
122 HAVE_GETTIMEOFDAY
123 HAVE_GETWD
124 HAVE_H_ERRNO
125 HAVE_INET_SOCKETS
126 HAVE_INVERSE_HYPERBOLIC
127 HAVE_LIBKSTAT
128 HAVE_LIMITS_H
129 HAVE_LINUX_VERSION_H
130 HAVE_LOGB
131 HAVE_LONG_FILE_NAMES
132 HAVE_LRAND48
133 HAVE_MENUS
134 HAVE_MKTIME
135 HAVE_MOUSE
136 HAVE_PSTAT_GETDYNAMIC
137 HAVE_PWD_H
138 HAVE_RANDOM
139 HAVE_RES_INIT
140 HAVE_RINT
141 HAVE_SELECT
142 HAVE_SETLOCALE
143 HAVE_SETPGID
144 HAVE_SETRLIMIT
145 HAVE_SETSID
146 HAVE_SHUTDOWN
147 HAVE_SOCKETS
148 HAVE_SOUND
149 HAVE_STDLIB_H
150 HAVE_STRFTIME
151 HAVE_STRING_H
152 HAVE_STRUCT_UTIMBUF
153 HAVE_SYS_SELECT_H
154 HAVE_SYS_SYSTEMINFO_H
155 HAVE_SYS_TIMEB_H
156 HAVE_SYS_TIME_H
157 HAVE_TCATTR
158 HAVE_TM_ZONE
159 HAVE_TZSET
160 HAVE_UNISTD_H
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 LNOFLSH
172 LOCALTIME_CACHE
173 MAIL_USE_FLOCK
174 MAIL_USE_LOCKF
175 MAIL_USE_POP
176 MAIL_USE_SYSTEM_LOCK
177 MAXPATHLEN
178 MIN_PTY_KERNEL_VERSION -- only used on Mac
179 MODE_LINE_BINARY_TEXT
180 MUST_UNDEF__STDC__
181 NLIST_STRUCT
182 NO_ABORT
183 NO_EDITRES
184 NO_MATHERR
185 NO_TERMIO
186 NSIG
187 NSIG_MINIMUM
188 NULL_DEVICE
189 ORDINARY_LINK
190 O_APPEND
191 O_RDONLY
192 O_RDWR
193 PAGESIZE
194 PENDING_OUTPUT_COUNT
195 PREFER_VSUSP
196 PTY_ITERATION
197 PTY_NAME_SPRINTF
198 PTY_OPEN
199 PTY_TTY_NAME_SPRINTF
200 PURESIZE
201 RUN_TIME_REMAP
202 SA_RESTART
203 SEGMENT_MASK
204 SETPGRP_RELEASES_CTTY
205 SETUP_SLAVE_PTY
206 SIGALRM
207 SIGCHLD
208 SIGHUP
209 SIGKILL
210 SIGNALS_VIA_CHARACTERS
211 SIGPIPE
212 SIGQUIT
213 SIGTRAP
214 SOLARIS2
215 STDC_HEADERS
216 SYSTEM_PURESIZE_EXTRA
217 SYSTEM_MALLOC
218 SYSV_SYSTEM_DIR
219 TAB3
220 TABDLY
221 TERM
222 TIME_WITH_SYS_TIME
223 TIOCSIGSEND
224 TM_IN_SYS_TIME
225 ULIMIT_BREAK_VALUE
226 UNIX98_PTYS
227 USE_CRT_DLL
228 USE_TOOLKIT_SCROLL_BARS
229 USG
230 USG5
231 USG_SUBTTY_WORKS
232 VALBITS
233 WRETCODE
234 XOS_NEEDS_TIME_H
235 _AIX
236 _ARCH_PPC64
237 _FILE_OFFSET_BITS
238 _LP64
239 _MALLOC_INTERNAL
240 _NAIVE_DOS_REGS
241 _VARARGS_
242 _WINSOCKAPI_
243 _WINSOCK_H
244 _longjmp
245 _setjmp
246 _start
247 abort
248 access
249 alloca
250 brk
251 calloc
252 chdir
253 chmod
254 chown
255 close
256 creat
257 ctime
258 dup
259 dup2
260 edata
261 emacs
262 etext
263 execlp
264 execvp
265 fdopen
266 fileno
267 fopen
268 free
269 fsync
270 ftruncate
271 fwrite
272 getdefdir
273 getdisk
274 getenv
275 getpid
276 getuid
277 gmtime
278 index
279 isatty
280 kill
281 link
282 linux
283 localtime
284 logb
285 lseek
286 malloc
287 mkdir
288 mktemp
289 open
290 pclose
291 pipe
292 popen
293 random
294 read
295 realloc
296 rename
297 rindex
298 rmdir
299 sbrk
300 select
301 sigmask
302 signal
303 sigsetmask
304 sleep
305 spawnve
306 srandom
307 strdup
308 stricmp
309 strnicmp
310 strupr
311 sys_nerr
312 system
313 temacs
314 tzname
315 tzset
316 umask
317 unix
318 unlink
319 utimbuf
320 utime
321 vfork
322 wait
323 write
324 xfree