The mkshadow programs makes a "shadow tree" of a directory tree. It logically copies all of the "MASTER" directory into ".". However, ordinary files, and RCS/SCCS directories are "copied" by creating a sybolic link to the corresponding file in MASTER. The wildmat.c file is by Rich Salz, and from comp.sources.misc, volume 17. The savedir.c file is lightly modified from the version written by David MacKenzie for GNU fileutils; the Free Software Foundation has graciously agreed to waive their usual copyright so this program can be distributed by the X Consortium. If you have problems compiling savedir.c, try setting the DIRENT make variable as suggested in the Makefile. * Usage: mkshadow [-X exclude_file] [-x exclude_pattern] ... MASTER * Makes the current directory be a "shadow copy" of MASTER. * Sort of like a recursive copy of MASTER to . * However, symbolic links are used instead of actually * copying (non-directory) files. * Also, directories named RCS or SCCS are shared (with a symbolic link). * Warning messages are printed for files (and directories) in . * that don't match a corresponding file in MASTER (though * symbolic links are silently removed). * Also, a warning message is printed for non-directory files * under . that are not symbolic links. * * Files and directories can be excluded from the sharing * with the -X and -x flags. The flag `-x pattern' (or `-xpattern') * means that mkshadow should ignore any file whose name matches * the pattern. The pattern is a "globbing" pattern, i.e. the * characters *?[^-] are interpreted as by the shell. * If the pattern contains a '/' is is matched against the complete * current path (relative to '.'); otherwise, it is matched * against the last component of the path. * A `-X filename' flag means to read a set of exclusion patterns * from the named file, one pattern to a line. Author: Per Bothner. bothner@cygnus.com. November 1990, 1993.