1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159
|
This is the README file for GNU CSSC, a workalike for the source code
control system SCCS. It is based on the MySC package by Ross Ridge.
CSSC is currently under development so expect problems with compiling
the package on older machines and perhaps even incorrect operation.
==============================================================================
Quick Start
------------------------------------------------------------------------------
0. Configuring the package
To configure CSSC before compiling it, run the "configure" script.
See the file INSTALL for the generic options you can use with "configure".
Options for "configure" that are specific to CSSC are detailed below.
--enable-binary
This is the default setting (but the default setting may change
in the future).
Enables support for creating "binary" SCCS files (required for
interoperability with Solaris). If binary support is disabled,
encoded SCCS files can still be read, but not created. You should
disable this feature only if you need to interoperate with a
version of SCCS which lacks binary file support.
The setting of this option can be overridden at runtime by setting
the environment variable CSSC_BINARY_SUPPORT to "disable".
--disable-binary
Turns off suport for creating encoded ("binary") SCCS files.
CSSC will still handle these as input, but will never create one,
when this option is used.
The setting of this option can be overridden at runtime by setting
the environment variable CSSC_BINARY_SUPPORT to "enable".
--enable-max-line-length=N
The default setting corresponds with N=0.
Sets the maximum line length allowed in SCCS files to N. By
default, CSSC has no limit. Use this option only if you need to
make CSSC interoperate with other versions of SCCS. This limit
applies only to the actual body lines in the file, and are not
checked for (e.g.) comments. This means that by entering a
very long comment, you can make CSSC produce an SCCS file which
cannot be read by some other versions of SCCS.
The setting of this option can be overridden at runtime by setting
the environment variable CSSC_MAX_LINE_LENGTH to a positive integer.
Setting CSSC_MAX_LINE_LENGTH to 0 removes the limit (and so CSSC will
handle lines of any length).
1. Compiling
You will probably need to compile the software with GNU make.
The default installation directory for the binaries is
/usr/local/libexec/cssc, except for the sccs comand, which gets
installed in /usr/local/bin.
If you want to change this, you will need to read the file INSTALL.
If, for example, you want to install the files in /usr/libexec/cssc
and so on rather than in /usr/local/..., you just need to pass the
argument "prefix=/usr" to make.
If, on the other hand, all you wanted to do was to install the binaries
in a normal binary directory, you can do this with the argument
"csscutildir=/usr/local/bin" to make.
The program "sccs" (from the subdirectory bsd) is sensitive to the
setting of $(csscutildir) at compile time, because it compiles in the
calue of that option as the default place to find the various
subprograms.
mkdir work
cd work
../configure
make
2. Testing
The tests can be run with "make check". This short script runs the
test suite, and reports any problems to me:-
if make check 2>&1 | tee make.log
then
(uname -a ; ./admin -V) | mail -s "CSSC success" jay@gnu.org
else
echo FAILED, please send full details to 'jay@gnu.org.'
(uname -a ; cat make.log) | mail -s "CSSC failure" jay@gnu.org
fi
Note that this test process accepts several environment variables
which allow you to point it at a particular installation of the
tools. If you have used these variables for something else, the test
will fail. These variables are :-
$dir, $get, $admin, $cdc, $prs, $prt, $delta, $sact, $sccsdiff,
$unget, $what, $rmdel, $sccs
If the tests failed, I'll definitely need some more information and
so it would be best to keep the test outputs in case I need them in
order to fix the bug ("tar cf failed-tests.tar tests" should do fine
for that). I may need to ask you to send a compressed version of
this to me.
3. Installing
cd work
make install
==============================================================================
SCCS commands implemented this package are: admin, cdc, delta, get,
prs, prt, sccsdiff, rmdel, sact, sccs, unget, val and what. Not all
options and capabilities of the commands have been implemented yet,
and the comb and vc commands are not provided at all. Features
planned but not yet available include a Bourne shell script for
converting SCCS files to RCS files (a csh script exists for this
purpose [sccs2rcs.csh] but not everybody has csh).
Unimplemented features include consistency checking (admin -h),
ignored deltas (delta -g), l-files (get -l), and getting a delta by
sequence number (get -a). Some features like including and excluding
deltas (get -i -x) have been implemented but not extensively tested.
See the file INSTALL for information on how to compile this package.
Send any questions or bug reports by e-mail to the current maintainer,
<jay@gnu.org>. After you have compiled CSSC, _PLEASE_ run the test
suite, as described in docs/TESTING, unless you are using GCC or EGCS
under Linux, in which case please don't bother sending success reports
[since I already know that works]. I'm particularly intersested in
success reports for platforms not in the "docs/Platforms" file.
To generate the manual, type "make dvi". For the PostScript version,
type "cd docs ; make cssc.ps". If you don't have TeX, you can read
the "info" documentation with either the GNU "info" program, or Emacs.
To regenerate all the machine-generated files from their ultimate
sources (for example, after checking the controlled sources out of a
CVS repository), use
sh autogen.sh
followed by the usual invocation of "configure" and "make".
The most helpful thing you could possibly do for this project would be
to contribute a new test case. It isn't hard; the test scripts are
just shell scripts; instructions on how to do this are provided in the
manual.
|