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 170 extern void exit (); 171 #endif 172 173 #ifdef AUTH_CLIENT_SUPPORT 174 char *getpass (char *passbuf); 175 #endif /* AUTH_CLIENT_SUPPORT */ 176