docut(SMT) 6 January 1993 docut(SMT) Name docut - create an application distribution Syntax docut [-c] [-S] [-eflag] [-i] [-s] [-u] [-f varsfile] [-p pkgdir] [-o mkpermoutfile] [-O mkpermdistdir] [-D mkpermdirfile] Options -c compresses the files in the distribution. docut also passes this option to mkcuts. -C disables check for symbolic links -e erases files specified by flag. flag is a combination of any of the following: a erases administrative files such as images and sums files c erases the CDIST directory, which contains compressed dis- tribution files d erases the dist directory, which contains the uncompressed distribution files p erases the misc directory, which contains package descrip- tions previously entered (with the -p option) and starts from scratch -f specifies a file that docut sources to set the required environ- ment variables. If the -f option is not given, docut tries to source the file ./site_variables by default. -p cuts a distribution that is in multiple packages. It is included for backwards compatibility with the Product Engineer- ing Toolkit (PET). -S distribution contains files to be serialized -o, -O, -D options that docut passes to mkperm. For details on these options, see the mkperm(SMT) manual page. -i, -s options that docut passes to mkcuts. For details, see the mkcuts(SMT) manual page. -u display command line usage, then quit Description The docut utility provides an interactive method of cutting an applica- tion distribution. docut first reads information about the product from the file specified with the -f option (or from the default file, ./site_variables). It uses mkperm(SMT) to create a permlist for the product, and constructs a distribution tree containing all the files in the product. It then uses mkcuts(SMT) to transfer the distribution tree to the media, compressing the files if requested (with the -c option). A simple use of docut is as follows: Copy all distribution files with the tar(C) utility into a new directory, for example, one named ./source. (The ./misc, ./dist and ./cdist directories are reserved names that can- not be used.) Copy the file /usr/lib/scosmt/site_variables into the current directory. Edit it to set the variables in it to the correct values for your prod- uct. If you rename this file, use the -f option to give docut its name. The following values are required. PRODPRD prd code for the product (prd= field in permlist) PRODSET full name of the product (set= field in permlist) PRODTYP system type of product (typ= field in permlist) PRODREL release number of product (rel= field in permlist) BASEPACKDIR directory under which the product's files are located, for example, ./source above BASEPACKNAME name of the main package in the product BASEPACKDESC short description of the package DEVICE device name for archiving distribution FORMAT complete command needed to format a volume VOLSIZE size of each distribution volume BLOCKING blocking factor, if required Execute docut. First, docut invokes mkperm. If the defaults are used, a permlist is created in ./dist/tmp/perms and an image of your distribution hierarchy is created using links to the ./dist directory. Next, docut invokes mkcuts on the ./dist hierarchy to allocate files to volumes and to transfer the product files to the distribution media. If you wish to inspect or edit the permlist, selecting Abort when prompted to insert the media will exit without writing to the media; selecting Continue will proceed to write out the product to the media. If you selected Abort, either docut or mkcuts may be invoked again to complete cutting the product once you have finished making any changes to the permlist. The -c flag is passed to mkcuts, which then creates a compressed hierar- chy ./cdist from which the distribution is cut. (Note that the ./dist directory is still created and used as an intermediate step in this pro- cess.) The variable NOCOMPRESS in the variables file may be set to list packages that are not to have their files compressed. If NOCOMPRESS is blank or unset, the default action of the -c option is to compress all files in the product except the permlist. Files /usr/bin/mkperm ./misc/pkg.data ./misc/partperms ./misc/extrafiles See also fixperm(ADM), mkcuts(SMT), mkperm(SMT), tar(C)