The starting point for the Starlink MESSGEN facility is a source file conventionally named
facility_err.msg. The format is very similar to that for the VAX/VMS MESSAGE facility. This is most
easily described by an example:
.TITLE PAR ADAM/SSE parameter routines .FACILITY PAR,190/PREFIX=PAR__
.IDENT ’Version 0.5’ !author REVAD:BDK 18Nov84 (B.D.Kelly) .SEVERITY INFORMATIONAL .BASE 100 NOUSR <No user available for input>
PARNF <Parameter does not exist> EOL <End of parameter list>
NULL <Null parameter value> ABORT <Parameter request aborted> .END
Notes:
(1)
Lines may be up to 100 characters long but may not be continued to the next line.
(2)
! indicates that the remainder of the line is comment, except on a .TITLE line.
(3)
The .TITLE directive is optional but recommended. The given text is displayed as the file
is read by MESSGEN.
(4)
The .FACILITY directive specifies the facility name, the facility number (which is
allocated by the Starlink Infrastructure Support Group) and the prefix to be used for
symbolic constants for the status values. In the example, the facility name is PAR,
the facility number is 190 and the symbolic constant for the first error value will be
PAR__NOUSR.
(5)
The .IDENT directive is optional and has no effect.
(6)
The .SEVERITY directive defines the severity of the
error. In addition to INFORMATIONAL, any of the values permitted by the VAX/VMS
MESSAGE facility are allowed. The severity value has no meaning on UNIX, or in most
cases on VAX/VMS, but it does affect the error value generated for subsequent errors in
the file. There may be more than one .SEVERITY directive in the file or it may be omitted,
in which case WARNING is assumed.
(7)
The .BASE directive specifies a message number to be associated with the next message
and is optional. In the absence of any .BASE directives, message numbering is sequential
(from 1) within each facility.
(8)
Message lines specify the ident of the message and the text (enclosed in <>).
(9)
SUN/104 gives a formula for calculating unique error numbers. This formula
corresponds with .SEVERITY WARNING.
(10)
The .END directive is optional and has no effect.
(11)
If the VAX/VMS MESSAGE facility was used to generate facility INCLUDE files which
were subsequently ported to UNIX, the original .MSG source files should be used
to generate the error files for UNIX. This will ensure that the same error values are
generated.