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
12293290Sbdrewery/****************** System dependent 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 */
37297789Smp/* #define VFORK */
38297789Smp#define	vfork fork
3959355Sobrien
4059355Sobrien/*
4159355Sobrien * BSDJOBS	You have BSD-style job control (both process groups and
4259355Sobrien *		a tty that deals correctly
4359355Sobrien */
4459355Sobrien#define BSDJOBS
4559355Sobrien
4659355Sobrien/*
4759355Sobrien * BSDTIMES	You have BSD-style process time stuff (like rusage)
4859355Sobrien *		This may or may not be true.  For example, Apple Unix
49167469Smp *		(OREO) has BSDJOBS but not BSDTIMES.
5059355Sobrien */
5159355Sobrien#define BSDTIMES
5259355Sobrien
5359355Sobrien/*
5459355Sobrien * BSDLIMIT	You have BSD-style resource limit stuff (getrlimit/setrlimit)
5559355Sobrien */
5659355Sobrien#define BSDLIMIT
5759355Sobrien
5859355Sobrien/*
5959355Sobrien * TERMIO	You have struct termio instead of struct sgttyb.
6059355Sobrien * 		This is usually the case for SYSV systems, where
6159355Sobrien *		BSD uses sgttyb. POSIX systems should define this
6259355Sobrien *		anyway, even though they use struct termios.
6359355Sobrien */
6459355Sobrien#define TERMIO
6559355Sobrien
6659355Sobrien/*
6759355Sobrien * SYSVREL	Your machine is SYSV based (HPUX, A/UX)
6859355Sobrien *		NOTE: don't do this if you are on a Pyramid -- tcsh is
6959355Sobrien *		built in a BSD universe.
7059355Sobrien *		Set SYSVREL to 1, 2, 3, or 4, depending the version of System V
7159355Sobrien *		you are running. Or set it to 0 if you are not SYSV based
7259355Sobrien */
7359355Sobrien#define SYSVREL	0
7459355Sobrien
7559355Sobrien/*
7659355Sobrien * YPBUGS	Work around Sun YP bugs that cause expansion of ~username
7759355Sobrien *		to send command output to /dev/null
7859355Sobrien */
79145483Smp#undef YPBUGS
8059355Sobrien
8159355Sobrien/****************** local defines *********************/
8259355Sobrien
8359355Sobrien#if defined(__FreeBSD__)
8459355Sobrien#define NLS_BUGS
85145483Smp#define BSD_STYLE_COLORLS
86142677Sphantom/* Use LC_MESSAGES locale category to open the message catalog */
87141096Sphantom#define MCLoadBySet NL_CAT_LOCALE
88150479Smp#define BUFSIZE 8192
89202190Sed#define UTMPX_FILE "/var/run/utx.active"
9059355Sobrien#endif
9159355Sobrien
9259355Sobrien#if defined(__bsdi__)
9359355Sobrien/*
9459355Sobrien * _PATH_TCSHELL      if you've change the installation location (vix)
9559355Sobrien */
96131966Smp#include <sys/param.h>
97131966Smp# ifdef _BSDI_VERSION >= 199701
9859355Sobrien#  define _PATH_TCSHELL "/bin/tcsh"
99145483Smp#  undef SYSMALLOC
10059355Sobrien#  define SYSMALLOC
10159355Sobrien# else
10259355Sobrien#  define _PATH_TCSHELL "/usr/contrib/bin/tcsh"
10359355Sobrien# endif
10459355Sobrien
105145483Smp# undef NLS
106145483Smp# undef NLS_CATALOGS
10759355Sobrien
10859355Sobrien#elif defined(__APPLE__)
10959355Sobrien# define SYSMALLOC
11059355Sobrien#endif
11159355Sobrien
11259355Sobrien#endif /* _h_config */
113