67 lines
2.4 KiB
Plaintext
67 lines
2.4 KiB
Plaintext
|
|
||
|
|
||
|
The Sanitization Process
|
||
|
|
||
|
|
||
|
Usage:
|
||
|
|
||
|
To sanitize a directory or subtree, foo:
|
||
|
|
||
|
cd foo ; /usr/unsupported/bin/Sanitize
|
||
|
|
||
|
and you should be left with source code free of any distribution
|
||
|
restrictions.
|
||
|
|
||
|
|
||
|
Configuration:
|
||
|
|
||
|
Each directory to be kept in a release should have a .Sanitize file in
|
||
|
cvs. See devo/.Sanitize for a more or less self describing template.
|
||
|
|
||
|
The default action is to remove all files and directories not
|
||
|
explicitly listed in the .Sanitize file as being "Things-to-keep:".
|
||
|
Directories that are kept will have Sanitize called on their own
|
||
|
.Sanitize files.
|
||
|
|
||
|
For other than default action, there are three hooks.
|
||
|
|
||
|
The "Do-first:" section of .Sanitize should be a shell script
|
||
|
fragment. It will be sourced by the Sanitize shell script after
|
||
|
verifying that the .Sanitize file looks reasonable but before taking
|
||
|
any other action. The arguments to Sanitize are passed to this
|
||
|
fragment so that you can take conditional action. For an example of
|
||
|
it's use, see devo/gcc/config/.Sanitize.
|
||
|
|
||
|
If the "Do-first:" section sets the local shell variable
|
||
|
"keep_these_too", the files and/or directories listed there will be
|
||
|
kept in addition to any files listed in "Things-to-keep:". For an
|
||
|
example of it's use, see devo/gcc/config/.Sanitize.
|
||
|
|
||
|
The "Do-last:" section of .Sanitize should be a shell script fragment.
|
||
|
It will be sourced by Sanitize after all other action is taken for
|
||
|
this directory. This section is intended to be used to strip code out
|
||
|
of source files. For an example of grep'ing out specific lines, see
|
||
|
devo/include/.Sanitize. For an example of sed'ing out sections of
|
||
|
code, see devo/gas/config/.Sanitize.
|
||
|
|
||
|
Command line options are extremely free form. The Sanitize script
|
||
|
itself only knows about keep-cvs. All arguments to Sanitize are
|
||
|
passed to the "Do-first:" and "Do-last:" fragments. Feel free to add
|
||
|
new options as you see fit so long as you list them here.
|
||
|
|
||
|
Defined options:
|
||
|
|
||
|
keep-cvs avoids removing CVS.adm directories. This option is
|
||
|
actually recognized and handled by the Sanitize shell
|
||
|
script.
|
||
|
|
||
|
keep-v9 avoids removing the v9 stuff.
|
||
|
keep-life avoids removing the life stuff.
|
||
|
keep-cri avoids removing the cray research inc changes to emacs.
|
||
|
for-intel builds a distribution in the style that Intel likes.
|
||
|
for-fsf builds a distribution in the style that the FSF likes.
|
||
|
|
||
|
test instead of removing dirty files, cache them away in a
|
||
|
.Recover directory
|
||
|
recover intended to undo the effects of a "Sanitize test".
|