Mercurial > hg > xemacs-beta
annotate src/config.h.in @ 5557:53c066311921
If XLookupKeysym() returned an XFree86 "special key", ignore it. Fixes Sh-F11.
src/ChangeLog addition:
2011-08-27 Aidan Kehoe <kehoea@parhasard.net>
* config.h.in: Make HAVE_X11_XF86KEYSYM_H available here.
* event-Xt.c: #include X11/XF86keysym.h if available.
* event-Xt.c (x_event_to_emacs_event):
If XLookupKeysym () returned one of the XFree86 "special action
keys" for the shifted keysym, treat that as NoSymbol, fixing a
long-standing bug with shifted function keys under X.org.
Details of why in:
http://mid.gmane.org/16960.15685.26911.644835@parhasard.net
ChangeLog addition:
2011-08-27 Aidan Kehoe <kehoea@parhasard.net>
* configure.ac: Check whether X11/XF86keysym.h is available, to
allow us to avoid a bug in the interaction of XKB and XLookupKeysym.
* configure: Regenerate.
author | Aidan Kehoe <kehoea@parhasard.net> |
---|---|
date | Sat, 27 Aug 2011 20:35:23 +0100 |
parents | a142ad1a9140 |
children | 10455659ab64 |
rev | line source |
---|---|
428 | 1 /* XEmacs site configuration template file. -*- C -*- |
2 Copyright (C) 1986, 1991-1994, 1998, 1999 Free Software Foundation, Inc. | |
4991
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
3 Copyright (C) 2000, 2001, 2002, 2004, 2005, 2010 Ben Wing. |
428 | 4 |
5 This file is part of XEmacs. | |
6 | |
5402
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
5228
diff
changeset
|
7 XEmacs is free software: you can redistribute it and/or modify it |
428 | 8 under the terms of the GNU General Public License as published by the |
5402
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
5228
diff
changeset
|
9 Free Software Foundation, either version 3 of the License, or (at your |
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
5228
diff
changeset
|
10 option) any later version. |
428 | 11 |
12 XEmacs is distributed in the hope that it will be useful, but WITHOUT | |
13 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | |
14 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | |
15 for more details. | |
16 | |
17 You should have received a copy of the GNU General Public License | |
5402
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
5228
diff
changeset
|
18 along with XEmacs. If not, see <http://www.gnu.org/licenses/>. */ |
428 | 19 |
20 /* Significantly divergent from FSF. */ | |
21 | |
22 /* No code in XEmacs #includes config.h twice, but some of the code | |
23 intended to work with other packages as well (like gmalloc.c) | |
24 think they can include it as many times as they like. */ | |
25 #ifndef _SRC_CONFIG_H_ | |
26 #define _SRC_CONFIG_H_ | |
27 | |
2367 | 28 /* The proper format of this file: |
29 | |
30 1. All #undef statements that are changed by configure should go together, | |
31 BEFORE the inclusion of the s&m files, and need to be bracketed by | |
32 #ifndef WIN32_NO_CONFIGURE. There is currently only one exception to | |
33 this: SYSTEM_TYPE. | |
34 | |
35 2. All other code, except for the things that may be referenced in s&m | |
36 files (there is very very little of this) need to go AFTER the inclusion | |
37 of s&m files. | |
38 | |
39 Together, this ensures that the s&m files can override configure | |
40 determinations as necessary, and we will properly notice this. | |
41 */ | |
42 | |
771 | 43 /* |
44 This file now serves both as config.h.in and simply as config.h under | |
45 Windows NT. Under Windows NT, there is no configure script that | |
46 operates, so it is necessary for the relevant constants to be set | |
47 manually, either by the user (for user options) or in s/windowsnt.h. | |
48 | |
49 Formerly, under NT there were three different places where constants | |
50 were defined -- nt/config.h, nt/xemacs.mak and s/windowsnt.h; now only | |
51 the latter two are used. (This separate config.h was a hassle because | |
52 it required constant synchronization between it and src/config.h.in.) | |
53 Since the options that are substituted by configure are written in | |
54 config.h.in with #undef, it is easy to make this file serve as | |
55 config.h under Windows NT. Options that are set by the user are | |
56 specified in the file config.inc.samp, which is included by xemacs.mak | |
872 | 57 \(the makefile) and used to set command-line options to the |
771 | 58 compiler. The sorts of options that relate to the system and not to |
59 the user and which are normally auto-determined by configure are set | |
60 in windowsnt.h. | |
61 | |
62 What this means is that a little more care has to be taken in the way | |
63 things are arranged in config.h.in. In particular: | |
64 | |
65 -- Everything that is written with a #undef should be bracketed by | |
66 #ifdef WIN32_NO_CONFIGURE, and these #ifdefs should in general be | |
67 grouped together as much as possible. | |
68 | |
69 -- Things that are not #undefs should not go inside this bracketed | |
70 #ifdef, because these things typically set constants based on other | |
71 constants and those latter constants may be set elsewhere under | |
72 Windows NT. | |
73 | |
74 -- Any #ifdefs that depend on constants that may be set in windowsnt.h | |
75 need to be moved after the point at which this file is | |
76 included. This applies for example to the error checking macros. | |
77 */ | |
78 | |
79 #if defined (WIN32_NATIVE) && !defined (MINGW) | |
80 # define WIN32_NO_CONFIGURE | |
81 #endif | |
82 | |
428 | 83 /* Use this to add code in a structured way to FSF-maintained source |
84 files so as to make it obvious where XEmacs changes are. */ | |
85 #define XEMACS 1 | |
86 | |
771 | 87 #ifndef WIN32_NO_CONFIGURE /* Defined in xemacs.mak or s/windowsnt.h: */ |
88 | |
442 | 89 /* Program name */ |
90 #undef EMACS_PROGNAME | |
91 | |
4448
fd8a9a4d81d9
Support #!, to allow XEmacs to be called as a script interpreter.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4389
diff
changeset
|
92 /* Name of the link to the program to be used with #! scripts */ |
fd8a9a4d81d9
Support #!, to allow XEmacs to be called as a script interpreter.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4389
diff
changeset
|
93 #undef SHEBANG_PROGNAME |
fd8a9a4d81d9
Support #!, to allow XEmacs to be called as a script interpreter.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4389
diff
changeset
|
94 |
428 | 95 /* Allow s&m files to differentiate OS versions without having |
96 multiple files to maintain. */ | |
97 #undef OS_RELEASE | |
98 | |
99 /* The configuration name. This is used as the install directory name | |
100 for the lib-src programs. */ | |
101 #undef EMACS_CONFIGURATION | |
102 | |
103 /* The configuration options. This is exported to Lisp. */ | |
104 #undef EMACS_CONFIG_OPTIONS | |
105 | |
106 /* The version info from version.sh. Used in #pragma ident in emacs.c */ | |
107 #undef EMACS_MAJOR_VERSION | |
108 #undef EMACS_MINOR_VERSION | |
109 #undef EMACS_PATCH_LEVEL | |
110 #undef EMACS_BETA_VERSION | |
111 #undef EMACS_VERSION | |
112 #undef XEMACS_CODENAME | |
975 | 113 #undef XEMACS_EXTRA_NAME |
2602 | 114 #undef XEMACS_RELEASE_DATE |
428 | 115 |
442 | 116 /* Make functions from IEEE Stds 1003.[123] available. */ |
117 #undef _POSIX_C_SOURCE | |
118 | |
119 /* Make some functions from Unix98 available. */ | |
120 #undef _XOPEN_SOURCE | |
121 | |
122 /* Make "extensions" from Unix98 available. */ | |
123 #undef _XOPEN_SOURCE_EXTENDED | |
124 | |
428 | 125 /* Make all functions available on AIX. See AC_AIX. */ |
1294 | 126 /* Some AIX compilers (cc) pre-define _ALL_SOURCE, some (xlc) don't. */ |
1284 | 127 #ifndef _ALL_SOURCE |
428 | 128 #undef _ALL_SOURCE |
1284 | 129 #endif |
428 | 130 |
131 /* Make all functions available on GNU libc systems. See features.h. */ | |
132 #undef _GNU_SOURCE | |
133 | |
442 | 134 /* Make all functions available on Solaris 2 systems. */ |
135 #undef __EXTENSIONS__ | |
136 | |
1799 | 137 /* Define to the name of the typeof extension, if the compiler supports one */ |
138 #undef TYPEOF | |
139 | |
428 | 140 /* Used to identify the XEmacs version in stack traces. */ |
141 #undef STACK_TRACE_EYE_CATCHER | |
142 | |
143 /* Allow the configurer to specify if she wants site-lisp. */ | |
144 #undef INHIBIT_SITE_LISP | |
145 | |
146 /* Allow the configurer to specify if she wants site-modules. */ | |
147 #undef INHIBIT_SITE_MODULES | |
148 | |
149 /* Undefine on systems which don't have processes */ | |
150 #undef HAVE_UNIX_PROCESSES | |
151 | |
152 /* Define if you are using the GNU C Library. -- experimental. */ | |
153 #undef DOUG_LEA_MALLOC | |
154 | |
155 /* Define if you are using libmcheck.a from the GNU C Library. */ | |
156 #undef HAVE_LIBMCHECK | |
157 | |
158 /* Define if you are using dlmalloc from the Linux C library. */ | |
159 #undef _NO_MALLOC_WARNING_ | |
160 | |
161 /* Use the system malloc? */ | |
162 #undef USE_SYSTEM_MALLOC | |
163 | |
164 /* Use a debugging malloc? -- experimental */ | |
165 #undef USE_DEBUG_MALLOC | |
166 | |
2367 | 167 /* Use the relocating allocator for buffer space? */ |
168 #undef REL_ALLOC | |
169 | |
170 /* If using the C implementation of alloca, define if you know the | |
171 direction of stack growth for your system; otherwise it will be | |
172 automatically deduced at run-time. | |
173 STACK_DIRECTION > 0 => grows toward higher addresses | |
174 STACK_DIRECTION < 0 => grows toward lower addresses | |
175 STACK_DIRECTION = 0 => direction of growth unknown */ | |
176 #undef STACK_DIRECTION | |
177 | |
178 /* Is alloca() broken when part of an argument to a function call? */ | |
179 #undef BROKEN_ALLOCA_IN_FUNCTION_CALLS | |
180 | |
181 /* Define to 1 if you have `alloca', as a function or macro. */ | |
182 #undef HAVE_ALLOCA | |
183 | |
4759
aa5ed11f473b
Remove support for obsolete systems. See xemacs-patches message with ID
Jerry James <james@xemacs.org>
parents:
4738
diff
changeset
|
184 /* Define to 1 if you have <alloca.h> and it should be used. */ |
2367 | 185 #undef HAVE_ALLOCA_H |
186 | |
187 /* Define to 1 if using `alloca.c'. */ | |
188 #undef C_ALLOCA | |
189 | |
428 | 190 /* Compile in TTY support? */ |
191 #undef HAVE_TTY | |
192 | |
193 /* Compile in support for MS windows? */ | |
194 #undef HAVE_MS_WINDOWS | |
195 | |
196 /* special cygwin process handling? */ | |
197 #undef HAVE_MSG_SELECT | |
198 | |
199 /* Compile in support for the X window system? */ | |
200 #undef HAVE_X_WINDOWS | |
201 | |
3354 | 202 /* Compile with support for fontconfig? */ |
203 #undef HAVE_FONTCONFIG | |
204 | |
4328
dfd878799ef0
Autoconfiscate the recent fontconfig spelling change.
Aidan Kehoe <kehoea@parhasard.net>
parents:
3959
diff
changeset
|
205 /* Was the spelling of FcConfigGetRescanInterval corrected in this |
dfd878799ef0
Autoconfiscate the recent fontconfig spelling change.
Aidan Kehoe <kehoea@parhasard.net>
parents:
3959
diff
changeset
|
206 fontconfig version? */ |
dfd878799ef0
Autoconfiscate the recent fontconfig spelling change.
Aidan Kehoe <kehoea@parhasard.net>
parents:
3959
diff
changeset
|
207 #undef HAVE_FCCONFIGGETRESCANINTERVAL |
dfd878799ef0
Autoconfiscate the recent fontconfig spelling change.
Aidan Kehoe <kehoea@parhasard.net>
parents:
3959
diff
changeset
|
208 |
dfd878799ef0
Autoconfiscate the recent fontconfig spelling change.
Aidan Kehoe <kehoea@parhasard.net>
parents:
3959
diff
changeset
|
209 /* Was the spelling of FcConfigSetRescanInterval corrected in this |
dfd878799ef0
Autoconfiscate the recent fontconfig spelling change.
Aidan Kehoe <kehoea@parhasard.net>
parents:
3959
diff
changeset
|
210 fontconfig version? */ |
dfd878799ef0
Autoconfiscate the recent fontconfig spelling change.
Aidan Kehoe <kehoea@parhasard.net>
parents:
3959
diff
changeset
|
211 #undef HAVE_FCCONFIGSETRESCANINTERVAL |
dfd878799ef0
Autoconfiscate the recent fontconfig spelling change.
Aidan Kehoe <kehoea@parhasard.net>
parents:
3959
diff
changeset
|
212 |
3094 | 213 /* Compile with support for Xft? */ |
4916
a6c778975d7d
split USE_XFT into HAVE_XFT/USE_XFT
Ben Wing <ben@xemacs.org>
parents:
4865
diff
changeset
|
214 #undef HAVE_XFT |
3094 | 215 /* Per-widget stuff will go away? */ |
4916
a6c778975d7d
split USE_XFT into HAVE_XFT/USE_XFT
Ben Wing <ben@xemacs.org>
parents:
4865
diff
changeset
|
216 #undef HAVE_XFT_MENUBARS |
a6c778975d7d
split USE_XFT into HAVE_XFT/USE_XFT
Ben Wing <ben@xemacs.org>
parents:
4865
diff
changeset
|
217 #undef HAVE_XFT_TABS |
a6c778975d7d
split USE_XFT into HAVE_XFT/USE_XFT
Ben Wing <ben@xemacs.org>
parents:
4865
diff
changeset
|
218 #undef HAVE_XFT_GAUGES |
3094 | 219 |
428 | 220 /* Defines for building X applications */ |
221 #ifdef HAVE_X_WINDOWS | |
222 /* The following will be defined if xmkmf thinks they are necessary */ | |
223 #undef SVR4 | |
224 #undef SYSV | |
225 #undef AIXV3 | |
226 #undef _POSIX_SOURCE | |
227 #undef _BSD_SOURCE | |
228 #undef _SVID_SOURCE | |
229 #undef X_LOCALE | |
230 #undef NARROWPROTO | |
771 | 231 #endif /* HAVE_X_WINDOWS */ |
232 | |
462 | 233 /* Defines for building Gtk applications */ |
234 #undef HAVE_GNOME | |
235 #undef HAVE_GTK | |
236 #undef HAVE_GDK_IMLIB_INIT | |
237 #undef HAVE_GLADE_GLADE_H | |
238 #undef HAVE_GLADE_H | |
239 #undef LIBGLADE_XML_TXTDOMAIN | |
240 | |
444 | 241 /* XFree86 has a different prototype for this function */ |
242 #undef HAVE_XREGISTERIMINSTANTIATECALLBACK | |
243 #undef XREGISTERIMINSTANTIATECALLBACK_NONSTANDARD_PROTOTYPE | |
428 | 244 |
245 #undef THIS_IS_X11R4 | |
246 #undef THIS_IS_X11R5 | |
247 #undef THIS_IS_X11R6 | |
248 | |
442 | 249 #undef HAVE_XCONVERTCASE |
2625 | 250 #undef HAVE_XTREGISTERDRAWABLE |
442 | 251 |
252 #undef HAVE_BALLOON_HELP | |
253 | |
428 | 254 /* Where do we find bitmaps? */ |
255 #undef BITMAPDIR | |
256 | |
257 /* Define AMPERSAND_FULL_NAME if you use the convention | |
258 that & in the full name stands for the login id. */ | |
259 #undef AMPERSAND_FULL_NAME | |
260 | |
261 /* Some things figured out by the configure script, grouped as they are in | |
262 configure.in. */ | |
263 #undef HAVE_MCHECK_H | |
442 | 264 #undef HAVE_A_OUT_H |
446 | 265 #undef HAVE_ELF_H |
442 | 266 #undef HAVE_CYGWIN_VERSION_H |
267 #undef HAVE_FCNTL_H | |
268 #undef HAVE_INTTYPES_H | |
269 #undef HAVE_LIBGEN_H | |
270 #undef HAVE_LOCALE_H | |
912 | 271 #undef HAVE_WCHAR_H |
428 | 272 #undef HAVE_MACH_MACH_H |
442 | 273 #undef HAVE_SYS_PARAM_H |
274 #undef HAVE_SYS_PSTAT_H | |
2263 | 275 #undef HAVE_SYS_RESOURCE_H |
442 | 276 #undef HAVE_SYS_TIME_H |
428 | 277 #undef HAVE_SYS_TIMEB_H |
777 | 278 #undef HAVE_SYS_TIMES_H |
442 | 279 #undef HAVE_SYS_UN_H |
2263 | 280 #undef HAVE_SYS_VLIMIT_H |
442 | 281 #undef HAVE_ULIMIT_H |
428 | 282 #undef HAVE_UNISTD_H |
442 | 283 |
428 | 284 #undef HAVE_SYS_WAIT_H |
285 #undef HAVE_LIBINTL_H | |
286 #undef HAVE_X11_XLOCALE_H | |
5557
53c066311921
If XLookupKeysym() returned an XFree86 "special key", ignore it. Fixes Sh-F11.
Aidan Kehoe <kehoea@parhasard.net>
parents:
5556
diff
changeset
|
287 #undef HAVE_X11_XF86KEYSYM_H |
872 | 288 |
289 /* About __STDC__: Different compilers differ wrt __STDC__. Sunpro C | |
290 defines it, but its value is 0 unless we disable non-ANSI extensions. | |
291 VC++ doesn't define it at all unless we disable non-ANSI extensions. | |
292 But these compilers are all ANSI-compliant. So don't go testing | |
293 __STDC__ anywhere except in code that runs only on known | |
294 compilers. --ben | |
295 | |
296 Jamie wrote the following: | |
297 | |
298 [[ The ANSI standard says that defining __STDC__ to a non-zero value | |
299 means that the compiler conforms to that standard. The standard | |
300 requires certain header files and library functions to be present. | |
301 Therefore, if your compiler defines __STDC__ to non-0 but does not have | |
302 ANSI headers and the ANSI library routines, then your compiler is | |
303 buggy. Conversely, an ANSI-conforming environment (which has both the | |
304 ANSI headers and library routines, i.e., stdlib.h and `memmove') does | |
305 not necessarily define the STDC_HEADERS flag. Lucid Emacs requires an | |
306 ANSI compiler. Therefore, there is no need to consult the abominable | |
307 STDC_HEADERS flag. -- jwz ]] | |
308 | |
309 In reality, we should not be testing STDC_HEADERS at all except | |
310 possibly in code we're purposely keeping in close sync with FSF code. | |
311 STDC_HEADERS should be defined on *ALL* compilers. | |
312 */ | |
313 | |
428 | 314 #undef STDC_HEADERS |
872 | 315 |
428 | 316 #undef TIME_WITH_SYS_TIME |
317 #undef WORDS_BIGENDIAN | |
318 | |
319 #undef HAVE_LONG_FILE_NAMES | |
320 | |
321 /* Use lock files to detect multiple edits of the same file? */ | |
322 #undef CLASH_DETECTION | |
323 | |
324 /* Have shared library support */ | |
325 #undef HAVE_DLOPEN | |
326 #undef HAVE_DLERROR | |
327 #undef HAVE__DLERROR | |
328 #undef HAVE_SHL_LOAD | |
1383 | 329 #undef HAVE_DYLD |
2078 | 330 #undef HAVE_LTDL |
1259 | 331 #undef DLSYM_NEEDS_UNDERSCORE |
1790 | 332 #undef HAVE_SHLIB |
428 | 333 |
5556
a142ad1a9140
Use dlsym() in preference to NSLookupSymbolInModule() on Darwin, if available.
Aidan Kehoe <kehoea@parhasard.net>
parents:
5510
diff
changeset
|
334 #undef REALPATH_CORRECTS_CASE |
a142ad1a9140
Use dlsym() in preference to NSLookupSymbolInModule() on Darwin, if available.
Aidan Kehoe <kehoea@parhasard.net>
parents:
5510
diff
changeset
|
335 #undef DEFAULT_FILE_SYSTEM_IGNORE_CASE |
4721
19d70297d866
Make readlink_or_correct_case function correctly on Darwin.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4699
diff
changeset
|
336 |
428 | 337 #undef HAVE_LIBINTL |
338 #undef HAVE_LIBDNET | |
339 #undef HAVE_LIBRESOLV | |
340 | |
341 /* Is `sys_siglist' declared by <signal.h>? */ | |
2651 | 342 #undef HAVE_DECL_SYS_SIGLIST |
428 | 343 |
344 /* Is `struct timeval' declared by <sys/time.h>? */ | |
345 #undef HAVE_TIMEVAL | |
346 | |
347 | |
348 #undef TM_IN_SYS_TIME | |
349 #undef HAVE_TM_ZONE | |
350 #undef HAVE_TZNAME | |
351 | |
442 | 352 /* For `getloadavg' provided by system */ |
353 #undef HAVE_GETLOADAVG | |
354 #undef HAVE_SYS_LOADAVG_H | |
355 /* For implementing `getloadavg' ourselves */ | |
356 #undef HAVE_LIBKSTAT | |
357 #undef HAVE_KSTAT_H | |
358 | |
428 | 359 /* Is `h_errno' declared by <netdb.h>? */ |
360 #undef HAVE_H_ERRNO | |
361 | |
362 /* Does `localtime' cache TZ? */ | |
363 #undef LOCALTIME_CACHE | |
364 | |
365 /* Can `gettimeofday' accept two arguments? */ | |
366 #undef GETTIMEOFDAY_ONE_ARGUMENT | |
367 | |
2367 | 368 /* Is scanf() broken? (Under certain versions of Cygwin) */ |
369 #undef CYGWIN_SCANF_BUG | |
370 | |
4834
b3ea9c582280
Use new cygwin_conv_path API with Cygwin 1.7 for converting names between Win32 and POSIX, UTF-8-aware, with attendant changes elsewhere
Ben Wing <ben@xemacs.org>
parents:
4833
diff
changeset
|
371 /* UTF-8-aware path-conversion function in Cygwin 1.7 and on */ |
b3ea9c582280
Use new cygwin_conv_path API with Cygwin 1.7 for converting names between Win32 and POSIX, UTF-8-aware, with attendant changes elsewhere
Ben Wing <ben@xemacs.org>
parents:
4833
diff
changeset
|
372 #undef HAVE_CYGWIN_CONV_PATH |
b3ea9c582280
Use new cygwin_conv_path API with Cygwin 1.7 for converting names between Win32 and POSIX, UTF-8-aware, with attendant changes elsewhere
Ben Wing <ben@xemacs.org>
parents:
4833
diff
changeset
|
373 |
428 | 374 #undef HAVE_MMAP |
375 #undef HAVE_STRCOLL | |
376 #undef HAVE_GETPGRP | |
377 #undef GETPGRP_VOID | |
378 | |
379 #undef HAVE_INVERSE_HYPERBOLIC | |
380 | |
2367 | 381 /* Functions in the big list of functions checked for */ |
428 | 382 #undef HAVE_CBRT |
383 #undef HAVE_CLOSEDIR | |
384 #undef HAVE_DUP2 | |
385 #undef HAVE_EACCESS | |
386 #undef HAVE_FMOD | |
387 #undef HAVE_FPATHCONF | |
388 #undef HAVE_FREXP | |
2367 | 389 #undef HAVE_FSYNC |
428 | 390 #undef HAVE_FTIME |
2367 | 391 #undef HAVE_FTRUNCATE |
440 | 392 #undef HAVE_GETADDRINFO |
428 | 393 #undef HAVE_GETHOSTNAME |
440 | 394 #undef HAVE_GETNAMEINFO |
428 | 395 #undef HAVE_GETPAGESIZE |
2263 | 396 #undef HAVE_GETRLIMIT |
428 | 397 #undef HAVE_GETTIMEOFDAY |
398 #undef HAVE_GETCWD | |
771 | 399 #undef HAVE_LINK |
428 | 400 #undef HAVE_LOGB |
401 #undef HAVE_LRAND48 | |
402 #undef HAVE_MATHERR | |
403 #undef HAVE_MKDIR | |
404 #undef HAVE_MKTIME | |
405 #undef HAVE_PERROR | |
406 #undef HAVE_POLL | |
407 #undef HAVE_RANDOM | |
771 | 408 #undef HAVE_READLINK |
428 | 409 #undef HAVE_RENAME |
410 #undef HAVE_RES_INIT | |
411 #undef HAVE_RMDIR | |
412 #undef HAVE_SELECT | |
413 #undef HAVE_SETITIMER | |
414 #undef HAVE_SETPGID | |
415 #undef HAVE_SETSID | |
416 #undef HAVE_SIGBLOCK | |
417 #undef HAVE_SIGHOLD | |
418 #undef HAVE_SIGPROCMASK | |
419 #undef HAVE_SNPRINTF | |
420 #undef HAVE_STRERROR | |
1204 | 421 #undef HAVE_STRLWR |
422 #undef HAVE_STRUPR | |
771 | 423 #undef HAVE_SYMLINK |
428 | 424 #undef HAVE_TZSET |
425 #undef HAVE_ULIMIT | |
2367 | 426 #undef HAVE_UMASK |
428 | 427 #undef HAVE_USLEEP |
2367 | 428 #undef HAVE_VLIMIT |
429 #undef HAVE_VSNPRINTF | |
430 #undef HAVE_WAITPID | |
431 #undef HAVE_WCSCMP | |
432 #undef HAVE_WCSLEN | |
433 | |
3092 | 434 /* Functions and structs checked for vdb. */ |
435 #undef HAVE_MPROTECT | |
436 #undef HAVE_SIGACTION | |
437 #undef HAVE_STRUCT_SIGINFO_SI_ADDR | |
438 #undef HAVE_SIGINFO_T_SI_ADDR | |
439 #undef HAVE_SIGNAL | |
440 #undef HAVE_STRUCT_SIGCONTEXT_CR2 | |
441 | |
460 | 442 #undef HAVE_UTIME |
428 | 443 #undef HAVE_UTIMES |
2367 | 444 #undef HAVE_SIGSETJMP |
442 | 445 |
535 | 446 /* Many flavors of PTY support */ |
2651 | 447 /* glibc's easy pty allocation function */ |
448 #undef HAVE_GETPT | |
449 /* SGI's easy pty allocation function */ | |
450 #undef HAVE__GETPTY | |
451 /* BSD's easy pty allocation function */ | |
452 #undef HAVE_OPENPTY | |
453 /* Unix98 */ | |
454 #undef HAVE_GRANTPT | |
455 /* Unix98 */ | |
456 #undef HAVE_UNLOCKPT | |
457 /* Unix98 */ | |
458 #undef HAVE_PTSNAME | |
459 /* BSD */ | |
460 #undef HAVE_KILLPG | |
461 /* Posix 1 */ | |
462 #undef HAVE_TCGETPGRP | |
463 /* SysV streams */ | |
464 #undef HAVE_ISASTREAM | |
465 /* AIX */ | |
466 #undef HAVE_SYS_PTY_H | |
467 /* HP-UX */ | |
468 #undef HAVE_SYS_PTYIO_H | |
469 /* Linux, Tru64 */ | |
470 #undef HAVE_PTY_H | |
471 /* BSD openpty */ | |
472 #undef HAVE_LIBUTIL_H | |
473 /* NetBSD openpty */ | |
474 #undef HAVE_UTIL_H | |
475 /* SysV streams */ | |
476 #undef HAVE_STROPTS_H | |
477 /* SysV streams TIOCSIGNAL */ | |
478 #undef HAVE_STRTIO_H | |
442 | 479 |
428 | 480 #undef HAVE_SOCKETS |
481 #undef HAVE_SOCKADDR_SUN_LEN | |
482 #undef HAVE_MULTICAST | |
483 #undef HAVE_SYSVIPC | |
438 | 484 #undef HAVE_LOCKF |
485 #undef HAVE_FLOCK | |
428 | 486 |
487 #undef SYSV_SYSTEM_DIR | |
488 #undef NONSYSTEM_DIR_LIBRARY | |
489 | |
490 #undef HAVE_TERMIOS | |
491 #undef HAVE_TERMIO | |
492 #undef NO_TERMIO | |
493 #undef SIGNALS_VIA_CHARACTERS | |
494 | |
495 #undef NLIST_STRUCT | |
496 | |
724 | 497 /* Do IPv6 hostname canonicalization before IPv4 in getaddrinfo()? */ |
498 #undef IPV6_CANONICALIZE | |
499 | |
428 | 500 /* Compile in support for SOCKS? */ |
501 #undef HAVE_SOCKS | |
502 | |
503 /* Compile in support for X pixmaps via the `xpm' library? */ | |
504 #undef HAVE_XPM | |
505 #undef FOR_MSW | |
506 | |
507 /* Compile in support for "X faces" via the `compface' library? | |
508 This enables graphical display of X-face headers in mail/news messages */ | |
509 #undef HAVE_XFACE | |
510 | |
511 /* Compile in support for JPEG images */ | |
512 #undef HAVE_JPEG | |
513 | |
514 /* Compile in support for TIFF images */ | |
515 #undef HAVE_TIFF | |
516 | |
517 /* Compile in support for GIF images */ | |
518 #undef HAVE_GIF | |
519 | |
520 /* Compile in support for PNG images */ | |
521 #undef HAVE_PNG | |
522 | |
771 | 523 /* Compile in support for GZIP compression */ |
524 #undef HAVE_ZLIB | |
525 | |
428 | 526 /* Compile in support for DBM databases? May require libgdbm or libdbm. */ |
527 #undef HAVE_DBM | |
4699
0e1461b592ce
Check for gdbm/ndbm.h, too.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4497
diff
changeset
|
528 /* Full #include file path for GDBM's or platforms ndbm.h */ |
0e1461b592ce
Check for gdbm/ndbm.h, too.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4497
diff
changeset
|
529 #undef NDBM_H_FILE |
4991
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
530 /* Can we trust the prototypes in ndbm.h? If not, we need to declare our own */ |
97c45e3ad810
implement configure test for whether ndbm.h prototypes are broken
Ben Wing <ben@xemacs.org>
parents:
4969
diff
changeset
|
531 #undef TRUST_NDBM_H_PROTOTYPES |
428 | 532 |
3739 | 533 /* Define to 1 if the system has the type `u_int8_t'. */ |
534 #undef HAVE_U_INT8_T | |
535 /* Define to 1 if the system has the type `u_int16_t'. */ | |
536 #undef HAVE_U_INT16_T | |
537 /* Define to 1 if the system has the type `u_int32_t'. */ | |
538 #undef HAVE_U_INT32_T | |
539 /* Define to 1 if the system has the type `u_int64_t'. */ | |
540 #undef HAVE_U_INT64_T | |
541 | |
428 | 542 /* Compile in support for Berkeley DB style databases? May require libdb. */ |
543 #undef HAVE_BERKELEY_DB | |
544 /* Full #include file path for Berkeley DB's db.h */ | |
442 | 545 #undef DB_H_FILE |
428 | 546 |
547 /* Do we have either DBM or Berkeley DB database support? */ | |
548 #undef HAVE_DATABASE | |
549 | |
550 /* Do we have LDAP support? */ | |
551 #undef HAVE_LDAP | |
552 /* Does the library define ldap_set_option () ? */ | |
553 #undef HAVE_LDAP_SET_OPTION | |
554 /* Does the library define ldap_get_lderrno () ? */ | |
555 #undef HAVE_LDAP_GET_LDERRNO | |
556 /* Does the library define ldap_result2error () ? */ | |
557 #undef HAVE_LDAP_RESULT2ERROR | |
558 /* Does the library define ldap_parse_result () ? */ | |
559 #undef HAVE_LDAP_PARSE_RESULT | |
560 | |
442 | 561 /* Do we have PostgreSQL RDBMS support? */ |
562 #undef HAVE_POSTGRESQL | |
563 #undef HAVE_POSTGRESQLV7 | |
2651 | 564 /* main PostgreSQL header file */ |
565 #undef LIBPQ_FE_H_FILE | |
442 | 566 |
428 | 567 /* Do you have the Xauth library present? This will add some extra |
568 functionality to gnuserv. */ | |
569 #undef HAVE_XAUTH | |
570 | |
571 /* Compile in support for gpm (General Purpose Mouse)? */ | |
572 #undef HAVE_GPM | |
573 | |
574 /* Compile in support for ncurses? */ | |
575 #undef HAVE_NCURSES | |
576 /* Full #include file paths for ncurses' curses.h and term.h. */ | |
442 | 577 #undef CURSES_H_FILE |
578 #undef TERM_H_FILE | |
428 | 579 |
580 /* Define USE_ASSERTIONS if you want the abort() to be changed to assert(). | |
581 If the assertion fails, assert_failed() will be called. This is | |
582 recommended for general use because it gives more info about the crash | |
583 than just the abort() message. Too many people "Can't find the corefile" | |
584 or have limit-ed core dumps out of existence. */ | |
585 #undef USE_ASSERTIONS | |
586 | |
587 /* Define one or more of the following if you want lots of extra checks | |
588 (e.g. structure validation) compiled in. These should be turned | |
3959 | 589 on during the beta-test cycle. |
590 | |
591 Keep macro names sorted to help with syncing this file to configure.ac. | |
592 Don't forget the ERROR_CHECK_ALL stuff at the end of this file. */ | |
593 | |
594 /* Minor sanity checking of the bytecode interpreter. Useful for | |
595 debugging the byte compiler. */ | |
596 #undef ERROR_CHECK_BYTE_CODE | |
597 | |
598 /* Sanity-check the redisplay structures after each modification. */ | |
599 #undef ERROR_CHECK_DISPLAY | |
428 | 600 |
601 /* Check the entire extent structure of a buffer each time an extent | |
602 change is done, and do other extent-related checks. */ | |
603 #undef ERROR_CHECK_EXTENTS | |
440 | 604 |
3959 | 605 /* Attempt to catch bugs related to garbage collection (e.g. not GCPRO'ing). */ |
606 #undef ERROR_CHECK_GC | |
607 | |
608 /* Minor sanity checking of glyphs, especially subwindows and | |
609 widgets. */ | |
610 #undef ERROR_CHECK_GLYPHS | |
611 | |
612 /* Attempt to catch freeing of a non-malloc()ed block, heap corruption, etc. */ | |
613 #undef ERROR_CHECK_MALLOC | |
614 | |
615 /* Define for any sanity checks on structures that are not handled by a | |
616 more specific error-checking type. */ | |
617 #undef ERROR_CHECK_STRUCTURES | |
440 | 618 |
800 | 619 /* Turn on checks related to text -- check that text in strings and buffers |
620 is in a valid format before we use it, check that buffer positions are | |
621 valid, etc. */ | |
622 #undef ERROR_CHECK_TEXT | |
440 | 623 |
3959 | 624 /* Turn on checks related to types -- make sure that all X... macros are |
625 dereferencing the correct type, and that all XSET... macros (as much as | |
626 possible) are setting the correct type of structure; check any other | |
627 places that a specific type is expected. */ | |
628 #undef ERROR_CHECK_TYPES | |
800 | 629 |
428 | 630 /* Define DEBUG_XEMACS if you want extra debugging code compiled in. |
631 This is mainly intended for use by developers. */ | |
632 #undef DEBUG_XEMACS | |
633 | |
634 /* Define MEMORY_USAGE_STATS if you want extra code compiled in to | |
635 determine where XEmacs' memory is going. */ | |
636 #undef MEMORY_USAGE_STATS | |
637 | |
460 | 638 /* Define QUANTIFY if using Quantify from Rational Software. |
428 | 639 This adds some additional calls to control data collection. |
640 It is only intended for use by the developers. */ | |
641 #undef QUANTIFY | |
642 | |
460 | 643 /* Define PURIFY if using Purify from Rational Software. |
428 | 644 It is only intended for use by the developers. */ |
645 #undef PURIFY | |
646 | |
4803
5d120deb60ca
Enable rudimentary support for valgrind, including functions that tell valgrind
Jerry James <james@xemacs.org>
parents:
4790
diff
changeset
|
647 /* Define USE_VALGRIND to compile valgrind hints into the code. |
5d120deb60ca
Enable rudimentary support for valgrind, including functions that tell valgrind
Jerry James <james@xemacs.org>
parents:
4790
diff
changeset
|
648 It is only intended for use by the developers. */ |
5d120deb60ca
Enable rudimentary support for valgrind, including functions that tell valgrind
Jerry James <james@xemacs.org>
parents:
4790
diff
changeset
|
649 #undef USE_VALGRIND |
5d120deb60ca
Enable rudimentary support for valgrind, including functions that tell valgrind
Jerry James <james@xemacs.org>
parents:
4790
diff
changeset
|
650 |
428 | 651 /* Define EXTERNAL_WIDGET to compile support for using the editor as a |
652 widget within another program. */ | |
653 #undef EXTERNAL_WIDGET | |
654 | |
4829
9987da5935bd
try to fix problems with link errors involving inlined functions
Ben Wing <ben@xemacs.org>
parents:
4790
diff
changeset
|
655 /* There are some special-case defines for gcc, g++ and lcc. */ |
428 | 656 #undef USE_GCC |
4829
9987da5935bd
try to fix problems with link errors involving inlined functions
Ben Wing <ben@xemacs.org>
parents:
4790
diff
changeset
|
657 #undef USE_GPLUSPLUS |
9987da5935bd
try to fix problems with link errors involving inlined functions
Ben Wing <ben@xemacs.org>
parents:
4790
diff
changeset
|
658 #undef USE_LCC /* #### Not currently set in configure */ |
428 | 659 |
660 /* Compile in support for CDE (Common Desktop Environment) drag and drop? | |
661 Requires libDtSvc, which typically must be present at runtime. */ | |
662 #undef HAVE_CDE | |
663 | |
664 /* Compile in generic Drag'n'Drop API */ | |
665 #undef HAVE_DRAGNDROP | |
666 | |
667 /* Compile in support for proper handling of WM_COMMAND. */ | |
668 #undef HAVE_WMCOMMAND | |
669 | |
670 /* Define this if you want Mule support (multi-byte character support). | |
671 There may be some performance penalty, although it should be small | |
672 if you're working with ASCII files. */ | |
673 #undef MULE | |
674 | |
771 | 675 /* Define this if you want EOL detection of files to be on by default |
676 in a non-Mule Unix; otherwise, defaults will be set so that all | |
677 files are read in as binary. Doesn't apply to Cygwin or MinGW. */ | |
678 #undef HAVE_DEFAULT_EOL_DETECTION | |
428 | 679 |
1259 | 680 /* Support X FontSets. Evil, yes, but if we're going to make it go away |
681 by using faces in the menubar we should do so. */ | |
682 #undef USE_XFONTSET | |
683 | |
428 | 684 /* Do we want to use X window input methods for use with Mule? (requires X11R5) |
685 If so, use raw Xlib or higher level Motif interface? */ | |
686 #undef HAVE_XIM | |
687 #undef XIM_XLIB | |
688 #undef XIM_MOTIF | |
689 | |
690 /* Non-XIM input methods for use with Mule. */ | |
691 #undef HAVE_CANNA | |
3830 | 692 #undef CANNA_NEW_WCHAR_AWARE |
428 | 693 #undef HAVE_WNN |
694 #undef WNN6 | |
695 | |
442 | 696 /* Debugging development option: Remove inessential but time consuming |
697 actions from happening during build. This saves a lot of time when | |
698 you're repeatedly compiling-running-crashing. This (1) doesn't | |
699 garbage-collect after loading each file during dumping, and (2) | |
700 doesn't automatically rebuild the DOC file. (Remove it by hand to | |
701 get it rebuilt.) | |
702 */ | |
703 #undef QUICK_BUILD | |
428 | 704 |
872 | 705 /* If true, run the compiler with many files at once rather than one at a |
706 time. May speed up compilation time with some compilers, particularly | |
707 if the entire compilation happens in a single process -- the process can | |
708 cache the results of processing include files. This definitely helps | |
709 with VC++ (although it doesn't use Makefile.in.in) but not with GCC, | |
710 which runs many processes per file to compile. */ | |
711 #undef BATCH_COMPILER_RUNS | |
712 | |
771 | 713 /* If defined, use unions instead of ints. A few systems (DEC Alpha) |
714 seem to require this, probably because something with the int | |
715 definitions isn't right with 64-bit systems. */ | |
716 #undef USE_UNION_TYPE | |
717 | |
926 | 718 /* If defined, use experimental pdump-based GC algorithms. */ |
719 #undef USE_KKCC | |
720 | |
3263 | 721 /* If defined, use experimental incremental garbage collector and new |
722 allocator. */ | |
3092 | 723 #undef NEW_GC |
724 | |
725 /* Virtual dirty bit implementation for incremental gc. */ | |
726 #undef VDB_POSIX | |
727 #undef VDB_MACH | |
728 #undef VDB_WIN32 | |
729 #undef VDB_FAKE | |
730 | |
771 | 731 /* Enable special GNU Make features in the Makefiles. */ |
732 #undef USE_GNU_MAKE | |
733 | |
428 | 734 /* Defined by AC_C_CONST in configure.in */ |
735 #undef const | |
736 | |
434 | 737 /* Allow the source to use standard types. Include these before the |
738 s&m files so that they can use them. */ | |
739 #undef ssize_t | |
740 #undef size_t | |
741 #undef pid_t | |
742 #undef mode_t | |
743 #undef off_t | |
744 #undef uid_t | |
745 #undef gid_t | |
442 | 746 #undef socklen_t |
434 | 747 |
2367 | 748 /* Enhanced numeric support */ |
749 #undef WITH_NUMBER_TYPES | |
750 #undef WITH_GMP | |
751 #undef WITH_MP | |
752 #undef MP_PREFIX | |
753 #undef HAVE_MP_MOVE | |
771 | 754 |
2367 | 755 #undef SIZEOF_SHORT |
756 #undef SIZEOF_INT | |
757 #undef SIZEOF_LONG | |
758 #undef SIZEOF_LONG_LONG | |
759 #undef SIZEOF_VOID_P | |
760 #undef SIZEOF_DOUBLE | |
615 | 761 |
2367 | 762 /* some systems (Cygwin) typedef u?intptr_t in <sys/types.h> |
763 but the standard is <inttypes.h> | |
764 ugliness due to last-resort conditional typedef'ing in lisp.h */ | |
765 #undef HAVE_INTPTR_T_IN_SYS_TYPES_H | |
766 | |
767 /* Does the keyword `inline' exist? */ | |
768 #undef inline | |
428 | 769 |
2367 | 770 /* movemail options */ |
771 /* Should movemail use POP3 for mail access? */ | |
772 #undef MAIL_USE_POP | |
773 /* Should movemail use kerberos for POP authentication? */ | |
774 #undef KERBEROS | |
775 /* Should movemail use hesiod for getting POP server host? */ | |
776 #undef HESIOD | |
777 /* Determine type of mail locking. */ | |
778 #undef MAIL_LOCK_LOCKF | |
779 #undef MAIL_LOCK_FLOCK | |
780 #undef MAIL_LOCK_DOT | |
781 #undef MAIL_LOCK_LOCKING | |
782 #undef MAIL_LOCK_MMDF | |
428 | 783 |
2367 | 784 #undef HAVE_MKSTEMP |
428 | 785 |
2367 | 786 #undef PREFIX_USER_DEFINED |
787 #undef EXEC_PREFIX_USER_DEFINED | |
788 #undef MODULEDIR_USER_DEFINED | |
789 #undef SITEMODULEDIR_USER_DEFINED | |
790 #undef DOCDIR_USER_DEFINED | |
791 #undef LISPDIR_USER_DEFINED | |
3179 | 792 #undef EARLY_PACKAGE_DIRECTORIES_USER_DEFINED |
793 #undef LATE_PACKAGE_DIRECTORIES_USER_DEFINED | |
794 #undef LAST_PACKAGE_DIRECTORIES_USER_DEFINED | |
2367 | 795 #undef PACKAGE_PATH_USER_DEFINED |
796 #undef SITELISPDIR_USER_DEFINED | |
797 #undef ARCHLIBDIR_USER_DEFINED | |
798 #undef ETCDIR_USER_DEFINED | |
799 #undef INFODIR_USER_DEFINED | |
800 #undef INFOPATH_USER_DEFINED | |
872 | 801 |
2367 | 802 #undef PDUMP |
872 | 803 |
2720 | 804 /* Define DUMP_IN_EXEC to include the dump file in the executable |
805 file. */ | |
806 #undef DUMP_IN_EXEC | |
807 | |
428 | 808 /* Compile in support for Sun Sparcworks/WorkShop? */ |
809 #undef SUNPRO | |
810 | |
811 /* Sun SparcStations, SGI machines, and HP9000s700s have built-in | |
812 support for playing sound files. (On Suns, the sound support is | |
813 usually found in /usr/demo/SOUND - you may need to install the | |
814 "SUNWaudmo" package.) */ | |
815 #undef HAVE_NATIVE_SOUND | |
771 | 816 |
428 | 817 /* Native sound may be provided via soundcard.h, in various directories */ |
442 | 818 #undef SOUNDCARD_H_FILE |
428 | 819 |
3308 | 820 /* Compile in support for ALSA (Advanced Linux Sound Architecture) */ |
821 #undef HAVE_ALSA_SOUND | |
822 | |
428 | 823 /* Compile in support for NAS (Network Audio System)? |
824 NAS_NO_ERROR_JUMP means that the NAS libraries don't include some | |
825 error handling changes. */ | |
826 #undef HAVE_NAS_SOUND | |
827 #undef NAS_NO_ERROR_JUMP | |
828 | |
829 /* Compile in support for ESD (Enlightened Sound Daemon)? */ | |
830 #undef HAVE_ESD_SOUND | |
831 | |
832 /* Compile in support for SunPro usage-tracking code? */ | |
833 #undef USAGE_TRACKING | |
834 | |
835 /* Compile in support for Tooltalk? */ | |
836 #undef TOOLTALK | |
837 /* tt_c.h might be in "Tt" or "desktop" subdirectories */ | |
442 | 838 #undef TT_C_H_FILE |
428 | 839 |
840 /* Toolkits used by lwlib for various widgets... */ | |
771 | 841 |
428 | 842 #undef LWLIB_USES_MOTIF |
843 #undef LWLIB_USES_ATHENA | |
844 #undef LWLIB_MENUBARS_LUCID | |
845 #undef LWLIB_MENUBARS_MOTIF | |
846 #undef LWLIB_SCROLLBARS_LUCID | |
847 #undef LWLIB_SCROLLBARS_MOTIF | |
848 #undef LWLIB_SCROLLBARS_ATHENA | |
849 #undef LWLIB_SCROLLBARS_ATHENA3D | |
850 #undef LWLIB_DIALOGS_MOTIF | |
851 #undef LWLIB_DIALOGS_ATHENA | |
852 #undef LWLIB_DIALOGS_ATHENA3D | |
853 #undef LWLIB_TABS_LUCID | |
854 #undef LWLIB_WIDGETS_MOTIF | |
855 #undef LWLIB_WIDGETS_ATHENA | |
440 | 856 #undef HAVE_ATHENA_3D |
428 | 857 |
858 /* Other things that can be disabled by configure. */ | |
859 #undef HAVE_MENUBARS | |
860 #undef HAVE_SCROLLBARS | |
861 #undef HAVE_DIALOGS | |
862 #undef HAVE_TOOLBARS | |
863 #undef HAVE_WIDGETS | |
864 | |
771 | 865 #endif /* WIN32_NO_CONFIGURE */ |
866 | |
2994 | 867 #ifdef _MSC_VER |
868 /* Turn off tons of C4996 warnings in VC 8 about standard functions being | |
869 "deprecated" in favor of Microsoft-specific "secure" ones (!) | |
870 This must go *before* the inclusion of any system files. */ | |
871 #define _CRT_SECURE_NO_DEPRECATE | |
4457
2fddd822ce87
#define _CRT_NONSTDC_NO_DEPRECATE on Win32
Aidan Kehoe <kehoea@parhasard.net>
parents:
4448
diff
changeset
|
872 #define _CRT_NONSTDC_NO_DEPRECATE |
2994 | 873 #endif |
874 | |
2367 | 875 /* alloca twiddling. |
876 Because we might be #including alloca.h here, feature test macros | |
877 such as _XOPEN_SOURCE must be defined above. | |
878 | |
879 #### This really should go below the inclusion of s&m files, like | |
880 everything else. */ | |
881 | |
882 #ifndef NOT_C_CODE | |
883 #if defined (__CYGWIN__) | |
884 /* We get complaints about redefinitions if we just use the __GNUC__ | |
885 definition: stdlib.h also includes alloca.h, which defines it slightly | |
886 differently */ | |
887 #include <alloca.h> | |
888 #elif defined (__GNUC__) | |
889 #define alloca __builtin_alloca | |
890 #elif defined (WIN32_NO_CONFIGURE) | |
891 /* Defines size_t and alloca (). */ | |
892 #include <malloc.h> | |
893 #elif defined (__DECC) | |
894 #include <alloca.h> | |
895 #pragma intrinsic(alloca) | |
896 #elif defined (HAVE_ALLOCA_H) | |
897 #include <alloca.h> | |
898 #elif defined (_AIX) | |
899 /* AIX requires this before any "real" code in the translation unit. */ | |
900 #pragma alloca | |
901 #elif ! defined (alloca) | |
902 #ifdef C_ALLOCA | |
903 #define alloca xemacs_c_alloca | |
904 #else | |
905 void *alloca (); | |
906 #endif /* C_ALLOCA */ | |
907 #endif /* !defined (alloca) */ | |
908 #endif /* C code */ | |
909 | |
910 /* The configuration script may define `opsysfile' to be the name of | |
911 the s/...h file that describes your operating system. | |
912 The file name is chosen based on the configuration name. */ | |
913 | |
914 #if defined (__cplusplus) && !defined (NOT_C_CODE) | |
915 extern "C" { | |
916 #endif | |
917 | |
918 #undef config_opsysfile | |
919 #ifdef WIN32_NO_CONFIGURE | |
920 #include "s/windowsnt.h" | |
921 #elif defined (config_opsysfile) | |
922 #include config_opsysfile | |
923 #endif | |
924 | |
4738
a6f27e2b3d84
Move functionality of s/darwin.h to configure.ac and config.h.in.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4735
diff
changeset
|
925 /* Darwin uses this to set BSD appropriately. */ |
a6f27e2b3d84
Move functionality of s/darwin.h to configure.ac and config.h.in.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4735
diff
changeset
|
926 #undef USE_PARAM_H |
a6f27e2b3d84
Move functionality of s/darwin.h to configure.ac and config.h.in.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4735
diff
changeset
|
927 #ifdef USE_PARAM_H |
a6f27e2b3d84
Move functionality of s/darwin.h to configure.ac and config.h.in.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4735
diff
changeset
|
928 # ifndef NOT_C_CODE |
a6f27e2b3d84
Move functionality of s/darwin.h to configure.ac and config.h.in.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4735
diff
changeset
|
929 # include <sys/param.h> |
a6f27e2b3d84
Move functionality of s/darwin.h to configure.ac and config.h.in.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4735
diff
changeset
|
930 # endif |
a6f27e2b3d84
Move functionality of s/darwin.h to configure.ac and config.h.in.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4735
diff
changeset
|
931 #endif |
a6f27e2b3d84
Move functionality of s/darwin.h to configure.ac and config.h.in.
Stephen J. Turnbull <stephen@xemacs.org>
parents:
4735
diff
changeset
|
932 |
2367 | 933 /* The configuration script may define `machfile' to be the name of |
934 the m/...h file that describes the machine you are using. | |
935 The file name is chosen based on the configuration name. */ | |
936 | |
937 #undef config_machfile | |
938 #ifdef WIN32_NO_CONFIGURE | |
939 #include "m/windowsnt.h" | |
940 #elif defined (config_machfile) | |
941 #include config_machfile | |
942 #endif | |
943 | |
944 #if defined (__cplusplus) && !defined (NOT_C_CODE) | |
945 } | |
946 #endif | |
947 | |
948 /* USER_FULL_NAME returns a string that is the user's full name. | |
949 It can assume that the variable `pw' points to the password file | |
950 entry for this user. | |
951 | |
952 At some sites, the pw_gecos field contains the user's full name. | |
953 If neither this nor any other field contains the right thing, use | |
954 pw_name, giving the user's login name, since that is better than | |
955 nothing. */ | |
956 #define USER_FULL_NAME pw->pw_gecos | |
957 | |
958 #define XEMACS_WANTS_C_ALLOCA | |
959 | |
960 /* s&m files shouldn't be required to define anything, or even to exist. | |
961 If the s&m files don't define SYSTEM_TYPE, configure will select an | |
962 appropriate default value. */ | |
963 #ifndef SYSTEM_TYPE | |
964 #undef SYSTEM_TYPE | |
965 #endif | |
966 | |
967 #if defined (USE_SYSTEM_MALLOC) && !defined (SYSTEM_MALLOC) | |
968 #define SYSTEM_MALLOC | |
969 #endif | |
970 | |
2994 | 971 /* This enables type based information (updated during gc). The output |
972 is used by show-memory-usage to print memory information for each | |
973 type. Since the new allocator does not distinguish between types | |
974 anymore, this functionality is additionally implemented and | |
975 consumes a lot of time. That is why this functionality can be | |
976 disabled; for the moment, we keep it enabled. */ | |
977 #if !defined (MC_ALLOC) || 1 | |
978 # define ALLOC_TYPE_STATS 1 | |
979 #endif | |
980 | |
2367 | 981 /* Define the return type of signal handlers if the s/xxx.h file |
982 did not already do so. */ | |
983 #define RETSIGTYPE void | |
984 | |
985 #ifndef XCDECL | |
986 #define XCDECL | |
987 #endif | |
988 | |
989 /* SIGTYPE is the macro we actually use. */ | |
990 #ifndef SIGTYPE | |
991 #define SIGTYPE RETSIGTYPE XCDECL | |
992 #define SIGRETURN return | |
993 #endif | |
994 | |
995 /* Define HAVE_WINDOW_SYSTEM if any windowing system is available. */ | |
4759
aa5ed11f473b
Remove support for obsolete systems. See xemacs-patches message with ID
Jerry James <james@xemacs.org>
parents:
4738
diff
changeset
|
996 #if defined (HAVE_GTK) || defined (HAVE_X_WINDOWS) || defined (HAVE_MS_WINDOWS) |
2367 | 997 #define HAVE_WINDOW_SYSTEM |
998 #endif | |
999 | |
771 | 1000 #if defined (HAVE_MENUBARS) || defined (HAVE_SCROLLBARS) || defined (HAVE_DIALOGS) || defined (HAVE_TOOLBARS) || defined (HAVE_WIDGETS) |
1001 #define HAVE_GUI_OBJECTS | |
1002 #endif | |
1003 | |
2367 | 1004 #if defined (HAVE_MENUBARS) || defined (HAVE_DIALOGS) |
1005 #define HAVE_POPUPS | |
1006 #endif | |
1007 | |
1008 #if defined (HAVE_GTK) || defined (HAVE_X_WINDOWS) | |
1009 #define HAVE_XLIKE | |
1010 #endif | |
1011 | |
771 | 1012 /* For the moment, Athena widgets and dialogs may be very unstable and not |
1013 working well, but things under Windows work much better. configure by | |
1014 default tries to turn Windows widgets and dialogs on, but the Athena | |
1015 ones off, so let's separate the defines. */ | |
1016 #if defined (HAVE_WIDGETS) && (defined (LWLIB_WIDGETS_MOTIF) || defined (LWLIB_WIDGETS_ATHENA)) | |
1017 #define HAVE_X_WIDGETS | |
1018 #endif | |
1019 | |
1020 #if defined (HAVE_DIALOGS) && (defined (LWLIB_DIALOGS_MOTIF) || defined (LWLIB_DIALOGS_ATHENA) || defined (LWLIB_DIALOGS_ATHENA3D)) | |
1021 #define HAVE_X_DIALOGS | |
1022 #endif | |
428 | 1023 |
2367 | 1024 #ifdef HAVE_X_WINDOWS |
1025 /* The following should always be defined, no matter what xmkmf thinks. */ | |
1026 #ifndef NeedFunctionPrototypes | |
1027 #define NeedFunctionPrototypes 1 | |
1028 #endif | |
1029 #ifndef FUNCPROTO | |
1030 #define FUNCPROTO 15 | |
1031 #endif | |
1032 #endif /* HAVE_X_WINDOWS */ | |
1033 | |
1034 #if (defined (QUANTIFY) || defined (PURIFY)) && !defined (XLIB_ILLEGAL_ACCESS) | |
1035 #define XLIB_ILLEGAL_ACCESS 1 | |
1036 #endif | |
1037 | |
1038 /* Define HAVE_UNIXOID_EVENT_LOOP if we use select() to wait for events. */ | |
1039 #if defined (HAVE_X_WINDOWS) || defined (HAVE_TTY) || defined (HAVE_MSG_SELECT) | |
1040 #define HAVE_UNIXOID_EVENT_LOOP | |
428 | 1041 #endif |
1042 | |
1043 #ifdef HAVE_CANNA | |
1044 # define CANNA_MULE | |
1045 # define CANNA_PURESIZE 0 | |
1046 #else /* not CANNA */ | |
1047 # define CANNA_PURESIZE 0 | |
1048 #endif /* not CANNA */ | |
1049 | |
1050 #if defined (HAVE_SOCKS) && !defined (DO_NOT_SOCKSIFY) | |
1051 #define accept Raccept | |
1052 #define bind Rbind | |
1053 #define connect Rconnect | |
1054 #define getsockname Rgetsockname | |
1055 #define listen Rlisten | |
1056 #endif /* HAVE_SOCKS && !DO_NOT_SOCKSIFY */ | |
1057 | |
1058 #ifndef BITS_PER_CHAR | |
1059 #define BITS_PER_CHAR 8 | |
1060 #endif | |
1061 #define SHORTBITS (SIZEOF_SHORT * BITS_PER_CHAR) | |
1062 #define INTBITS (SIZEOF_INT * BITS_PER_CHAR) | |
1063 #define LONGBITS (SIZEOF_LONG * BITS_PER_CHAR) | |
1064 #define LONG_LONG_BITS (SIZEOF_LONG_LONG * BITS_PER_CHAR) | |
1065 #define VOID_P_BITS (SIZEOF_VOID_P * BITS_PER_CHAR) | |
1983 | 1066 #define DOUBLE_BITS (SIZEOF_DOUBLE * BITS_PER_CHAR) |
1067 | |
442 | 1068 /* Use `INLINE_HEADER' to define inline functions in .h files. |
1069 Use `inline static' to define inline functions in .c files. | |
1070 See the Internals manual for examples and more information. */ | |
1071 | |
4389
4c5cd87620e4
Check that __STDC_VERSION__ is defined before examining it.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4387
diff
changeset
|
1072 #if (defined ( __STDC_VERSION__) && __STDC_VERSION__ >= 199901L) \ |
4c5cd87620e4
Check that __STDC_VERSION__ is defined before examining it.
Aidan Kehoe <kehoea@parhasard.net>
parents:
4387
diff
changeset
|
1073 || defined (__cplusplus) || ! defined (__GNUC__) || ! defined(emacs) |
4829
9987da5935bd
try to fix problems with link errors involving inlined functions
Ben Wing <ben@xemacs.org>
parents:
4790
diff
changeset
|
1074 # define INLINE_HEADERS_ARE_STATIC |
442 | 1075 # define INLINE_HEADER inline static |
1076 #elif defined (DONT_EXTERN_INLINE_HEADER_FUNCTIONS) | |
1077 # define INLINE_HEADER inline | |
1078 #else | |
1079 # define INLINE_HEADER inline extern | |
1080 #endif | |
428 | 1081 |
771 | 1082 /* Use DECLARE_INLINE_HEADER() to declare an inline function in a header |
1083 file, like this: (This avoids the need to write a prototype directly | |
4932 | 1084 followed by the function header itself, in order to avoid a |
1085 "no prototype" warning from GCC.) | |
771 | 1086 |
1087 DECLARE_INLINE_HEADER (int foo (int x)) | |
1088 { | |
1089 return x * x; | |
1090 } | |
1091 | |
1092 */ | |
1093 | |
1094 #define DECLARE_INLINE_HEADER(header) \ | |
1095 INLINE_HEADER header ; INLINE_HEADER header | |
1096 | |
442 | 1097 #ifndef NOT_C_CODE /* Actually means C or C++ */ |
1098 # if defined (__cplusplus) | |
1099 # define EXTERN_C extern "C" | |
1100 # else /* C code */ | |
1101 # define EXTERN_C extern | |
1102 # endif | |
1103 #endif /* C or C++ */ | |
428 | 1104 |
1105 /* Strictly speaking, only int or unsigned int are valid types in a | |
1106 bitfield. In practice, we would like to use enums as bitfields. | |
1107 The following should just result in warning avoidance: | |
1108 warning: nonportable bit-field type */ | |
1109 #ifdef __GNUC__ | |
1110 #define enum_field(enumeration_type) enum enumeration_type | |
1111 #else | |
1112 #define enum_field(enumeration_type) unsigned int | |
1113 #endif | |
1114 | |
1115 /* We want to avoid saving the signal mask if possible, because | |
1116 that necessitates a system call. */ | |
1117 #ifdef HAVE_SIGSETJMP | |
1118 # define SETJMP(x) sigsetjmp (x, 0) | |
1119 # define LONGJMP(x, y) siglongjmp (x, y) | |
1120 # define JMP_BUF sigjmp_buf | |
1121 #else | |
1122 # define SETJMP(x) setjmp (x) | |
1123 # define LONGJMP(x, y) longjmp (x, y) | |
1124 # define JMP_BUF jmp_buf | |
1125 #endif | |
1126 | |
838 | 1127 /* For the moment, we go ahead and keep this, since it's used in mouse.el. |
1128 #### font-lock does its own version using parse-partial-sexp. We should | |
1129 merge the two. */ | |
1130 #define USE_C_FONT_LOCK | |
1131 | |
3959 | 1132 /* Keep the #defines sorted. |
1133 #### Can this code ever be executed? I guess if a developer #defines | |
1134 ERROR_CHECK_ALL above the #include it could be useful. */ | |
800 | 1135 #ifdef ERROR_CHECK_ALL |
3959 | 1136 #define ERROR_CHECK_BYTE_CODE |
1137 #define ERROR_CHECK_DISPLAY | |
800 | 1138 #define ERROR_CHECK_EXTENTS |
1139 #define ERROR_CHECK_GC | |
3959 | 1140 #define ERROR_CHECK_GLYPHS |
800 | 1141 #define ERROR_CHECK_MALLOC |
1142 #define ERROR_CHECK_STRUCTURES | |
3959 | 1143 #define ERROR_CHECK_TEXT |
1144 #define ERROR_CHECK_TYPES | |
800 | 1145 #endif /* ERROR_CHECK_ALL */ |
1146 | |
4829
9987da5935bd
try to fix problems with link errors involving inlined functions
Ben Wing <ben@xemacs.org>
parents:
4790
diff
changeset
|
1147 /* It's very tricky. In some circumstances, if we don't include the |
9987da5935bd
try to fix problems with link errors involving inlined functions
Ben Wing <ben@xemacs.org>
parents:
4790
diff
changeset
|
1148 ERROR_CHECK_TYPES functions in xemacs.def.in.in, we get lots of |
9987da5935bd
try to fix problems with link errors involving inlined functions
Ben Wing <ben@xemacs.org>
parents:
4790
diff
changeset
|
1149 undefined references from eldap.o and postgresql.o; but in other |
9987da5935bd
try to fix problems with link errors involving inlined functions
Ben Wing <ben@xemacs.org>
parents:
4790
diff
changeset
|
1150 circumstances, if we DO include them, we get undefined references |
9987da5935bd
try to fix problems with link errors involving inlined functions
Ben Wing <ben@xemacs.org>
parents:
4790
diff
changeset
|
1151 in xemacs-export.o to the same functions. We try here to grok when |
9987da5935bd
try to fix problems with link errors involving inlined functions
Ben Wing <ben@xemacs.org>
parents:
4790
diff
changeset
|
1152 we need to include them in xemacs.def.in.in. I originally thought |
9987da5935bd
try to fix problems with link errors involving inlined functions
Ben Wing <ben@xemacs.org>
parents:
4790
diff
changeset
|
1153 it was enough to condition on !defined (INLINE_HEADERS_ARE_STATIC) -- |
9987da5935bd
try to fix problems with link errors involving inlined functions
Ben Wing <ben@xemacs.org>
parents:
4790
diff
changeset
|
1154 if they're static, they shouldn't lead to any external references |
9987da5935bd
try to fix problems with link errors involving inlined functions
Ben Wing <ben@xemacs.org>
parents:
4790
diff
changeset
|
1155 in the modules, right? Wrong, under non-optimized builds. So now |
9987da5935bd
try to fix problems with link errors involving inlined functions
Ben Wing <ben@xemacs.org>
parents:
4790
diff
changeset
|
1156 let's try conditioning on !C++ -- by examining inline.o with nm, |
9987da5935bd
try to fix problems with link errors involving inlined functions
Ben Wing <ben@xemacs.org>
parents:
4790
diff
changeset
|
1157 it seems it's the C++ builds where inline.o doesn't get any inline |
9987da5935bd
try to fix problems with link errors involving inlined functions
Ben Wing <ben@xemacs.org>
parents:
4790
diff
changeset
|
1158 functions compiled into it at all, which would lead to problems if |
9987da5935bd
try to fix problems with link errors involving inlined functions
Ben Wing <ben@xemacs.org>
parents:
4790
diff
changeset
|
1159 we reference them in xemacs.def.in.in. |
9987da5935bd
try to fix problems with link errors involving inlined functions
Ben Wing <ben@xemacs.org>
parents:
4790
diff
changeset
|
1160 |
9987da5935bd
try to fix problems with link errors involving inlined functions
Ben Wing <ben@xemacs.org>
parents:
4790
diff
changeset
|
1161 #### FIXME Should we condition on GCC and defined(emacs), like we |
9987da5935bd
try to fix problems with link errors involving inlined functions
Ben Wing <ben@xemacs.org>
parents:
4790
diff
changeset
|
1162 do (inverted) for INLINE_HEADERS_ARE_STATIC? --ben */ |
9987da5935bd
try to fix problems with link errors involving inlined functions
Ben Wing <ben@xemacs.org>
parents:
4790
diff
changeset
|
1163 |
9987da5935bd
try to fix problems with link errors involving inlined functions
Ben Wing <ben@xemacs.org>
parents:
4790
diff
changeset
|
1164 /* Checking for !defined (__cplusplus) doesn't work, because we typically |
9987da5935bd
try to fix problems with link errors involving inlined functions
Ben Wing <ben@xemacs.org>
parents:
4790
diff
changeset
|
1165 aren't using the C++ preprocessor when processing xemacs.def.in.in |
9987da5935bd
try to fix problems with link errors involving inlined functions
Ben Wing <ben@xemacs.org>
parents:
4790
diff
changeset
|
1166 even if we're using a C++ compiler. I suspect we only need this at |
9987da5935bd
try to fix problems with link errors involving inlined functions
Ben Wing <ben@xemacs.org>
parents:
4790
diff
changeset
|
1167 all GCC is being used. */ |
4952
19a72041c5ed
Mule-izing, various fixes related to char * arguments
Ben Wing <ben@xemacs.org>
parents:
4932
diff
changeset
|
1168 #if !defined (USE_GPLUSPLUS) |
4829
9987da5935bd
try to fix problems with link errors involving inlined functions
Ben Wing <ben@xemacs.org>
parents:
4790
diff
changeset
|
1169 /* #if !defined (INLINE_HEADERS_ARE_STATIC) */ |
4952
19a72041c5ed
Mule-izing, various fixes related to char * arguments
Ben Wing <ben@xemacs.org>
parents:
4932
diff
changeset
|
1170 #define XEMACS_DEFS_NEEDS_INLINE_DECLS |
4829
9987da5935bd
try to fix problems with link errors involving inlined functions
Ben Wing <ben@xemacs.org>
parents:
4790
diff
changeset
|
1171 #endif |
9987da5935bd
try to fix problems with link errors involving inlined functions
Ben Wing <ben@xemacs.org>
parents:
4790
diff
changeset
|
1172 |
5222
18c0b5909d16
Use keywords in structure syntax; new #define, NEED_TO_HANDLE_21_4_CODE 1
Aidan Kehoe <kehoea@parhasard.net>
parents:
5211
diff
changeset
|
1173 /* Do we need to be able to run code compiled by and written for 21.4? */ |
18c0b5909d16
Use keywords in structure syntax; new #define, NEED_TO_HANDLE_21_4_CODE 1
Aidan Kehoe <kehoea@parhasard.net>
parents:
5211
diff
changeset
|
1174 #define NEED_TO_HANDLE_21_4_CODE 1 |
18c0b5909d16
Use keywords in structure syntax; new #define, NEED_TO_HANDLE_21_4_CODE 1
Aidan Kehoe <kehoea@parhasard.net>
parents:
5211
diff
changeset
|
1175 |
5374
d967d96ca043
Conditionalise the old-* functions and byte codes at compile time.
Aidan Kehoe <kehoea@parhasard.net>
parents:
5228
diff
changeset
|
1176 #define SUPPORT_CONFOUNDING_FUNCTIONS NEED_TO_HANDLE_21_4_CODE |
d967d96ca043
Conditionalise the old-* functions and byte codes at compile time.
Aidan Kehoe <kehoea@parhasard.net>
parents:
5228
diff
changeset
|
1177 |
428 | 1178 #endif /* _SRC_CONFIG_H_ */ |