1/*
2 * config.h -- configure various defines for tcsh
3 *
4 * All source files should #include this FIRST.
5 *
6 * Edit this to match your system type.
7 */
8
9#ifndef _h_config
10#define _h_config
11/****************** System dependant compilation flags ****************/
12/*
13 * POSIX	This system supports IEEE Std 1003.1-1988 (POSIX).
14 */
15#ifdef _SEQUENT_
16# define POSIX
17#else /* _SEQUENT_ */
18# undef POSIX
19#endif /* _SEQUENT_ */
20
21/*
22 * POSIXJOBS	This system supports the optional IEEE Std 1003.1-1988 (POSIX)
23 *		job control facilities.
24 */
25#ifdef _SEQUENT_
26# define POSIXJOBS
27#else /* _SEQUENT_ */
28# undef POSIXJOBS
29#endif /* _SEQUENT_ */
30
31/*
32 * VFORK	This machine has a vfork().
33 *		It used to be that for job control to work, this define
34 *		was mandatory. This is not the case any more.
35 *		If you think you still need it, but you don't have vfork,
36 *		define this anyway and then do #define vfork fork.
37 *		I do this anyway on a Sun because of yellow pages brain damage,
38 *		[should not be needed under 4.1]
39 *		and on the iris4d cause	SGI's fork is sufficiently "virtual"
40 *		that vfork isn't necessary.  (Besides, SGI's vfork is weird).
41 *		Note that some machines eg. rs6000 have a vfork, but not
42 *		with the berkeley semantics, so we cannot use it there either.
43 */
44#define VFORK
45
46/*
47 * BSDJOBS	You have BSD-style job control (both process groups and
48 *		a tty that deals correctly
49 */
50#define BSDJOBS
51
52/*
53 * BSDTIMES	You have BSD-style process time stuff (like rusage)
54 *		This may or may not be true.  For example, Apple Unix
55 *		(OREO) has BSDJOBS but not BSDTIMES.
56 */
57#ifdef _SEQUENT_
58# undef BSDTIMES
59#else /* _SEQUENT_ */
60# define BSDTIMES
61#endif /* _SEQUENT_ */
62
63/*
64 * BSDLIMIT	You have BSD-style resource limit stuff (getrlimit/setrlimit)
65 */
66#ifdef _SEQUENT_
67# undef BSDLIMIT
68#else /* _SEQUENT_ */
69# define BSDLIMIT
70#endif /* _SEQUENT_ */
71
72/*
73 * TERMIO	You have struct termio instead of struct sgttyb.
74 * 		This is usually the case for SYSV systems, where
75 *		BSD uses sgttyb. POSIX systems should define this
76 *		anyway, even though they use struct termios.
77 */
78#ifdef _SEQUENT_
79# define TERMIO
80#else /* _SEQUENT_ */
81# undef TERMIO
82#endif /* _SEQUENT_ */
83
84/*
85 * SYSVREL	Your machine is SYSV based (HPUX, A/UX)
86 *		NOTE: don't do this if you are on a Pyramid -- tcsh is
87 *		built in a BSD universe.
88 *		Set SYSVREL to 1, 2, 3, or 4, depending the version of System V
89 *		you are running. Or set it to 0 if you are not SYSV based
90 */
91#ifdef _SEQUENT_
92# define SYSVREL	4
93#else /* _SEQUENT_ */
94# define SYSVREL	0
95#endif /* _SEQUENT_ */
96
97/*
98 * YPBUGS	Work around Sun YP bugs that cause expansion of ~username
99 *		to send command output to /dev/null
100 *		This is fixed in sunos 4.1, broken in 4.0..
101 */
102#ifdef _SEQUENT_
103# undef YPBUGS
104#else /* _SEQUENT_ */
105# define YPBUGS
106#endif /* _SEQUENT_ */
107
108/*
109 * BSD	Your system has <strings.h> instead of <string.h>
110 */
111#ifdef _SEQUENT_
112#undef BSD
113#else /* _SEQUENT_ */
114#define BSD
115#endif /* _SEQUENT_ */
116
117/****************** local defines *********************/
118
119#ifdef _SEQUENT_
120#define NAMEI_BUG
121#else /* _SEQUENT_ */
122#undef NLS_CATALOGS
123#endif /* _SEQUENT_ */
124#endif /* _h_config */
125