Document revision date: 30 March 2001

## POLYCENTER Software Installation Utility Developer's Guide

Previous | Contents | Index

The product text file contains the corresponding text:

    1 A
    =prompt the X capability
    This feature provides the A capability, but you will not get the B
    capability.

In this example, if the user selected the A option, the utility provides the file [SYSEXE]A.EXE. Otherwise, the utility provides the file [SYSEXE]B.EXE.

## part

> The part statement displays a message from the specified text module in the PTF about a group of statements during the configuration phase of an installation, configuration, or reconfiguration operation. The part and end part statements form a part group.

### Syntax

part name ;

[ PDL-statements ]

end part ;

### Parameter

> #### name

> Indicates, as a quoted or unquoted string, the name of the associated PTF text module. The name you specify can be from 1 to 31 characters in length and must be unique among all names in the same product description.

### Option

> #### PDL-statements

> Any product description language statement or a group of statements described in this reference section, except the product and end product statements.

### Required Terminator

end part ;

### Description

> The part statement displays a message from the specified text module in the PTF about a group of statements during the configuration phase of an installation, configuration, or reconfiguration operation. You can nest part groups, which are processed in lexical order.

> Although the syntax of the part group and the option group is similar, their purpose is quite different. The part group simply displays a message and does not affect the processing of PDL statements contained within the group. In contrast, the option group prompts the user to accept or decline the option, causing the PDL statements that make up the option to be processed or ignored.

> By default, the prompt text string is displayed without help text. However, help text is displayed after the prompt text when the user specifies the /HELP qualifier on the command line.

> You must supply prompt text for the part statement in the PTF using the =prompt directive. Help text is optional. If provided, it must immediately follow the prompt text line.

See Also information
option

### Example

> Suppose the product description file contains the following lines:

    part CSWS ;
        software CPQ AXPVMS CSWS
            version required V1.0 component ;
        software CPQ AXPVMS MOD_JSERV
            version required V1.0 component ;
        software CPQ AXPVMS MOD_PERL
            version required V1.0 component ;
    end part;

> The product text file contains the corresponding text:

    1 CSWS
    =prompt Compaq Secure Web Server
    This platform provides the following products:
    * Compaq Secure Web Server software (Based on Apache)
    * MOD_JSERV software
    * MOD_PERL software

> This example shows how to use the part statement to display a message about the required software products that this platform provides.

## patch image (VAX only)

> The patch image statement updates an executable image using PATCH commands.

> Note Starting with OpenVMS V7.3, the patch image statement is obsolete. To support existing product kits that may have used this statement, the POLYCENTER Software Installation utility continues to process this statement in a backward compatible manner. However, Compaq recommends that you do not use the patch image statement in new or revised product kits. Instead of patching an image file, provide a replacement image file with a file statement. Documentation of the patch image statement may be discontinued in a future release of this manual.

### Syntax

patch image name with source ;

### Parameters

> #### name

> Indicates the relative file specification of the executable image you want to update.

> #### with source

> Indicates the file specification of the file containing the update commands. The file must contain OpenVMS VAX Image File Patch Utility (PATCH) commands.

### Description

> The patch image statement updates an executable image using PATCH commands. Use this statement when it is inconvenient to provide a new image.

> You must supply the file containing the update commands as part of the product material.

> The patch image statement specifies a managed object that has the following characteristics:

> - Its name is the same as the name parameter of the product group in which the statement is lexically contained; it is a multicomponent name qualified by the relative file specification of the file that is being updated. It must be unique with respect to all managed objects in all scopes.
> - It has assembly lifetime, and its scope is the same as that of the file being updated.
> - Managed object conflict is unrecoverable.

### Example

    patch image [SYS$LDR]SYS.EXE with [SYSUPD]VERSION_PATCH.PAT ;

> This statement provides a file, [SYSUPD]VERSION_PATCH.PAT, to patch the image [SYS$LDR]SYS.EXE.

## patch text

> The patch text statement updates a text file using SUMSLP commands.

> Note Starting with OpenVMS V7.3, the patch text statement is obsolete. To support existing product kits that may have used this statement, the POLYCENTER Software Installation utility continues to process this statement in a backward compatible manner. However, Compaq recommends that you do not use the patch text statement in new or revised product kits. If possible, provide a replacement file with a file statement. If this is not practical, and you must edit an existing file, consider using a file statement with the assemble execute and assemble uses options to run a command procedure that places a copy of the previously installed file in the PCSI$DESTINATION scratch directory and performs the editing function there. Documentation of the patch text statement may be discontinued in a future release of this manual.

### Syntax

patch text name with source ;

### Parameters

> #### name

> Indicates the relative file specification of the text file you want to update.

> #### with source

> Indicates the file specification of the file containing the update commands (as a single quoted or unquoted string). The file must contain SUMSLP commands for use by the EDIT/SUM editor.

