/* config.h.  Generated automatically by configure.  */
/*
 * config.h -- configure various defines for tcsh
 *
 * All source files should #include this FIRST.
 *
 * Edit this to match your system type.
 */

#ifndef _h_config
#define _h_config
/****************** System dependant compilation flags ****************/
/*
 * POSIX	This system supports IEEE Std 1003.1-1988 (POSIX).
 */
#ifdef mips
# define POSIX
#else
/* # undef POSIX */
#endif

/*
 * POSIXJOBS	This system supports the optional IEEE Std 1003.1-1988 (POSIX)
 *		job control facilities.
 */
#define POSIXJOBS

/*
 * POSIXSIGS	Use the POSIX signal facilities to emulate BSD signals.
 */
/* #undef POSIXSIGS */

/*
 * VFORK	This machine has a vfork().  
 *		It used to be that for job control to work, this define
 *		was mandatory. This is not the case any more.
 *		If you think you still need it, but you don't have vfork, 
 *		define this anyway and then do #define vfork fork.  
 *		I do this anyway on a Sun because of yellow pages brain damage,
 *		[should not be needed under 4.1]
 *		and on the iris4d cause	SGI's fork is sufficiently "virtual" 
 *		that vfork isn't necessary.  (Besides, SGI's vfork is weird).
 *		Note that some machines eg. rs6000 have a vfork, but not
 *		with the berkeley semantics, so we cannot use it there either.
 */
/* #undef VFORK */

/*
 * BSDJOBS	You have BSD-style job control (both process groups and
 *		a tty that deals correctly
 */
/* #undef BSDJOBS */

/*
 * BSDSIGS	You have 4.2-style signals, rather than USG style.
 *		Note: POSIX systems should not define this unless they
 *		have sigvec() and friends (ie: 4.3BSD-RENO, HP-UX).
 */
/* #undef BSDSIGS */

/*
 * BSDTIMES	You have BSD-style process time stuff (like rusage)
 *		This may or may not be true.  For example, Apple Unix
 *		(OREO) has BSDJOBS and BSDSIGS but not BSDTIMES.
 */
#ifdef mips
# define BSDTIMES
#else
/* # undef BSDTIMES */
#endif

/*
 * BSDLIMIT	You have BSD-style resource limit stuff (getrlimit/setrlimit)
 */
#ifdef mips
# define BSDLIMIT
#else
/* # undef BSDLIMIT */
#endif

/*
 * BSDNICE	Your system uses setpriority() instead of nice, to
 *		change a processes scheduling priority
 */
#ifdef mips
# define BSDNICE
#else
/* # undef BSDNICE */
#endif

/*
 * TERMIO	You have struct termio instead of struct sgttyb.
 * 		This is usually the case for SYSV systems, where
 *		BSD uses sgttyb. POSIX systems should define this
 *		anyway, even though they use struct termios.
 */
#define TERMIO

/*
 * SYSVREL	Your machine is SYSV based (HPUX, A/UX)
 *		NOTE: don't do this if you are on a Pyramid -- tcsh is
 *		built in a BSD universe.
 *		Set SYSVREL to 1, 2, 3, or 4, depending the version of System V
 *		you are running. Or set it to 0 if you are not SYSV based
 */
#ifdef mips
# if defined(SYSTYPE_SVR4) || defined(_SYSTYPE_SVR4)
#  define SYSVREL	4
# else
#  define SYSVREL	3
# endif /* SYSTYPE_SVR4 || _SYSTYPE_SVR4 */
#else
/* 
 * For the 3000:
 * We may not technically be compliant, and I don't know whether we are
 * SVR1 or SVR2.  We're pretty System V-ish, though, so we won't say 0.
 * We'll guess 1.  There are no checks for SYSVREL <= 1 vs. SYSVREL >= 2 at
 * current writing anyway. 
 */
# define SYSVREL	1
#endif

/*
 * YPBUGS	Work around Sun YP bugs that cause expansion of ~username
 *		to send command output to /dev/null
 */
#define YPBUGS

/*
 * SIGVOID	Define this if your signal handlers return void.  On older
 *		systems, signal returns int, but on newer ones, it returns void.
 */
#ifdef mips
# define SIGVOID 
#else
/* # undef SIGVOID */ 
#endif

/*
 * HAVEDUP2	Define this if your system supports dup2().
 */
#ifdef mips
# define HAVEDUP2
#else
/* # undef HAVEDUP2 */
#endif

/*
 * HAVEUTMPX	Define if you have extended utmp (utmpx).
 *		(common for svr4 systems)
 * UTHOST	Does the utmp file have a host field?
 */
#if SYSVREL > 3
# define HAVEUTMPX
# define UTHOST
#else
/* # undef UTHOST */
#endif /* SVR4 */


/*
 * DIRENT	Your system has <dirent.h> instead of <sys/dir.h>
 */
#define DIRENT

/*
 * ECHO_STYLE	Optionally change the behavior of the builtin echo
 *		BOTH_ECHO: Support both bsd options (-n) and sysv escapes (\nnn)
 *		BSD_ECHO:  Support only -n
 *		SYSV_ECHO: Support only sysv escapes (\nnn)
 *		NONE_ECHO: Pure echo.
 */
#define ECHO_STYLE BOTH_ECHO	/* Both BSD and SYSV options */

/****************** local defines *********************/
#ifdef mips
/*
 * IRIS4D	You are running on an Iris 4D
 */
# define IRIS4D

/*
 * IRIX3_3	You are running IRIX 3.3 (or later)
 */
# define IRIX3_3
#endif

#ifdef m68000
/*
 * IRIS3D	You are running on an Iris 3000 series
 */
# define IRIS3D
#endif

/*
 * lookupname/namei ignores tailing '/' on files
 */
#define NAMEI_BUG

/****************** configurable hacks ****************/
/* have been moved to config_f.h */
#include "config_f.h"

#ifdef notdef
/* You can put these back if your os does not really support nls */
/* #undef NLS */
/* #undef NLS_CATALOGS */
#endif
#endif /* _h_config */
/* config.h.in.  Generated automatically from configure.in by autoheader.  */
