config_p.h revision 167469
1118611Snjl/* $FreeBSD: head/bin/csh/config_p.h 167469 2007-03-11 22:41:19Z mp $ */ 2118611Snjl/* 3118611Snjl * config.h -- configure various defines for tcsh 4228110Sjkim * 5118611Snjl * All source files should #include this FIRST. 6118611Snjl * 7118611Snjl * Edit this to match your system type. 8217365Sjkim */ 9245582Sjkim 10118611Snjl#ifndef _h_config 11118611Snjl#define _h_config 12217365Sjkim/****************** System dependant compilation flags ****************/ 13217365Sjkim/* 14217365Sjkim * POSIX This system supports IEEE Std 1003.1-1988 (POSIX). 15217365Sjkim */ 16217365Sjkim#define POSIX 17217365Sjkim 18217365Sjkim/* 19217365Sjkim * POSIXJOBS This system supports the optional IEEE Std 1003.1-1988 (POSIX) 20217365Sjkim * job control facilities. 21217365Sjkim */ 22217365Sjkim#define POSIXJOBS 23217365Sjkim 24217365Sjkim/* 25217365Sjkim * VFORK This machine has a vfork(). 26118611Snjl * It used to be that for job control to work, this define 27217365Sjkim * was mandatory. This is not the case any more. 28217365Sjkim * If you think you still need it, but you don't have vfork, 29217365Sjkim * define this anyway and then do #define vfork fork. 30118611Snjl * I do this anyway on a Sun because of yellow pages brain damage, 31217365Sjkim * [should not be needed under 4.1] 32217365Sjkim * and on the iris4d cause SGI's fork is sufficiently "virtual" 33217365Sjkim * that vfork isn't necessary. (Besides, SGI's vfork is weird). 34217365Sjkim * Note that some machines eg. rs6000 have a vfork, but not 35217365Sjkim * with the berkeley semantics, so we cannot use it there either. 36217365Sjkim */ 37217365Sjkim#define VFORK 38217365Sjkim 39217365Sjkim/* 40217365Sjkim * BSDJOBS You have BSD-style job control (both process groups and 41217365Sjkim * a tty that deals correctly 42217365Sjkim */ 43217365Sjkim#define BSDJOBS 44118611Snjl 45217365Sjkim/* 46217365Sjkim * BSDTIMES You have BSD-style process time stuff (like rusage) 47118611Snjl * This may or may not be true. For example, Apple Unix 48118611Snjl * (OREO) has BSDJOBS but not BSDTIMES. 49118611Snjl */ 50118611Snjl#define BSDTIMES 51118611Snjl 52118611Snjl/* 53118611Snjl * BSDLIMIT You have BSD-style resource limit stuff (getrlimit/setrlimit) 54118611Snjl */ 55118611Snjl#define BSDLIMIT 56118611Snjl 57118611Snjl/* 58118611Snjl * TERMIO You have struct termio instead of struct sgttyb. 59118611Snjl * This is usually the case for SYSV systems, where 60118611Snjl * BSD uses sgttyb. POSIX systems should define this 61234623Sjkim * anyway, even though they use struct termios. 62228110Sjkim */ 63234623Sjkim#define TERMIO 64228110Sjkim 65228110Sjkim/* 66234623Sjkim * SYSVREL Your machine is SYSV based (HPUX, A/UX) 67234623Sjkim * NOTE: don't do this if you are on a Pyramid -- tcsh is 68234623Sjkim * built in a BSD universe. 69234623Sjkim * Set SYSVREL to 1, 2, 3, or 4, depending the version of System V 70234623Sjkim * you are running. Or set it to 0 if you are not SYSV based 71234623Sjkim */ 72234623Sjkim#define SYSVREL 0 73234623Sjkim 74234623Sjkim/* 75234623Sjkim * YPBUGS Work around Sun YP bugs that cause expansion of ~username 76234623Sjkim * to send command output to /dev/null 77234623Sjkim */ 78234623Sjkim#undef YPBUGS 79118611Snjl 80118611Snjl/****************** local defines *********************/ 81234623Sjkim 82118611Snjl#if defined(__FreeBSD__) 83118611Snjl#define NLS_BUGS 84118611Snjl#define BSD_STYLE_COLORLS 85228110Sjkim/* we want to use the system malloc when we install as /bin/csh */ 86118611Snjl#define SYSMALLOC 87118611Snjl/* Use LC_MESSAGES locale category to open the message catalog */ 88118611Snjl#define MCLoadBySet NL_CAT_LOCALE 89118611Snjl#define BUFSIZE 8192 90118611Snjl#endif 91118611Snjl 92118611Snjl#if defined(__bsdi__) 93118611Snjl/* 94118611Snjl * _PATH_TCSHELL if you've change the installation location (vix) 95118611Snjl */ 96118611Snjl#include <sys/param.h> 97118611Snjl# ifdef _BSDI_VERSION >= 199701 98118611Snjl# define _PATH_TCSHELL "/bin/tcsh" 99118611Snjl# undef SYSMALLOC 100118611Snjl# define SYSMALLOC 101118611Snjl# else 102118611Snjl# define _PATH_TCSHELL "/usr/contrib/bin/tcsh" 103118611Snjl# endif 104118611Snjl 105228110Sjkim# undef NLS 106118611Snjl# undef NLS_CATALOGS 107118611Snjl 108193529Sjkim#elif defined(__APPLE__) 109193529Sjkim# define SYSMALLOC 110118611Snjl 111118611Snjl#else 112118611Snjl# define NLS_CATALOGS 113234623Sjkim#endif 114234623Sjkim 115118611Snjl#endif /* _h_config */ 116234623Sjkim