### Description

> The patch text statement updates a text file using SUMSLP commands. Use this statement when it is inconvenient to provide a new file.

> You must supply the file containing the update commands as part of the product material. You must also supply the file that you want to update, but this file is not propagated to the product kit. The POLYCENTER Software Installation utility uses it to calculate the input and output checksum values.

> The patch text statement creates a temporary directory, identified by the logical name PCSI$SCRATCH, to compute a checksum value. The PCSI$SCRATCH directory is created as a subdirectory of SYS$SCRATCH.

> The patch text statement specifies a managed object that has the following characteristics:

> - Its name is the same as the name parameter of the product group in which the statement is lexically contained; it is a multicomponent name qualified by the relative file specification of the file that is being updated. It must be unique with respect to all managed objects in all scopes.
> - It has assembly lifetime, and its scope is the same as that of the file being updated.
> - Managed object conflict is unrecoverable.

### Example

    patch text [SYSUPD]VMSINSTAL.COM with [SYSUPD]VMSINSTAL.SLP ;

> This statement provides a file, [SYSUPD]VMSINSTAL.SLP, to patch the text file [SYSUPD]VMSINSTAL.COM.

## process parameter

> The process parameter statement displays a message to users about process parameter requirements.

> Note The utility does not adjust process parameters.

### Syntax

process parameter name
{ { consume | require } value |
maximum value |
minimum value |
minimum value maximum value } ;

### Parameter

> #### name

> Indicates the process parameter name. The name you specify must be valid on the system where the product executes.

### Options

> #### consume value

> Indicates that the process parameter must be increased by the specified value. Use this option when the product consumes a resource that is controlled by the process parameter. The value must be a single unquoted string that specifies an unsigned integer value. You cannot use this option with either the maximum, minimum, or require option.

> #### maximum value

> Indicates that the process parameter must have a value less than or equal to the specified value. The value must be a single unquoted string that specifies an integer value.

> #### minimum value

> Indicates that the process parameter must have a value greater than or equal to the specified value. The value must be a single unquoted string that specifies an integer value.

> #### require value

> Indicates that the process parameter must have the specified value. The value must be a single string that specifies a value of the parameter's type. This option is valid for any parameter data type. You cannot use this option with either the maximum, minimum, or consume option.

### Description

> The process parameter statement displays a message to users after the installation about process parameter requirements. Note that the utility does not adjust process parameters.

See Also information
system parameter

### Example

    process parameter ASTLM minimum 6;
    process parameter BYTLM require 32768;
    process parameter PRCLM consume 2;
    process parameter FILLM maximum 40;

> These statements display a message to users that a process that executes the product must have the following process parameters:

> > ASTLM greater than or equal to 6
> > BYTLM set to 32768
> > PRCLM increased by 2
> > FILLM less than or equal to 40

## process privilege

> The process privilege statement displays a message to users about process privilege requirements.

> Note The utility does not adjust process privileges.

### Syntax

process privilege (name[,...]) ;

### Parameter

> #### name

> Indicates the process privilege names as a list. The privileges you specify must be valid on the system where the product executes.

### Description

> The process privilege statement displays a message to users after the installation about process privilege requirements. Note that the utility does not adjust process privileges.

### Example

    process privilege (group, oper, tmpmbx, sysnam) ;

> The statement in this example displays a message to the user that processes using the product must have the GROUP, OPER, TMPMBX, and SYSNAM privileges.

## product

> The product statement specifies product identification and other descriptive information about the product. The product and end product statements form a product group.

### Syntax

product producer base name version kittype ;

[ PDL-statements ]

end product ;

### Parameters

> #### producer

> Indicates the legal owner of the software product. This parameter must be a single quoted or unquoted string.

> #### base

> Indicates the base hardware and operating system combination on which the product is intended to be installed. This parameter must be a single quoted or unquoted string. By convention, the string AXPVMS denotes an OpenVMS Alpha product, VAXVMS denotes an OpenVMS VAX product, and VMS denotes a product applicable for either OpenVMS Alpha or VAX.

> Although any base system name can be used when you package a product, Compaq recommends that you use the names AXPVMS, VAXVMS, and VMS when developing products for use on OpenVMS.

> #### name

> Indicates the name of the product. This parameter must be a single quoted or unquoted string. The combination of producer, base, and name parameters must be unique among products installed on the system.

> #### version

> Indicates the version of the product. This parameter must be a single quoted or unquoted string.

> #### kittype

