home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Fresh Fish 2
/
FFMCD02.bin
/
new
/
dev
/
misc
/
cweb
/
readme.pc
< prev
next >
Wrap
Text File
|
1993-12-21
|
8KB
|
169 lines
-*-Text-*-
This file, README, is part of CWEB-p. The current version of CWEB-p is p8c.
The CWEB programs by Silvio Levy and Donald E. Knuth are based on programs by
Knuth. The PC port (i.e., Turbo-C++ change files and executables) is made by
Hans-Hermann Bode.
The programs are distributed WITHOUT ANY WARRANTY, express or implied.
This README file last updated 24 Jun 1993 by Hans-Hermann Bode.
Copyright (C) 1987,1990,1993 Silvio Levy and Donald E. Knuth
Copyright (C) 1991,1992,1993 Hans-Hermann Bode
Permission is granted to make and distribute verbatim copies of this
document provided that the copyright notice and this permission notice
are preserved on all copies.
Permission is granted to copy and distribute modified versions of this
document under the conditions for verbatim copying, provided that the
entire resulting derived work is distributed under the terms of a
permission notice identical to this one.
Please send comments, suggestions, etc. to one of the following addresses:
-- levy@geom.umn.edu (if related to the original CWEB system),
-- hhbode@dosuni1.rz.uni-osnabrueck.de or HHBODE@DOSUNI1.BITNET (if
related to the PC port).
INTRODUCTION
The CWEB-p system is an adaptation of Silvio Levy's and Donald E. Knuth's
CWEB system that supports installation with the Turbo-C++ compiler and
provides PC-/MS-DOS executables.
CONTENTS OF THE DISTRIBUTION
The sources directory contains the following files from the original CWEB
distribution:
./sources/readme README file from the original distribution
./sources/makefile Makefile from the original distribution
./sources/common.h header file to be included in ctangle.w and cweave.w
./sources/common.w common code for ctangle and cweave
./sources/ctangle.w the tangle processor
./sources/cweave.w the weave processor
./sources/prod.w production rules to be included in cweave.w
./sources/cwebmac.tex macros for formatting
./sources/cwebman.tex the user manual
./sources/cweb.1 manual page (nroff format)
./sources/cweb.el elisp file for GNU Emacs
./sources/common.c CTANGLEd product of common.w
./sources/ctangle.c CTANGLEd product of ctangle.w
The examples directory contains examples of CWEB programming. They are from
the original distribution, too. For use on PC systems, they probably have to
be edited (for wmerge.w, that is used in the make process, a change file is
provided).
./examples/readme README file from the original examples directory
./examples/makefile generic Makefile for CWEB applications
./examples/wc.w UNIX word-count utility
./examples/treeprin.w tree-structured directory lister by Norman Ramsey
./examples/wmerge.w WEB-like file merger by Silvio Levy
./examples/extex.w spellchecking filter for TeX and CWEB by Don Knuth
./examples/wordtest.w spellchecker by Don Knuth
./examples/xlib_typ.w include file for XView programs
./examples/xview_ty.w ditto
./examples/oemacs.w example XView application by Don Knuth
./examples/kspell.el Emacs interface to extex/wordtest
./examples/oemacs.el Emacs interface to oemacs
The change files that set up the CWEB-p adaptation are in the changes
directory.
./changes/common-h.ch for common.h
./changes/common.ch for common.w
./changes/ctangle.ch for ctangle.w
./changes/cweave.ch for cweave.w
./changes/prod.ch for prod.w
./changes/cwebmac.ch for cwebmac.tex
./changes/wmerge.ch for wmerge.w from the examples directory
Note that several sets of change files (*-man.ch, *-vms.ch, *-pc.ch,
*-amiga.ch) that come with the original CWEB system are not supported by and
not provided with CWEB-p.
Finally, in this (root) directory the following files do reside. The files
common.c, ctangle.c, and cwebmac.tex include the changes from the changes
directory .
./version note about the current version of CWEB-p
./readme this file
./makefile Makefile for Turbo C++
./cweb.man manual page (ASCII format)
./common.c product of sources/common.w and changes/common.ch
./ctangle.c product of sources/ctangle.w and changes/ctangle.ch
./wmerge.c product of examples/wmerge.w and changes/wmerge.ch
./cwebmac.tex product of sources/cwebmac.tex and changes/cwebmac.ch
./ctangle.exe executable tangle processor for PC-/MS-DOS systems
./cweave.exe executable weave processor for PC-/MS-DOS systems
./wmerge.exe executable WEB-like file merger for PC-/MS-DOS systems
GETTING STARTED
Before starting, you should run cwebman.tex (needs cwebmac.tex!) through TeX
and print out the manual; the first step can be done by calling `make man'
from the Makefile.
Then, all you have to do to get a working CWEB system on PC-/MS-DOS is to
copy ctangle.exe and cweave.exe to your binaries directory and cwebmac.tex
(from the root directory) to your TeX-inputs directory; that's it, you are
ready to use CWEB!
NOTES
1. When you want to recompile the tangle and weave processors, for
bootstrapping you find a pretangled common.c, ctangle.c, and wmerge.c for
the Turbo-C++ compiler in the root directory of this distribution. From
these you can build working tangle and wmerge processors for CWEB, which in
turn are the basis for recompiling the whole system. For other PC-/MS-DOS
compilers, you must use the ctangle.exe and wmerge.exe from this
distribution (a ctangle from previous versions may or may not work); in this
case, delete common.c, ctangle.c, and wmerge.c from the root directory,
since they may not include the right changes.
Then, edit the Makefile corresponding to your environment and call make.
Note that the Makefile from the sources directory is lacking some
dependencies and will not work for this distribution. So, better use the
Makefile from the root directory as a template.
The Makefile from the root directory is intended for Turbo Make, Version 3.6
(earlier versions probably will not work!). If you are using the real-mode
version of Turbo Make 3.6, you should say `make -S all' to prevent from
running out of memory. The Makefile is prepared to use change files from a
`fixes' directory and from a `private' directory in addition to the
`changes' directory. If you use this feature, you must have Klaus
Guntermann's tie processor for concatenating multiple change files (take a
look at ftp.th-darmstadt.de); then you can call `make -S -D_fix all' to
include the files from the changes and fixes directory or `make -S -D_priv
all' to include the files from all three directories.
2. If you like to or have to make changes to the CWEB-p system, it is
recommended that you don't edit the files in the sources or changes
directories, but set up a complete new group of change files in a directory
called `fixes' or `private' and include it in the make process
appropriately. This will save much effort when you get a new version of
CWEB-p.
Incidentally, if you try the recompilation on a PC-/MS-DOS system with
another compiler than Turbo C++, you may have no luck with the Turbo-C++
changes. In this case, it's best to create a new set of change files similar
to the `changes' group and use the supplied executables to generate new .c
files rather than to edit the .c files themselves. You can set up such new
changes in a `fixes' or `private' directory by making use of the provided
changes and just calling make as described above.
3. If you want a full documentation of the tangle and weave programs, say
`make doc' (you may include the same options as described in Note 1). This
should produce the files common.dvi, ctangle.dvi, cweave.dvi, and---with the
Turbo Makefile---cwebman.dvi.
4. To delete all intermediate files created in the make processes say `make
clean', to delete even the DVI files with the Turbo Makefile say `make
veryclean'.