Fetch Flex from Sourceforge.
[AROS-Contrib.git] / regina / configur.h
blob2b2ee9f770d0059f7506653ea8f16b34170b8f0d
1 /*
2 * The Regina Rexx Interpreter
3 * Copyright (C) 1992-1994 Anders Christensen <anders@pvv.unit.no>
5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Library General Public
7 * License as published by the Free Software Foundation; either
8 * version 2 of the License, or (at your option) any later version.
10 * This library is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Library General Public License for more details.
15 * You should have received a copy of the GNU Library General Public
16 * License along with this library; if not, write to the Free
17 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
21 * $Id$
25 * For platforms that don't use autoconf, put these here...
27 #define HAVE_ASSERT_H 1
28 #define HAVE_ERRNO_H 1
29 #define HAVE_CTYPE_H 1
30 #define HAVE_STDARG_H 1
31 #define HAVE_SYS_STAT_H 1
33 #if defined(DOS) && defined(EMX)
34 # define HAVE_ALLOCA_H 1
35 # define HAVE_FTIME 1
36 # define HAVE_MATH_H 1
37 # define HAVE_RANDOM 1
38 #undef HAVE_RANDOM /* needs bsd support and linking with -lbsd */
39 # define HAVE_SIGACTION 1
40 # define HAVE_STDIO_H 1
41 # define HAVE_SYS_TIME_H 1
42 # define HAVE_SYSCONF 1
43 # define HAVE_TERMIOS_H 1
44 # define HAVE_TIME_H 1
45 # define HAVE_FCNTL_H 1
46 # define HAVE_GRP_H 1
47 # define HAVE_PWD_H 1
48 # define HAVE_LIMITS_H 1
49 # define HAVE_MALLOC_H 1
50 # define HAVE_SETJMP_H 1
51 # define HAVE_SIGNAL_H 1
52 # define HAVE_STDLIB_H 1
53 # define HAVE_STRING_H 1
54 # define HAVE_UNISTD_H 1
55 # define HAVE_SYS_SOCKET_H 1
56 # define HAVE_NETINET_IN_H 1
57 # define HAVE_SYS_SELECT_H 1
58 # define HAVE_NETDB_H 1
59 # define HAVE_ARPA_INET_H 1
60 # define HAVE__FULLPATH 1
61 # define HAVE_PUTENV 1
62 # define HAVE_GETTIMEOFDAY 1
63 # define HAVE_FTRUNCATE 1
64 # define HAVE_MEMCPY 1
65 # define HAVE_MEMMOVE 1
66 # define HAVE_STRERROR 1
67 # define HAVE_VSPRINTF 1
68 # define HAVE_GETPID 1
69 # define TIME_WITH_SYS_TIME 1
70 #endif
72 #if defined(OS2) && defined(EMX)
73 # define HAVE_ALLOCA_H 1
74 # define HAVE_FTIME 1
75 # define HAVE_MATH_H 1
76 # define HAVE_RANDOM 1
77 #undef HAVE_RANDOM /* needs bsd support and linking with -lbsd */
78 # define HAVE_SIGACTION 1
79 # define HAVE_STDIO_H 1
80 # define HAVE_SYS_TIME_H 1
81 # define HAVE_SYSCONF 1
82 # define HAVE_TERMIOS_H 1
83 # define HAVE_TIME_H 1
84 # define HAVE_FCNTL_H 1
85 # define HAVE_GRP_H 1
86 # define HAVE_PWD_H 1
87 # define HAVE_LIMITS_H 1
88 # define HAVE_MALLOC_H 1
89 # define HAVE_SETJMP_H 1
90 # define HAVE_SIGNAL_H 1
91 # define HAVE_STDLIB_H 1
92 # define HAVE_STRING_H 1
93 # define HAVE_UNISTD_H 1
94 # define HAVE_SYS_SOCKET_H 1
95 # define HAVE_NETINET_IN_H 1
96 # define HAVE_SYS_SELECT_H 1
97 # define HAVE_NETDB_H 1
98 # define HAVE_ARPA_INET_H 1
99 # define HAVE__FULLPATH 1
100 # define HAVE_PUTENV 1
101 # define HAVE_GETTIMEOFDAY 1
102 # define HAVE_FTRUNCATE 1
103 # define HAVE_MEMCPY 1
104 # define HAVE_MEMMOVE 1
105 # define HAVE_STRERROR 1
106 # define HAVE_VSPRINTF 1
107 # define HAVE_GETPID 1
108 # define TIME_WITH_SYS_TIME 1
109 # if defined(DYNAMIC)
110 # define DYNAMIC_OS2
111 # endif
112 #endif
114 #if defined(OS2) && defined(__IBMC__)
115 # define HAVE_SETJMP_H
116 # define HAVE__FULLPATH
117 # define HAVE_PUTENV
118 # define HAVE_GETTIMEOFDAY
119 # define HAVE_FTRUNCATE
120 # define HAVE_MEMCPY
121 # define HAVE_MEMMOVE
122 # define HAVE_STRERROR
123 # define HAVE_VSPRINTF
124 # define HAVE_GETPID
125 # define TIME_WITH_SYS_TIME
126 #endif
128 #if defined(OS2) && defined(__WATCOMC__)
129 # define HAVE_MALLOC_H
130 # define HAVE_SETJMP_H
131 # define HAVE_UNISTD_H
132 # define HAVE__FULLPATH
133 # define HAVE_PUTENV
134 # define HAVE_MEMCPY
135 # define HAVE_MEMMOVE
136 # define HAVE_STRERROR
137 # define HAVE_VSPRINTF
138 # define HAVE_GETPID
139 # if defined(DYNAMIC)
140 # define DYNAMIC_OS2
141 # endif
142 #endif
144 #if defined(WIN32) && defined(__WATCOMC__)
145 # define HAVE_MALLOC_H
146 # define HAVE_SETJMP_H
147 # define HAVE_SIGNAL_H
148 # define HAVE_UNISTD_H
149 # define HAVE_FTIME
150 # define HAVE__FULLPATH
151 # define HAVE__SPLITPATH2
152 /* # define HAVE_FTRUNCATE */
153 # define HAVE_MEMCPY
154 # define HAVE_MEMMOVE
155 # define HAVE_SETENV
156 # define HAVE_STRERROR
157 # define HAVE_VSPRINTF
158 # define HAVE_GETPID
159 # if defined(DYNAMIC)
160 # define DYNAMIC_WIN32
161 # endif
162 #endif
164 #if defined(WIN32) && defined(_MSC_VER)
165 # define HAVE_FCNTL_H
166 # define HAVE_LIMITS_H
167 # define HAVE_MALLOC_H
168 # define HAVE_PROCESS_H
169 # define HAVE_SETJMP_H
170 # define HAVE_SIGNAL_H
171 # define HAVE_STDLIB_H
172 # define HAVE_STRING_H
173 # define HAVE__FULLPATH
174 # define HAVE__SPLITPATH
175 # define HAVE_FTRUNCATE
176 # define HAVE_MY_WIN32_SETENV
177 # define HAVE_FTIME
178 # define HAVE_MEMCPY
179 # define HAVE_MEMMOVE
180 # define HAVE_STRERROR
181 # define HAVE_VSPRINTF
182 # define HAVE_GETPID
183 # if defined(DYNAMIC)
184 # define DYNAMIC_WIN32
185 # endif
186 #endif
188 #if defined(WIN32) && defined(__BORLANDC__)
189 # define HAVE_LIMITS_H
190 # define HAVE_MALLOC_H
191 # define HAVE_PROCESS_H
192 # define HAVE_SETJMP_H
193 # define HAVE_SIGNAL_H
194 # define HAVE_STDLIB_H
195 # define HAVE_STRING_H
196 # define HAVE__FULLPATH
197 # define HAVE__SPLITPATH
198 # define HAVE_MY_WIN32_SETENV
199 # define HAVE_FTIME
200 # define HAVE_MEMCPY
201 # define HAVE_MEMMOVE
202 # define HAVE_STRERROR
203 # define HAVE_VSPRINTF
204 # if defined(DYNAMIC)
205 # define DYNAMIC_WIN32
206 # endif
207 #endif
209 #if defined(WIN32) && defined(__CYGWIN32__)
210 # define HAVE_GRP_H 1
211 # define HAVE_PWD_H 1
212 # define HAVE_LIMITS_H 1
213 # define HAVE_MALLOC_H 1
214 # define HAVE_PROCESS_H 1
215 # define HAVE_SETJMP_H 1
216 # define HAVE_SIGNAL_H 1
217 # define HAVE_STDLIB_H 1
218 # define HAVE_STRING_H 1
219 # define HAVE_UNISTD_H 1
220 /* # define HAVE__FULLPATH 1 */
221 # define HAVE_PUTENV 1
222 # define HAVE_GETTIMEOFDAY 1
223 # define HAVE_FTRUNCATE 1
224 # define HAVE_MEMCPY 1
225 # define HAVE_MEMMOVE 1
226 # define HAVE_STRERROR 1
227 # define HAVE_VSPRINTF 1
228 # define HAVE_GETPID
229 # define TIME_WITH_SYS_TIME 1
230 # if defined(DYNAMIC)
231 # define DYNAMIC_WIN32
232 # endif
233 #endif
235 #if defined(WIN32) && defined(__MINGW32__)
236 # define HAVE_LIMITS_H 1
237 # define HAVE_MALLOC_H 1
238 # define HAVE_PROCESS_H 1
239 # define HAVE_SETJMP_H 1
240 # define HAVE_SIGNAL_H 1
241 # define HAVE_STDLIB_H 1
242 # define HAVE_STRING_H 1
243 # define HAVE_UNISTD_H 1
244 /* # define HAVE__FULLPATH 1 */
245 # define HAVE_PUTENV 1
246 /* # define HAVE_GETTIMEOFDAY 1 */
247 /* # define HAVE_FTRUNCATE 1 */
248 # define HAVE_MEMCPY 1
249 # define HAVE_MEMMOVE 1
250 # define HAVE_STRERROR 1
251 # define HAVE_VSPRINTF 1
252 # define HAVE_GETPID
253 # define TIME_WITH_SYS_TIME 1
254 # if defined(DYNAMIC)
255 # define DYNAMIC_WIN32
256 # endif
257 #endif
259 #if defined(DOS) && defined(DJGPP)
260 # define HAVE_FCNTL_H
261 # define HAVE_GRP_H
262 # define HAVE_PWD_H
263 # define HAVE_LIMITS_H
264 # define TIME_WITH_SYS_TIME
265 # define HAVE_SETJMP_H
266 # define HAVE_UNISTD_H
267 # define HAVE_SYS_SOCKET_H
268 # define HAVE_NETINET_IN_H
269 /* # define HAVE_SYS_SELECT_H */
270 # define HAVE_NETDB_H
271 # define HAVE_ARPA_INET_H
272 # define HAVE_PUTENV
273 # define HAVE_GETTIMEOFDAY
274 # define HAVE_FTRUNCATE
275 # define HAVE_RANDOM
276 # define HAVE_USLEEP
277 # define HAVE_MEMCPY
278 # define HAVE_MEMMOVE
279 # define HAVE_STRERROR
280 # define HAVE__TRUENAME
281 # define HAVE_VSPRINTF
282 # define HAVE_GETPID
283 # ifndef _MAX_PATH
284 # define _MAX_PATH PATH_MAX
285 # endif
286 #endif
288 #if defined(_AMIGA) && defined(__SASC)
289 # define HAVE_SETJMP_H
290 /* # define HAVE_UNISTD_H */
291 # define HAVE_PUTENV
292 # define HAVE_MEMCPY
293 # define HAVE_MEMMOVE
294 # define HAVE_STRERROR
295 # define HAVE_VSPRINTF
296 # define UNIX
297 #endif
299 #if defined(AMIGA) && defined(GCC)
300 # define HAVE_GRP_H 1
301 # define HAVE_PWD_H 1
302 # define HAVE_LIMITS_H 1
303 # define HAVE_MALLOC_H 1
304 # define HAVE_SETJMP_H 1
305 # define HAVE_SIGNAL_H 1
306 # define HAVE_STDLIB_H 1
307 # define HAVE_STRING_H 1
308 # define HAVE_UNISTD_H 1
309 # define HAVE_SYS_SOCKET_H 1
310 # define HAVE_NETINET_IN_H 1
311 # define HAVE_NETDB_H 1
312 # define HAVE_ARPA_INET_H 1
313 /* # define HAVE__FULLPATH 1 */
314 # define HAVE_PUTENV 1
315 # define HAVE_FTIME 1
316 # define HAVE_FTRUNCATE 1
317 # define HAVE_MEMCPY 1
318 # define HAVE_MEMMOVE 1
319 # define HAVE_STRERROR 1
320 # define HAVE_VSPRINTF 1
321 # define HAVE_GETPID
322 # define TIME_WITH_SYS_TIME 1
323 #endif
325 #if defined(__AROS__)
326 #define STDC_HEADERS 1
327 #define TIME_WITH_SYS_TIME 1
328 #define HAVE_FTIME 1
329 #define HAVE_GETTIMEOFDAY 1
330 #define HAVE_MEMCPY 1
331 #define HAVE_MEMMOVE 1
332 #define HAVE_PUTENV 1
333 #define HAVE_RANDOM 1
334 #define HAVE_RANDOM_DATA 1
335 #define HAVE_STRERROR 1
336 #define HAVE_STRERROR_R 1
337 #define HAVE_VSPRINTF 1
338 #define HAVE_ALLOCA_H 1
339 #define HAVE_FCNTL_H 1
340 /*#define HAVE_GRP_H*/
341 #define HAVE_LIMITS_H 1
342 /* #define HAVE_MALLOC_H 1 */
343 #define HAVE_MATH_H 1
344 #define HAVE_SETJMP_H 1
345 #define HAVE_STDARG_H 1
346 #define HAVE_STDLIB_H 1
347 #define HAVE_STRING_H 1
348 #define HAVE_UNISTD_H 1
349 #define HAVE_DRAND48
350 #endif
352 #if defined(MAC)
353 /* # define HAVE_GRP_H 1 */
354 /* # define HAVE_PWD_H 1 */
355 # define HAVE_LIMITS_H 1
356 /* # define HAVE_MALLOC_H 1 */
357 # define HAVE_SETJMP_H 1
358 # define HAVE_SIGNAL_H 1
359 # define HAVE_STDLIB_H 1
360 # define HAVE_STRING_H 1
361 /* # define HAVE_UNISTD_H 1 */
363 # define HAVE_SYS_SOCKET_H 1
364 # define HAVE_NETINET_IN_H 1
365 # define HAVE_NETDB_H 1
366 # define HAVE_ARPA_INET_H 1
368 /* # define HAVE__FULLPATH 1 */
369 /*# define HAVE_SETENV 1 */
370 /* # define HAVE_FTIME 1 */
371 /* # define HAVE_FTRUNCATE 1 */
372 # define HAVE_MEMCPY 1
373 # define HAVE_MEMMOVE 1
374 # define HAVE_STRERROR 1
375 # define HAVE_VSPRINTF 1
376 # define HAVE_GETPID
377 /* # define TIME_WITH_SYS_TIME 1 */
378 #endif
381 * The following are for Epoc32 platform
383 #if defined(__VC32__) && defined(__WINS__)
384 # define HAVE_SYS_FCNTL_H
385 # define HAVE_LIMITS_H
386 # define HAVE_PROCESS_H
387 # define HAVE_SETJMP_H
388 # define HAVE_SIGNAL_H
389 # define HAVE_STDLIB_H
390 # define HAVE_STRING_H
391 /* # define HAVE__FULLPATH */
392 /* # define HAVE__SPLITPATH */
393 /* # define HAVE_FTRUNCATE */
394 /* # define HAVE_MY_WIN32_SETENV */
395 # define HAVE_MEMCPY
396 # define HAVE_MEMMOVE
397 # define HAVE_STRERROR
398 # define HAVE_VSPRINTF
399 # define HAVE_GETPID
400 # define HAVE_SYS_SOCKET_H
401 # define HAVE_NETINET_IN_H
402 # define HAVE_NETDB_H
403 # define HAVE_ARPA_INET_H
404 # define HAVE_UNISTD_H
405 # if defined(DYNAMIC)
406 # define DYNAMIC_WIN32
407 # endif
408 #endif
410 #if defined(__GCC32__) && defined(__EPOC32__)
411 # define HAVE_SYS_FCNTL_H 1
412 /* # define HAVE_GRP_H 1 */
413 /* # define HAVE_PWD_H 1 */
414 # define HAVE_LIMITS_H 1
415 /*# define HAVE_MALLOC_H 1 */
416 # define HAVE_PROCESS_H 1
417 # define HAVE_SETJMP_H 1
418 # define HAVE_SIGNAL_H 1
419 # define HAVE_STDLIB_H 1
420 # define HAVE_STRING_H 1
421 # define HAVE_UNISTD_H 1
422 /* # define HAVE__FULLPATH 1 */
423 /* # define HAVE_PUTENV 1 */
424 # define HAVE_GETTIMEOFDAY 1
425 /*# define HAVE_FTRUNCATE 1 */
426 # define HAVE_MEMCPY 1
427 # define HAVE_MEMMOVE 1
428 # define HAVE_STRERROR 1
429 # define HAVE_VSPRINTF 1
430 # define HAVE_GETPID 1
431 # define TIME_WITH_SYS_TIME 1
432 # define HAVE_SYS_SOCKET_H 1
433 # define HAVE_NETINET_IN_H 1
434 # define HAVE_NETDB_H 1
435 # define HAVE_ARPA_INET_H 1
436 # if defined(DYNAMIC)
437 # define DYNAMIC_WIN32
438 # endif
439 #endif
441 #if defined(__vms)
442 # include "vms.h"
443 #endif
445 /* Configurable values */
448 /* The macro MAXLEVELS is the maximum number of levels that the
449 * interpreter shall handle. One level is used for functioncalls and
450 * the commands CALL, IF, DO and SELECT
452 #define MAXLEVELS 1024
454 /* The macro HASHTABLENGTH is the number of sloths in the hash table
455 * containing the values of the rexx variables, must be a power of 2.
457 #define HASHTABLENGTH 256
459 /* The macro MAX_INDEX_LENGTH defines the maximum length that the name
460 * of an compund variable might expand to.
462 #define MAX_INDEX_LENGTH 256
465 * The macro DEFAULT_FLUSH_STACK can be defined to either 1 or 0,
466 * depending on whether you want the stack to be flushed during a
467 * command reading input from or writing output to the stack. If
468 * defined, a line written will be physically in the stack at once,
469 * while if not defined, all output lines will be temporarily stacked
470 * until the command has terminated, then they are all simultaneously
471 * flushed to the stack. The default default value is 0, it can be
472 * changed through OPTIONS.
474 #ifndef DEFAULT_FLUSHSTACK
475 # define DEFAULT_FLUSHSTACK 0
476 #endif
479 * The macro DEFAULT_LINEOUTTRUNC can be set to 1 or 0, whether you want
480 * the default behavior of lineout() to truncate the file immediately
481 * after the end of each new file written out. When set to 1, the file
482 * will be truncated. Also note, that if HAVE_FTRUNCATE isn't set later
483 * in this script, the DEFAULT_LINEOUTTRUNC will be forced to 0, just
484 * for consistency (then, setting it to 1 will have no practical effect.
486 #ifndef DEFAULT_LINEOUTTRUNC
487 # define DEFAULT_LINEOUTTRUNC 1
488 #endif
491 * Whether the OPEN() and CLOSE() bifs are available by default
493 #define DEFAULT_OPEN_BIF 1
494 #define DEFAULT_CLOSE_BIF 1
496 #define DEFAULT_MAKEBUF_BIF 1
497 #define DEFAULT_DROPBUF_BIF 1
498 #define DEFAULT_BUFTYPE_BIF 1
499 #define DEFAULT_DESBUF_BIF 1
501 #define DEFAULT_CACHEEXT 0
502 #define DEFAULT_PRUNE_TRACE 1
504 #define DEFAULT_FIND_BIF 1
506 #define DEFAULT_EXT_COMMANDS_AS_FUNCS 1
507 #define DEFAULT_STDOUT_FOR_STDERR 0
508 #define DEFAULT_INTERNAL_QUEUES 0
509 #define DEFAULT_TRACE_HTML 0
510 #define DEFAULT_FAST_LINES_BIF_DEFAULT 1
511 #define DEFAULT_STRICT_ANSI 0
512 #define DEFAULT_PGB_PATCH1 0 /* pgb */
513 #define DEFAULT_REGINA_BIFS 1
516 * Define the following if your machine has putenv(), unfortunately,
517 * Standard C does not include a way to set environmentvariables, just
518 * to read them. But most machines have the putenv() function.
519 * If it is not defined, you will not be able to set the environment
520 * variables throught the VALUE() builtin function.
522 /* #define HAVE_PUTENV */ /* handled in makefile - TBD in autoconf */
525 * The FILE_SEPARATOR is one character, and defines the char that separates
526 * directories, and filename from directories in a file's path.
527 * The PATH_SEPARATOR is one character, and defines the char that separates
528 * directories, from one another in a PATH environment variable.
531 #if defined(MSDOS) || ( defined(__WATCOMC__) && !defined(__QNX__) ) || defined(_MSC_VER) || defined(DOS) || defined(OS2) || defined(__WINS__) || defined(__EPOC32__)
532 # define FILE_SEPARATOR '\\'
533 # define FILE_SEPARATOR_STR "\\"
534 # define PATH_SEPARATOR ';'
535 # define PATH_SEPARATOR_STR ";"
536 #elif defined(VMS)
537 # define FILE_SEPARATOR ']'
538 # define FILE_SEPARATOR_STR "]"
539 # define PATH_SEPARATOR '?'
540 # define PATH_SEPARATOR_STR "?"
541 #elif defined(MAC)
542 # define FILE_SEPARATOR ']'
543 # define FILE_SEPARATOR_STR "]"
544 # define PATH_SEPARATOR '?'
545 # define PATH_SEPARATOR_STR "?"
546 #else
547 # define FILE_SEPARATOR '/'
548 # define FILE_SEPARATOR_STR "/"
549 # define PATH_SEPARATOR ':'
550 # define PATH_SEPARATOR_STR ":"
551 #endif
554 #define FIX_PROTOS
555 #define FIX_ALL_PROTOS
558 #define RXTOLOW(a) (u_to_l[(unsigned char)(a)])
561 #if defined(HPUX) || defined(__hpux)
562 # define YY_CHAR_TYPE unsigned char
563 #endif
565 #if !defined(HAVE_MEMCPY)
566 # define memcpy(a,b,c) bcopy((b),(a),(c))
567 #endif
569 #if !defined(HAVE_MEMMOVE)
570 # define memmove(a,b,c) bcopy((b),(a),(c))
571 #endif
573 #if !defined(HAVE_STRERROR)
574 const char *get_sys_errlist( int num );
575 # define strerror(a) get_sys_errlist(a)
576 #endif
579 #if defined(sgi) || defined(__sgi)
580 # define SGI 1
581 #endif
583 #if defined(__osf__)
584 # define OSF 1
585 # define YY_CHAR_TYPE unsigned char
586 #endif
589 * Define HAVE_USLEEP if you have the usleep() function available. It will
590 * take the number of micro-seconds to sleep. If this is not defined,
591 * the 'normal' sleep() will be used.
592 * Handled by autoconf
596 * Define HAVE_RANDOM if your machine has the routines random() and
597 * srandom(). If it is not defined, rand() and srand() are used
598 * instead. There are several reason why you might want to use
599 * random() instead of rand()
600 * Handled by autoconf
604 #define DEFAULT_NUMERIC_FUZZ 0
605 #define DEFAULT_NUMERIC_SIZE 9
606 #define DEFAULT_MATH_TYPE 0
610 * If you use gcc on a machine that does not have proper ANSI C
611 * libraries and the function div() is not defined, then you can
612 * define the symbol HAVE_NO_DIV, which will try to kludge it.
614 * This is necessary on Suns, and some other machines.
616 * Not used anymore MH 10-06-97
620 #ifndef YY_CHAR_TYPE
621 # ifdef _AIX
622 # define YY_CHAR_TYPE unsigned char
623 # else
624 # define YY_CHAR_TYPE char
625 # endif
626 #endif
629 /* Unfortunately, ftruncate() is not POSIX, so if you don't have it,
630 * just ignore it, the effect is that lines written to the middle of a
631 * file will not cause the rest of the file (after the linefeed
632 * terminating the line written), also to truncate the file at that
633 * point. If you wonder whether you have ftruncate(), the bsd portions
634 * of you system (if it exist) is a good place to start looking. You
635 * may have to link in a specific library too, maybe libbsd.a.
637 /*#define HAVE_FTRUNCATE*/ /* handled in makefile - TBD in autoconf */
641 #ifdef VMS
642 # ifdef HAVE_GETTIMEOFDAY
643 # undef HAVE_GETTIMEOFDAY
644 # endif
645 # ifdef HAVE_PUTENV
646 # undef HAVE_PUTENV
647 # endif
648 # ifdef HAVE_FTRUNCATE
649 # undef HAVE_FTRUNCATE
650 # endif
651 #endif
654 #if defined(__GNUC__) && defined(VMS)
655 # ifdef HAVE_GETTIMEOFODAY
656 # undef HAVE_GETTIMEOFDAY
657 # endif
658 #endif
660 #ifndef AREXXIO
661 #define OLD_REGINA_FEATURES
662 #endif
665 * DLOPEN - dlopen()/dlsym() under SunOS and SysV4
666 * HPSHLOAD - shl_load()/shl_findsym() under HP-UX
667 * AIXLOAD - load()/loadbind() under AIX - not supported
668 * OS2 - DosLoadModule()/DosQueryProcAddr() under OS/2
669 * WIN32 - LoadLibrary()/GetProcAddress() under Win32
673 * QNX 4.2x does have a ftrunc() equivalent: ltrunc()
675 #if defined(__WATCOMC__) && defined(__QNX__)
676 # define HAVE_FTRUNCATE
677 #endif
679 * If we don't have ftruncate() then we don't want the default setting
680 * of LINEOUT() to be to truncate after each new line written out.
682 #ifndef HAVE_FTRUNCATE
683 # undef DEFAULT_LINEOUTTRUNC /* MH 10-06-96 */
684 # define DEFAULT_LINEOUTTRUNC 0
685 #endif
687 #ifdef _MSC_VER
688 /* This picky compiler claims about unused formal parameters.
689 * This is correct but hides (for human eyes) other errors since they
690 * are many and we can't reduce them all.
691 * Error 4100 is "unused formal parameter".
693 # pragma warning(disable:4100)
694 #endif