1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144
|
/*
* 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
/*
* 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
/*
* BSDTIMES You have BSD-style process time stuff (like rusage)
* This may or may not be true. For example, Apple Unix
* (OREO) has BSDJOBS 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
/*
* 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
/*
* 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
#ifdef notdef
/* You can put these back if your os does not really support nls */
#undef NLS_CATALOGS
#endif
#endif /* _h_config */
|