options.h revision 1.1.1.8
1/* 2 * Copyright (c) 1992, Brian Berliner and Jeff Polk 3 * Copyright (c) 1989-1992, Brian Berliner 4 * 5 * You may distribute under the terms of the GNU General Public License as 6 * specified in the README file that comes with the CVS 1.4 kit. 7 * 8 * This file holds (most of) the configuration tweaks that can be made to 9 * customize CVS for your site. CVS comes configured for a typical SunOS 4.x 10 * environment. The comments for each configurable item are intended to be 11 * self-explanatory. All #defines are tested first to see if an over-riding 12 * option was specified on the "make" command line. 13 * 14 * If special libraries are needed, you will have to edit the Makefile.in file 15 * or the configure script directly. Sorry. 16 */ 17 18/* 19 * For portability and heterogeneity reasons, CVS is shipped by default using 20 * my own text-file version of the ndbm database library in the src/myndbm.c 21 * file. If you want better performance and are not concerned about 22 * heterogeneous hosts accessing your modules file, turn this option off. 23 */ 24#ifndef MY_NDBM 25#define MY_NDBM 26#endif 27 28/* 29 * The "patch" program to run when using the CVS server and accepting 30 * patches across the network. Specify a full pathname if your site 31 * wants to use a particular patch. 32 * 33 * We call this "cvspatch" because of reports of a native OS/2 "patch" 34 * program that does not behave the way CVS expects. So OS/2 users 35 * should get a GNU patch and call it "cvspatch.exe". 36 */ 37#ifndef PATCH_PROGRAM 38#define PATCH_PROGRAM "cvspatch" 39#endif 40 41/* Directory used for storing temporary files, if not overridden by 42 environment variables or the -T global option. There should be little 43 need to change this (-T is a better mechanism if you need to use a 44 different directory for temporary files). */ 45#ifndef TMPDIR_DFLT 46#define TMPDIR_DFLT "c:\\temp" 47#endif 48 49/* 50 * The default editor to use, if one does not specify the "-e" option to cvs, 51 * or does not have an EDITOR environment variable. I set this to just "vi", 52 * and use the shell to find where "vi" actually is. This allows sites with 53 * /usr/bin/vi or /usr/ucb/vi to work equally well (assuming that your PATH 54 * is reasonable). 55 * 56 * The notepad program seems to be Windows NT's bare-bones text editor. 57 */ 58#ifndef EDITOR_DFLT 59#define EDITOR_DFLT "notepad" 60#endif 61 62/* 63 * The default umask to use when creating or otherwise setting file or 64 * directory permissions in the repository. Must be a value in the 65 * range of 0 through 0777. For example, a value of 002 allows group 66 * rwx access and world rx access; a value of 007 allows group rwx 67 * access but no world access. This value is overridden by the value 68 * of the CVSUMASK environment variable, which is interpreted as an 69 * octal number. 70 */ 71#ifndef UMASK_DFLT 72#define UMASK_DFLT 002 73#endif 74 75/* 76 * The cvs admin command is restricted to the members of the group 77 * CVS_ADMIN_GROUP. If this group does not exist, all users are 78 * allowed to run cvs admin. To disable the cvs admin for all users, 79 * create an empty group CVS_ADMIN_GROUP. To disable access control for 80 * cvs admin, comment out the define below. 81 * 82 * Under Windows NT and OS/2, this must not be used because it tries 83 * to include <grp.h>. 84 */ 85#ifdef CVS_ADMIN_GROUP 86/* #define CVS_ADMIN_GROUP "cvsadmin" */ 87#endif 88 89/* 90 * The Repository file holds the path to the directory within the 91 * source repository that contains the RCS ,v files for each CVS 92 * working directory. This path is either a full-path or a path 93 * relative to CVSROOT. 94 * 95 * The big advantage that I can see to having a relative path is that 96 * one can change the physical location of the master source 97 * repository, change the contents of CVS/Root files in your 98 * checked-out code, and CVS will work without problems. 99 * 100 * Therefore, RELATIVE_REPOS is now the default. In the future, this 101 * is likely to disappear entirely as a compile-time (or other) option, 102 * so if you have other software which relies on absolute pathnames, 103 * update them. 104 */ 105#define RELATIVE_REPOS 1 106 107/* 108 * When committing or importing files, you must enter a log message. 109 * Normally, you can do this either via the -m flag on the command line or an 110 * editor will be started for you. If you like to use logging templates (the 111 * rcsinfo file within the $CVSROOT/CVSROOT directory), you might want to 112 * force people to use the editor even if they specify a message with -m. 113 * Enabling FORCE_USE_EDITOR will cause the -m message to be appended to the 114 * temp file when the editor is started. 115 */ 116#ifndef FORCE_USE_EDITOR 117/* #define FORCE_USE_EDITOR */ 118#endif 119 120/* 121 * When locking the repository, some sites like to remove locks and assume 122 * the program that created them went away if the lock has existed for a long 123 * time. This used to be the default for previous versions of CVS. CVS now 124 * attempts to be much more robust, so lock files should not be left around 125 * by mistake. The new behaviour will never remove old locks (they must now 126 * be removed by hand). Enabling CVS_FUDGELOCKS will cause CVS to remove 127 * locks that are older than CVSLCKAGE seconds. 128 * Use of this option is NOT recommended. 129 */ 130#ifndef CVS_FUDGELOCKS 131/* #define CVS_FUDGELOCKS */ 132#endif 133 134/* 135 * When committing a permanent change, CVS and RCS make a log entry of 136 * who committed the change. If you are committing the change logged in 137 * as "root" (not under "su" or other root-priv giving program), CVS/RCS 138 * cannot determine who is actually making the change. 139 * 140 * As such, by default, CVS disallows changes to be committed by users 141 * logged in as "root". You can disable this option by commenting 142 * out the lines below. 143 * 144 * Under Windows NT, privileges are associated with groups, not users, 145 * so the case in which someone has logged in as root does not occur. 146 * Thus, there is no need for this hack. 147 * 148 * todo: I don't know about OS/2 yet. -kff 149 */ 150#undef CVS_BADROOT 151 152/* 153 * define this to enable the SETXID support (see FAQ 4D.13) 154 * [ We have no such thing under OS/2, so far as I know. ] 155 */ 156#undef SETXID_SUPPORT 157 158/* 159 * Under OS/2, we build the authenticated client by default. 160 */ 161#define AUTH_CLIENT_SUPPORT 1 162 163/* End of CVS configuration section */ 164 165/* 166 * Externs that are included in libc, but are used frequently enough to 167 * warrant defining here. 168 */ 169#ifndef STDC_HEADERS 170extern void exit (); 171#endif 172 173#ifdef AUTH_CLIENT_SUPPORT 174char *getpass (char *passbuf); 175#endif /* AUTH_CLIENT_SUPPORT */ 176