1/* 2 * config.h -- configure various defines for tcsh 3 * 4 * All source files should #include this FIRST. 5 * 6 * Edit this to match your system type. 7 */ 8 9#ifndef _h_config 10#define _h_config 11/****************** System dependant compilation flags ****************/ 12/* 13 * POSIX This system supports IEEE Std 1003.1-1988 (POSIX). 14 */ 15#define POSIX 16 17/* 18 * POSIXJOBS This system supports the optional IEEE Std 1003.1-1988 (POSIX) 19 * job control facilities. 20 */ 21#define POSIXJOBS 22 23/* 24 * POSIXSIGS Use the POSIX signal facilities to emulate BSD signals. 25 */ 26#undef POSIXSIGS 27 28/* 29 * VFORK This machine has a vfork(). 30 * It used to be that for job control to work, this define 31 * was mandatory. This is not the case any more. 32 * If you think you still need it, but you don't have vfork, 33 * define this anyway and then do #define vfork fork. 34 * I do this anyway on a Sun because of yellow pages brain damage, 35 * [should not be needed under 4.1] 36 * and on the iris4d cause SGI's fork is sufficiently "virtual" 37 * that vfork isn't necessary. (Besides, SGI's vfork is weird). 38 * Note that some machines eg. rs6000 have a vfork, but not 39 * with the berkeley semantics, so we cannot use it there either. 40 */ 41#define VFORK 42 43/* 44 * BSDJOBS You have BSD-style job control (both process groups and 45 * a tty that deals correctly 46 */ 47#define BSDJOBS 48 49/* 50 * BSDSIGS You have 4.2-style signals, rather than USG style. 51 * Note: POSIX systems should not define this unless they 52 * have sigvec() and friends (ie: 4.3BSD-RENO, HP-UX). 53 */ 54#define BSDSIGS 55 56/* 57 * BSDTIMES You have BSD-style process time stuff (like rusage) 58 * This may or may not be true. For example, Apple Unix 59 * (OREO) has BSDJOBS and BSDSIGS but not BSDTIMES. 60 */ 61#define BSDTIMES 62 63/* 64 * BSDLIMIT You have BSD-style resource limit stuff (getrlimit/setrlimit) 65 */ 66#define BSDLIMIT 67 68/* 69 * TERMIO You have struct termio instead of struct sgttyb. 70 * This is usually the case for SYSV systems, where 71 * BSD uses sgttyb. POSIX systems should define this 72 * anyway, even though they use struct termios. 73 */ 74#define TERMIO 75 76/* 77 * SYSVREL Your machine is SYSV based (HPUX, A/UX) 78 * NOTE: don't do this if you are on a Pyramid -- tcsh is 79 * built in a BSD universe. 80 * Set SYSVREL to 1, 2, 3, or 4, depending the version of System V 81 * you are running. Or set it to 0 if you are not SYSV based 82 */ 83#define SYSVREL 0 84 85/* 86 * YPBUGS Work around Sun YP bugs that cause expansion of ~username 87 * to send command output to /dev/null 88 */ 89#undef YPBUGS 90 91/****************** local defines *********************/ 92 93#if defined(__FreeBSD__) 94#define NLS_BUGS 95#define BSD_STYLE_COLORLS 96#endif 97 98#if defined(__bsdi__) 99/* 100 * _PATH_TCSHELL if you've change the installation location (vix) 101 */ 102#include <sys/param.h> 103# ifdef _BSDI_VERSION >= 199701 104# define _PATH_TCSHELL "/bin/tcsh" 105# undef SYSMALLOC 106# define SYSMALLOC 107# else 108# define _PATH_TCSHELL "/usr/contrib/bin/tcsh" 109# endif 110 111# undef NLS 112# undef NLS_CATALOGS 113 114#elif defined(__APPLE__) 115# define SYSMALLOC 116 117#else 118# define NLS_CATALOGS 119#endif 120 121#endif /* _h_config */ 122