1 /* @(#)xmconfig.h	1.29 03/06/15 Copyright 1995 J. Schilling */
2 /*
3  *	Manual generated static definitions for machine configuration
4  *
5  *	Copyright (c) 1995 J. Schilling
6  *
7  *	This file is made to be included from <mconfig.h> and may be used
8  *	instead of configurations that are dynamically autogenerated.
9  *	Use only cpp instructions.
10  *
11  *	NOTE: SING: (Schily Is Not Gnu)
12  */
13 /*
14  * This program is free software; you can redistribute it and/or modify
15  * it under the terms of the GNU General Public License as published by
16  * the Free Software Foundation; either version 2, or (at your option)
17  * any later version.
18  *
19  * This program is distributed in the hope that it will be useful,
20  * but WITHOUT ANY WARRANTY; without even the implied warranty of
21  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
22  * GNU General Public License for more details.
23  *
24  * You should have received a copy of the GNU General Public License along with
25  * this program; see the file COPYING.  If not, write to the Free Software
26  * Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
27  */
28 
29 #ifndef _XMCONFIG_H
30 #define	_XMCONFIG_H
31 
32 #ifdef __cplusplus
33 extern "C" {
34 #endif
35 
36 /*
37  * 1) Compiler and language related headers
38  *
39  * define PROTOTYPES	to use ansi C prototypes
40  *
41  * define HAVE_ELF	Object files are stored in System V.4 ELF format.
42  *
43  * define HAVE_COFF	Object files are stored in System V.2 COFF format.
44  *
45  * define HAVE_AOUT	Object files are stored in ATT/BSD a.out format.
46  *
47  * define HAVE_STDARG_H	to use stdarg.h, else use varargs.h
48  *			NOTE: SaberC on a Sun has prototypes but no stdarg.h.
49  *
50  * define HAVE_VA_COPY	have va_copy() to do assignements of va_list type objects.
51  * define HAVE__VA_COPY	have __va_copy() to do assignements of va_list type objects.
52  *
53  * define HAVE_STDLIB_H	to use general utility defines (malloc(), size_t ...)
54  *			some C library prototypes my be found here
55  *
56  * define HAVE_STRING_H to get NULL and string function prototypes
57  *
58  * define HAVE_STRINGS_H to get BSD string function prototypes
59  *
60  * define HAVE_STDC_HEADERS to declare the presence of other ansi C headers
61  * define STDC_HEADERS 	same as above (GNU name)
62  *
63  * define HAVE_LONGLONG	to use long long for space/transfer calculations
64  *
65  * define HAVE_SIZE_T	The type size_t is present
66  * define NO_SIZE_T	The type size_t is not present
67  *
68  *
69  * 2) Operating system related headers
70  *
71  * define HAVE_OSDEF	to prevent later definitions to overwrite current
72  *
73  * define __NOT_SVR4__	Not a real SVR4 implementation
74  *
75  * define HAVE_UNISTD_H	to use access, lockf and lseek constants
76  *			syscall prototypes may be found here also
77  *			use sys/file.h otherwise for above constants
78  *
79  * define HAVE_FCNTL_H	to use access, O_XXX constants for open()
80  *			and open(), creat(), fcntl() prototypes
81  *			use sys/file.h otherwise for above constants
82  *
83  * define HAVE_DIRENT_H	to use dirent.h instead of the old BSD sys/dir.h
84  * define HAVE_SYS_DIR_H to use the old BSD sys/dir.h, otherwise no readdir()
85  * define HAVE_NDIR_H	to use ndir.h
86  * define HAVE_SYS_NDIR_H to use sys/ndir.h
87  *
88  * define HAVE_MALLOC_H if malloc.h exists
89  *
90  * define HAVE_TERMIOS_H to use posix terminal and session control (termios.h)
91  * define HAVE_TERMIO_H	to use SV terminal control (termio.h) *- no setpgrp -*
92  *			Else use BSD style sgttyb and setpgrp (ioctl.h)
93  *			XXX session control should be another define XXX
94  *
95  * define HAVE_SYS_TIME_H may include sys/time.h for struct timeval
96  *			used internally in timedefs.h
97  *
98  * define HAVE_UTIMES	to use BSD utimes() and sys/time.h
99  * define HAVE_UTIME_H	to use utime.h for the utimbuf structure declaration
100  *			Else declare struct utimbuf yourself.
101  *
102  * define HAVE_WAIT_H	to use wait.h for prototypes and union wait
103  * define HAVE_SYS_WAIT_H else use sys/wait.h
104  *			Else declare it by yourself.
105  *
106  * define HAVE_SYS_PARAM_H if it is ok to include sys/param.h
107  *
108  * define HAVE_SYS_SYSTEMINFO_H to use sysinfo()
109  * define HAVE_SYS_UTSNAME_H to use uname()
110  *
111  * define HAVE_SYS_PRIOCNTL_H to use priocntl() instead of nice()/setpriority()
112  * define HAVE_SYS_RTPRIOCNTL_H if the system supports real time classes.
113  *
114  * define HAVE_SYS_MTIO_H to use mtio definitions from sys/mtio.h
115  * define HAVE_MTGET_DSREG if struct mtget contains mt_dsreg (drive status)
116  * define HAVE_MTGET_RESID if struct mtget contains mt_resid (residual count)
117  * define HAVE_MTGET_FILENO if struct mtget contains mt_fileno (file #)
118  * define HAVE_MTGET_BLKNO if struct mtget contains mt_blkno (block #0
119  *
120  * define MAJOR_IN_MKDEV if we should include sys/mkdev.h to get
121  *			major(), minor() and makedev()
122  *
123  * define MAJOR_IN_SYSMACROS if we should include sys/sysmacros.h to get
124  *			major(), minor() and makedev()
125  *
126  *			... else look in sys/types.h for major()
127  *
128  * 3) Miscellaneous operating system/library/processor related things
129  *
130  * define HAVE_USG_STDIO to enable the use USG stdio.h internals
131  *			To to this we need:
132  *			f->_flag & _IONBF	... Unbuffered
133  *			f->_flag & _IOERR	... I/O error
134  *			f->_flag & _IOEOF	... End of File
135  *			f->_cnt			... r/w count in buf
136  *			f->_ptr			... pointer into buf
137  *			_filbuf(FILE * f)	... fill buffer, return 1st ch
138  *			_flsbuf(unsigned char *, FILE * f) ... flush buffer
139  *
140  * define HAVE_BRK	may use brk()
141  *
142  * define HAVE_SBRK	may use sbrk()
143  *
144  *
145  * define HAVE_DTOA	use the 4.4BSD function __dtoa() instead of
146  *			the AT&T standard functions ecvt()/fcvt()/gcvt()
147  *
148  * define HAVE_GETCWD	use SysV getcwd() instead of BSD getwd()
149  *
150  * define HAVE_STRERROR	may use strerror() instead of sys_errlist[] and sys_nerr
151  *
152  * define HAVE_MEMMOVE	should use memmove() instead of bcopy()
153  *
154  * define HAVE_MLOCKALL	may use mlockall() to lock the whole process into memory
155  *
156  * define HAVE_MMAP	may map memory (sys/types.h + sys/mman.h)
157  * define HAVE_SMMAP	may map anonymous memory to get shared mem
158  *
159  * define HAVE_USGSHM	may get shared memory SV style (sys/types.h + sys/ipc.h)
160  *
161  * define HAVE_USGSEM	may use SysV style shared memory and semaphores.
162  *			May use shared memory and semaphores to manage a
163  *			sharing buffer and its synchronization.
164  *			If this is not defined, use mmap and flock.
165  *
166  * define HAVE_MSEM	Has OSF/1 style memory semaphores.
167  *			Use instead of SysV semaphores or flock
168  *			for shared memory synchronisation.
169  *
170  * define HAVE_LDSTUB	Has SPARC ldstub atomic instruction.
171  *			May be used instead of system V semaphores or flock
172  *			for shared memory synchronisation.
173  *
174  * define HAVE_XCHG	Has i386 xchg atomic instruction.
175  *			May be used instead of system V semaphores or flock
176  *			for shared memory synchronisation.
177  *
178  * define HAVE_FLOCK	Use flock for synchronization on logfiles.
179  *			If this is not defined use lockf.
180  *
181  * define HAVE_FCHDIR	The fchdir system call may be used
182  *			to change the current directory and back.
183  *			Else remember the pathname and use chdir.
184  *
185  * define HAVE_STATVFS	The statvfs and fstatvfs calls are available.
186  *			Else get filesystem statistics with
187  *			statfs or getmnt (on ultrix).
188  *
189  * define HAVE_QUOTA	The quota or quotactl system calls are available.
190  *
191  * define HAVE_YP	To use yellow pages.
192  *
193  * define HAVE_SHADOW	To use shadow password file.
194  *
195  * define HAVE_SETREUID	have BSD setreuid()
196  * define HAVE_SETRESUID have HPUX only ??? setresuid()
197  * define HAVE_SETEUID	have SVr4 seteuid()
198  *
199  * define HAVE_LCHOWN	Need to use lchown() instead of chown() on symlinks.
200  *
201  * define HAVE_PROCFS	SVr4 style procfs is available.
202  *
203  * define HAVE_PROCFS2	SVr4.2 (SMP) style procfs is available.
204  *
205  * define HAVE_SIGINFO	Use waitid and the siginfo_t structure for waiting
206  *			for child processes.
207  *			Else use wait3 and union wait.
208  *
209  * define HAVE_WAIT3	Have wait3.
210  *
211  * define HAVE_WAITPID	Use waitpid and no resource usage instead of wait3.
212  *
213  * define HAVE_UNION_WAIT Have union wait in wait.h
214  *
215  * define HAVE_GETHOSTNAME to use gethostname()
216  *
217  * define HAVE_STREAMS	Use streams networking calls. Else use sockets.
218  *
219  * define HAVE_STRPTYS	Use SVr4 style streams pseudo ttys.
220  *
221  * define HAVE_POLL	Use the poll system call to wait for I/O.
222  *			Else use select.
223  *
224  * define HAVE_SELECT	Use the select system call to wait for I/O.
225  *
226  * define HAVE_TIRPC	The remote procedure call library is of the
227  *			transport independent flavour.
228  *
229  * define GID_T		The type to use for the getgroups() array.
230  *			This should be gid_t, but some BSD based systems
231  *			must have int there.
232  *
233  *
234  * 4) Specials for libschily
235  *
236  * define HAVE_SCANSTACK Scanning of the stack is implemented for this
237  *			architecture:
238  *				getfp()
239  *			and the derived functions:
240  *				handlecond(), raisecond()
241  *			are working.
242  *
243  * XXX It is most likely that getfp() does not really work correctly
244  * XXX if getav0() is not working.
245  * XXX For this reason, HAVE_GETAV0 is not used anymore.
246  * XXX Instead avoffset.h is included and the existence of
247  * XXX AV_OFFSET and FP_INDIR is checked instead.
248  *
249  * define HAVE_GETAV0	Scanning of stack and locating the arg vector
250  *			is implemented for this architecture:
251  *				getav0()
252  *			is working.
253  *			get_progname() in saveargs.c will work in the main
254  *			thread without a prior call to save_args().
255  *
256  */
257 
258 #if defined(sun) || defined(__sun) || defined(__sun__)
259 #	ifndef	IS_SUN
260 #	define	IS_SUN
261 #	endif
262 #endif
263 
264 #if	defined(SOL2) || defined(SOL2) || \
265 	defined(S5R4) || defined(__S5R4) || defined(SVR4)
266 
267 #	ifndef	__SVR4
268 #		define	__SVR4
269 #	endif
270 #endif
271 
272 #ifdef	__SVR4
273 #	ifndef	SVR4
274 #		define	SVR4
275 #	endif
276 #endif
277 
278 /*
279  * SunOS 4.x
280  */
281 #if defined(IS_SUN) && !defined(__SVR4)
282 	/*
283 	 * Sun C defines __STDC__ as zero.
284 	 */
285 #	ifdef __STDC__
286 #		define	PROTOTYPES
287 #		ifndef SABER
288 #			define	HAVE_STDARG_H
289 #			define	HAVE_LONGLONG
290 #		endif
291 #	endif
292 #	define	HAVE_AOUT
293 #	define	HAVE_STDLIB_H
294 #	define	HAVE_STRING_H
295 #	define	HAVE_UNISTD_H
296 #	define	HAVE_FCNTL_H
297 #	define	HAVE_DIRENT_H
298 #	define	HAVE_SYS_DIR_H
299 #	define	HAVE_TERMIOS_H
300 #	define	HAVE_TERMIO_H
301 #	define	HAVE_SYS_TIME_H
302 #	define	HAVE_UTIMES
303 #	define	HAVE_UTIME_H
304 #	define	HAVE_SYS_WAIT_H
305 #	define	HAVE_SYS_PARAM_H
306 #	define	HAVE_SYS_UTSNAME_H
307 #	define	HAVE_SYS_MTIO_H
308 #	define	HAVE_MTGET_DSREG
309 #	define	HAVE_MTGET_RESID
310 #	define	HAVE_MTGET_FILENO
311 #	define	HAVE_MTGET_BLKNO
312 #	define	MAJOR_IN_SYSMACROS
313 #	define	HAVE_UNION_WAIT
314 #	define	HAVE_USG_STDIO
315 #	define	HAVE_GETCWD
316 #	define	HAVE_MLOCKALL
317 #	define	HAVE_MMAP
318 #	define	HAVE_SMMAP
319 #	define	HAVE_USGSHM
320 #	define	HAVE_USGSEM
321 #	ifdef sparc
322 #		define	HAVE_LDSTUB
323 #	endif
324 #	define	HAVE_FLOCK
325 #	define	HAVE_FCHDIR
326 #	define	HAVE_QUOTA
327 #	define	HAVE_YP
328 #	define	HAVE_SETREUID
329 #	define	HAVE_WAIT3
330 #	define	HAVE_GETHOSTNAME
331 #	define	HAVE_SELECT
332 #	define	GID_T		int
333 #	define	USLEEPRETURN_T	unsigned int
334 #	define	HAVE_GETAV0	/* SunOS < 5 only runs on sparc/mc680xx */
335 #	define	HAVE_SCANSTACK	/* SunOS < 5 only runs on sparc/mc680xx */
336 #endif
337 
338 /*
339  * AIX
340  */
341 #if	defined(_IBMR2) || defined(_AIX)
342 #	define	IS_UNIX		/* ??? really ??? */
343 #	define	NO_FLOATINGPOINT /* XXX until isinf()/isnan() is solved */
344 #	define	USE_FLOATINGARGS /* Use up args from floatingpoint format */
345 #ifndef	PROTOTYPES
346 #	define	PROTOTYPES
347 #endif
348 #	define	HAVE_COFF
349 #	define	HAVE_STDARG_H
350 #	define	HAVE_STDLIB_H
351 #	define	HAVE_STRING_H
352 #	define	HAVE_LONGLONG
353 #	define	HAVE_UNISTD_H
354 #	define	HAVE_FCNTL_H
355 #	define	HAVE_DIRENT_H
356 #	define	HAVE_TERMIOS_H
357 #	define	HAVE_TERMIO_H
358 #	define	HAVE_SYS_TIME_H
359 #	define	HAVE_UTIMES
360 #	define	HAVE_UTIME_H
361 #	define	HAVE_SYS_WAIT_H
362 #	define	HAVE_SYS_PARAM_H
363 #	define	HAVE_SYS_UTSNAME_H
364 #	define	MAJOR_IN_SYSMACROS
365 /*#	define	HAVE_USG_STDIO*/
366 #	define	HAVE_GETCWD
367 #	define	HAVE_STRERROR
368 #	define	HAVE_MEMMOVE
369 #	define	HAVE_MMAP
370 #	define	HAVE_SMMAP
371 #	define	HAVE_USGSHM
372 #	define	HAVE_USGSEM
373 #	define	HAVE_MSEM
374 #	define	HAVE_FLOCK
375 #	define	HAVE_QUOTA
376 #	define	HAVE_YP
377 #	define	HAVE_WAIT3
378 #	define	HAVE_WAITPID
379 #	define	HAVE_GETHOSTNAME
380 #	define	HAVE_STREAMS
381 #	define	HAVE_POLL
382 #	define	HAVE_SELECT
383 
384 #	define	GID_T		gid_t
385 #	define	USLEEPRETURN_T	int
386 #endif
387 
388 /*
389  * Silicon Graphics	(must be before SVR4)
390  */
391 #if defined(sgi) || defined(__sgi)
392 #	define	__NOT_SVR4__	/* Not a real SVR4 implementation */
393 
394 #	define	PROTOTYPES
395 #	define	HAVE_ELF
396 #	define	HAVE_COFF
397 #	define	HAVE_STDARG_H
398 #	define	HAVE_LONGLONG
399 #	define	HAVE_UNISTD_H
400 #	define	HAVE_FCNTL_H
401 #	define	HAVE_DIRENT_H
402 #	define	HAVE_TERMIOS_H
403 #	define	HAVE_TERMIO_H
404 #	define	HAVE_SYS_TIME_H
405 #	define	HAVE_UTIMES
406 #	define	HAVE_UTIME_H
407 #	define	HAVE_WAIT_H
408 #	define	HAVE_SYS_WAIT_H
409 #	define	HAVE_SYS_PARAM_H
410 #	define	HAVE_SYS_SYSTEMINFO_H
411 #	define	HAVE_SYS_UTSNAME_H
412 #	define	HAVE_SYS_MTIO_H
413 #	define	HAVE_MTGET_DSREG
414 #	define	HAVE_MTGET_RESID
415 #	define	HAVE_MTGET_FILENO
416 #	define	HAVE_MTGET_BLKNO
417 #	define	MAJOR_IN_MKDEV
418 #	define	HAVE_USG_STDIO
419 #	define	HAVE_GETCWD
420 #	define	HAVE_STRERROR
421 #	define	HAVE_MEMMOVE
422 #	define	HAVE_MMAP
423 #	define	HAVE_SMMAP
424 #	define	HAVE_USGSHM
425 #	define	HAVE_USGSEM
426 #	define	HAVE_FLOCK
427 #	define	HAVE_FCHDIR
428 #	define	HAVE_STATVFS
429 #	define	HAVE_QUOTA
430 #	define	HAVE_YP
431 #	define	HAVE_SHADOW
432 #	define	HAVE_PROCFS
433 #	define	HAVE_SIGINFO
434 #	define	HAVE_WAIT3
435 #	define	HAVE_WAITPID
436 #	define	HAVE_GETHOSTNAME
437 #	define	HAVE_STREAMS
438 #	define	HAVE_STRPTYS
439 #	define	HAVE_POLL
440 #	define	HAVE_SELECT
441 #	define	HAVE_STRPTYS
442 #	define	GID_T		gid_t
443 /*#	define	USLEEPRETURN_T	unsigned int*/
444 #	define	vfork		fork
445 #endif
446 
447 #if defined(mips) && !(defined(ultrix) || defined(sony) || defined(sgi))
448 #	define	HAVE_COFF
449 #	define	HAVE_UNISTD_H
450 #	define	HAVE_USGSHM
451 #	define	HAVE_USGSEM
452 #	define	HAVE_FLOCK
453 #	define	HAVE_YP
454 #	define	GID_T		int
455 #	define	USLEEPRETURN_T	unsigned int
456 #endif
457 
458 #if defined(sony)
459 #	ifdef mips
460 #		define	HAVE_COFF
461 #	else
462 #		define	HAVE_AOUT
463 #	endif
464 #	define	HAVE_USGSHM
465 #	define	HAVE_USGSEM
466 #	define	HAVE_FLOCK
467 #	define	HAVE_QUOTA
468 #	define	HAVE_YP
469 #	define	GID_T		int
470 #	define	USLEEPRETURN_T	unsigned int
471 #	ifndef	SEEK_SET
472 #	define	SEEK_SET	0 /* Set file pointer to "offset" */
473 #	define	SEEK_CUR	1 /* Set file pointer to current plus "offset" */
474 #	define	SEEK_END	2 /* Set file pointer to EOF plus "offset" */
475 #	endif
476 #endif
477 
478 /*
479  * Digital UNIX (OSF1)
480  */
481 #if defined(__osf__)
482 #	define	PROTOTYPES
483 #	define	HAVE_OSDEF	/* prevent later definitions to overwrite current */
484 /*#	define	__NOT_SVR4__*/	/* Not a real SVR4 implementation */
485 
486 /*#	define	HAVE_ELF*/
487 #	define	HAVE_COFF
488 /*#	define	HAVE_AOUT*/
489 #	define	HAVE_STDARG_H
490 /*#	define	HAVE_VA_COPY*/
491 #	define	HAVE_STDLIB_H
492 #	define	HAVE_STRING_H
493 #	define	HAVE_STDC_HEADERS
494 #	define	STDC_HEADERS	/* GNU name */
495 #	define	HAVE_LONGLONG
496 
497 #	define	HAVE_UNISTD_H
498 #	define	HAVE_FCNTL_H
499 #	define	HAVE_DIRENT_H
500 #	define	HAVE_SYS_DIR_H
501 /*#	define	HAVE_NDIR_H*/
502 /*#	define	HAVE_SYS_NDIR_H*/
503 #	define	HAVE_TERMIOS_H
504 #	define	HAVE_TERMIO_H
505 #	define	HAVE_SYS_TIME_H
506 #	define	HAVE_UTIMES
507 #	define	HAVE_UTIME_H
508 #	define	HAVE_WAIT_H
509 #	define	HAVE_SYS_WAIT_H
510 #	define	HAVE_SYS_PARAM_H
511 #	define	HAVE_SYS_SYSTEMINFO_H
512 #	define	HAVE_SYS_UTSNAME_H
513 #	define	HAVE_SYS_PRIOCNTL_H
514 #	define	HAVE_SYS_RTPRIOCNTL_H
515 #	define	HAVE_SYS_MTIO_H
516 #	define	HAVE_MTGET_DSREG
517 #	define	HAVE_MTGET_RESID
518 #	define	HAVE_MTGET_FILENO
519 #	define	HAVE_MTGET_BLKNO
520 /*#	define	MAJOR_IN_MKDEV*/
521 #	define	MAJOR_IN_SYSMACROS
522 #	define	HAVE_USG_STDIO
523 /*#	define	HAVE_DTOA*/
524 #	define	HAVE_GETCWD
525 #	define	HAVE_STRERROR
526 #	define	HAVE_MEMMOVE
527 #	define	HAVE_MLOCKALL
528 #	define	HAVE_MMAP
529 #	define	HAVE_SMMAP
530 #	define	HAVE_USGSHM
531 #	define	HAVE_USGSEM
532 #	define	HAVE_MSEM
533 /*#	define	HAVE_LDSTUB*/
534 /*#	define	HAVE_XCHG*/
535 #	define	HAVE_FLOCK
536 #	define	HAVE_FCHDIR
537 #	define	HAVE_STATVFS
538 #	define	HAVE_QUOTA
539 #	define	HAVE_YP
540 /*#	define	HAVE_SHADOW*/	/* No, but C2 */
541 #	define	HAVE_SETREUID
542 /*#	define	HAVE_SETRESUID*/
543 #	define	HAVE_SETEUID
544 #	define	HAVE_LCHOWN
545 #	define	HAVE_PROCFS
546 /*#	define	HAVE_PROCFS2*/	/* No */
547 #	define	HAVE_SIGINFO
548 #	define	HAVE_WAIT3
549 #	define	HAVE_WAITPID
550 #	define	HAVE_UNION_WAIT
551 #	define	HAVE_GETHOSTNAME
552 #	define	HAVE_STREAMS
553 #	define	HAVE_STRPTYS
554 #	define	HAVE_POLL
555 #	define	HAVE_SELECT	/* XXX needs sys/select.h */
556 /*#	define	HAVE_TIRPC*/
557 #	define	GID_T		gid_t
558 #	define	USLEEPRETURN_T	int
559 /*#	define	USLEEPRETURN_T	void*/
560 /*#	define	USLEEPISVOID*/
561 
562 /*#	define	HAVE_GETAV0*/
563 /*#	define	HAVE_SCANSTACK*/
564 #endif
565 
566 #if defined(ultrix)
567 #	ifdef mips
568 #		define	HAVE_COFF
569 #	else
570 #		define	HAVE_AOUT
571 #	endif
572 #	define	HAVE_STDLIB_H
573 #	define	HAVE_UNISTD_H
574 #	define	HAVE_SYS_DIR_H
575 #	define	HAVE_TERMIOS_H
576 #	define	HAVE_UTIME_H
577 #	define	HAVE_USGSHM
578 #	define	HAVE_USGSEM
579 #	define	HAVE_FLOCK
580 #	define	HAVE_QUOTA
581 #	define	HAVE_YP
582 #	define	GID_T		int
583 #	define	USLEEPRETURN_T	unsigned int
584 #endif
585 
586 /*
587  * HP/UX
588  */
589 #if defined(__hpux) || defined(hpux)
590 /*#	define	PROTOTYPES*/
591 #	define	HAVE_AOUT
592 #	define	HAVE_STDARG_H
593 #	define	HAVE_UNISTD_H
594 #	define	HAVE_FCNTL_H
595 #	define	HAVE_DIRENT_H
596 #	define	HAVE_TERMIOS_H
597 #	define	HAVE_TERMIO_H
598 #	define	HAVE_SYS_TIME_H
599 #	define	HAVE_UTIME_H
600 #	define	HAVE_SYS_WAIT_H
601 #	define	HAVE_SYS_PARAM_H
602 #	define	HAVE_SYS_UTSNAME_H
603 #	define	HAVE_SYS_MTIO_H
604 #	define	MAJOR_IN_SYSMACROS
605 #	define	HAVE_GETCWD
606 #	define	HAVE_STRERROR
607 #	define	HAVE_MEMMOVE
608 #	define	HAVE_MMAP
609 #	define	HAVE_SMMAP
610 #	define	HAVE_USGSHM
611 #	define	HAVE_USGSEM
612 #if	0
613 #		define	HAVE_MSEM
614 #	endif
615 #	define	HAVE_FCHDIR
616 #	define	HAVE_QUOTA
617 #	define	HAVE_YP
618 #	define	HAVE_SETRESUID
619 #	define	HAVE_WAIT3
620 #	define	HAVE_WAITPID
621 #	define	HAVE_GETHOSTNAME
622 #	define	HAVE_STREAMS
623 #	define	HAVE_STRPTYS
624 #	define	HAVE_POLL
625 #	define	HAVE_SELECT
626 #	define	GID_T		gid_t
627 /*#	define	USLEEPRETURN_T	unsigned int*/
628 #endif
629 
630 /*
631  * Data General
632  */
633 #if defined(__DGUX__)
634 #	define	PROTOTYPES
635 #	define	HAVE_ELF
636 #	define	HAVE_STDARG_H
637 #	define	HAVE_UNISTD_H
638 #	define	HAVE_DIRENT_H
639 #	define	HAVE_TERMIOS_H
640 #	define	HAVE_SYS_TIME_H
641 #	define	HAVE_UTIMES
642 #	define	HAVE_UTIME_H
643 #	define	HAVE_SYS_PARAM_H
644 #	undef	HAVE_MTGET_DSREG
645 #	undef	HAVE_MTGET_RESID
646 #	undef	HAVE_MTGET_FILENO
647 #	undef	HAVE_MTGET_BLKNO
648 #	define	mt_type		mt_model
649 #	define	mt_dsreg	mt_status1
650 #	define	mt_erreg	mt_status2
651 #	define	HAVE_GETCWD
652 #	define	HAVE_STRERROR
653 #	define	HAVE_MEMMOVE
654 #	define	HAVE_USGSEM
655 #	if defined(__i386_) || defined(i386)
656 #		define	HAVE_XCHG
657 #	endif
658 	/*
659 	 * DGUX hides its flock as dg_flock.
660 	 */
661 #	define	HAVE_FLOCK
662 #	define	flock	dg_flock
663 #	define	HAVE_FCHDIR
664 #	define	HAVE_STATVFS
665 #	undef	HAVE_QUOTA
666 #	define	HAVE_YP
667 #	define	HAVE_SHADOW
668 #	undef	HAVE_PROCFS
669 #	undef	HAVE_PROCFS2
670 #	define	HAVE_WAIT3
671 #	define	HAVE_UNION_WAIT
672 /*#	define	HAVE_GETHOSTNAME*/
673 #	define	HAVE_STREAMS
674 #	define	HAVE_STRPTYS
675 #	define	HAVE_POLL
676 #	define	HAVE_SELECT
677 #	undef	HAVE_TIRPC
678 #	define	GID_T		gid_t
679 #	define	USLEEPRETURN_T	unsigned int
680 	/*
681 	 * Use the BSD style wait on DGUX to get the resource usages of child
682 	 * processes.
683 	 */
684 #	define	_BSD_WAIT_FLAVOR
685 
686 /*#	define	HAVE_GETAV0*/
687 #	ifdef	i386
688 #		define	HAVE_SCANSTACK
689 #	endif
690 #endif
691 
692 /*
693  * Linux
694  */
695 #if defined(__linux__) || defined(__linux)
696 #	define	PROTOTYPES
697 #	ifdef	__ELF__
698 #		define	HAVE_ELF
699 #	else
700 #		define	HAVE_AOUT
701 #	endif
702 #	define	HAVE_STDARG_H
703 #	define	HAVE_STDLIB_H
704 #	define	HAVE_STRING_H
705 #	define	HAVE_STDC_HEADERS
706 #	define	STDC_HEADERS	/* GNU name */
707 #	define	HAVE_LONGLONG
708 #	define	HAVE_UNISTD_H
709 #	define	HAVE_FCNTL_H
710 #	define	HAVE_DIRENT_H
711 #	define	HAVE_TERMIOS_H
712 #	define	HAVE_TERMIO_H
713 #	define	HAVE_SYS_TIME_H
714 #	define	HAVE_UTIMES
715 #	define	HAVE_UTIME_H
716 /*#	define	HAVE_WAIT_H*/
717 #	define	HAVE_SYS_WAIT_H
718 #	define	HAVE_SYS_PARAM_H
719 #	define	HAVE_SYS_UTSNAME_H
720 #	define	HAVE_SYS_MTIO_H
721 #	define	HAVE_MTGET_DSREG
722 #	define	HAVE_MTGET_RESID
723 #	define	HAVE_MTGET_FILENO
724 #	define	HAVE_MTGET_BLKNO
725 #	define	MAJOR_IN_SYSMACROS
726 #	define	HAVE_GETCWD
727 #	define	HAVE_STRERROR
728 #	define	HAVE_MEMMOVE
729 #	define	HAVE_MLOCKALL
730 #	define	HAVE_MMAP
731 /*#	define	HAVE_SMMAP*/
732 #	define	HAVE_USGSHM
733 #	define	HAVE_USGSEM
734 #	define	HAVE_FLOCK
735 #	define	HAVE_FCHDIR
736 #	define	HAVE_STATVFS
737 #	define	HAVE_QUOTA
738 #	define	HAVE_YP
739 #	define	HAVE_SETREUID	/* >= Linux 1.1.37 */
740 #	define	HAVE_SETEUID
741 /*#	define	HAVE_PROCFS*/	/* ??? */
742 /*#	define	HAVE_PROCFS2*/
743 #	define	HAVE_WAIT3
744 #	define	HAVE_WAITPID
745 #	define	HAVE_GETHOSTNAME
746 #	define	HAVE_SELECT
747 
748 #	define	GID_T		gid_t
749 #	define	USLEEPRETURN_T	void
750 #	define	USLEEPISVOID
751 
752 /*#	define	HAVE_GETAV0*/
753 #	define	HAVE_SCANSTACK
754 #endif
755 
756 
757 #if defined(OLD__bsdi__)
758 #	define	HAVE_MSEM	/* ??? */
759 #	define	F_ULOCK	0	/* Unlock a previously locked region */
760 #	define	F_LOCK	1	/* Lock a region for exclusive use */
761 #	define	F_TLOCK	2	/* Test and lock a region for exclusive use */
762 #	define	F_TEST	3	/* Test a region for other processes locks */
763 #endif
764 
765 /*
766  * Prototype for FreeBSD / NetBSD / OpenBSD / BSD/OS
767  */
768 #if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__bsdi__)
769 #	define	PROTOTYPES
770 #	define	HAVE_AOUT
771 #	define	HAVE_STDARG_H
772 #	define	HAVE_STDLIB_H
773 #	define	HAVE_STRING_H
774 #	define	HAVE_STDC_HEADERS
775 #	define	STDC_HEADERS	/* GNU name */
776 #	define	HAVE_LONGLONG
777 #	define	HAVE_UNISTD_H
778 #	define	HAVE_FCNTL_H
779 #	define	HAVE_DIRENT_H
780 #	define	HAVE_TERMIOS_H
781 #	define	HAVE_SYS_TIME_H
782 #	define	HAVE_UTIMES
783 #	define	HAVE_UTIME_H
784 #	define	HAVE_SYS_WAIT_H
785 #	define	HAVE_SYS_PARAM_H
786 #	define	HAVE_SYS_UTSNAME_H
787 #	define	HAVE_SYS_MTIO_H
788 #	define	HAVE_MTGET_DSREG
789 #	define	HAVE_MTGET_RESID
790 #	define	HAVE_MTGET_FILENO
791 #	define	HAVE_MTGET_BLKNO
792 /*#	define	HAVE_USG_STDIO*/
793 #	define	HAVE_DTOA
794 #	define	HAVE_GETCWD
795 #	define	HAVE_STRERROR
796 #	define	HAVE_MEMMOVE
797 #	define	HAVE_MMAP
798 #	define	HAVE_SMMAP
799 #	define	HAVE_USGSHM
800 #	define	HAVE_USGSEM
801 #	ifdef sparc
802 #		define	HAVE_LDSTUB
803 #	endif
804 #	ifdef i386
805 #		define	HAVE_XCHG
806 #	endif
807 #	define	HAVE_FLOCK
808 #	define	HAVE_FCHDIR
809 #	define	HAVE_QUOTA
810 #	define	HAVE_YP
811 #	define	HAVE_SETREUID
812 /*#	define	HAVE_SETRESUID*/
813 #	define	HAVE_SETEUID
814 /*#	define	HAVE_LCHOWN*/
815 #	define	HAVE_WAIT3
816 #	define	HAVE_WAITPID
817 #	define	HAVE_UNION_WAIT
818 #	define	HAVE_GETHOSTNAME
819 #	define	HAVE_SELECT
820 #	define	GID_T		gid_t
821 /*#	define	USLEEPRETURN_T	unsigned int*/
822 #	define	USLEEPRETURN_T	void
823 #	define	USLEEPISVOID
824 
825 /*#	define	HAVE_GETAV0*/
826 /*#	define	HAVE_SCANSTACK*/
827 #endif
828 
829 /*
830  * SysVr4
831  */
832 #if defined(__SVR4) && !defined(__NOT_SVR4__)
833 #	define	PROTOTYPES
834 #	define	HAVE_ELF
835 #	define	HAVE_STDARG_H
836 #	if defined(IS_SUN)
837 #		define	HAVE_LONGLONG
838 #		define	HAVE_UTIMES
839 #		define	HAVE_QUOTA
840 #		define	HAVE_GETAV0	/* XXX what about PPC ??? */
841 #		define	HAVE_SCANSTACK	/* XXX what about PPC ??? */
842 #		define	HAVE_STRSIGNAL
843 #		define	HAVE_STR2SIG
844 #		define	HAVE_SIG2STR
845 #	endif
846 #	define	HAVE_UNISTD_H
847 #	define	HAVE_FCNTL_H
848 #	define	HAVE_DIRENT_H
849 #	define	HAVE_TERMIOS_H
850 #	define	HAVE_TERMIO_H
851 #	define	HAVE_SYS_TIME_H
852 #	define	HAVE_UTIME_H
853 #	define	HAVE_WAIT_H
854 #	define	HAVE_SYS_WAIT_H
855 #	define	HAVE_SYS_PARAM_H
856 #	define	HAVE_SYS_SYSTEMINFO_H
857 #	define	HAVE_SYS_UTSNAME_H
858 #	define	HAVE_SYS_PRIOCNTL_H
859 #	define	HAVE_SYS_RTPRIOCNTL_H
860 #	define	HAVE_SYS_MTIO_H
861 #	define	HAVE_MTGET_DSREG
862 #	define	HAVE_MTGET_RESID
863 #	define	HAVE_MTGET_FILENO
864 #	define	HAVE_MTGET_BLKNO
865 #	define	MAJOR_IN_MKDEV
866 #	define	HAVE_USG_STDIO
867 #	define	HAVE_GETCWD
868 #	define	HAVE_STRERROR
869 #	define	HAVE_MEMMOVE
870 #	define	HAVE_MLOCKALL
871 #	define	HAVE_MMAP
872 #	define	HAVE_SMMAP
873 #	define	HAVE_USGSHM
874 #	define	HAVE_USGSEM
875 #	ifdef sparc
876 #		define	HAVE_LDSTUB
877 #	endif
878 #	ifdef i386
879 #		define	HAVE_XCHG
880 #	endif
881 #	define	HAVE_FCHDIR
882 #	define	HAVE_STATVFS
883 #	define	HAVE_YP
884 #	define	HAVE_SHADOW
885 #	define	HAVE_SETEUID
886 #	define	HAVE_LCHOWN
887 #	define	HAVE_PROCFS
888 #	if (defined(i386) && !defined(IS_SUN))
889 #		define	HAVE_PROCFS2
890 #		define	HAVE_QUOTA
891 #	endif
892 #	define	HAVE_SIGINFO
893 #	define	HAVE_WAITPID
894 #	define	HAVE_STREAMS
895 #	define	HAVE_STRPTYS
896 #	define	HAVE_POLL
897 #	define	HAVE_SELECT
898 #	define	HAVE_TIRPC
899 #	define	GID_T		gid_t
900 #	define	USLEEPRETURN_T	unsigned int
901 #endif
902 
903 /*
904  * Apple Rhapsody
905  */
906 #if defined(__NeXT__) && defined(__TARGET_OSNAME) && __TARGET_OSNAME == rhapsody
907 #	define HAVE_OSDEF /* prevent later definitions to overwrite current */
908 
909 #	define	PROTOTYPES
910 /*#	define	HAVE_ELF*/
911 /*#	define	HAVE_COFF*/
912 /*#	define	HAVE_AOUT*/
913 #	define	HAVE_STDARG_H
914 #	define	HAVE_STDLIB_H
915 #	define	HAVE_STRING_H
916 #	define	HAVE_STDC_HEADERS
917 #	define	STDC_HEADERS	/* GNU name */
918 #	define	HAVE_LONGLONG
919 #	define	HAVE_UNISTD_H
920 #	define	HAVE_FCNTL_H
921 #	define	HAVE_DIRENT_H
922 #	define	HAVE_SYS_DIR_H
923 /*#	define	HAVE_NDIR_H*/
924 /*#	define	HAVE_SYS_NDIR_H*/
925 #	define	HAVE_TERMIOS_H
926 /*#	define	HAVE_TERMIO_H*/
927 #	define	HAVE_SYS_TIME_H
928 #	define	HAVE_UTIMES
929 #	define	HAVE_UTIME_H
930 /*#	define	HAVE_WAIT_H*/
931 #	define	HAVE_SYS_WAIT_H
932 #	define	HAVE_SYS_PARAM_H
933 /*#	define	HAVE_SYS_SYSTEMINFO_H*/
934 #	define	HAVE_SYS_UTSNAME_H
935 /*#	define	HAVE_SYS_PRIOCNTL_H*/
936 /*#	define	HAVE_SYS_RTPRIOCNTL_H*/
937 #	define	HAVE_SYS_MTIO_H
938 #	define	HAVE_MTGET_DSREG
939 #	define	HAVE_MTGET_RESID
940 #	define	HAVE_MTGET_FILENO
941 #	define	HAVE_MTGET_BLKNO
942 /*#	define	MAJOR_IN_MKDEV*/
943 /*#	define	MAJOR_IN_SYSMACROS*/
944 /*#	define	HAVE_USG_STDIO*/
945 #	define	HAVE_DTOA
946 #	define	HAVE_GETCWD
947 #	define	HAVE_STRERROR
948 #	define	HAVE_MEMMOVE
949 #	define	HAVE_MMAP
950 #	define	HAVE_SMMAP
951 #	define	HAVE_USGSHM
952 #	define	HAVE_USGSEM
953 /*#	define	HAVE_MSEM*/
954 /*#	define	HAVE_LDSTUB*/
955 #	if defined(__i386_) || defined(i386)
956 #		define	HAVE_XCHG
957 #	endif
958 #	define	HAVE_FLOCK
959 /*#	define	HAVE_FCHDIR*/
960 /*#	define	HAVE_STATVFS*/
961 #	define	HAVE_QUOTA
962 #	define	HAVE_YP
963 /*#	define	HAVE_SHADOW*/
964 #	define	HAVE_SETREUID
965 /*#	define	HAVE_SETRESUID*/
966 #	define	HAVE_SETEUID
967 /*#	define	HAVE_LCHOWN*/
968 /*#	define	HAVE_PROCFS*/
969 /*#	define	HAVE_PROCFS2*/
970 /*#	define	HAVE_SIGINFO*/
971 #	define	HAVE_WAIT3
972 /*#	define	HAVE_WAITPID*/
973 #	define	HAVE_UNION_WAIT
974 #	define	HAVE_GETHOSTNAME
975 /*#	define	HAVE_STREAMS*/
976 /*#	define	HAVE_STRPTYS*/
977 #	define	HAVE_POLL
978 #	define	HAVE_SELECT
979 /*#	define	HAVE_TIRPC*/
980 /*#	define	GID_T		gid_t*/
981 /*#	define	USLEEPRETURN_T	unsigned int*/
982 /*#	define	USLEEPRETURN_T	void*/
983 #	define	USLEEPISVOID
984 
985 /*#	define	HAVE_GETAV0*/
986 /*#	define	HAVE_SCANSTACK*/
987 #endif
988 
989 /*
990  * NextStep
991  */
992 #if defined(__NeXT__) && !defined(HAVE_OSDEF)
993 
994 #define	printf	Xprintf
995 #define	fprintf	Xfprintf
996 #define	sprintf	Xsprintf
997 #ifdef	XXX
998 #	define	__NOT_SVR4__	/* Not a real SVR4 implementation */
999 #endif
1000 
1001 #	define	PROTOTYPES
1002 /*#	define	HAVE_ELF*/
1003 /*#	define	HAVE_COFF*/
1004 /*#	define	HAVE_AOUT*/
1005 #	define	HAVE_STDARG_H
1006 #	define	HAVE_STDLIB_H
1007 #	define	HAVE_STRING_H
1008 #	define	HAVE_STDC_HEADERS
1009 #	define	STDC_HEADERS	/* GNU name */
1010 #	define	HAVE_LONGLONG
1011 #	define	HAVE_UNISTD_H
1012 #	define	HAVE_FCNTL_H
1013 /*#	define	HAVE_DIRENT_H 		XXX not posix compliant */
1014 #	define	HAVE_SYS_DIR_H
1015 /*#	define	HAVE_NDIR_H*/
1016 /*#	define	HAVE_SYS_NDIR_H*/
1017 /*#	define	HAVE_TERMIOS_H		XXX need buggy -lposix */
1018 /*#	define	HAVE_TERMIO_H*/
1019 #	define	HAVE_SYS_TIME_H
1020 #	define	HAVE_UTIMES
1021 #	define	HAVE_UTIME_H
1022 /*#	define	HAVE_WAIT_H*/
1023 #	define	HAVE_SYS_WAIT_H
1024 #	define	HAVE_SYS_PARAM_H
1025 /*#	define	HAVE_SYS_SYSTEMINFO_H*/
1026 /*#	define	HAVE_SYS_UTSNAME_H	XXX needs buggy -lposix */
1027 /*#	define	HAVE_SYS_PRIOCNTL_H*/
1028 /*#	define	HAVE_SYS_RTPRIOCNTL_H*/
1029 #	define	HAVE_SYS_MTIO_H
1030 #	define	HAVE_MTGET_DSREG
1031 #	define	HAVE_MTGET_RESID
1032 #	define	HAVE_MTGET_FILENO
1033 #	define	HAVE_MTGET_BLKNO
1034 /*#	define	MAJOR_IN_MKDEV*/
1035 /*#	define	MAJOR_IN_SYSMACROS*/
1036 /*#	define	HAVE_USG_STDIO		XXX different _flsbuf() */
1037 #	define	HAVE_STRERROR
1038 /*#	define	HAVE_MEMMOVE*/
1039 /*#	define	HAVE_MMAP*/
1040 /*#	define	HAVE_SMMAP*/
1041 /*#	define	HAVE_USGSHM*/
1042 /*#	define	HAVE_USGSEM*/
1043 /*#	define	HAVE_MSEM*/
1044 /*#	define	HAVE_LDSTUB*/
1045 /*#	define	HAVE_XCHG*/
1046 #	define	HAVE_FLOCK
1047 /*#	define	HAVE_FCHDIR*/
1048 /*#	define	HAVE_STATVFS*/
1049 /*#	define	HAVE_QUOTA*/
1050 /*#	define	HAVE_YP*/
1051 /*#	define	HAVE_SHADOW*/
1052 #	define	HAVE_SETREUID
1053 /*#	define	HAVE_SETRESUID*/
1054 #	define	HAVE_SETEUID
1055 /*#	define	HAVE_LCHOWN*/
1056 /*#	define	HAVE_PROCFS*/
1057 /*#	define	HAVE_PROCFS2*/
1058 /*#	define	HAVE_SIGINFO*/
1059 #	define	HAVE_WAIT3
1060 /*#	define	HAVE_WAITPID*/
1061 #	define	HAVE_UNION_WAIT
1062 #	define	HAVE_GETHOSTNAME
1063 /*#	define	HAVE_STREAMS*/
1064 /*#	define	HAVE_STRPTYS*/
1065 /*#	define	HAVE_POLL*/
1066 #	define	HAVE_SELECT
1067 /*#	define	HAVE_TIRPC*/
1068 #	define	GID_T		gid_t
1069 #	define	USLEEPRETURN_T	int
1070 /*#	define	USLEEPRETURN_T	void*/
1071 /*#	define	USLEEPISVOID*/
1072 
1073 /*#	define	HAVE_GETAV0*/
1074 /*#	define	HAVE_SCANSTACK*/
1075 #endif
1076 
1077 /*
1078  * Cygwin 32 (NT)
1079  */
1080 #if	defined(__CYGWIN32__)
1081 #	define	PROTOTYPES
1082 #	define	HAVE_OSDEF	/* prevent later definitions to overwrite current */
1083 #	define	__NOT_SVR4__	/* Not a real SVR4 implementation */
1084 
1085 /*#	define	HAVE_ELF*/
1086 /*#	define	HAVE_COFF*/
1087 #	define	HAVE_AOUT
1088 #	define	HAVE_STDARG_H
1089 /*#	define	HAVE_VA_COPY*/
1090 #	define	HAVE_STDLIB_H
1091 #	define	HAVE_STRING_H
1092 #	define	HAVE_STDC_HEADERS
1093 #	define	STDC_HEADERS	/* GNU name */
1094 #	define	HAVE_LONGLONG
1095 
1096 #	define	HAVE_UNISTD_H
1097 #	define	HAVE_FCNTL_H
1098 #	define	HAVE_DIRENT_H
1099 /*#	define	HAVE_SYS_DIR_H*/
1100 /*#	define	HAVE_NDIR_H*/
1101 /*#	define	HAVE_SYS_NDIR_H*/
1102 #	define	HAVE_TERMIOS_H
1103 #	define	HAVE_TERMIO_H
1104 #	define	HAVE_SYS_TIME_H
1105 /*#	define	HAVE_UTIMES*/
1106 #	define	HAVE_UTIME_H
1107 /*#	define	HAVE_WAIT_H*/
1108 #	define	HAVE_SYS_WAIT_H
1109 #	define	HAVE_SYS_PARAM_H
1110 /*#	define	HAVE_SYS_SYSTEMINFO_H*/
1111 #	define	HAVE_SYS_UTSNAME_H
1112 /*#	define	HAVE_SYS_PRIOCNTL_H*/
1113 /*#	define	HAVE_SYS_RTPRIOCNTL_H*/
1114 /*#	define	HAVE_SYS_MTIO_H*/
1115 /*#	define	HAVE_MTGET_DSREG*/
1116 /*#	define	HAVE_MTGET_RESID*/
1117 /*#	define	HAVE_MTGET_FILENO*/
1118 /*#	define	HAVE_MTGET_BLKNO*/
1119 /*#	define	MAJOR_IN_MKDEV*/
1120 /*#	define	MAJOR_IN_SYSMACROS*/
1121 /*#	define	HAVE_USG_STDIO*/
1122 /*#	define	HAVE_DTOA*/	/* XXX eigentlich doch da */
1123 #	define	HAVE_GETCWD
1124 #	define	HAVE_STRERROR
1125 #	define	HAVE_MEMMOVE
1126 #	define	HAVE_MMAP
1127 #	define	HAVE_SMMAP
1128 /*#	define	HAVE_USGSHM*/
1129 /*#	define	HAVE_USGSEM*/
1130 /*#	define	HAVE_MSEM*/
1131 /*#	define	HAVE_LDSTUB*/
1132 #	if defined(__i386_) || defined(i386)
1133 #		define	HAVE_XCHG
1134 #	endif
1135 /*#	define	HAVE_FLOCK*/
1136 /*#	define	HAVE_FCHDIR*/
1137 /*#	define	HAVE_STATVFS*/
1138 /*#	define	HAVE_QUOTA*/
1139 /*#	define	HAVE_YP*/
1140 /*#	define	HAVE_SHADOW*/
1141 /*#	define	HAVE_SETREUID*/
1142 /*#	define	HAVE_SETRESUID*/
1143 /*#	define	HAVE_SETEUID*/
1144 /*#	define	HAVE_LCHOWN*/
1145 /*#	define	HAVE_PROCFS*/
1146 /*#	define	HAVE_PROCFS2*/
1147 /*#	define	HAVE_SIGINFO*/
1148 #	define	HAVE_WAIT3
1149 #	define	HAVE_WAITPID
1150 #	define	HAVE_UNION_WAIT
1151 #	define	HAVE_GETHOSTNAME
1152 /*#	define	HAVE_STREAMS*/
1153 /*#	define	HAVE_STRPTYS*/
1154 /*#	define	HAVE_POLL*/
1155 #	define	HAVE_SELECT
1156 /*#	define	HAVE_TIRPC*/
1157 #	define	GID_T		gid_t
1158 #	define	USLEEPRETURN_T	unsigned int
1159 /*#	define	USLEEPRETURN_T	void*/
1160 /*#	define	USLEEPISVOID*/
1161 
1162 /*#	define	HAVE_GETAV0*/
1163 /*#	define	HAVE_SCANSTACK*/
1164 #endif	/* __CYGWIN32__ */
1165 
1166 #if defined(VMS)
1167 #	define	PROTOTYPES
1168 #	define	HAVE_OSDEF	/* prevent later definitions to overwrite current */
1169 #	define	__NOT_SVR4__	/* Not a real SVR4 implementation */
1170 
1171 #	define	HAVE_UNISTD_H
1172 /*  #	define	HAVE_SYS_TIME_H	*/
1173 #	define	HAVE_FCNTL_H
1174 #	define	HAVE_USLEEP
1175 #	define	HAVE_INTTYPES_H
1176 #	include <types.h>
1177 #	define HOST_CPU	"Alpha/VAX"
1178 #	define HOST_VENDOR "CPQ"
1179 #	define HOST_OS "VMS/OpenVMS"
1180 #	define RETSIGTYPE   void
1181 /*#	define	HAVE_ELF    */
1182 /*#	define	HAVE_COFF   */
1183 /*#	define	HAVE_AOUT   */
1184 /*#	define	HAVE_STDARG_H	*/
1185 /*#	define	HAVE_VA_COPY	*/
1186 /*#	define	HAVE_STDLIB_H	*/
1187 /*#	define	HAVE_STRING_H	*/
1188 /*#	define	HAVE_STDC_HEADERS   */
1189 /*#	define	STDC_HEADERS	*/
1190 /*#	define	HAVE_LONGLONG	*/
1191 
1192 /*#	define	HAVE_UNISTD_H	*/
1193 /*#	define	HAVE_FCNTL_H	*/
1194 /*#	define	HAVE_DIRENT_H	*/
1195 /*#	define	HAVE_SYS_DIR_H	*/
1196 /*#	define	HAVE_NDIR_H */
1197 /*#	define	HAVE_SYS_NDIR_H	*/
1198 /*#	define	HAVE_TERMIOS_H	*/
1199 /*#	define	HAVE_TERMIO_H	*/
1200 /*#	define	HAVE_SYS_TIME_H	*/
1201 /*#	define	HAVE_UTIMES */
1202 /*#	define	HAVE_UTIME_H	*/
1203 /*#	define	HAVE_WAIT_H */
1204 /*#	define	HAVE_SYS_WAIT_H	*/
1205 /*#	define	HAVE_SYS_SYSTEMINFO_H	*/
1206 /*#	define	HAVE_SYS_UTSNAME_H  */
1207 /*#	define	HAVE_SYS_PRIOCNTL_H */
1208 /*#	define	HAVE_SYS_RTPRIOCNTL_H	*/
1209 /*#	define	HAVE_SYS_MTIO_H	*/
1210 /*#	define	HAVE_MTGET_DSREG    */
1211 /*#	define	HAVE_MTGET_RESID    */
1212 /*#	define	HAVE_MTGET_FILENO   */
1213 /*#	define	HAVE_MTGET_BLKNO    */
1214 /*#	define	MAJOR_IN_MKDEV	*/
1215 /*#	define	MAJOR_IN_SYSMACROS  */
1216 /*#	define	HAVE_USG_STDIO	*/
1217 /*#	define	HAVE_DTOA   */
1218 /*#	define	HAVE_STRERROR	*/
1219 #	define	HAVE_MEMMOVE
1220 /*#	define	HAVE_MMAP   */
1221 /*#	define	HAVE_SMMAP  */
1222 /*#	define	HAVE_USGSHM */
1223 /*#	define	HAVE_USGSEM */
1224 /*#	define	HAVE_MSEM   */
1225 /*#	define	HAVE_LDSTUB */
1226 /*#	define	HAVE_XCHG   */
1227 /*#	define	HAVE_FLOCK  */
1228 /*#	define	HAVE_FCHDIR */
1229 /*#	define	HAVE_STATVFS	*/
1230 /*#	define	HAVE_QUOTA  */
1231 /*#	define	HAVE_YP	*/
1232 /*#	define	HAVE_SHADOW */
1233 /*#	define	HAVE_SETREUID	*/
1234 /*#	define	HAVE_SETRESUID	*/
1235 /*#	define	HAVE_SETEUID	*/
1236 /*#	define	HAVE_LCHOWN */
1237 /*#	define	HAVE_PROCFS */
1238 /*#	define	HAVE_PROCFS2	*/
1239 /*#	define	HAVE_SIGINFO	*/
1240 /*#	define	HAVE_WAIT3  */
1241 /*#	define	HAVE_WAITPID	*/
1242 /*#	define	HAVE_UNION_WAIT	*/
1243 #	define	HAVE_GETHOSTNAME
1244 /*#	define	HAVE_STREAMS	*/
1245 /*#	define	HAVE_STRPTYS	*/
1246 /*#	define	HAVE_POLL   */
1247 #	define	HAVE_SELECT
1248 /*#	define	HAVE_TIRPC  */
1249 /*#	define	GID_T		gid_t	*/
1250 #	define	USLEEPRETURN_T	uint
1251 /*#	define	USLEEPRETURN_T	void	*/
1252 /*#	define	USLEEPISVOID	*/
1253 /*#	define	HAVE_GETAV0 */
1254 /*#	define	HAVE_SCANSTACK	*/
1255 #endif
1256 
1257 /*
1258  * Prototype for new systems
1259  */
1260 #if defined(__NEW_SYSTEM_TO_DEFINE__)
1261 #	define	PROTOTYPES
1262 #	define	HAVE_OSDEF	/* prevent later definitions to overwrite current */
1263 #	define	__NOT_SVR4__	/* Not a real SVR4 implementation */
1264 
1265 #	define	HAVE_ELF
1266 #	define	HAVE_COFF
1267 #	define	HAVE_AOUT
1268 #	define	HAVE_STDARG_H
1269 #	define	HAVE_VA_COPY
1270 #	define	HAVE__VA_COPY
1271 #	define	HAVE_STDLIB_H
1272 #	define	HAVE_STRING_H
1273 #	define	HAVE_STRINGS_H
1274 #	define	HAVE_STDC_HEADERS
1275 #	define	STDC_HEADERS	/* GNU name */
1276 #	define	HAVE_LONGLONG
1277 #	define	HAVE_SIZE_T
1278 #	define	NO_SIZE_T
1279 
1280 #	define	HAVE_UNISTD_H
1281 #	define	HAVE_FCNTL_H
1282 #	define	HAVE_DIRENT_H
1283 #	define	HAVE_SYS_DIR_H
1284 #	define	HAVE_NDIR_H
1285 #	define	HAVE_MALLOC_H
1286 #	define	HAVE_SYS_NDIR_H
1287 #	define	HAVE_TERMIOS_H
1288 #	define	HAVE_TERMIO_H
1289 #	define	HAVE_SYS_TIME_H
1290 #	define	HAVE_UTIMES
1291 #	define	HAVE_UTIME_H
1292 #	define	HAVE_WAIT_H
1293 #	define	HAVE_SYS_WAIT_H
1294 #	define	HAVE_SYS_PARAM_H
1295 #	define	HAVE_SYS_SYSTEMINFO_H
1296 #	define	HAVE_SYS_UTSNAME_H
1297 #	define	HAVE_SYS_PRIOCNTL_H
1298 #	define	HAVE_SYS_RTPRIOCNTL_H
1299 #	define	HAVE_SYS_MTIO_H
1300 #	define	HAVE_MTGET_DSREG
1301 #	define	HAVE_MTGET_RESID
1302 #	define	HAVE_MTGET_FILENO
1303 #	define	HAVE_MTGET_BLKNO
1304 #	define	MAJOR_IN_MKDEV
1305 #	define	MAJOR_IN_SYSMACROS
1306 #	define	HAVE_USG_STDIO
1307 #	define	HAVE_BRK
1308 #	define	HAVE_SBRK
1309 #	define	HAVE_DTOA
1310 #	define	HAVE_GETCWD
1311 #	define	HAVE_STRERROR
1312 #	define	HAVE_MEMMOVE
1313 #	define	HAVE_MLOCKALL
1314 #	define	HAVE_MMAP
1315 #	define	HAVE_SMMAP
1316 #	define	HAVE_USGSHM
1317 #	define	HAVE_USGSEM
1318 #	define	HAVE_MSEM
1319 #	define	HAVE_LDSTUB
1320 #	define	HAVE_XCHG
1321 #	define	HAVE_FLOCK
1322 #	define	HAVE_FCHDIR
1323 #	define	HAVE_STATVFS
1324 #	define	HAVE_QUOTA
1325 #	define	HAVE_YP
1326 #	define	HAVE_SHADOW
1327 #	define	HAVE_SETREUID
1328 #	define	HAVE_SETRESUID
1329 #	define	HAVE_SETEUID
1330 #	define	HAVE_LCHOWN
1331 #	define	HAVE_PROCFS
1332 #	define	HAVE_PROCFS2
1333 #	define	HAVE_SIGINFO
1334 #	define	HAVE_WAIT3
1335 #	define	HAVE_WAITPID
1336 #	define	HAVE_UNION_WAIT
1337 #	define	HAVE_GETHOSTNAME
1338 #	define	HAVE_STREAMS
1339 #	define	HAVE_STRPTYS
1340 #	define	HAVE_POLL
1341 #	define	HAVE_SELECT
1342 #	define	HAVE_TIRPC
1343 #	define	GID_T		gid_t
1344 #	define	USLEEPRETURN_T	unsigned int
1345 #	define	USLEEPRETURN_T	void
1346 #	define	USLEEPISVOID
1347 
1348 #	define	HAVE_GETAV0
1349 #	define	HAVE_SCANSTACK
1350 #endif	/* __NEW_SYSTEM_TO_DEFINE__ */
1351 
1352 #ifdef __cplusplus
1353 }
1354 #endif
1355 
1356 #endif /* _XMCONFIG_H */
1357