xref: /freebsd/contrib/tcsh/config_f.h (revision 9122aeeaa60ee2a1381ea935d749194b32940e7a)
1c80476e4SDavid E. O'Brien /*
2c80476e4SDavid E. O'Brien  * config_f.h -- configure various defines for tcsh
3c80476e4SDavid E. O'Brien  *
4c80476e4SDavid E. O'Brien  * This is included by config.h.
5c80476e4SDavid E. O'Brien  *
6c80476e4SDavid E. O'Brien  * Edit this to match your particular feelings; this is set up to the
7c80476e4SDavid E. O'Brien  * way I like it.
8c80476e4SDavid E. O'Brien  */
9c80476e4SDavid E. O'Brien /*-
10c80476e4SDavid E. O'Brien  * Copyright (c) 1980, 1991 The Regents of the University of California.
11c80476e4SDavid E. O'Brien  * All rights reserved.
12c80476e4SDavid E. O'Brien  *
13c80476e4SDavid E. O'Brien  * Redistribution and use in source and binary forms, with or without
14c80476e4SDavid E. O'Brien  * modification, are permitted provided that the following conditions
15c80476e4SDavid E. O'Brien  * are met:
16c80476e4SDavid E. O'Brien  * 1. Redistributions of source code must retain the above copyright
17c80476e4SDavid E. O'Brien  *    notice, this list of conditions and the following disclaimer.
18c80476e4SDavid E. O'Brien  * 2. Redistributions in binary form must reproduce the above copyright
19c80476e4SDavid E. O'Brien  *    notice, this list of conditions and the following disclaimer in the
20c80476e4SDavid E. O'Brien  *    documentation and/or other materials provided with the distribution.
2129301572SMark Peek  * 3. Neither the name of the University nor the names of its contributors
22c80476e4SDavid E. O'Brien  *    may be used to endorse or promote products derived from this software
23c80476e4SDavid E. O'Brien  *    without specific prior written permission.
24c80476e4SDavid E. O'Brien  *
25c80476e4SDavid E. O'Brien  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
26c80476e4SDavid E. O'Brien  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
27c80476e4SDavid E. O'Brien  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
28c80476e4SDavid E. O'Brien  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
29c80476e4SDavid E. O'Brien  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
30c80476e4SDavid E. O'Brien  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
31c80476e4SDavid E. O'Brien  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
32c80476e4SDavid E. O'Brien  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
33c80476e4SDavid E. O'Brien  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
34c80476e4SDavid E. O'Brien  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
35c80476e4SDavid E. O'Brien  * SUCH DAMAGE.
36c80476e4SDavid E. O'Brien  */
37c80476e4SDavid E. O'Brien #ifndef _h_config_f
38c80476e4SDavid E. O'Brien #define _h_config_f
39c80476e4SDavid E. O'Brien 
40*19d2e3deSDmitry Chagin #ifdef HAVE_FEATURES_H
41*19d2e3deSDmitry Chagin #include <features.h>		/* for __GLIBC__ */
42*19d2e3deSDmitry Chagin #endif
43*19d2e3deSDmitry Chagin 
44c80476e4SDavid E. O'Brien /*
4523338178SMark Peek  * SHORT_STRINGS Use at least 16 bit characters instead of 8 bit chars
46c80476e4SDavid E. O'Brien  * 	         This fixes up quoting problems and eases implementation
47c80476e4SDavid E. O'Brien  *	         of nls...
48c80476e4SDavid E. O'Brien  *
49c80476e4SDavid E. O'Brien  */
50c80476e4SDavid E. O'Brien #define SHORT_STRINGS
51c80476e4SDavid E. O'Brien 
52c80476e4SDavid E. O'Brien /*
5323338178SMark Peek  * WIDE_STRINGS	Represent strings using wide characters
5423338178SMark Peek  *		Allows proper function in multibyte encodings like UTF-8
5523338178SMark Peek  */
56*19d2e3deSDmitry Chagin #if defined (SHORT_STRINGS) && defined (NLS) && !defined (WINNT_NATIVE) && !defined(_OSD_POSIX) && SIZEOF_WCHAR_T > 1
5723338178SMark Peek # define WIDE_STRINGS
589ccc37e3SMark Peek # if SIZEOF_WCHAR_T < 4
599ccc37e3SMark Peek #  define UTF16_STRINGS
6023338178SMark Peek # endif
6145e5710bSMark Peek #endif
62c80476e4SDavid E. O'Brien 
63c80476e4SDavid E. O'Brien /*
64c80476e4SDavid E. O'Brien  * LOGINFIRST   Source ~/.login before ~/.cshrc
65c80476e4SDavid E. O'Brien  */
66c80476e4SDavid E. O'Brien #undef LOGINFIRST
67c80476e4SDavid E. O'Brien 
68c80476e4SDavid E. O'Brien /*
69c80476e4SDavid E. O'Brien  * VIDEFAULT    Make the VI mode editor the default
70c80476e4SDavid E. O'Brien  */
71c80476e4SDavid E. O'Brien #undef VIDEFAULT
72c80476e4SDavid E. O'Brien 
73c80476e4SDavid E. O'Brien /*
74c80476e4SDavid E. O'Brien  * KAI          use "bye" command and rename "log" to "watchlog"
75c80476e4SDavid E. O'Brien  */
76c80476e4SDavid E. O'Brien #undef KAI
77c80476e4SDavid E. O'Brien 
78c80476e4SDavid E. O'Brien /*
79c80476e4SDavid E. O'Brien  * TESLA	drops DTR on logout. Historical note:
80c80476e4SDavid E. O'Brien  *		tesla.ee.cornell.edu was a vax11/780 with a develcon
81c80476e4SDavid E. O'Brien  *		switch that sometimes would not hang up.
82c80476e4SDavid E. O'Brien  */
83c80476e4SDavid E. O'Brien #undef TESLA
84c80476e4SDavid E. O'Brien 
85c80476e4SDavid E. O'Brien /*
86c80476e4SDavid E. O'Brien  * DOTLAST      put "." last in the default path, for security reasons
87c80476e4SDavid E. O'Brien  */
88c80476e4SDavid E. O'Brien #define DOTLAST
89c80476e4SDavid E. O'Brien 
90c80476e4SDavid E. O'Brien /*
91c80476e4SDavid E. O'Brien  * NODOT	Don't put "." in the default path, for security reasons
92c80476e4SDavid E. O'Brien  */
93c80476e4SDavid E. O'Brien #undef NODOT
94c80476e4SDavid E. O'Brien 
95c80476e4SDavid E. O'Brien /*
96c80476e4SDavid E. O'Brien  * AUTOLOGOUT	tries to determine if it should set autologout depending
97c80476e4SDavid E. O'Brien  *		on the name of the tty, and environment.
98c80476e4SDavid E. O'Brien  *		Does not make sense in the modern window systems!
99c80476e4SDavid E. O'Brien  */
100c80476e4SDavid E. O'Brien #define AUTOLOGOUT
101c80476e4SDavid E. O'Brien 
102c80476e4SDavid E. O'Brien /*
103c80476e4SDavid E. O'Brien  * SUSPENDED	Newer shells say 'Suspended' instead of 'Stopped'.
104c80476e4SDavid E. O'Brien  *		Define to get the same type of messages.
105c80476e4SDavid E. O'Brien  */
106c80476e4SDavid E. O'Brien #define SUSPENDED
107c80476e4SDavid E. O'Brien 
108c80476e4SDavid E. O'Brien /*
109c80476e4SDavid E. O'Brien  * KANJI	Ignore meta-next, and the ISO character set. Should
11023338178SMark Peek  *		be used with SHORT_STRINGS (or WIDE_STRINGS)
111c80476e4SDavid E. O'Brien  *
112c80476e4SDavid E. O'Brien  */
113b2d5d167SMark Peek #define KANJI
114c80476e4SDavid E. O'Brien 
115c80476e4SDavid E. O'Brien /*
116c80476e4SDavid E. O'Brien  * DSPMBYTE	add variable "dspmbyte" and display multi-byte string at
117c80476e4SDavid E. O'Brien  *		only output, when "dspmbyte" is set. Should be used with
118c80476e4SDavid E. O'Brien  *		KANJI
119c80476e4SDavid E. O'Brien  */
12023338178SMark Peek #if defined (SHORT_STRINGS) && !defined (WIDE_STRINGS)
121b2d5d167SMark Peek # define DSPMBYTE
12223338178SMark Peek #endif
123c80476e4SDavid E. O'Brien 
124c80476e4SDavid E. O'Brien /*
125c80476e4SDavid E. O'Brien  * MBYTEDEBUG	when "dspmbyte" is changed, set multi-byte checktable to
126c80476e4SDavid E. O'Brien  *		variable "mbytemap".
127c80476e4SDavid E. O'Brien  *		(use for multi-byte table check)
128c80476e4SDavid E. O'Brien  */
129c80476e4SDavid E. O'Brien #undef MBYTEDEBUG
130c80476e4SDavid E. O'Brien 
131c80476e4SDavid E. O'Brien /*
132c80476e4SDavid E. O'Brien  * NEWGRP	Provide a newgrp builtin.
133c80476e4SDavid E. O'Brien  */
134c80476e4SDavid E. O'Brien #undef NEWGRP
135c80476e4SDavid E. O'Brien 
136c80476e4SDavid E. O'Brien /*
137c80476e4SDavid E. O'Brien  * SYSMALLOC	Use the system provided version of malloc and friends.
138c80476e4SDavid E. O'Brien  *		This can be much slower and no memory statistics will be
139c80476e4SDavid E. O'Brien  *		provided.
140c80476e4SDavid E. O'Brien  */
141*19d2e3deSDmitry Chagin #if defined(__MACHTEN__) || defined(PURIFY) || defined(MALLOC_TRACE) || defined(_OSD_POSIX) || defined(__MVS__) || defined (__CYGWIN__) || defined(__GLIBC__) || defined(__OpenBSD__) || defined(__APPLE__) || defined (__ANDROID__)
142c80476e4SDavid E. O'Brien # define SYSMALLOC
143c80476e4SDavid E. O'Brien #else
144c80476e4SDavid E. O'Brien # undef SYSMALLOC
145c80476e4SDavid E. O'Brien #endif
146c80476e4SDavid E. O'Brien 
147c80476e4SDavid E. O'Brien /*
148c80476e4SDavid E. O'Brien  * USE_ACCESS	Use access(2) rather than stat(2) when POSIX is defined.
149c80476e4SDavid E. O'Brien  *		POSIX says to use stat, but stat(2) is less accurate
150c80476e4SDavid E. O'Brien  *		than access(2) for determining file access.
151c80476e4SDavid E. O'Brien  */
152c80476e4SDavid E. O'Brien #undef USE_ACCESS
153c80476e4SDavid E. O'Brien 
154c80476e4SDavid E. O'Brien /*
155c80476e4SDavid E. O'Brien  * REMOTEHOST	Try to determine the remote host that we logged in from
156c80476e4SDavid E. O'Brien  *		using first getpeername, and then the utmp file. If
157c80476e4SDavid E. O'Brien  *		successful, set $REMOTEHOST to the name or address of the
158c80476e4SDavid E. O'Brien  *		host
159c80476e4SDavid E. O'Brien  */
160c80476e4SDavid E. O'Brien #define REMOTEHOST
161c80476e4SDavid E. O'Brien 
162c80476e4SDavid E. O'Brien /*
163c80476e4SDavid E. O'Brien  * COLOR_LS_F Do you want to use builtin color ls-F ?
164c80476e4SDavid E. O'Brien  *
165c80476e4SDavid E. O'Brien  */
166c80476e4SDavid E. O'Brien #define COLOR_LS_F
167c80476e4SDavid E. O'Brien 
168c80476e4SDavid E. O'Brien /*
169c80476e4SDavid E. O'Brien  * COLORCAT Do you want to colorful message ?
170c80476e4SDavid E. O'Brien  *
171c80476e4SDavid E. O'Brien  */
172c80476e4SDavid E. O'Brien #undef COLORCAT
173c80476e4SDavid E. O'Brien 
174c80476e4SDavid E. O'Brien /*
17529301572SMark Peek  * FILEC    support for old style file completion
17629301572SMark Peek  */
17729301572SMark Peek #define FILEC
17829301572SMark Peek 
17923338178SMark Peek /* Consistency checks */
18023338178SMark Peek #ifdef WIDE_STRINGS
18123338178SMark Peek # ifdef WINNT_NATIVE
18223338178SMark Peek     #error "WIDE_STRINGS cannot be used together with WINNT_NATIVE"
18323338178SMark Peek # endif
18423338178SMark Peek 
18523338178SMark Peek # ifndef SHORT_STRINGS
18623338178SMark Peek     #error "SHORT_STRINGS must be defined if WIDE_STRINGS is defined"
18723338178SMark Peek # endif
18823338178SMark Peek 
18923338178SMark Peek # ifndef NLS
19023338178SMark Peek     #error "NLS must be defined if WIDE_STRINGS is defined"
19123338178SMark Peek # endif
19223338178SMark Peek 
19323338178SMark Peek # ifdef DSPMBYTE
19423338178SMark Peek     #error "DSPMBYTE must not be defined if WIDE_STRINGS is defined"
19523338178SMark Peek # endif
19623338178SMark Peek #endif
19723338178SMark Peek 
19823338178SMark Peek #if !defined (SHORT_STRINGS) && defined (DSPMBYTE)
19923338178SMark Peek     #error "SHORT_STRINGS must be defined if DSPMBYTE is defined"
20023338178SMark Peek #endif
20123338178SMark Peek 
202c80476e4SDavid E. O'Brien #endif /* _h_config_f */
203