config_f.h revision 145479
1/* $Header: /src/pub/tcsh/config_f.h,v 3.32 2005/03/04 13:46:04 christos Exp $ */ 2/* 3 * config_f.h -- configure various defines for tcsh 4 * 5 * This is included by config.h. 6 * 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. 13 * 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. 25 * 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. 37 */ 38#ifndef _h_config_f 39#define _h_config_f 40 41/* 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... 45 * 46 */ 47#define SHORT_STRINGS 48 49/* 50 * WIDE_STRINGS Represent strings using wide characters 51 * Allows proper function in multibyte encodings like UTF-8 52 */ 53#if defined (SHORT_STRINGS) && SIZEOF_WCHAR_T >= 4 && !defined (WINNT_NATIVE) && !defined(_OSD_POSIX) 54# define WIDE_STRINGS 55#endif 56 57/* 58 * NLS: Use Native Language System 59 * Routines like setlocale() are needed 60 * if you don't have <locale.h>, you don't want 61 * to define this. 62 */ 63#define NLS 64 65/* 66 * NLS_CATALOGS:Use Native Language System catalogs for 67 * international messages. 68 * Routines like catopen() are needed 69 * if you don't have <nl_types.h>, you don't want 70 * to define this. 71 */ 72#undef NLS_CATALOGS 73 74/* 75 * LOGINFIRST Source ~/.login before ~/.cshrc 76 */ 77#undef LOGINFIRST 78 79/* 80 * VIDEFAULT Make the VI mode editor the default 81 */ 82#undef VIDEFAULT 83 84/* 85 * KAI use "bye" command and rename "log" to "watchlog" 86 */ 87#undef KAI 88 89/* 90 * TESLA drops DTR on logout. Historical note: 91 * tesla.ee.cornell.edu was a vax11/780 with a develcon 92 * switch that sometimes would not hang up. 93 */ 94#undef TESLA 95 96/* 97 * DOTLAST put "." last in the default path, for security reasons 98 */ 99#define DOTLAST 100 101/* 102 * NODOT Don't put "." in the default path, for security reasons 103 */ 104#undef NODOT 105 106/* 107 * AUTOLOGOUT tries to determine if it should set autologout depending 108 * on the name of the tty, and environment. 109 * Does not make sense in the modern window systems! 110 */ 111#define AUTOLOGOUT 112 113/* 114 * SUSPENDED Newer shells say 'Suspended' instead of 'Stopped'. 115 * Define to get the same type of messages. 116 */ 117#define SUSPENDED 118 119/* 120 * KANJI Ignore meta-next, and the ISO character set. Should 121 * be used with SHORT_STRINGS (or WIDE_STRINGS) 122 * 123 */ 124#define KANJI 125 126/* 127 * DSPMBYTE add variable "dspmbyte" and display multi-byte string at 128 * only output, when "dspmbyte" is set. Should be used with 129 * KANJI 130 */ 131#if defined (SHORT_STRINGS) && !defined (WIDE_STRINGS) 132# define DSPMBYTE 133#endif 134 135/* 136 * MBYTEDEBUG when "dspmbyte" is changed, set multi-byte checktable to 137 * variable "mbytemap". 138 * (use for multi-byte table check) 139 */ 140#undef MBYTEDEBUG 141 142/* 143 * NEWGRP Provide a newgrp builtin. 144 */ 145#undef NEWGRP 146 147/* 148 * SYSMALLOC Use the system provided version of malloc and friends. 149 * This can be much slower and no memory statistics will be 150 * provided. 151 */ 152#if defined(__MACHTEN__) || defined(PURIFY) || defined(MALLOC_TRACE) || defined(_OSD_POSIX) || defined(__MVS__) 153# define SYSMALLOC 154#else 155# undef SYSMALLOC 156#endif 157 158/* 159 * USE_ACCESS Use access(2) rather than stat(2) when POSIX is defined. 160 * POSIX says to use stat, but stat(2) is less accurate 161 * than access(2) for determining file access. 162 */ 163#undef USE_ACCESS 164 165/* 166 * REMOTEHOST Try to determine the remote host that we logged in from 167 * using first getpeername, and then the utmp file. If 168 * successful, set $REMOTEHOST to the name or address of the 169 * host 170 */ 171#define REMOTEHOST 172 173/* 174 * COLOR_LS_F Do you want to use builtin color ls-F ? 175 * 176 */ 177#define COLOR_LS_F 178 179/* 180 * COLORCAT Do you want to colorful message ? 181 * 182 */ 183#undef COLORCAT 184 185/* 186 * FILEC support for old style file completion 187 */ 188#define FILEC 189 190/* 191 * RCSID This defines if we want rcs strings in the binary or not 192 * 193 */ 194#if !defined(lint) && !defined(SABER) && !defined(__CLCC__) 195# ifndef __GNUC__ 196# define RCSID(id) static char *rcsid = (id); 197# else 198# define RCSID(id) static char *rcsid(const char *a) { return rcsid(a = id); } 199# endif /* !__GNUC__ */ 200#else 201# define RCSID(id) /* Nothing */ 202#endif /* !lint && !SABER */ 203 204/* Consistency checks */ 205#ifdef WIDE_STRINGS 206# if SIZEOF_WCHAR_T < 4 207 #error "wchar_t must be at least 4 bytes for WIDE_STRINGS" 208# endif 209 210# ifdef WINNT_NATIVE 211 #error "WIDE_STRINGS cannot be used together with WINNT_NATIVE" 212# endif 213 214# ifndef SHORT_STRINGS 215 #error "SHORT_STRINGS must be defined if WIDE_STRINGS is defined" 216# endif 217 218# ifndef NLS 219 #error "NLS must be defined if WIDE_STRINGS is defined" 220# endif 221 222# ifdef DSPMBYTE 223 #error "DSPMBYTE must not be defined if WIDE_STRINGS is defined" 224# endif 225#endif 226 227#if !defined (SHORT_STRINGS) && defined (DSPMBYTE) 228 #error "SHORT_STRINGS must be defined if DSPMBYTE is defined" 229#endif 230 231#endif /* _h_config_f */ 232