1/* 2 * config.h -- configure various defines for tcsh 3 * 4 * All source files should #include this FIRST. 5 * 6 * Configuration file for Harris Tahoe running CX/UX 5.1, CX/UX 7.1 7 * Compile in ucb universe; tested with gcc 1.42 and cc. 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#undef 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#undef 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#ifdef _CX_UX 64# undef TERMIO 65#else 66# define TERMIO 67#endif 68 69/* 70 * SYSVREL Your machine is SYSV based (HPUX, A/UX) 71 * NOTE: don't do this if you are on a Pyramid -- tcsh is 72 * built in a BSD universe. 73 * Set SYSVREL to 1, 2, 3, or 4, depending the version of System V 74 * you are running. Or set it to 0 if you are not SYSV based 75 */ 76#define SYSVREL 0 77 78/* 79 * YPBUGS Work around Sun YP bugs that cause expansion of ~username 80 * to send command output to /dev/null 81 */ 82#undef YPBUGS 83 84 85#ifdef _CX_UX 86/* 87 * ECHO_STYLE Optionally change the behavior of the builtin echo 88 * BOTH_ECHO: Support both bsd options (-n) and sysv escapes (\nnn) 89 * BSD_ECHO: Support only -n 90 * SYSV_ECHO: Support only sysv escapes (\nnn) 91 * NONE_ECHO: Pure echo. 92 */ 93#define ECHO_STYLE BOTH_ECHO /* Both BSD and SYSV options */ 94#endif 95 96 97/****************** local defines *********************/ 98/* 99 * It appears like 5.x defines hcx and does not define _CX_UX and 100 * 7.x defines _CX_UX and does not define hcx. In tcsh we currently 101 * use _CX_UX, maybe in the future we should try something neutral 102 */ 103 104#if defined(hcx) && !defined(_CX_UX) 105# define _CX_UX 106#endif 107 108#endif /* _h_config */ 109