xref: /openbsd-src/gnu/usr.bin/cvs/os2/options.h (revision 892c0aade1f7c0f3a217301a37d1119c4a91f3cd)
113571821Stholo /*
213571821Stholo  * Copyright (c) 1992, Brian Berliner and Jeff Polk
313571821Stholo  * Copyright (c) 1989-1992, Brian Berliner
413571821Stholo  *
513571821Stholo  * You may distribute under the terms of the GNU General Public License as
613571821Stholo  * specified in the README file that comes with the CVS 1.4 kit.
713571821Stholo  *
813571821Stholo  * This file holds (most of) the configuration tweaks that can be made to
913571821Stholo  * customize CVS for your site.  CVS comes configured for a typical SunOS 4.x
1013571821Stholo  * environment.  The comments for each configurable item are intended to be
1113571821Stholo  * self-explanatory.  All #defines are tested first to see if an over-riding
1213571821Stholo  * option was specified on the "make" command line.
1313571821Stholo  *
1413571821Stholo  * If special libraries are needed, you will have to edit the Makefile.in file
1513571821Stholo  * or the configure script directly.  Sorry.
1613571821Stholo  */
1713571821Stholo 
1813571821Stholo /*
1913571821Stholo  * For portability and heterogeneity reasons, CVS is shipped by default using
2013571821Stholo  * my own text-file version of the ndbm database library in the src/myndbm.c
2113571821Stholo  * file.  If you want better performance and are not concerned about
2213571821Stholo  * heterogeneous hosts accessing your modules file, turn this option off.
2313571821Stholo  */
2413571821Stholo #ifndef MY_NDBM
2513571821Stholo #define	MY_NDBM
2613571821Stholo #endif
2713571821Stholo 
2813571821Stholo /*
2913571821Stholo  * The "patch" program to run when using the CVS server and accepting
3013571821Stholo  * patches across the network.  Specify a full pathname if your site
3113571821Stholo  * wants to use a particular patch.
32c26070a5Stholo  *
33c26070a5Stholo  * We call this "cvspatch" because of reports of a native OS/2 "patch"
34c26070a5Stholo  * program that does not behave the way CVS expects.  So OS/2 users
35c26070a5Stholo  * should get a GNU patch and call it "cvspatch.exe".
3613571821Stholo  */
3713571821Stholo #ifndef PATCH_PROGRAM
38c26070a5Stholo #define PATCH_PROGRAM	"cvspatch"
3913571821Stholo #endif
4013571821Stholo 
41461cc63eStholo /* Directory used for storing temporary files, if not overridden by
42461cc63eStholo    environment variables or the -T global option.  There should be little
43461cc63eStholo    need to change this (-T is a better mechanism if you need to use a
44461cc63eStholo    different directory for temporary files).  */
4550bf276cStholo #ifndef TMPDIR_DFLT
4650bf276cStholo #define	TMPDIR_DFLT	"c:\\temp"
4750bf276cStholo #endif
4850bf276cStholo 
4950bf276cStholo /*
5013571821Stholo  * The default editor to use, if one does not specify the "-e" option to cvs,
5113571821Stholo  * or does not have an EDITOR environment variable.  I set this to just "vi",
5213571821Stholo  * and use the shell to find where "vi" actually is.  This allows sites with
5313571821Stholo  * /usr/bin/vi or /usr/ucb/vi to work equally well (assuming that your PATH
5413571821Stholo  * is reasonable).
5513571821Stholo  *
5613571821Stholo  * The notepad program seems to be Windows NT's bare-bones text editor.
5713571821Stholo  */
5813571821Stholo #ifndef EDITOR_DFLT
5913571821Stholo #define	EDITOR_DFLT	"notepad"
6013571821Stholo #endif
6113571821Stholo 
6213571821Stholo /*
6313571821Stholo  * The default umask to use when creating or otherwise setting file or
6413571821Stholo  * directory permissions in the repository.  Must be a value in the
6513571821Stholo  * range of 0 through 0777.  For example, a value of 002 allows group
6613571821Stholo  * rwx access and world rx access; a value of 007 allows group rwx
6713571821Stholo  * access but no world access.  This value is overridden by the value
6813571821Stholo  * of the CVSUMASK environment variable, which is interpreted as an
6913571821Stholo  * octal number.
7013571821Stholo  */
7113571821Stholo #ifndef UMASK_DFLT
7213571821Stholo #define	UMASK_DFLT	002
7313571821Stholo #endif
7413571821Stholo 
7513571821Stholo /*
7613571821Stholo  * The cvs admin command is restricted to the members of the group
7713571821Stholo  * CVS_ADMIN_GROUP.  If this group does not exist, all users are
7813571821Stholo  * allowed to run cvs admin.  To disable the cvs admin for all users,
7913571821Stholo  * create an empty group CVS_ADMIN_GROUP.  To disable access control for
8013571821Stholo  * cvs admin, comment out the define below.
8113571821Stholo  *
8213571821Stholo  * Under Windows NT and OS/2, this must not be used because it tries
8313571821Stholo  * to include <grp.h>.
8413571821Stholo  */
8513571821Stholo #ifdef CVS_ADMIN_GROUP
8613571821Stholo /* #define CVS_ADMIN_GROUP "cvsadmin" */
8713571821Stholo #endif
8813571821Stholo 
8913571821Stholo /*
90*892c0aadStholo  * The Repository file holds the path to the directory within the
91*892c0aadStholo  * source repository that contains the RCS ,v files for each CVS
92*892c0aadStholo  * working directory.  This path is either a full-path or a path
93*892c0aadStholo  * relative to CVSROOT.
9413571821Stholo  *
95*892c0aadStholo  * The big advantage that I can see to having a relative path is that
96*892c0aadStholo  * one can change the physical location of the master source
97*892c0aadStholo  * repository, change the contents of CVS/Root files in your
98*892c0aadStholo  * checked-out code, and CVS will work without problems.
99*892c0aadStholo  *
100*892c0aadStholo  * Therefore, RELATIVE_REPOS is now the default.  In the future, this
101*892c0aadStholo  * is likely to disappear entirely as a compile-time (or other) option,
102*892c0aadStholo  * so if you have other software which relies on absolute pathnames,
103*892c0aadStholo  * update them.
10413571821Stholo  */
105*892c0aadStholo #define RELATIVE_REPOS 1
10613571821Stholo 
10713571821Stholo /*
10813571821Stholo  * When committing or importing files, you must enter a log message.
10913571821Stholo  * Normally, you can do this either via the -m flag on the command line or an
11013571821Stholo  * editor will be started for you.  If you like to use logging templates (the
11113571821Stholo  * rcsinfo file within the $CVSROOT/CVSROOT directory), you might want to
11213571821Stholo  * force people to use the editor even if they specify a message with -m.
11313571821Stholo  * Enabling FORCE_USE_EDITOR will cause the -m message to be appended to the
11413571821Stholo  * temp file when the editor is started.
11513571821Stholo  */
11613571821Stholo #ifndef FORCE_USE_EDITOR
11713571821Stholo /* #define 	FORCE_USE_EDITOR */
11813571821Stholo #endif
11913571821Stholo 
12013571821Stholo /*
12113571821Stholo  * When locking the repository, some sites like to remove locks and assume
12213571821Stholo  * the program that created them went away if the lock has existed for a long
12313571821Stholo  * time.  This used to be the default for previous versions of CVS.  CVS now
12413571821Stholo  * attempts to be much more robust, so lock files should not be left around
12513571821Stholo  * by mistake. The new behaviour will never remove old locks (they must now
12613571821Stholo  * be removed by hand).  Enabling CVS_FUDGELOCKS will cause CVS to remove
12713571821Stholo  * locks that are older than CVSLCKAGE seconds.
12813571821Stholo  * Use of this option is NOT recommended.
12913571821Stholo  */
13013571821Stholo #ifndef CVS_FUDGELOCKS
13113571821Stholo /* #define CVS_FUDGELOCKS */
13213571821Stholo #endif
13313571821Stholo 
13413571821Stholo /*
13513571821Stholo  * When committing a permanent change, CVS and RCS make a log entry of
13613571821Stholo  * who committed the change.  If you are committing the change logged in
13713571821Stholo  * as "root" (not under "su" or other root-priv giving program), CVS/RCS
13813571821Stholo  * cannot determine who is actually making the change.
13913571821Stholo  *
14013571821Stholo  * As such, by default, CVS disallows changes to be committed by users
14113571821Stholo  * logged in as "root".  You can disable this option by commenting
14213571821Stholo  * out the lines below.
14313571821Stholo  *
14413571821Stholo  * Under Windows NT, privileges are associated with groups, not users,
14513571821Stholo  * so the case in which someone has logged in as root does not occur.
14613571821Stholo  * Thus, there is no need for this hack.
14713571821Stholo  *
14813571821Stholo  * todo: I don't know about OS/2 yet.  -kff
14913571821Stholo  */
15013571821Stholo #undef CVS_BADROOT
15113571821Stholo 
15213571821Stholo /*
15313571821Stholo  * define this to enable the SETXID support (see FAQ 4D.13)
15413571821Stholo  * [ We have no such thing under OS/2, so far as I know. ]
15513571821Stholo  */
15613571821Stholo #undef SETXID_SUPPORT
15713571821Stholo 
15813571821Stholo /*
15913571821Stholo  * Under OS/2, we build the authenticated client by default.
16013571821Stholo  */
16113571821Stholo #define AUTH_CLIENT_SUPPORT 1
16213571821Stholo 
16313571821Stholo /* End of CVS configuration section */
16413571821Stholo 
16513571821Stholo /*
16613571821Stholo  * Externs that are included in libc, but are used frequently enough to
16713571821Stholo  * warrant defining here.
16813571821Stholo  */
16913571821Stholo #ifndef STDC_HEADERS
17013571821Stholo extern void exit ();
17113571821Stholo #endif
17213571821Stholo 
17313571821Stholo #ifdef AUTH_CLIENT_SUPPORT
17413571821Stholo char *getpass (char *passbuf);
17513571821Stholo #endif /* AUTH_CLIENT_SUPPORT */
176