Merge branch 'vendor/TCSH'
[dragonfly.git] / contrib / tcsh-6 / config_f.h
blob1fd39210d35f3aa87b972fbf43b0273dab923d67
1 /* $Header: /p/tcsh/cvsroot/tcsh/config_f.h,v 3.42 2009/06/25 12:10:56 christos Exp $ */
2 /*
3 * config_f.h -- configure various defines for tcsh
5 * This is included by config.h.
7 * Edit this to match your particular feelings; this is set up to the
8 * way I like it.
9 */
10 /*-
11 * Copyright (c) 1980, 1991 The Regents of the University of California.
12 * All rights reserved.
14 * Redistribution and use in source and binary forms, with or without
15 * modification, are permitted provided that the following conditions
16 * are met:
17 * 1. Redistributions of source code must retain the above copyright
18 * notice, this list of conditions and the following disclaimer.
19 * 2. Redistributions in binary form must reproduce the above copyright
20 * notice, this list of conditions and the following disclaimer in the
21 * documentation and/or other materials provided with the distribution.
22 * 3. Neither the name of the University nor the names of its contributors
23 * may be used to endorse or promote products derived from this software
24 * without specific prior written permission.
26 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
27 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
28 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
29 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
30 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
31 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
32 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
33 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
34 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
35 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
36 * SUCH DAMAGE.
38 #ifndef _h_config_f
39 #define _h_config_f
42 * SHORT_STRINGS Use at least 16 bit characters instead of 8 bit chars
43 * This fixes up quoting problems and eases implementation
44 * of nls...
47 #define SHORT_STRINGS
50 * WIDE_STRINGS Represent strings using wide characters
51 * Allows proper function in multibyte encodings like UTF-8
53 #if defined (SHORT_STRINGS) && defined (NLS) && SIZEOF_WCHAR_T >= 4 && defined (HAVE_MBRTOWC) && !defined (WINNT_NATIVE) && !defined(_OSD_POSIX)
54 # define WIDE_STRINGS
55 #endif
58 * NLS_CATALOGS:Use Native Language System catalogs for
59 * international messages.
60 * Routines like catopen() are needed
61 * if you don't have <nl_types.h>, you don't want
62 * to define this.
64 #if defined (NLS) && defined (HAVE_CATGETS)
65 # define NLS_CATALOGS
66 #endif
69 * LOGINFIRST Source ~/.login before ~/.cshrc
71 #undef LOGINFIRST
74 * VIDEFAULT Make the VI mode editor the default
76 #undef VIDEFAULT
79 * KAI use "bye" command and rename "log" to "watchlog"
81 #undef KAI
84 * TESLA drops DTR on logout. Historical note:
85 * tesla.ee.cornell.edu was a vax11/780 with a develcon
86 * switch that sometimes would not hang up.
88 #undef TESLA
91 * DOTLAST put "." last in the default path, for security reasons
93 #define DOTLAST
96 * NODOT Don't put "." in the default path, for security reasons
98 #undef NODOT
101 * AUTOLOGOUT tries to determine if it should set autologout depending
102 * on the name of the tty, and environment.
103 * Does not make sense in the modern window systems!
105 #define AUTOLOGOUT
108 * SUSPENDED Newer shells say 'Suspended' instead of 'Stopped'.
109 * Define to get the same type of messages.
111 #define SUSPENDED
114 * KANJI Ignore meta-next, and the ISO character set. Should
115 * be used with SHORT_STRINGS (or WIDE_STRINGS)
118 #define KANJI
121 * DSPMBYTE add variable "dspmbyte" and display multi-byte string at
122 * only output, when "dspmbyte" is set. Should be used with
123 * KANJI
125 #if defined (SHORT_STRINGS) && !defined (WIDE_STRINGS)
126 # define DSPMBYTE
127 #endif
130 * MBYTEDEBUG when "dspmbyte" is changed, set multi-byte checktable to
131 * variable "mbytemap".
132 * (use for multi-byte table check)
134 #undef MBYTEDEBUG
137 * NEWGRP Provide a newgrp builtin.
139 #undef NEWGRP
142 * SYSMALLOC Use the system provided version of malloc and friends.
143 * This can be much slower and no memory statistics will be
144 * provided.
146 #if defined(__MACHTEN__) || defined(PURIFY) || defined(MALLOC_TRACE) || defined(_OSD_POSIX) || defined(__MVS__)
147 # define SYSMALLOC
148 #else
149 # undef SYSMALLOC
150 #endif
153 * USE_ACCESS Use access(2) rather than stat(2) when POSIX is defined.
154 * POSIX says to use stat, but stat(2) is less accurate
155 * than access(2) for determining file access.
157 #undef USE_ACCESS
160 * REMOTEHOST Try to determine the remote host that we logged in from
161 * using first getpeername, and then the utmp file. If
162 * successful, set $REMOTEHOST to the name or address of the
163 * host
165 #define REMOTEHOST
168 * COLOR_LS_F Do you want to use builtin color ls-F ?
171 #define COLOR_LS_F
174 * COLORCAT Do you want to colorful message ?
177 #undef COLORCAT
180 * FILEC support for old style file completion
182 #define FILEC
185 * RCSID This defines if we want rcs strings in the binary or not
188 #if !defined(lint) && !defined(SABER) && !defined(__CLCC__)
189 # ifndef __GNUC__
190 # define RCSID(id) static char *rcsid = (id);
191 # else
192 # define RCSID(id) static const char rcsid[] __attribute__((__used__)) = (id);
193 # endif /* !__GNUC__ */
194 #else
195 # define RCSID(id) /* Nothing */
196 #endif /* !lint && !SABER */
198 /* Consistency checks */
199 #ifdef WIDE_STRINGS
200 # if SIZEOF_WCHAR_T < 4
201 #error "wchar_t must be at least 4 bytes for WIDE_STRINGS"
202 # endif
204 # ifdef WINNT_NATIVE
205 #error "WIDE_STRINGS cannot be used together with WINNT_NATIVE"
206 # endif
208 # ifndef SHORT_STRINGS
209 #error "SHORT_STRINGS must be defined if WIDE_STRINGS is defined"
210 # endif
212 # ifndef NLS
213 #error "NLS must be defined if WIDE_STRINGS is defined"
214 # endif
216 # ifdef DSPMBYTE
217 #error "DSPMBYTE must not be defined if WIDE_STRINGS is defined"
218 # endif
219 #endif
221 #if !defined (SHORT_STRINGS) && defined (DSPMBYTE)
222 #error "SHORT_STRINGS must be defined if DSPMBYTE is defined"
223 #endif
225 #endif /* _h_config_f */