xref: /freebsd/contrib/tcsh/config/bsd4.4 (revision 2930157267fc56387bb43acf5bb441a84ff6e765)
13b6eaa7bSAndrey A. Chernov/*
23b6eaa7bSAndrey A. Chernov * config.h -- configure various defines for tcsh
33b6eaa7bSAndrey A. Chernov *
43b6eaa7bSAndrey A. Chernov * All source files should #include this FIRST.
53b6eaa7bSAndrey A. Chernov *
63b6eaa7bSAndrey A. Chernov * Edit this to match your system type.
73b6eaa7bSAndrey A. Chernov */
83b6eaa7bSAndrey A. Chernov
93b6eaa7bSAndrey A. Chernov#ifndef _h_config
103b6eaa7bSAndrey A. Chernov#define _h_config
113b6eaa7bSAndrey A. Chernov/****************** System dependant compilation flags ****************/
123b6eaa7bSAndrey A. Chernov/*
133b6eaa7bSAndrey A. Chernov * POSIX	This system supports IEEE Std 1003.1-1988 (POSIX).
143b6eaa7bSAndrey A. Chernov */
153b6eaa7bSAndrey A. Chernov#define POSIX
163b6eaa7bSAndrey A. Chernov
173b6eaa7bSAndrey A. Chernov/*
183b6eaa7bSAndrey A. Chernov * POSIXJOBS	This system supports the optional IEEE Std 1003.1-1988 (POSIX)
193b6eaa7bSAndrey A. Chernov *		job control facilities.
203b6eaa7bSAndrey A. Chernov */
213b6eaa7bSAndrey A. Chernov#define POSIXJOBS
223b6eaa7bSAndrey A. Chernov
233b6eaa7bSAndrey A. Chernov/*
243b6eaa7bSAndrey A. Chernov * POSIXSIGS	Use the POSIX signal facilities to emulate BSD signals.
253b6eaa7bSAndrey A. Chernov */
263b6eaa7bSAndrey A. Chernov#undef POSIXSIGS
273b6eaa7bSAndrey A. Chernov
283b6eaa7bSAndrey A. Chernov/*
293b6eaa7bSAndrey A. Chernov * VFORK	This machine has a vfork().
303b6eaa7bSAndrey A. Chernov *		It used to be that for job control to work, this define
313b6eaa7bSAndrey A. Chernov *		was mandatory. This is not the case any more.
323b6eaa7bSAndrey A. Chernov *		If you think you still need it, but you don't have vfork,
333b6eaa7bSAndrey A. Chernov *		define this anyway and then do #define vfork fork.
343b6eaa7bSAndrey A. Chernov *		I do this anyway on a Sun because of yellow pages brain damage,
353b6eaa7bSAndrey A. Chernov *		[should not be needed under 4.1]
363b6eaa7bSAndrey A. Chernov *		and on the iris4d cause	SGI's fork is sufficiently "virtual"
373b6eaa7bSAndrey A. Chernov *		that vfork isn't necessary.  (Besides, SGI's vfork is weird).
383b6eaa7bSAndrey A. Chernov *		Note that some machines eg. rs6000 have a vfork, but not
393b6eaa7bSAndrey A. Chernov *		with the berkeley semantics, so we cannot use it there either.
403b6eaa7bSAndrey A. Chernov */
413b6eaa7bSAndrey A. Chernov#define VFORK
423b6eaa7bSAndrey A. Chernov
433b6eaa7bSAndrey A. Chernov/*
443b6eaa7bSAndrey A. Chernov * BSDJOBS	You have BSD-style job control (both process groups and
453b6eaa7bSAndrey A. Chernov *		a tty that deals correctly
463b6eaa7bSAndrey A. Chernov */
473b6eaa7bSAndrey A. Chernov#define BSDJOBS
483b6eaa7bSAndrey A. Chernov
493b6eaa7bSAndrey A. Chernov/*
503b6eaa7bSAndrey A. Chernov * BSDSIGS	You have 4.2-style signals, rather than USG style.
513b6eaa7bSAndrey A. Chernov *		Note: POSIX systems should not define this unless they
523b6eaa7bSAndrey A. Chernov *		have sigvec() and friends (ie: 4.3BSD-RENO, HP-UX).
533b6eaa7bSAndrey A. Chernov */
543b6eaa7bSAndrey A. Chernov#define BSDSIGS
553b6eaa7bSAndrey A. Chernov
563b6eaa7bSAndrey A. Chernov/*
573b6eaa7bSAndrey A. Chernov * BSDTIMES	You have BSD-style process time stuff (like rusage)
583b6eaa7bSAndrey A. Chernov *		This may or may not be true.  For example, Apple Unix
593b6eaa7bSAndrey A. Chernov *		(OREO) has BSDJOBS and BSDSIGS but not BSDTIMES.
603b6eaa7bSAndrey A. Chernov */
613b6eaa7bSAndrey A. Chernov#define BSDTIMES
623b6eaa7bSAndrey A. Chernov
633b6eaa7bSAndrey A. Chernov/*
643b6eaa7bSAndrey A. Chernov * BSDLIMIT	You have BSD-style resource limit stuff (getrlimit/setrlimit)
653b6eaa7bSAndrey A. Chernov */
663b6eaa7bSAndrey A. Chernov#define BSDLIMIT
673b6eaa7bSAndrey A. Chernov
683b6eaa7bSAndrey A. Chernov/*
693b6eaa7bSAndrey A. Chernov * BSDNICE	Your system uses setpriority() instead of nice, to
703b6eaa7bSAndrey A. Chernov *		change a processes scheduling priority
713b6eaa7bSAndrey A. Chernov */
723b6eaa7bSAndrey A. Chernov#define BSDNICE
733b6eaa7bSAndrey A. Chernov
743b6eaa7bSAndrey A. Chernov/*
753b6eaa7bSAndrey A. Chernov * TERMIO	You have struct termio instead of struct sgttyb.
763b6eaa7bSAndrey A. Chernov * 		This is usually the case for SYSV systems, where
773b6eaa7bSAndrey A. Chernov *		BSD uses sgttyb. POSIX systems should define this
783b6eaa7bSAndrey A. Chernov *		anyway, even though they use struct termios.
793b6eaa7bSAndrey A. Chernov */
803b6eaa7bSAndrey A. Chernov#define TERMIO
813b6eaa7bSAndrey A. Chernov
823b6eaa7bSAndrey A. Chernov/*
833b6eaa7bSAndrey A. Chernov * SYSVREL	Your machine is SYSV based (HPUX, A/UX)
843b6eaa7bSAndrey A. Chernov *		NOTE: don't do this if you are on a Pyramid -- tcsh is
853b6eaa7bSAndrey A. Chernov *		built in a BSD universe.
863b6eaa7bSAndrey A. Chernov *		Set SYSVREL to 1, 2, 3, or 4, depending the version of System V
873b6eaa7bSAndrey A. Chernov *		you are running. Or set it to 0 if you are not SYSV based
883b6eaa7bSAndrey A. Chernov */
893b6eaa7bSAndrey A. Chernov#define SYSVREL	0
903b6eaa7bSAndrey A. Chernov
913b6eaa7bSAndrey A. Chernov/*
923b6eaa7bSAndrey A. Chernov * YPBUGS	Work around Sun YP bugs that cause expansion of ~username
933b6eaa7bSAndrey A. Chernov *		to send command output to /dev/null
943b6eaa7bSAndrey A. Chernov */
953b6eaa7bSAndrey A. Chernov#undef YPBUGS
963b6eaa7bSAndrey A. Chernov
973b6eaa7bSAndrey A. Chernov/*
983b6eaa7bSAndrey A. Chernov * SIGVOID	Define this if your signal handlers return void.  On older
993b6eaa7bSAndrey A. Chernov *		systems, signal returns int, but on newer ones, it returns void.
1003b6eaa7bSAndrey A. Chernov */
1013b6eaa7bSAndrey A. Chernov#define SIGVOID
1023b6eaa7bSAndrey A. Chernov
1033b6eaa7bSAndrey A. Chernov/*
1043b6eaa7bSAndrey A. Chernov * HAVEDUP2	Define this if your system supports dup2().
1053b6eaa7bSAndrey A. Chernov */
1063b6eaa7bSAndrey A. Chernov#define HAVEDUP2
1073b6eaa7bSAndrey A. Chernov
1083b6eaa7bSAndrey A. Chernov/*
1093b6eaa7bSAndrey A. Chernov * UTHOST	Does the utmp file have a host field?
1103b6eaa7bSAndrey A. Chernov */
1113b6eaa7bSAndrey A. Chernov#define UTHOST
1123b6eaa7bSAndrey A. Chernov
1133b6eaa7bSAndrey A. Chernov/*
1143b6eaa7bSAndrey A. Chernov * DIRENT	Your system has <dirent.h> instead of <sys/dir.h>
1153b6eaa7bSAndrey A. Chernov */
1163b6eaa7bSAndrey A. Chernov#define DIRENT
1173b6eaa7bSAndrey A. Chernov/****************** local defines *********************/
1183b6eaa7bSAndrey A. Chernov/****************** configurable hacks ****************/
1193b6eaa7bSAndrey A. Chernov
1203b6eaa7bSAndrey A. Chernov/* have been moved to config_f.h */
1213b6eaa7bSAndrey A. Chernov#include "config_f.h"
1223b6eaa7bSAndrey A. Chernov
1233b6eaa7bSAndrey A. Chernov#if defined(__FreeBSD__)
1243b6eaa7bSAndrey A. Chernov#define NLS_BUGS
1256767bd61SMark Peek#define BSD_STYLE_COLORLS
1263b6eaa7bSAndrey A. Chernov#endif
1273b6eaa7bSAndrey A. Chernov
1283b6eaa7bSAndrey A. Chernov#if defined(__bsdi__)
1293b6eaa7bSAndrey A. Chernov/*
1303b6eaa7bSAndrey A. Chernov * _PATH_TCSHELL      if you've change the installation location (vix)
1313b6eaa7bSAndrey A. Chernov */
13229301572SMark Peek#include <sys/param.h>
1333b6eaa7bSAndrey A. Chernov# ifdef _BSDI_VERSION >= 199701
1343b6eaa7bSAndrey A. Chernov#  define _PATH_TCSHELL "/bin/tcsh"
1353b6eaa7bSAndrey A. Chernov#  undef SYSMALLOC
1363b6eaa7bSAndrey A. Chernov#  define SYSMALLOC
1373b6eaa7bSAndrey A. Chernov# else
1383b6eaa7bSAndrey A. Chernov#  define _PATH_TCSHELL "/usr/contrib/bin/tcsh"
1393b6eaa7bSAndrey A. Chernov# endif
1403b6eaa7bSAndrey A. Chernov
1413b6eaa7bSAndrey A. Chernov# undef NLS
1423b6eaa7bSAndrey A. Chernov# undef NLS_CATALOGS
1433b6eaa7bSAndrey A. Chernov
1443b6eaa7bSAndrey A. Chernov#elif defined(__APPLE__)
1453b6eaa7bSAndrey A. Chernov# define SYSMALLOC
1463b6eaa7bSAndrey A. Chernov
1473b6eaa7bSAndrey A. Chernov#else
1483b6eaa7bSAndrey A. Chernov# define NLS_CATALOGS
1493b6eaa7bSAndrey A. Chernov#endif
1503b6eaa7bSAndrey A. Chernov
1513b6eaa7bSAndrey A. Chernov#endif /* _h_config */
152