NUPDATE(1) Cray Research, Inc. SR-2011 8.0 NAME nupdate - Maintains source code SYNOPSIS nupdate [-a ap] [-c cf] [-d dl] [-e ef] [-f] [-i il] [-l lf] [-m lvl] [-n nf] [-o list] [-p pl] [-q ql] [-r] [-s sf] [-w width] [-x mc] [-y cc] [-D] [-F] [-I vers] [-K path] [-L] [-N vers] [-Q] [-S] [-U name] [-V] IMPLEMENTATION All Cray Research systems DESCRIPTION The nupdate command is a source code maintenance utility. It is a rewrite of the old UNICOS product, update, with several extensions, including the following: * Major speed improvements * Long identifiers (240 characters) with the addition of a period as a legal deck name character * Directory format program library (PL) * Automatic conversion of old PLs into the new format * Deck-by-deck data widths, rather than single PL data widths Options: -a ap Specifies the appended characters that are to be assigned to multiple compile files. Each character must be unique, and it must be one of 62 alphanumeric characters. The file name specified with the -c option is appended with the characters specified with the -a option when compile information is written out. When a WEOF or CWEOF directive is encountered, the existing file name is closed, and the next appended character is placed onto the specified file name to produce the next compile file. -c cf Compile file name. For multiple compile files, controlled by the WEOF or CWEOF directive, the file name is appended with a period and a single letter as defined by default (.f, .s, .p, and .c) or specified by the -a option. The file name and the following period and suffix must not exceed 14 characters (therefore, the input file name must not exceed 12 characters). -d dl A list of defined names to be used with an IF directive (each name consisting of up to 8 characters). UNICOS is the default, which can be changed by using -d, -U UNICOS, or *UNDEF UNICOS. -e ef The error file name. All errors are written to this specified file name. If not specified, stderr is used. -f Processes every deck in the PL. If the -f and -q options are both omitted, a normal mode nupdate run is issued. This mode processes all decks specified by the COMPILE directive, all modified decks, and all decks that call modified comdecks. -i il A list of input files to be read containing nupdate directives. You can specify -i - to have nupdate read from standard input. -l lf The listing file name. All listing option output is written to this specified file name; if not specified, stdout is used. -m lvl Message level. The lowest level of severity for nupdate listing messages to be output. Value from 1 to 5. -n nf New PL name. This file is created and used by nupdate. It contains the output for all decks as specified by the -q option, or all decks in the PL if the -f option is used. If the nd argument is not used, the new PL will be in directory format. If the nd argument to the -o option is used, the new PL will be in a single-file format. -o list Option list. The list can be a combination of any of the following: sq Updates the source and compile output that is written with sequence information. ns Suppresses sequence information for both compile and source files. This is useful only when input directives attempt to turn on sequence numbers by using the SEQ directive. ssq Updates the source file only with sequence information. (The compile file is unaffected by this option.) csq Updates the compile file only with sequence information. (The source file is unaffected by this option.) cd Writes the generation directives for the compile file to the listing file. d Writes the modification information about each deck written to the compile file. Modification information is placed into the PL by using the DELTA directive in nupdate. dc Ensures that modifications apply to the correct deck or common deck; declared modifications option. Each IDENT must use the DC directive to declare which decks they are changing when this option is used. ed Writes the edited line summary to the listing file. id Writes the identifier summary list to the listing file. if Writes a conditional text summary to the listing file. in Lists the input to the listing file. k Orders all decks that are written to the compile file in the same order specified by the -q option. The default is to order them in the order in which they appear in the PL, independent of the order as specified by the -q option. op Produce an old format UPDATE PL. Enforces 8-character identifier limitations and excludes ".". os Same as UPDATE -o os. (Assigns new sequence numbers by using the UPDATE 4.0 scheme.) st For each compile file (through -D), sets the time stamp of the file to that of the corresponding deck. um Writes unprocessed modifications to the listing file. y Updates any compile file older than the deck. (Also see -r.) z When the -F option is used, writes the compile file to only the file portion of the deck name, ignoring the directory portion. If the deck name is test/test.f and -z was specified, the file is written to test.f. nd When writing a new PL, uses the single-file format, rather than the directory format. E Specifies source files written through -S in the form DECK.e. You can also enter one or more of the following keyword indicators for list. By entering key, you specify that supported keywords should be substituted for their value. key Value to be substituted %G% Date the version was created (mm/dd/yy) %H% Current date (mm/dd/yy) %I% Version number of DECK %M% Deck name %T% Current time (hh:mm:ss) %U% Time version was created (hh:mm:ss) %Z% Recognized by what(1) Example: %Z% %M% %I% %H% %U% @(#) PL/DECK1 1.0 mm/dd/yy hh:mm:ss -p pl PL (program library) file name. This file is created by nupdate in a previous run and should be used only by nupdate. -q ql A list of decks to be processed by this nupdate run. If the deck name specified contains a period in the name, it must be enclosed by [ and ]. If a range of decks is to be specified, they are separated by a period. -r For every deck to be processed, compares the time stamp of the deck to the time stamp of its corresponding file. If -o y is specified, only update the compile file if it is older than the deck's time stamp; otherwise, update the compile file if they are not identical. -s sf Source file name. nupdate writes all active lines that are in every deck processed, including the nupdate directives. -w width Default data width value for new decks. Each deck in the PL has its own data width associated with it. If it is not specified with the DW=NUMBER option on the DECK directive, it defaults to the value specified by the -w option or 80 if not specified. If a data width of "*" is specified, all new decks will be of variable length. -x mc The master character (the first character of all nupdate directives in the input files and all directives written to the source files). The default master character is *. -y cc The comment characters (up to 2 characters). Any line that has a master character immediately followed by the comment character in the input files is treated as a nupdate comment and is ignored. -D Specifies that exactly one compile file is written for each deck processed, and the compile file name is the same as the deck name. -F Specifies that exactly one compile file is written for each deck processed, and the compile file name is obtained from the FILE directive embedded within the PL and/or input files. -I vers Specifies the value of the %I% keyword, which must be in the form #.#. This value gets assigned permanently in the PL and is incremented by 1 each time the deck is modified. This applies to all decks that are processed. -K path Specifies the file containing assignments of version numbers to decks. This is in the form deck:#.#. -L Produces one listing file for each processed deck into the DECK.1 file. -N vers Specifies the value of the %I% keyword to be assigned to new decks. -Q Specifies that only decks specified through *COMPILE directives are processed. -S Produces one nupdate source file per deck processed into a file (DECK.U or DECK.e if -o E is specified). -U name Undefines the name for this run. (See also -d.) -V Issue the version of nupdate being run. NOTES The nupdate command replaces the update command after UNICOS 6.0. EXAMPLES Example 1: The following example shows how a PL is created by reading two input files, input1 and input2. The omitted -p option indicates that there is no existing PL. The new PL is written in directory format to newpl, and the compile file output is written to cfile.f. All decks are processed. $ nupdate -n newpl -i input1,input2 -c cfile -f Example 2: The following example shows an input file containing mods being applied to an existing PL, plname. The decks processed are specified by the -q option; all decks are in the PL in the range of deck1.f to deck3.f. The compile files are written, one per deck, and they are obtained from the deck name. In this example, at least two compile files are written (more if there are decks in the PL between deck1.f and deck3.f) with names deck1.f and deck3.f. $ nupdate -p plname -i mods -q '[deck1.f].[deck3.f]' -D SEE ALSO nmodex(1) UNICOS User Commands Reference Manual, publication SR-2011, for the printed version of this man page. USMID @(#)man/man1/nupdate.1 80.25 09/02/94 16:26:58