> Indicates the kit type of the product through use of one of the following keywords or keyword phrases:
> - full. A complete description of a layered product (application software) that can be used to install or upgrade the product.
> - operating system. A complete description of an operating system that can be used to install or upgrade the product. Only one product of operating system type can be installed on the system.
> - partial. A partial (incomplete) description of a product that can be used only to upgrade an existing version of the same product. Installation of a partial kit changes the version number of the product and can upgrade a product of type: full, operating system, or platform. A partial kit must contain an upgrade statement and have the same producer-base-name identification string as the product it upgrades.
> - patch. A partial (incomplete) description of a product that can be used only to update an existing version of a product. Installation of a patch kit does not change the version number of the product and can update a product of type: full, operating system, or platform. A patch kit must contain an apply to statement and have a different producer-base-name identification string than the product it updates.
> - platform. A complete description of a suite of products that can be used to install or upgrade the entire set of products.
> - transition. A complete or incomplete description of a product that was installed on the system by another installation method such as VMSINSTAL. A transition kit is used only to register a previously installed product; it does not contain any product material. Registration using a transition kit defines the name of a product and its managed objects in the POLYCENTER Software Installation product database. After a product is registered, the utility can use this information to satisfy software dependency requirements that other products may have on the availability of this product.
>   The keyword transition used alone denotes a layered product; the keyword phrase transition operating system denotes an operating system.
> - mandatory update. This is functionally identical to a patch kit. Its type implies that the patch must be applied to the product it updates.

> See Section 3.5 for a more detailed description of kit types and example PDFs.

### Option

> #### PDL-statements

> Any product description language statement or a group of statements described in this reference section, except the product and end product statements.

### Required Terminator

end product ;

### Description

> The product statement specifies product identification and other descriptive information about the product. The product and end product statements form the product group. A product description file consists of a product group and any other PDL statements that this group might enclose.

> The product statement is a utility directive and does not specify a managed object.

See Also apply to
software
upgrade

### Examples

#1
    product DEC VAXVMS FMS V2.4 full ;
        file [sysmsg]fdvshr.exe image library ;
        file [sysmsg]fmsmsg.exe ;
        file [sysexe]fmsfed.exe ;
        file [sysexe]fmsfaa.exe ;
        file [sysexe]fmsfte.exe ;
        directory [systest.fms] ;
        file [systest.fms]ivp.exe ;
        file [systest.fms]samp.flb ;
    end product ;

> The product statement in this example identifies the product as FMS version 2.4 that is intended to be installed on an OpenVMS VAX system.

#2
    product DEC AXPVMS INTERNET_PRODUCTS V1.1 platform ;
       .
       .
       .
    end product ;

> The product statement in this example identifies INTERNET_PRODUCTS version 1.1 as a suite of products (that is, a platform) for installation on an OpenVMS Alpha system.

## register module

> The register module statement registers in the product database one or more existing modules in a command, help, macro, object, or text library file.

### Syntax

register module type type module (module_name,...)
[ [no] generation generation ]
[ library library ] ;

### Parameters

> #### type type

> Indicates the library type. Table 7-9 lists the keywords you can use with this parameter.

> Table 7-9 Library Types for Register Module Statement
> Keyword | Library Type | Default Library File
> --- | --- | ---
> Command | Command definition library | [SYSLIB]DCLTABLES.EXE
> Help | Help library | [SYSHLP]HELPLIB.HLB
> Macro | Macro library | [SYSLIB]STARLET.MLB
> Object | Object library | [SYSLIB]STARLET.OLB
> Text | Text library | [SYSLIB]STARLETSD.TLB

> #### module module_name

> Indicates the names of the modules contained within the library.

### Options

> #### [no] generation generation

> Indicates that the module has an explicit generation number. Enter the number as an unsigned integer in the range of 0 through 4294967295. Refer to the Description section of the module statement for the meaning of this value. By default, the module does not have an explicit generation number (no generation), which is equivalent to zero.

> #### library library

> The file specification of the library. The file you use must be a library of the type you specified with the type parameter.

### Description

> The register module statement registers in the product database one or more existing modules in a command, help, macro, object, or text library file. Typically, register module statements are used when a product provides a library file with a file statement that is already populated with modules. Registering these modules in the product database allows the utility to detect conflicts with other modules.

> Do not use register module statements to register information about modules specified in a module statement. When a module statement is processed, module information is automatically placed in the product database. Therefore, use of register module statements in this context would be redundant.

See Also module

### Examples

#1
    register module type HELP
                  module (":=","=","@",ACCOUNTING,ALLOCATE,ANALYZE,APPEND,...) ;

> In this example, the register module statement registers several help modules in [SYSHLP]HELPLIB.HLB.

#2
    register module type OBJECT generation  1
                  module (BAS$$CB,BAS$$COPY_FD,BAS$$DISPATCH_T,...) ;

> In this example, the register module statement registers several object modules. The generation option allows the utility to perform conflict resolution with these object modules.

Previous | Next | Contents | Index

| privacy and legal statement |
5952PRO_013.HTML