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