The cvsfiles script outputs (one per line) the paths
of the CVS-controlled files in its directory argument(s).
If one scripts or makefiles using cvsfiles, changes
to CVS directories are automatically reflected in distributions. This
can ameliorate the tedious task of reconciling development changes
with distribution file lists.
Quick Start
- Obtain SCM Scheme Implementation.
- Obtain SLIB Scheme Library.
- Obtain cvsfiles.scm (2.kB)
and install in PATH directory as "cvsfiles".
Usage
Usage: cvsfiles dir1/ [...]
Outputs a list of CVS controlled files in DIR1/ and its (their)
subdirectories.
Applications
In tagging or packaging a distribution, there may be CVS-controlled
files which are not appropriate for inclusion. This makefile excerpt
shows how to exclude files with certain names or types.
tag-excludes: makefile
rm -f tag-excludes
echo .\*.cvsignore >> tag-excludes
echo .\*.[Dd][Oo][Cc] >> tag-excludes
echo .\*.exe >> tag-excludes
echo .\*.xls >> tag-excludes
echo .\*OLD.\* >> tag-excludes
tags: etags
etags: tag-excludes
cvsfiles ./ | grep -vf tag-excludes | etags -
zip-excludes: makefile
rm -f zip-excludes
echo doc/[A-Z].\*.[Dd][Oo][Cc] >> zip-excludes
echo tb/ram52t/TMP.\* >> zip-excludes
echo .\*[.]ps >> zip-excludes
ZIPFILES = `cvsfiles ./ | grep -vf zip-excludes`
ZIP = sly.zip
zip: doc/addrmap.pdf zip-excludes
rm -f $(ZIP)
zip $(ZIP) $(ZIPFILES)
I am a guest and not a member of the MIT Computer Science and Artificial Intelligence Laboratory.
My actions and comments do not reflect in any way on MIT.
|
| | Docupage
|
| agj @ alum.mit.edu
| Go Figure!
|