1145483Smp/* $FreeBSD$ */
259355Sobrien/*
359355Sobrien * config.h -- configure various defines for tcsh
459355Sobrien *
559355Sobrien * All source files should #include this FIRST.
659355Sobrien *
759355Sobrien * Edit this to match your system type.
859355Sobrien */
959355Sobrien
1059355Sobrien#ifndef _h_config
1159355Sobrien#define _h_config
1259355Sobrien/****************** System dependant compilation flags ****************/
1359355Sobrien/*
1459355Sobrien * POSIX	This system supports IEEE Std 1003.1-1988 (POSIX).
1559355Sobrien */
1659355Sobrien#define POSIX
1759355Sobrien
1859355Sobrien/*
1959355Sobrien * POSIXJOBS	This system supports the optional IEEE Std 1003.1-1988 (POSIX)
2059355Sobrien *		job control facilities.
2159355Sobrien */
2259355Sobrien#define POSIXJOBS
2359355Sobrien
2459355Sobrien/*
25145483Smp * VFORK	This machine has a vfork().
2659355Sobrien *		It used to be that for job control to work, this define
2759355Sobrien *		was mandatory. This is not the case any more.
28145483Smp *		If you think you still need it, but you don't have vfork,
29145483Smp *		define this anyway and then do #define vfork fork.
3059355Sobrien *		I do this anyway on a Sun because of yellow pages brain damage,
3159355Sobrien *		[should not be needed under 4.1]
32145483Smp *		and on the iris4d cause	SGI's fork is sufficiently "virtual"
3359355Sobrien *		that vfork isn't necessary.  (Besides, SGI's vfork is weird).
3459355Sobrien *		Note that some machines eg. rs6000 have a vfork, but not
3559355Sobrien *		with the berkeley semantics, so we cannot use it there either.
3659355Sobrien */
3759355Sobrien#define VFORK
3859355Sobrien
3959355Sobrien/*
4059355Sobrien * BSDJOBS	You have BSD-style job control (both process groups and
4159355Sobrien *		a tty that deals correctly
4259355Sobrien */
4359355Sobrien#define BSDJOBS
4459355Sobrien
4559355Sobrien/*
4659355Sobrien * BSDTIMES	You have BSD-style process time stuff (like rusage)
4759355Sobrien *		This may or may not be true.  For example, Apple Unix
48167469Smp *		(OREO) has BSDJOBS but not BSDTIMES.
4959355Sobrien */
5059355Sobrien#define BSDTIMES
5159355Sobrien
5259355Sobrien/*
5359355Sobrien * BSDLIMIT	You have BSD-style resource limit stuff (getrlimit/setrlimit)
5459355Sobrien */
5559355Sobrien#define BSDLIMIT
5659355Sobrien
5759355Sobrien/*
5859355Sobrien * TERMIO	You have struct termio instead of struct sgttyb.
5959355Sobrien * 		This is usually the case for SYSV systems, where
6059355Sobrien *		BSD uses sgttyb. POSIX systems should define this
6159355Sobrien *		anyway, even though they use struct termios.
6259355Sobrien */
6359355Sobrien#define TERMIO
6459355Sobrien
6559355Sobrien/*
6659355Sobrien * SYSVREL	Your machine is SYSV based (HPUX, A/UX)
6759355Sobrien *		NOTE: don't do this if you are on a Pyramid -- tcsh is
6859355Sobrien *		built in a BSD universe.
6959355Sobrien *		Set SYSVREL to 1, 2, 3, or 4, depending the version of System V
7059355Sobrien *		you are running. Or set it to 0 if you are not SYSV based
7159355Sobrien */
7259355Sobrien#define SYSVREL	0
7359355Sobrien
7459355Sobrien/*
7559355Sobrien * YPBUGS	Work around Sun YP bugs that cause expansion of ~username
7659355Sobrien *		to send command output to /dev/null
7759355Sobrien */
78145483Smp#undef YPBUGS
7959355Sobrien
8059355Sobrien/****************** local defines *********************/
8159355Sobrien
8259355Sobrien#if defined(__FreeBSD__)
8359355Sobrien#define NLS_BUGS
84145483Smp#define BSD_STYLE_COLORLS
85142677Sphantom/* Use LC_MESSAGES locale category to open the message catalog */
86141096Sphantom#define MCLoadBySet NL_CAT_LOCALE
87150479Smp#define BUFSIZE 8192
88202190Sed#define UTMPX_FILE "/var/run/utx.active"
8959355Sobrien#endif
9059355Sobrien
9159355Sobrien#if defined(__bsdi__)
9259355Sobrien/*
9359355Sobrien * _PATH_TCSHELL      if you've change the installation location (vix)
9459355Sobrien */
95131966Smp#include <sys/param.h>
96131966Smp# ifdef _BSDI_VERSION >= 199701
9759355Sobrien#  define _PATH_TCSHELL "/bin/tcsh"
98145483Smp#  undef SYSMALLOC
9959355Sobrien#  define SYSMALLOC
10059355Sobrien# else
10159355Sobrien#  define _PATH_TCSHELL "/usr/contrib/bin/tcsh"
10259355Sobrien# endif
10359355Sobrien
104145483Smp# undef NLS
105145483Smp# undef NLS_CATALOGS
10659355Sobrien
10759355Sobrien#elif defined(__APPLE__)
10859355Sobrien# define SYSMALLOC
10959355Sobrien#endif
11059355Sobrien
11159355Sobrien#endif /* _h_config */
112