INSTALL revision 267654
1208538Sraj------------------------------------------------------------------------------- 2208538Sraj 3208538SrajCVS is Copyright (C) 1986-2006 The Free Software Foundation, Inc. 4208538Sraj 5208538SrajCVS is free software; you can redistribute it and/or modify 6208538Srajit under the terms of the GNU General Public License as published by 7208538Srajthe Free Software Foundation; either version 1, or (at your option) 8208538Srajany later version. 9208538Sraj 10208538SrajThis program is distributed in the hope that it will be useful, 11208538Srajbut WITHOUT ANY WARRANTY; without even the implied warranty of 12208538SrajMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13208538SrajGNU General Public License for more details. 14208538Sraj 15208538Sraj------------------------------------------------------------------------------- 16208538Sraj 17208538SrajNow back to our regularly scheduled program: 18208538Sraj 19208538SrajPlease read the README file before reading this INSTALL file. Then, to 20208538Srajinstall CVS: 21208538Sraj 22208538Sraj 23208538SrajFirst you need to obtain and install the CVS executables. If you got 24208538Sraja distribution which contains executables, consult the installation 25208538Srajinstructions for that distribution. If you got source code, do not 26208538Srajpanic. On many platforms building CVS from source code is a 27208538Srajstraightforward process requiring no programming knowledge. See the 28208538Srajsection BUILDING FROM SOURCE CODE at the end of this file, which 29208538Srajincludes a list of platforms which have been tested. 30208538Sraj 31208538Sraj------------------------------------------------------------------------------- 32208538Sraj 33208538Sraj1) Take a look at the CVS documentation, if desired. For most 34208538Sraj purposes you want doc/cvs.texinfo, also known as _Version Management 35208538Sraj with CVS_ by Per Cederqvist et al. Looking at it might be as simple 36233230Sraj as "info cvs" but this will depend on your installation; see README 37233230Sraj for more details. 38233230Sraj 39208538Sraj See what CVS can do for you, and if it fits your environment (or can 40208538Sraj possibly be made to fit your environment). If things look good, 41208538Sraj continue on. Alternately, just give CVS a try first then figure out 42208538Sraj what it is good for. 43208538Sraj 44208538Sraj2) Set the CVSROOT environment variable to where you want to put your 45208538Sraj source repository. See the "Setting up the repository" section of 46208538Sraj the Cederqvist manual for details, but the quick summary is just to 47208538Sraj pick some directory. We'll use /src/master as an example. For 48208538Sraj users of a POSIX shell (sh/bash/ksh) on unix, the following 49208538Sraj commands can be placed in user's ~/.profile, ~/.bash_profile file; 50208538Sraj or in the site-wide /etc/profile: 51208538Sraj 52208538Sraj CVSROOT=/src/master; export CVSROOT 53208538Sraj 54208538Sraj For C shell users on unix place the following commands in the 55208538Sraj user's ~/.cshrc, ~/.login, or /etc/chsrc file: 56208538Sraj 57208538Sraj setenv CVSROOT /src/master 58235529Skientzle 59235529Skientzle For Windows users, supposing the repository will be in 60233230Sraj d:\src\master, place the following line in c:\autoexec.bat. On 61233230Sraj Windows 95, autoexec.bat might not already exist. In that case, 62233230Sraj just create a new file containing the following line. 63243693Sgonzo 64243693Sgonzo set CVSROOT=:local:d:\src\master 65247201Skientzle 66247250Skientzle If these environment variables are not already set in your current 67247201Skientzle shell, set them now by typing the above line at the command prompt 68247250Skientzle (or source the login script you just edited). 69247250Skientzle The instructions for the remaining steps assume that you have set 70208538Sraj the CVSROOT environment variable. 71235529Skientzle 72235529Skientzle3) Create the master source repository. Again, the details are in 73247250Skientzle the "Setting up the repository" section of cvs.texinfo; the 74247250Skientzle one-line summary is: 75247250Skientzle 76235529Skientzle $ cvs init 77208538Sraj 78243693Sgonzo In this and subsequent examples we use "$" to indicate the command 79243693Sgonzo prompt; do not type the "$". 80208538Sraj 81208538Sraj4) It might be a good idea to jump right in and put some sources or 82243693Sgonzo documents directly under CVS control. From within the top-level 83208538Sraj directory of your source tree, run the following commands: 84208538Sraj 85208538Sraj $ cvs import -m "test distribution" ccvs CVS_DIST CVS-TEST 86208538Sraj 87208538Sraj (Those last three items are, respectively, a repository location, a 88208538Sraj "vendor tag", and a "release tag". You don't need to understand 89208538Sraj them yet, but read the section "Starting new projects" in the 90208538Sraj Cederqvist manual for details). 91243693Sgonzo 92208538Sraj5) Having done step 4, one should be able to checkout a fresh copy of the 93208538Sraj sources you just imported and hack away at the sources with the 94208538Sraj following command: 95208538Sraj 96208538Sraj $ cd 97208538Sraj $ cvs checkout ccvs 98243693Sgonzo 99208538Sraj This will make the directory "ccvs" in your current directory and 100208538Sraj populate it with the appropriate files and directories. 101208538Sraj 102243693Sgonzo6) You may wish to customize the various administrative files, in particular 103243693Sgonzo modules. See the Cederqvist manual for details. 104243693Sgonzo 105243693Sgonzo7) Read the NEWS file to see what's new. 106243693Sgonzo 107243693Sgonzo8) Hack away. 108243693Sgonzo 109243693Sgonzo------------------------------------------------------------------------------- 110243693Sgonzo 111243693SgonzoBUILDING FROM SOURCE CODE 112243693Sgonzo 113208538SrajTested platforms 114208538Sraj 115208538SrajCVS has been tested on the following platforms. The most recent 116208538Srajversion of CVS reported to have been tested is indicated, but more 117208538Srajrecent versions of CVS probably will work too. Please send updates to 118233230Srajthis list to bug-cvs@nongnu.org (doing so in the form of a diff 119235529Skientzleto this file, or at least exact suggested text, is encouraged). 120233230Sraj"tested" means, at a minimum, that CVS compiles and appears to work on 121248121Siansimple (manual) testing. In many cases it also means "make check" 122248121Sianand/or "make remotecheck" passes, but we don't try to list the 123233230Srajplatforms for which that is true. 124248121Sian 125233230SrajAlpha: 126233230Sraj DEC Alpha running OSF/1 version 1.3 using cc (about 1.4A2) 127233230Sraj DEC Alpha running OSF/1 version 2.0 (1.8) 128235529Skientzle DEC Alpha running OSF/1 version 2.1 (about 1.4A2) 129248121Sian DEC Alpha running OSF/1 version 3.0 (1.5.95) (footnote 7) 130233230Sraj DEC Alpha running OSF/1 version 3.2 (1.9) 131248934Skientzle Alpha running alpha-dec-osf4.0 (1.10) 132235529Skientzle DEC Alpha running Digital UNIX v4.0C using gcc 2.7.2.2 (1.9.14) 133233230Sraj DEC Alpha running VMS 6.2 (1.8.85 client-only) 134233230Sraj Alpha running NetBSD 1.2E (1.10) 135233230SrajCray: 136233230Sraj J90 (CVS 970215 snapshot) 137233230Sraj T3E (CVS 970215 snapshot) 138233230SrajHPPA: 139233230Sraj HP 9000/710 running HP-UX 8.07A using gcc (about 1.4A2) 140248121Sian HPPA running HP-UX 9 (1.8) 141248121Sian HPPA 1.1 running HP-UX A.09.03 (1.5.95) (footnote 8) 142233230Sraj HPPA 1.1 running HP-UX A.09.04 (1.7.1) 143233230Sraj HPPA running HP-UX 9.05 (1.9) 144248121Sian HPPA running HP-UX 10.01 (1.7) 145233230Sraj HPPA running HP-UX 10.20 (1.10.7) 146248121Sian HPPA running HP-UX 11.11 (1.11.13) (footnote 12) 147233230Sraj HPPA 2.0 running HP-UX 10.20 (1.10.9) (footnote 13) 148233230Sraj NextSTEP 3.3 (1.7) 149248121Siani386 family: 150233230Sraj Solaris 2.4 using gcc (about 1.4A2) 151248121Sian Solaris 2.6 (1.9) 152248121Sian UnixWare v1.1.1 using gcc (about 1.4A2) 153248121Sian Unixware 2.1 (1.8.86) 154248121Sian Unixware 7 (1.9.29) 155248121Sian ISC 4.0.1 (1.8.87) 156248121Sian Linux (kernel 1.2.x) (1.8.86) 157233230Sraj Linux (kernel 2.0.x, RedHat 4.2) (1.10) 158233230Sraj Linux (kernel 2.0.x, RedHat 5.x) (1.10) 159233230Sraj Linux (kernel 2.2.x, RedHat 6.x) (1.10.8) 160233230Sraj Linux (kernel 2.2.x, RedHat 7.x) (1.11) 161233230Sraj BSDI 4.0 (1.10.7) 162233230Sraj FreeBSD 2.1.5-stable (1.8.87) 163233230Sraj NextSTEP 3.3 (1.7) 164233230Sraj SCO Unix 3.2.4.2, gcc 2.7.2 (1.8.87) (footnote 4) 165233230Sraj SCO OpenServer 5.0.5 (1.10.2) 166233230Sraj Sequent DYNIX/ptx4.0 (1.10 or so) (remove -linet) 167233230Sraj Sequent Dynix/PTX 4.1.4 (1.9.20 or so + patches) 168233230Sraj Lynx 2.3.0 080695 (1.6.86) (footnote 9) 169233230Sraj Windows NT 3.51 (1.8.86 client; 1.8.3 local) 170235529Skientzle Windows NT 3.51 service pack 4 (1.9) 171235529Skientzle Windows NT 3.51 service pack 5 (1.9) -- DOES NOT WORK (footnote 11) 172235529Skientzle Windows NT 4.0 (1.9 client and local) 173235529Skientzle Windows NT 4.0 (1.11 client and local - build & test, but no test suite) 174235529Skientzle Windows 95 (1.9 client and local) 175233230Sraj QNX (1.9.1 + patches for strippath() and va_list) 176233230Sraj OS/2 Version 3 using IBM C/C++ Tools 2.01 (1.8.86 + patches, client) 177233230Sraj OS/2 Version 3 using EMX 0.9c (1.9.22, client) 178235529Skientzle OS/2 Version 3 using Watcom version ? (? - has this been tested?) 179235529Skientzlem68k: 180235529Skientzle Sun 3 running SunOS 4.1.1_U1 w/ bundled K&R /usr/5bin/cc (1.8.86+) 181233230Sraj NextSTEP 3.3p1 (1.8.87) 182233230Sraj Lynx 2.3.0 062695 (1.6.86) (footnote 9) 183235529Skientzle NetBSD/mac68k (1.9.28) 184233230Srajm88k: 185233230Sraj Data General AViiON running dgux 5.4R2.10 (1.5) 186208538Sraj Data General AViiON running dgux 5.4R3.10 (1.7.1) 187243693Sgonzo Harris Nighthawk 5800 running CX/UX 7.1 (1.5) (footnote 6) 188208538SrajMIPS: 189235529Skientzle DECstation running Ultrix 4.2a (1.4.90) 190208538Sraj DECstation running Ultrix 4.3 (1.10) 191208538Sraj SGI running Irix 4.0.5H using gcc and cc (about 1.4A2) (footnote 2) 192243693Sgonzo SGI running Irix 5.3 (1.10) 193243693Sgonzo SGI running Irix 6.2 using SGI MIPSpro 6.2 and beta 7.2 compilers (1.9) 194243693Sgonzo SGI running Irix-6.2 (1.9.8) 195243693Sgonzo SGI running IRIX 6.4 (1.10) 196243693Sgonzo SGI running IRIX 6.5 (1.10.7) 197243693Sgonzo Siemens-Nixdorf RM600 running SINIX-Y (1.6) 198243693SgonzoPowerPC or RS/6000: 199243693Sgonzo IBM RS/6000 running AIX 3.1 using gcc and cc (1.6.86) 200243693Sgonzo IBM RS/6000 running AIX 3.2.5 (1.8) 201243693Sgonzo IBM RS/6000 running AIX 4.1 (1.9) 202243693Sgonzo IBM RS/6000 running AIX 4.3 (1.10.7) 203243693Sgonzo Lynx 2.3.1 120495 (1.6.86) (footnote 9) 204243693Sgonzo Lynx 2.5 (1.9) (footnote 10) 205243693Sgonzo Linux DR3 GENERIC #6 (1.10.5.1) (presumably LinuxPPC too) 206208538Sraj Mac OS X ALL (footnote 14) 207243693Sgonzo Mac OS X Darwin 6.6 Darwin Kernel Version 6.6 (1.11.1p1) 208208538Sraj Mac OS X Darwin 5.5 Darwin Kernel Version 5.5 (1.11.6) (footnote 12) 209243693Sgonzo Mac OS X Darwin 5.5 Darwin Kernel Version 5.5 (1.12.1) (footnote 12) 210243693SgonzoSPARC: 211208538Sraj Sun SPARC running SunOS 4.1.x (1.10) 212235529Skientzle Sun SPARCstation 10 running Solaris 2.3 using gcc and cc (about 1.4A2) 213235529Skientzle Sun SPARCstation running Solaris 2.4 using gcc and cc (about 1.5.91) 214243693Sgonzo Sun SPARC running Solaris 2.5 (1.8.87) 215235529Skientzle Sun SPARC running Solaris 2.5.1 using gcc 2.7.2.2 (1.9.14) 216235529Skientzle Sun SPARC running Solaris 2.6 (1.10.7) 217243693Sgonzo Sun UltraSPARC running Solaris 2.6 using gcc 2.8.1 (1.10) 218235529Skientzle NextSTEP 3.3 (1.7) 219235529Skientzle Sun SPARC running Linux 2.0.17, gcc 2.7.2 (1.8.87) 220243693Sgonzo Sun UltraSPARC running Solaris 2.8 using gcc 2.95.3 221243693SgonzoVAX: 222243693Sgonzo VAX running VMS 6.2 (1.9+patches, client-only) 223208538Sraj (see README.VMS for information on necessary hacks). 224243693Sgonzo 225243693Sgonzo(footnote 2) 226243693Sgonzo Some Irix 4.0 systems may core dump in malloc while running 227243693Sgonzo CVS. We believe this is a bug in the Irix malloc. You can 228247045Skientzle workaround this bug by linking with "-lmalloc" if necessary. 229243693Sgonzo (about 1.4A2). 230265065Sian 231243693Sgonzo(footnote 4) Comment out the include of sys/time.h in src/server.c. (1.4.93) 232247250Skientzle You also may have to make sure TIME_WITH_SYS_TIME is undef'ed. 233265065Sian 234265065Sian(footnote 6) Build in ucb universe with COFF compiler tools. Put 235265065Sian /usr/local/bin first in PATH while doing a configure, make 236265065Sian and install of GNU diffutils-2.7, rcs-5.7, then cvs-1.5. 237265065Sian 238265065Sian(footnote 7) Manoj Srivastava <srivasta@pilgrim.umass.edu> reports 239247250Skientzle success with this configure command: 240247250Skientzle CC=cc CFLAGS='-O2 -Olimit 2000 -std1' ./configure --verbose alpha-dec-osf 241247250Skientzle 242247045Skientzle(footnote 8) Manoj Srivastava <srivasta@pilgrim.umass.edu> reports 243208538Sraj success with this configure command: 244247250Skientzle CC=cc CFLAGS='+O2 -Aa -D_HPUX_SOURCE' ./configure --verbose hppa1.1-hp-hpux 245247250Skientzle 246247250Skientzle(footnote 9) 247247250Skientzle Had to configure with ./configure --host=<arch>-lynx. 248247045Skientzle 249243693Sgonzo In src/cvs.h, protected the waitpid prototype with ifdef _POSIX_SOURCE. 250247045Skientzle (I might try building with gcc -mposix -D_POSIX_SOURCE.) 251247045Skientzle 252247045Skientzle LynxOS has <dirent.h>, but you don't want to use it. 253247045Skientzle You want to use <sys/dir.h> instead. 254247045Skientzle So after running configure I had to undef HAVE_DIRENT_H and 255247201Skientzle define HAVE_SYS_DIR_H. 256247201Skientzle 257247045Skientzle(footnote 10) 258247045Skientzle Had to compile with "make LIBS=-lbsd" (to get gethostbyname 259247045Skientzle and getservbyname). 260247045Skientzle 261247045Skientzle(footnote 11) 262247201Skientzle when I do a `cvs init' I get this message: 263247045Skientzle ci: 'RCS/loginfo,v' is not a regular file 264247201Skientzle ci: RCS/loginfo,v: Invalid argument 265247201Skientzle cvs [init aborted]: failed to checkin n:/safe/CVSROOT/loginfo 266247201Skientzle 267247201Skientzle(footnote 12) 268247201Skientzle Need to `configure --without-gssapi' unless you have installed Kerberos 5 269247201Skientzle libraries on the system yourself. For some reason Apple ships OS X with 270247045Skientzle the Kerberos 5 headers installed and not the libraries, which confuses the 271247045Skientzle current configure script. Some HP, BSD, & Sun boxes have similar problems. 272247045Skientzle 273247045Skientzle(footnote 13) 274247045Skientzle A build under HP PA-RISC 2.0 will probably not run under PA-RISC 1.1 275247045Skientzle unless "+DAportable" is added to the HP ANSI cc compiler flags. 276247045Skientzle 277247045Skientzle(footnote 14) 278247045Skientzle Because of the case-insensitive file system on Mac OS X, you cannot build 279247045Skientzle CVS directly from a checkout from CVS. The name of the built executable, 280247045Skientzle `cvs', conflicts with name of the CVS administration directory, `CVS'. 281247045Skientzle The work-around is to build the executable from a build directory separate 282247045Skientzle from the source directory. i.e.: 283247045Skientzle 284247045Skientzle cvs co ccvs; cd ccvs 285247045Skientzle mkdir build; cd build 286208538Sraj ../configure && make 287208538Sraj 288208538Sraj------------------------------------------------------------------------------- 289208538Sraj 290208538SrajBuilding from source code under Unix: 291208538Sraj 292208538Sraj1) Run "configure": 293208538Sraj 294208538Sraj $ ./configure 295208538Sraj 296208538Sraj You can specify an alternate destination to override the default with 297208538Sraj the --prefix option: 298208538Sraj 299208538Sraj $ ./configure --prefix=/usr/local/gnu 300208538Sraj 301208538Sraj or some path that is more appropriate for your site. The default prefix 302208538Sraj value is "/usr/local", with binaries in sub-directory "bin", manual 303208538Sraj pages in sub-directory "man", and libraries in sub-directory "lib". 304208538Sraj 305208538Sraj A normal build of CVS will create an executable which supports 306208538Sraj local, server, or client CVS (if you don't know the difference, 307208538Sraj it is described in the Repository chapter of doc/cvs.texinfo). If 308208538Sraj you do not intend to use client or server CVS, you may want to 309208538Sraj prevent these features from being included in the executable you 310208538Sraj build. You can do this with the --disable-client and 311208538Sraj --disable-server options: 312208538Sraj 313208538Sraj $ ./configure --disable-client --disable-server 314208538Sraj 315208538Sraj Typically this can reduce the size of the executable by around 30%. 316208538Sraj 317208538Sraj If you are building CVS with the server enabled, you can disable 318208538Sraj server flow control using the --disable-server-flow-control 319208538Sraj If you are working with a large remote repository and a 'cvs 320208538Sraj checkout' is swamping your network and memory, enable flow control. 321208538Sraj You will end up with even less probability of a consistent checkout 322208538Sraj (see Concurrency in cvs.texinfo), but CVS doesn't try to guarantee 323208538Sraj that anyway. The master server process will monitor how far it is 324208538Sraj getting behind, if it reaches the high water mark, it will signal 325208538Sraj the child process to stop generating data when convenient (ie: no 326208538Sraj locks are held, currently at the beginning of a new directory). 327208538Sraj Once the buffer has drained sufficiently to reach the low water 328208538Sraj mark, it will be signalled to start again. You may override the 329208538Sraj default hi/low watermarks here too by passing 330208538Sraj '<lowwater>,<highwater>', in bytes, as an argument to 331208538Sraj --enable-server-flow-control. The low water mark defaults to one 332208538Sraj megabyte and the high water mark defaults to two megabytes. 333208538Sraj 334208538Sraj $ ./configure --enable-server-flow-control=1M,2M 335208538Sraj 336208538Sraj The --with-tmpdir argument to configure may be used to set a 337208538Sraj specific directory for use as a default temporary directory. If not 338208538Sraj set, configure will pick the first directory it finds which it has 339208538Sraj read, write, and execute permissions to from $TMPDIR, $TMP, $TEMP, 340247250Skientzle /tmp, and /var/tmp, in that order. Failing that, it will use /tmp. 341208538Sraj 342208538Sraj The --with-umask argument to configure can be used to change 343208538Sraj the default umask used by the CVS server executable. 344208538Sraj 345208538Sraj Unlike previous versions of CVS, you do not need to install RCS 346208538Sraj or GNU diff. 347208538Sraj 348208538Sraj If you are using gcc and are planning to modify CVS, you may want to 349208538Sraj configure with -Wall; see the file HACKING for details. 350208538Sraj 351208538Sraj If you have Kerberos 4 installed, you can specify the location of 352208538Sraj the header files and libraries using the --with-krb4=DIR option. 353208538Sraj DIR should be a directory with subdirectories include and lib 354208538Sraj holding the Kerberos 4 header files and libraries, respectively. 355208538Sraj The default value is /usr/kerberos. 356208538Sraj 357208538Sraj If you want to enable support for encryption over Kerberos, use 358208538Sraj the --enable-encryption option. This option is disabled by 359208538Sraj default. 360208538Sraj 361208538Sraj If you want to disable automatic dependency tracking in the makefiles, 362208538Sraj use the '--disable-dependency-tracking' option: 363208538Sraj 364208538Sraj $ ./configure --disable-dependency-tracking 365208538Sraj 366208538Sraj This avoids problems on some platforms. See the note at the end of this 367208538Sraj file on BSD. 368208538Sraj 369208538Sraj Try './configure --help' for further information on its usage. 370208538Sraj 371208538Sraj NOTE ON CVS's USE OF NDBM: 372208538Sraj 373208538Sraj By default, CVS uses some built-in ndbm emulation code to allow 374208538Sraj CVS to work in a heterogeneous environment. However, if you have 375208538Sraj a very large modules database, this may not work well. You will 376208538Sraj need to supply the --disable-cvs-ndbm option to configure to 377247250Skientzle accomplish this. If you do this, the following comments apply. If 378208538Sraj not, you may safely skip these comments. 379208538Sraj 380208538Sraj If you configure CVS to use the real ndbm(3) libraries and 381208538Sraj you do not have them installed in a "normal" place, you will 382208538Sraj probably want to get the GNU version of ndbm (gdbm) and install 383208538Sraj that before running the CVS configure script. Be aware that the 384208538Sraj GDBM 1.5 release does NOT install the <ndbm.h> header file included 385235261Skientzle with the release automatically. You may have to install it by hand. 386235261Skientzle 387208538Sraj If you configure CVS to use the ndbm(3) libraries, you cannot 388208538Sraj compile CVS with GNU cc (gcc) on Sun-4 SPARC systems. However, gcc 389208538Sraj 2.0 may have fixed this limitation if -fpcc-struct-return is 390208538Sraj defined. When using gcc on other systems to compile CVS, you *may* 391208538Sraj need to specify the -fpcc-struct-return option to gcc (you will 392208538Sraj *know* you have to if "cvs checkout" core dumps in some ndbm 393208538Sraj function). You can do this as follows: 394208538Sraj 395208538Sraj $ CC='gcc -fpcc-struct-return' ./configure 396208538Sraj 397208538Sraj for sh, bash, and ksh users and: 398208538Sraj 399208538Sraj % setenv CC 'gcc -fpcc-struct-return' 400208538Sraj % ./configure 401208538Sraj 402208538Sraj for csh and tcsh users. 403208538Sraj 404208538Sraj END OF NOTE FOR NDBM GUNK. 405208538Sraj 406208538Sraj2) Try to build it: 407208538Sraj 408208538Sraj $ make 409208538Sraj 410208538Sraj This will (hopefully) make the needed CVS binaries within the 411208538Sraj "src" directory. If something fails for your system, and you want 412208538Sraj to submit a bug report, you may wish to include your 413208538Sraj "config.status" file, your host type, operating system and 414208538Sraj compiler information, make output, and anything else you think 415208538Sraj will be helpful. 416208538Sraj 417208538Sraj3) Run the regression tests (optional). 418208538Sraj 419208538Sraj You may also wish to validate the correctness of the new binary by 420208538Sraj running the regression tests. If they succeed, that is nice to 421208538Sraj know. However, if they fail, it doesn't tell you much. Often it 422208538Sraj will just be a problem with running the tests on your machine, 423208538Sraj rather than a problem with CVS. Unless you will have the time to 424208538Sraj determine which of the two it is in case of failure, you might 425247250Skientzle want to save yourself the time and just not run the tests. 426208538Sraj 427208538Sraj If you want to run the tests, see the file TESTS for more information. 428208538Sraj 429208538Sraj4) Install the binaries/documentation: 430208538Sraj 431208538Sraj $ make install 432208538Sraj 433208538Sraj Depending on your installation's configuration, you may need to be 434208538Sraj root to do this. 435208538Sraj 436208538Sraj------------------------------------------------------------------------------- 437208538Sraj 438208538SrajDetailed information about your interaction with "configure": 439208538Sraj 440208538SrajThe "configure" script and its interaction with its options and the 441208538Srajenvironment is described here. For more detailed documentation about 442208538Sraj"configure", please run `./configure --help' or refer to the GNU Autoconf 443208538Srajdocumentation. 444208538Sraj 445208538SrajSupported options are: 446208538Sraj 447208538Sraj --srcdir=DIR Useful for compiling on many different 448208538Sraj machines sharing one source tree. 449208538Sraj --prefix=DIR The root of where to install the 450208538Sraj various pieces of CVS (/usr/local). 451208538Sraj --exec_prefix=DIR If you want executables in a 452208538Sraj host-dependent place and shared 453208538Sraj things in a host-independent place. 454208538Sraj 455208538SrajThe following environment variables override configure's default 456208538Srajbehaviour: 457247250Skientzle 458208538Sraj CC If not set, tries to use gcc first, 459208538Sraj then cc. Also tries to use "-g -O" 460208538Sraj as options, backing down to -g 461208538Sraj alone if that doesn't work. 462208538Sraj INSTALL If not set, tries to use "install", then 463208538Sraj "./install-sh" as a final choice. 464208538Sraj RANLIB If not set, tries to determine if "ranlib" 465243693Sgonzo is available, choosing "echo" if it doesn't 466243693Sgonzo appear to be. 467208538Sraj YACC If not set, tries to determine if "bison" 468208538Sraj is available, choosing "yacc" if it doesn't 469208538Sraj appear to be. 470208538Sraj 471208538Sraj------------------------------------------------------------------------------- 472208538Sraj 473208538SrajBuilding from source code under Windows NT/95/98/2000: 474208538Sraj 475208538SrajYou may find interesting information in windows-NT/README. 476208538Sraj 477208538Sraj* Using Microsoft Visual C++ 5.x (this is currently broken - someone with 478208538Sraj MVC++ 5.x needs to regenerate the project files, but the builds using `nmake' 479208538Sraj below will work). 480208538Sraj 481208538Sraj1) Using Microsoft Visual C++ 5.x, open the project `cvsnt.dsw', 482208538Sraj in the top directory of the CVS distribution. If you have an older 483208538Sraj version of Visual C++, take a look at windows-NT/README. 484208538Sraj2) Choose "Build cvs.exe" from the "Project" menu. 485208538Sraj3) MSVC will place the executable file cvs.exe in WinRel, or whatever 486208538Sraj your target directory is. 487208538Sraj 488208538Sraj* From the top level directory, with MSVC++ 6.0 installed, something like the 489208538Srajfollowing also works: 490208538Sraj 491208538Sraj C:\> vcvars32 492208538Sraj C:\> nmake /f cvsnt.mak CFG="cvsnt - Win32 Debug" 493208538Sraj 494208538Sraj* Using the Cygwin development environment <http://cygwin.com>, Windows clients 495208538Sraj and servers can be built using the instructions for building on UNIX. For 496208538Sraj deploying the CVS server on Windows NT, see the `cygrunsrv' executable that 497208538Sraj comes with Cygwin. 498208538Sraj 499208538Sraj* You might also try <http://wincvs.org> & <http://www.cvsnt.org>. 500208538Sraj 501208538Sraj------------------------------------------------------------------------------- 502208538Sraj 503208538SrajBuilding from source code under other platforms: 504208538Sraj 505208538SrajFor OS/2, see os2/README and emx/README. 506243693Sgonzo 507243693SgonzoFor VMS, see README.VMS 508243693Sgonzo 509243693SgonzoMac OS X: Builds fine, just like UNIX. 510243693Sgonzo 511243693SgonzoFor older versions of Mac OS, you might try <http://wincvs.org>. 512243693Sgonzo 513243693SgonzoFor a Java client, see jCVS (which is a separate package from CVS 514243693Sgonzoitself, but which might be preferable to the Macintosh port mentioned 515243693Sgonzoabove, for example). 516243693Sgonzo 517243693Sgonzo------------------------------------------------------------------------------- 518243693Sgonzo