FACCOMP

FACCOMP


April 1992

The facilities comparison utility (FACCOMP) is used to compare the CMS class contents and the VDE stream contents for a development stream/class.

Software Version: FACCOMP Version X1.0


FACCOMP

Activates the FACCOMP utility. The FACCOMP utility is run from DCL. FACCOMP comparse the VDE view of the libraries with the CMS view.

Format

FACCOMP library-spec stream

Command Qualifiers Defaults
/[NO]LOG /LOG
/OUTPUT=file-spec None.
/PROCESS /PROCESS=flagfree

prompts

LIB_SPEC: library-spec
STREAM: stream

Description

The FACCOMP command activates the utility from DCL and then acts on the set of specified libraries. The utility uses the logical VDE$LIBRARY to locate the VDE database to process.

The FACCOMP utility produces a report of generation differences between the CMS representation of a stream and the VDE representation of a stream. The report can be printed to the log file or can be printed to a user specified text file.

The utility verifies that the stream to compare exists in the VDE library. If the stream is not present in the VDE library the utility will terminate. If the stream is present in the VDE library, each facility matching the library specification parameter is processed.

If the CMS class corresponding to the stream name is not found in a facility CMS library, a warning message is displayed. A warning message is displayed if the facility is not found in the VDE database. Processing continues in both of these cases.

The utility will return the highest severity error encountered as the final completion status. For example, the library specification VMS$:[A*.CMS] may result in ten CMS libraries to compare. All ten of the CMS library and VDE stream contents must match for a success status. If one or more of the facilities in the set exhibit a difference, then a warning return status results.


Parameters

library-spec

Specifies the CMS library that is to be acted on. This specification can contain wildcards, but it must be a valid CMS library directory specification (i.e. VMS$:[YELLOW_TEST.CMS]). An example of a wildcarded specification would be: VMS$:[Y*.CMS]. This specification would process all libraries that start with the letter "Y".

stream

Specifies the CMS class/VDE stream name to be compared.

Command Qualifiers

/[NO]LOG

Specifies that the FACCOMP utility should display a message for every CMS LIBRARY that is processed.

/OUTPUT=file-specification

Specifies the name of a file that is to contain all the output.

Note: error messages and informational messages will not be put into the output file.

/PROCESS=(attribute[,attribute,...])

The PROCESS qualifier is used to identify what libraries are to be processed. Some libraries have special attributes associated with them, VMSCMS$NO_PROPAGATE.FLAG is an example of an attribute. This attribute indicates that this library is not to have any code propagation performed within it. The process qualifier is used to selectively process or skip libraries marked with certain attributes. The list of acceptable attributes is:

Examples

#1

$> @VMSCMS$:SET_VDE_LIBRARY VMS
$> SET COMMAND VMSCMS$:FACCOMP
$> faccomp/log/process=ALL vms$:[A*.cms] V5.5
%FAC-I-USEVDELIB, Using VDE library VSC$DBROOT
%FAC-I-PROC, Processing library VMS$:[AAA_VDE_TEST.CMS]
Date:   9-APR-1992 08:58
VDE to CMS generation comparison for stream V5.5
      Library: VMS$:[AAA_VDE_TEST.CMS]
Module Name       CMS              VDE
--------------------------------------
A.REQ                               1
%FAC-W-DIFFER, VDE and CMS differ for stream V5.5 in VMS$:[AAA_VDE_TEST.CMS]
%FAC-I-PROC, Processing library VMS$:[ACC.CMS]
%FAC-S-EQUAL, VDE and CMS are equal for stream V5.5 in VMS$:[ACC.CMS]
%FAC-I-PROC, Processing library VMS$:[ACLEDT.CMS]
%FAC-S-EQUAL, VDE and CMS are equal for stream V5.5 in VMS$:[ACLEDT.CMS]
%FAC-I-PROC, Processing library VMS$:[ADARTL.CMS]
%FAC-S-EQUAL, VDE and CMS are equal for stream V5.5 in VMS$:[ADARTL.CMS]
%FAC-I-PROC, Processing library VMS$:[AMBER.CMS]
%FAC-S-EQUAL, VDE and CMS are equal for stream V5.5 in VMS$:[AMBER.CMS]
%FAC-I-PROC, Processing library VMS$:[ANALYZ.CMS]
%FAC-S-EQUAL, VDE and CMS are equal for stream V5.5 in VMS$:[ANALYZ.CMS]
%FAC-I-PROC, Processing library VMS$:[AQUARIUS.CMS]
%FAC-S-EQUAL, VDE and CMS are equal for stream V5.5 in VMS$:[AQUARIUS.CMS]
%FAC-I-PROC, Processing library VMS$:[AUDSRV.CMS]
%FAC-S-EQUAL, VDE and CMS are equal for stream V5.5 in VMS$:[AUDSRV.CMS]
$show symbol $status
  $STATUS == "%X18178060"
$>
 
      

The user first sets the value of the logical VDE$LIBRARY to point to the VMS product database by executing the SET_VDE_LIBRARY command procedure. The user then adds the FACCOMP command to their process command table. In this example, the CMS class contents and the VDE stream contents for stream V5.5 are compared for facilities beginning with the letter "a". The output qualifier is not used so any differences will be written to SYS$OUTPUT. The process qualifier keyword ALL is used to process archived and nopropagate facilities.

There is a stream difference encounted in this example. In facility AAA_VDE_TEST there is a module, A.REQ which exists in the VDE database but is not present in the CMS library. The return status, X18178060 equates to FAC-W-DIFFER, which was the warning condition encountered.

#2

$> faccomp/nolog vms$:[sys.cms] V5.5
%FAC-I-USEVDELIB, Using VDE library VSC$DBROOT
Date:   9-APR-1992 09:27
VDE to CMS generation comparison for stream V5.5
             Library: VMS$:[SYS.CMS]
Module Name       CMS             VDE
--------------------------------------
BASE_LEVEL.MAR    55              15
%FAC-W-DIFFER, VDE and CMS differ for stream V5.5 in VMS$:[SYS.CMS]
$>
      

In this example, the NOLOG qualifier is used which suppresses the %FAC-I-PROC message. The generation of module BASE_LEVEL.MAR in VDE and CMS differs. The %FAC-W-DIFFER message indicates that VDE and CMS differ for stream V5.5 in the SYS facility.

#3

$> faccomp/log vms$:[vms054*.cms] V5.5
%FAC-I-USEVDELIB, Using VDE library VSC$DBROOT
%FAC-I-SKPNOPROP, Library VMS$:[VMS054-2R.CMS] marked NOPROPAGATE, skipping it
%FAC-I-SKPARCH, Library VMS$:[VMS054-3.CMS] marked ARCHIVED, skipping it
%FAC-I-SKPNOPROP, Library VMS$:[VMS054-2R.CMS] marked NOPROPAGATE, skipping it
$>
 
      

This example shows the messages displayed when a facility is marked archived or marked nopropagate and the /process qualifier is not used to include these facilities.

Contents