xref: /openbsd-src/gnu/usr.bin/cvs/INSTALL (revision 43c1707e6f6829177cb1974ee6615ce6c1307689)
11e72d8d2SderaadtFirst, read the README file.  If you're still happy...
21e72d8d2Sderaadt
32286d8edStholoFirst you need to obtain and install the CVS executables.  If you got
42286d8edStholoa distribution which contains executables, consult the installation
52286d8edStholoinstructions for that distribution.  If you got source code, do not
62286d8edStholopanic.  On many platforms building CVS from source code is a
72286d8edStholostraightforward process requiring no programming knowledge.  See the
82286d8edStholosection BUILDING FROM SOURCE CODE at the end of this file, which
92286d8edStholoincludes a list of platforms which have been tested.
102286d8edStholo
112286d8edStholo-------------------------------------------------------------------------------
122286d8edStholo
132286d8edStholo1) Take a look at the CVS documentation, if desired.  For most
142286d8edStholo   purposes you want doc/cvs.texinfo, also known as _Version Management
152286d8edStholo   with CVS_ by Per Cederqvist et al.  Looking at it might be as simple
162286d8edStholo   as "info cvs" but this will depend on your installation; see README
172286d8edStholo   for more details.
182286d8edStholo
192286d8edStholo   See what CVS can do for you, and if it fits your environment (or can
202286d8edStholo   possibly be made to fit your environment).  If things look good,
212286d8edStholo   continue on.  Alternately, just give CVS a try first then figure out
222286d8edStholo   what it is good for.
232286d8edStholo
242286d8edStholo2) Set the CVSROOT environment variable to where you want to put your
252286d8edStholo   source repository.  See the "Setting up the repository" section of
262286d8edStholo   the Cederqvist manual for details, but the quick summary is just to
272286d8edStholo   pick some directory.  We'll use /src/master as an example.  For
282286d8edStholo   users of a POSIX shell (sh/bash/ksh) on unix, the following
292286d8edStholo   commands can be placed in user's ~/.profile, ~/.bash_profile file;
302286d8edStholo   or in the site-wide /etc/profile:
312286d8edStholo
322286d8edStholo       CVSROOT=/src/master; export CVSROOT
332286d8edStholo
342286d8edStholo   For C shell users on unix place the following commands in the
352286d8edStholo   user's ~/.cshrc, ~/.login, or /etc/chsrc file:
362286d8edStholo
372286d8edStholo       setenv CVSROOT /src/master
382286d8edStholo
392286d8edStholo   For Windows users, supposing the repository will be in
402286d8edStholo   d:\src\master, place the following line in c:\autoexec.bat.  On
412286d8edStholo   Windows 95, autoexec.bat might not already exist.  In that case,
422286d8edStholo   just create a new file containing the following line.
432286d8edStholo
442286d8edStholo       set CVSROOT=:local:d:\src\master
452286d8edStholo
462286d8edStholo   If these environment variables are not already set in your current
472286d8edStholo   shell, set them now by typing the above line at the command prompt
482286d8edStholo   (or source the login script you just edited).
492286d8edStholo   The instructions for the remaining steps assume that you have set
502286d8edStholo   the CVSROOT environment variable.
512286d8edStholo
522286d8edStholo3) Create the master source repository.  Again, the details are in
532286d8edStholo   the "Setting up the repository" section of cvs.texinfo; the
542286d8edStholo   one-line summary is:
552286d8edStholo
562286d8edStholo       $ cvs init
572286d8edStholo
582286d8edStholo   In this and subsequent examples we use "$" to indicate the command
592286d8edStholo   prompt; do not type the "$".
602286d8edStholo
612286d8edStholo4) It might be a good idea to jump right in and put some sources or
622286d8edStholo   documents directly under CVS control.  From within the top-level
632286d8edStholo   directory of your source tree, run the following commands:
642286d8edStholo
652286d8edStholo       $ cvs import -m "test distribution" ccvs CVS_DIST CVS-TEST
662286d8edStholo
672286d8edStholo   (Those last three items are, respectively, a repository location, a
682286d8edStholo   "vendor tag", and a "release tag".  You don't need to understand
692286d8edStholo   them yet, but read the section "Starting new projects" in the
702286d8edStholo   Cederqvist manual for details).
712286d8edStholo
722286d8edStholo5) Having done step 4, one should be able to checkout a fresh copy of the
732286d8edStholo   sources you just imported and hack away at the sources with the
742286d8edStholo   following command:
752286d8edStholo
762286d8edStholo      $ cd
772286d8edStholo      $ cvs checkout ccvs
782286d8edStholo
792286d8edStholo   This will make the directory "ccvs" in your current directory and
802286d8edStholo   populate it with the appropriate files and directories.
812286d8edStholo
822286d8edStholo6) You may wish to customize the various administrative files, in particular
832286d8edStholo   modules.  See the Cederqvist manual for details.
842286d8edStholo
852286d8edStholo7) Read the NEWS file to see what's new.
862286d8edStholo
872286d8edStholo8) Hack away.
882286d8edStholo
892286d8edStholo-------------------------------------------------------------------------------
902286d8edStholo
912286d8edStholoBUILDING FROM SOURCE CODE
922286d8edStholo
932286d8edStholoTested platforms
942286d8edStholo
951e72d8d2SderaadtCVS has been tested on the following platforms.  The most recent
961e72d8d2Sderaadtversion of CVS reported to have been tested is indicated, but more
971e72d8d2Sderaadtrecent versions of CVS probably will work too.  Please send updates to
982286d8edStholothis list to bug-cvs@gnu.org (doing so in the form of a diff
992286d8edStholoto this file, or at least exact suggested text, is encouraged).
1002286d8edStholo"tested" means, at a minimum, that CVS compiles and appears to work on
1012286d8edStholosimple (manual) testing.  In many cases it also means "make check"
1022286d8edStholoand/or "make remotecheck" passes, but we don't try to list the
1032286d8edStholoplatforms for which that is true.
1041e72d8d2Sderaadt
1051e72d8d2SderaadtAlpha:
1061e72d8d2Sderaadt	DEC Alpha running OSF/1 version 1.3 using cc (about 1.4A2)
10750bf276cStholo	DEC Alpha running OSF/1 version 2.0 (1.8)
1081e72d8d2Sderaadt	DEC Alpha running OSF/1 version 2.1 (about 1.4A2)
1091e72d8d2Sderaadt	DEC Alpha running OSF/1 version 3.0 (1.5.95) (footnote 7)
110461cc63eStholo	DEC Alpha running OSF/1 version 3.2 (1.9)
111c71bc7e2Stholo	Alpha running alpha-dec-osf4.0 (1.10)
1122286d8edStholo	DEC Alpha running Digital UNIX v4.0C using gcc 2.7.2.2 (1.9.14)
11350bf276cStholo	DEC Alpha running VMS 6.2 (1.8.85 client-only)
114c71bc7e2Stholo	Alpha running NetBSD 1.2E (1.10)
115461cc63eStholoCray:
116780d15dfStholo	J90 (CVS 970215 snapshot)
117780d15dfStholo	T3E (CVS 970215 snapshot)
1181e72d8d2SderaadtHPPA:
1191e72d8d2Sderaadt	HP 9000/710 running HP-UX 8.07A using gcc (about 1.4A2)
12050bf276cStholo	HPPA running HP-UX 9 (1.8)
1211e72d8d2Sderaadt        HPPA 1.1 running HP-UX A.09.03 (1.5.95) (footnote 8)
122c26070a5Stholo        HPPA 1.1 running HP-UX A.09.04 (1.7.1)
123b2346922Stholo	HPPA running HP-UX 9.05 (1.9)
1242286d8edStholo	HPPA running HP-UX 10.01 (1.7)
125e77048c1Stholo	HPPA running HP-UX 10.20 (1.10.7)
12650bf276cStholo	NextSTEP 3.3 (1.7)
1271e72d8d2Sderaadti386 family:
12813571821Stholo	Solaris 2.4 using gcc (about 1.4A2)
129c71bc7e2Stholo	Solaris 2.6 (1.9)
13013571821Stholo	UnixWare v1.1.1 using gcc (about 1.4A2)
13150bf276cStholo	Unixware 2.1 (1.8.86)
132b2346922Stholo	Unixware 7 (1.9.29)
13350bf276cStholo	ISC 4.0.1 (1.8.87)
13450bf276cStholo	Linux (kernel 1.2.x) (1.8.86)
135c71bc7e2Stholo	Linux (kernel 2.0.x, RedHat 4.2) (1.10)
136c71bc7e2Stholo	Linux (kernel 2.0.x, RedHat 5.x) (1.10)
137*43c1707eStholo	Linux (kernel 2.2.x, RedHat 6.x) (1.10.8)
138*43c1707eStholo	Linux (kernel 2.2.x, RedHat 7.x) (1.11)
139e77048c1Stholo	BSDI 4.0 (1.10.7)
140461cc63eStholo	FreeBSD 2.1.5-stable (1.8.87)
14150bf276cStholo	NextSTEP 3.3 (1.7)
14250bf276cStholo	SCO Unix 3.2.4.2, gcc 2.7.2 (1.8.87) (footnote 4)
143c71bc7e2Stholo	SCO OpenServer 5.0.5 (1.10.2)
144c71bc7e2Stholo	Sequent DYNIX/ptx4.0 (1.10 or so) (remove -linet)
1452286d8edStholo	Sequent Dynix/PTX 4.1.4 (1.9.20 or so + patches)
14613571821Stholo	Lynx 2.3.0 080695 (1.6.86) (footnote 9)
14750bf276cStholo	Windows NT 3.51 (1.8.86 client; 1.8.3 local)
1482286d8edStholo	Windows NT 3.51 service pack 4 (1.9)
1492286d8edStholo	Windows NT 3.51 service pack 5 (1.9) -- DOES NOT WORK (footnote 11)
150780d15dfStholo	Windows NT 4.0 (1.9 client and local)
151*43c1707eStholo	Windows NT 4.0 (1.11 client and local - build & test, but no test suite)
1522286d8edStholo	Windows 95 (1.9 client and local)
1532286d8edStholo	QNX (1.9.1 + patches for strippath() and va_list)
154780d15dfStholo	OS/2 Version 3 using IBM C/C++ Tools 2.01 (1.8.86 + patches, client)
1555e617892Stholo	OS/2 Version 3 using EMX 0.9c (1.9.22, client)
1562286d8edStholo	OS/2 Version 3 using Watcom version ? (? - has this been tested?)
1571e72d8d2Sderaadtm68k:
15850bf276cStholo	Sun 3 running SunOS 4.1.1_U1 w/ bundled K&R /usr/5bin/cc (1.8.86+)
159461cc63eStholo	NextSTEP 3.3p1 (1.8.87)
16013571821Stholo	Lynx 2.3.0 062695 (1.6.86) (footnote 9)
161c71bc7e2Stholo	NetBSD/mac68k (1.9.28)
1621e72d8d2Sderaadtm88k:
1631e72d8d2Sderaadt	Data General AViiON running dgux 5.4R2.10 (1.5)
164c26070a5Stholo	Data General AViiON running dgux 5.4R3.10 (1.7.1)
1651e72d8d2Sderaadt	Harris Nighthawk 5800 running CX/UX 7.1 (1.5) (footnote 6)
1661e72d8d2SderaadtMIPS:
1671e72d8d2Sderaadt	DECstation running Ultrix 4.2a (1.4.90)
168c71bc7e2Stholo	DECstation running Ultrix 4.3 (1.10)
1691e72d8d2Sderaadt	SGI running Irix 4.0.5H using gcc and cc (about 1.4A2) (footnote 2)
170c71bc7e2Stholo	SGI running Irix 5.3 (1.10)
1712286d8edStholo	SGI running Irix 6.2 using SGI MIPSpro 6.2 and beta 7.2 compilers (1.9)
1722770ece5Stholo	SGI running Irix-6.2 (1.9.8)
173c71bc7e2Stholo	SGI running IRIX 6.4 (1.10)
174e77048c1Stholo	SGI running IRIX 6.5 (1.10.7)
17513571821Stholo	Siemens-Nixdorf RM600 running SINIX-Y (1.6)
1761e72d8d2SderaadtPowerPC or RS/6000:
17713571821Stholo	IBM RS/6000 running AIX 3.1 using gcc and cc (1.6.86)
17850bf276cStholo	IBM RS/6000 running AIX 3.2.5 (1.8)
179b2346922Stholo	IBM RS/6000 running AIX 4.1 (1.9)
180e77048c1Stholo	IBM RS/6000 running AIX 4.3 (1.10.7)
18113571821Stholo	Lynx 2.3.1 120495 (1.6.86) (footnote 9)
1822286d8edStholo	Lynx 2.5 (1.9) (footnote 10)
183892c0aadStholo	MkLinux DR3 GENERIC #6 (1.10.5.1) (presumably LinuxPPC too)
1841e72d8d2SderaadtSPARC:
185c71bc7e2Stholo	Sun SPARC running SunOS 4.1.x (1.10)
1861e72d8d2Sderaadt	Sun SPARCstation 10 running Solaris 2.3 using gcc and cc (about 1.4A2)
1871e72d8d2Sderaadt	Sun SPARCstation running Solaris 2.4 using gcc and cc (about 1.5.91)
18850bf276cStholo	Sun SPARC running Solaris 2.5 (1.8.87)
1892286d8edStholo	Sun SPARC running Solaris 2.5.1 using gcc 2.7.2.2 (1.9.14)
190e77048c1Stholo	Sun SPARC running Solaris 2.6 (1.10.7)
191c71bc7e2Stholo	Sun UltraSPARC running Solaris 2.6 using gcc 2.8.1 (1.10)
19250bf276cStholo	NextSTEP 3.3 (1.7)
1932286d8edStholo	Sun SPARC running Linux 2.0.17, gcc 2.7.2 (1.8.87)
194461cc63eStholoVAX:
195461cc63eStholo	VAX running VMS 6.2 (1.9+patches, client-only)
196461cc63eStholo	  (see README.VMS for information on necessary hacks).
1971e72d8d2Sderaadt
1981e72d8d2Sderaadt(footnote 2)
1991e72d8d2Sderaadt	Some Irix 4.0 systems may core dump in malloc while running
2001e72d8d2Sderaadt	CVS.  We believe this is a bug in the Irix malloc.  You can
2011e72d8d2Sderaadt	workaround this bug by linking with "-lmalloc" if necessary.
2021e72d8d2Sderaadt	(about 1.4A2).
2031e72d8d2Sderaadt
2041e72d8d2Sderaadt(footnote 4) Comment out the include of sys/time.h in src/server.c. (1.4.93)
2051e72d8d2Sderaadt	You also may have to make sure TIME_WITH_SYS_TIME is undef'ed.
2061e72d8d2Sderaadt
2071e72d8d2Sderaadt(footnote 6) Build in ucb universe with COFF compiler tools.  Put
2081e72d8d2Sderaadt	/usr/local/bin first in PATH while doing a configure, make
2091e72d8d2Sderaadt	and install of GNU diffutils-2.7, rcs-5.7, then cvs-1.5.
2101e72d8d2Sderaadt
2111e72d8d2Sderaadt(footnote 7) Manoj Srivastava <srivasta@pilgrim.umass.edu> reports
2121e72d8d2Sderaadt        success with this configure command:
2131e72d8d2Sderaadt  CC=cc CFLAGS='-O2 -Olimit 2000 -std1' ./configure --verbose alpha-dec-osf
2141e72d8d2Sderaadt
2151e72d8d2Sderaadt(footnote 8) Manoj Srivastava <srivasta@pilgrim.umass.edu> reports
2161e72d8d2Sderaadt        success with this configure command:
2171e72d8d2Sderaadt  CC=cc CFLAGS='+O2 -Aa -D_HPUX_SOURCE' ./configure --verbose hppa1.1-hp-hpux
2181e72d8d2Sderaadt
21913571821Stholo(footnote 9)
22013571821Stholo    Had to configure with ./configure --host=<arch>-lynx.
22113571821Stholo
22213571821Stholo    In src/cvs.h, protected the waitpid prototype with ifdef _POSIX_SOURCE.
22313571821Stholo    (I might try building with gcc -mposix -D_POSIX_SOURCE.)
22413571821Stholo
22513571821Stholo    LynxOS has <dirent.h>, but you don't want to use it.
22613571821Stholo    You want to use <sys/dir.h> instead.
22713571821Stholo    So after running configure I had to undef HAVE_DIRENT_H and
22813571821Stholo    define HAVE_SYS_DIR_H.
22913571821Stholo
2302286d8edStholo(footnote 10)
2312286d8edStholo    Had to compile with "make LIBS=-lbsd" (to get gethostbyname
2322286d8edStholo    and getservbyname).
2332286d8edStholo
2342286d8edStholo(footnote 11)
2352286d8edStholo    when I do a `cvs init' I get this message:
2362286d8edStholo      ci: 'RCS/loginfo,v' is not a regular file
2372286d8edStholo      ci:  RCS/loginfo,v: Invalid argument
2382286d8edStholo      cvs [init aborted]: failed to checkin n:/safe/CVSROOT/loginfo
2392286d8edStholo
2401e72d8d2Sderaadt-------------------------------------------------------------------------------
2411e72d8d2Sderaadt
2422286d8edStholoBuilding from source code under Unix:
2431e72d8d2Sderaadt
2441e72d8d2Sderaadt1)  Run "configure":
2451e72d8d2Sderaadt
2461e72d8d2Sderaadt	$ ./configure
2471e72d8d2Sderaadt
2481e72d8d2Sderaadt    You can specify an alternate destination to override the default with
2491e72d8d2Sderaadt    the --prefix option:
2501e72d8d2Sderaadt
2511e72d8d2Sderaadt	$ ./configure --prefix=/usr/local/gnu
2521e72d8d2Sderaadt
2531e72d8d2Sderaadt    or some path that is more appropriate for your site.  The default prefix
2541e72d8d2Sderaadt    value is "/usr/local", with binaries in sub-directory "bin", manual
2551e72d8d2Sderaadt    pages in sub-directory "man", and libraries in sub-directory "lib".
2561e72d8d2Sderaadt
257461cc63eStholo    A normal build of CVS will create an executable which supports
258461cc63eStholo    local, server, or client CVS (if you don't know the difference,
259461cc63eStholo    it is described in the Repository chapter of doc/cvs.texinfo).  If
260461cc63eStholo    you do not intend to use client or server CVS, you may want to
261461cc63eStholo    prevent these features from being included in the executable you
262461cc63eStholo    build. You can do this with the --disable-client and
263461cc63eStholo    --disable-server options:
264461cc63eStholo
265461cc63eStholo	$ ./configure --disable-client --disable-server
266461cc63eStholo
267461cc63eStholo    Typically this can reduce the size of the executable by around 30%.
268461cc63eStholo
2692286d8edStholo    Unlike previous versions of CVS, you do not need to install RCS
2702286d8edStholo    or GNU diff.
2711e72d8d2Sderaadt
2721e72d8d2Sderaadt    NOTE: The configure program will cache the results of the previous
2731e72d8d2Sderaadt    configure execution.  If you need to re-run configure from scratch, you
2741e72d8d2Sderaadt    may need to run "make distclean" first to remove the cached
2751e72d8d2Sderaadt    configuration information.
2761e72d8d2Sderaadt
27713571821Stholo    If you are using gcc and are planning to modify CVS, you may want to
278c26070a5Stholo    configure with -Wall; see the file HACKING for details.
27913571821Stholo
28050bf276cStholo    If you have Kerberos 4 installed, you can specify the location of
28150bf276cStholo    the header files and libraries using the --with-krb4=DIR option.
28250bf276cStholo    DIR should be a directory with subdirectories include and lib
28350bf276cStholo    holding the Kerberos 4 header files and libraries, respectively.
28450bf276cStholo    The default value is /usr/kerberos.
28550bf276cStholo
28650bf276cStholo    If you want to enable support for encryption over Kerberos, use
28750bf276cStholo    the --enable-encryption option.  This option is disabled by
28850bf276cStholo    default.
28950bf276cStholo
290*43c1707eStholo    If you want to disable automatic dependency tracking in the makefiles,
291*43c1707eStholo    use the '--disable-dependency-tracking' option:
292*43c1707eStholo
293*43c1707eStholo	$ ./configure --disable-dependency-tracking
294*43c1707eStholo
295*43c1707eStholo    This avoids problems on some platforms.  See the note at the end of this
296*43c1707eStholo    file on BSD.
297*43c1707eStholo
29813571821Stholo    Try './configure --help' for further information on its usage.
29913571821Stholo
3001e72d8d2Sderaadt    NOTE ON CVS's USE OF NDBM:
3011e72d8d2Sderaadt
3021e72d8d2Sderaadt	By default, CVS uses some built-in ndbm emulation code to allow
3031e72d8d2Sderaadt	CVS to work in a heterogeneous environment.  However, if you have
3041e72d8d2Sderaadt	a very large modules database, this may not work well.  You will
3051e72d8d2Sderaadt	need to edit src/options.h to turn off the MY_NDBM #define and
3061e72d8d2Sderaadt	re-run configure.  If you do this, the following comments apply.
3071e72d8d2Sderaadt	If not, you may safely skip these comments.
3081e72d8d2Sderaadt
3091e72d8d2Sderaadt	If you configure CVS to use the real ndbm(3) libraries and
3101e72d8d2Sderaadt	you do not have them installed in a "normal" place, you will
3111e72d8d2Sderaadt	probably want to get the GNU version of ndbm (gdbm) and install
3121e72d8d2Sderaadt	that before running the CVS configure script.  Be aware that the
3131e72d8d2Sderaadt	GDBM 1.5 release does NOT install the <ndbm.h> header file included
3141e72d8d2Sderaadt	with the release automatically.  You may have to install it by hand.
3151e72d8d2Sderaadt
3161e72d8d2Sderaadt	If you configure CVS to use the ndbm(3) libraries, you cannot
3171e72d8d2Sderaadt	compile CVS with GNU cc (gcc) on Sun-4 SPARC systems.  However, gcc
3181e72d8d2Sderaadt	2.0 may have fixed this limitation if -fpcc-struct-return is
3191e72d8d2Sderaadt	defined.  When using gcc on other systems to compile CVS, you *may*
3201e72d8d2Sderaadt	need to specify the -fpcc-struct-return option to gcc (you will
3211e72d8d2Sderaadt	*know* you have to if "cvs checkout" core dumps in some ndbm
3221e72d8d2Sderaadt	function).  You can do this as follows:
3231e72d8d2Sderaadt
3241e72d8d2Sderaadt	    $ CC='gcc -fpcc-struct-return' ./configure
3251e72d8d2Sderaadt
3261e72d8d2Sderaadt	for sh, bash, and ksh users and:
3271e72d8d2Sderaadt
3281e72d8d2Sderaadt	    % setenv CC 'gcc -fpcc-struct-return'
3291e72d8d2Sderaadt	    % ./configure
3301e72d8d2Sderaadt
3311e72d8d2Sderaadt	for csh and tcsh users.
3321e72d8d2Sderaadt
3331e72d8d2Sderaadt    END OF NOTE FOR NDBM GUNK.
3341e72d8d2Sderaadt
3352286d8edStholo2)  Edit src/options.h.  The defaults should be reasonable, and in fact
3362286d8edStholo    if you are lazy you can safely skip this step.
3371e72d8d2Sderaadt
3381e72d8d2Sderaadt3)  Try to build it:
3391e72d8d2Sderaadt
3401e72d8d2Sderaadt	$ make
3411e72d8d2Sderaadt
34213571821Stholo    This will (hopefully) make the needed CVS binaries within the
34313571821Stholo    "src" directory.  If something fails for your system, and you want
34413571821Stholo    to submit a bug report, you may wish to include your
34513571821Stholo    "config.status" file, your host type, operating system and
34613571821Stholo    compiler information, make output, and anything else you think
34713571821Stholo    will be helpful.
34813571821Stholo
34913571821Stholo3a)  Run the regression tests (optional).
35013571821Stholo
35113571821Stholo    You may also wish to validate the correctness of the new binary by
35250bf276cStholo    running the regression tests.  If they succeed, that is nice to
35350bf276cStholo    know.  However, if they fail, it doesn't tell you much.  Often it
35450bf276cStholo    will just be a problem with running the tests on your machine,
35550bf276cStholo    rather than a problem with CVS.  Unless you will have the time to
35650bf276cStholo    determine which of the two it is in case of failure, you might
35750bf276cStholo    want to save yourself the time and just not run the tests.
35813571821Stholo
35950bf276cStholo    If you want to run the tests, see the file TESTS for more information.
3601e72d8d2Sderaadt
3611e72d8d2Sderaadt4)  Install the binaries/documentation:
3621e72d8d2Sderaadt
3631e72d8d2Sderaadt	$ make install
3641e72d8d2Sderaadt
3651e72d8d2Sderaadt    Depending on your installation's configuration, you may need to be
3661e72d8d2Sderaadt    root to do this.
3671e72d8d2Sderaadt
3681e72d8d2Sderaadt-------------------------------------------------------------------------------
3691e72d8d2Sderaadt
37013571821StholoDetailed information about your interaction with "configure":
3711e72d8d2Sderaadt
3721e72d8d2SderaadtThe "configure" script and its interaction with its options and the
37313571821Stholoenvironment is described here.  For more detailed documentation about
37413571821Stholo"configure", please refer to the GNU Autoconf documentation.
3751e72d8d2Sderaadt
3761e72d8d2SderaadtSupported options are:
37713571821Stholo
3781e72d8d2Sderaadt	--srcdir=DIR		Useful for compiling on many different
3791e72d8d2Sderaadt				machines sharing one source tree.
3801e72d8d2Sderaadt	--prefix=DIR		The root of where to install the
3811e72d8d2Sderaadt				various pieces of CVS (/usr/local).
3821e72d8d2Sderaadt	--exec_prefix=DIR	If you want executables in a
3831e72d8d2Sderaadt				host-dependent place and shared
3841e72d8d2Sderaadt				things in a host-independent place.
3851e72d8d2Sderaadt
3861e72d8d2SderaadtThe following environment variables override configure's default
3871e72d8d2Sderaadtbehaviour:
38813571821Stholo
3891e72d8d2Sderaadt	CC			If not set, tries to use gcc first,
3901e72d8d2Sderaadt				then cc.  Also tries to use "-g -O"
3911e72d8d2Sderaadt				as options, backing down to -g
3921e72d8d2Sderaadt				alone if that doesn't work.
3931e72d8d2Sderaadt	INSTALL			If not set, tries to use "install", then
39413571821Stholo				"./install-sh" as a final choice.
3951e72d8d2Sderaadt	RANLIB			If not set, tries to determine if "ranlib"
3961e72d8d2Sderaadt				is available, choosing "echo" if it doesn't
3971e72d8d2Sderaadt				appear to be.
3981e72d8d2Sderaadt	YACC			If not set, tries to determine if "bison"
3991e72d8d2Sderaadt				is available, choosing "yacc" if it doesn't
4001e72d8d2Sderaadt				appear to be.
4011e72d8d2Sderaadt
4021e72d8d2Sderaadt-------------------------------------------------------------------------------
4032286d8edStholo
404*43c1707eStholoBuilding from source code under Windows NT/95/98/2000:
4051e72d8d2Sderaadt
4061e72d8d2SderaadtYou may find interesting information in windows-NT/README.
4071e72d8d2Sderaadt
4082286d8edStholo1) Using Microsoft Visual C++ 5.x, open the project `cvsnt.dsp',
4092286d8edStholo   in the top directory of the CVS distribution.  If you have an older
4102286d8edStholo   version of Visual C++, take a look at windows-NT/README.
4111e72d8d2Sderaadt2) Choose "Build cvs.exe" from the "Project" menu.
4122286d8edStholo3) MSVC will place the executable file cvs.exe in WinRel, or whatever
4131e72d8d2Sderaadt   your target directory is.
4142286d8edStholo
415*43c1707eStholo* From the top level directory, with MSVC++ 6.0 installed, something like the
416*43c1707eStholofollowing also works:
417*43c1707eStholo
418*43c1707eStholo	C:\> vcvars32
419*43c1707eStholo	C:\> nmake /f cvsnt.mak CFG="cvsnt - Win32 Debug"
420*43c1707eStholo
421*43c1707eStholo* You might also try http://wincvs.org & http://www.cvsnt.org
422*43c1707eStholo
4232286d8edStholo-------------------------------------------------------------------------------
4242286d8edStholo
4252286d8edStholoBuilding from source code under other platforms:
4262286d8edStholo
4272286d8edStholoFor OS/2, see os2/README and emx/README.
4282286d8edStholo
4292286d8edStholoFor VMS, see README.VMS
4302286d8edStholo
431*43c1707eStholoFor Macintosh, see macintosh/README.MacCVS, or, since that file isn't there
432*43c1707eStholoanymore, you might try http://wincvs.org .
4332286d8edStholo
4342286d8edStholoFor a Java client, see jCVS (which is a separate package from CVS
4352286d8edStholoitself, but which might be preferable to the Macintosh port mentioned
4362286d8edStholoabove, for example).
4372286d8edStholo
438*43c1707eStholo                                  **** ****
439*43c1707eStholo
440*43c1707eStholoBuilds are breaking on some systems (notably,
441*43c1707eStholoBSD/OS thor.sdrc.com 4.0.1 BSDI BSD/OS 4.0.1 Kernel #3: Thu Mar  9 11:29:16 EST 2000
442*43c1707eStholo) due to Automake's dependency tracking code.  The work around for this is to
443*43c1707eStholocomile without it by passing the '--disable-dependency-tracking' option to
444*43c1707eStholoconfigure:
445*43c1707eStholo
446*43c1707eStholo	$ ./configure --disable-dependency-tracking
447*43c1707eStholo
448*43c1707eStholoThis will allow a compile but make will no longer be tracking header
449*43c1707eStholodependencies.  This means that if you make any changes to header files you may
450*43c1707eStholohave to run 'make clean' before running a 'make' to get everything to compile.
451*43c1707eStholo
4521e72d8d2Sderaadt-------------------------------------------------------------------------------
453