diff options
Diffstat (limited to 'DOC.Sanitize')
-rw-r--r-- | DOC.Sanitize | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/DOC.Sanitize b/DOC.Sanitize new file mode 100644 index 0000000..ce687d6 --- /dev/null +++ b/DOC.Sanitize @@ -0,0 +1,66 @@ + + + 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". |