|
POLYCENTER Software Installation Utility Developer's
Guide
- The product statement identifies
this as a complete operating system kit for installation of (or upgrade
to) OpenVMS V7.1 on an Alpha system.
- The upgrade statement specifies that
if this kit is being used to upgrade the VMS product then the previous
version must be within the stated range of versions. However, if this
is an initial installation of the operating system, the
upgrade statement is ignored.
- This directory statement creates the
directory [SYS0.SYSCOMMON.SYSEXE], i.e., SYS$COMMON:[SYSEXE].
- These file statements copy files to
the target system disk. The VMS product places generation numbers on
all objects that it provides to aid in object conflict detection and
resolution when other products (or patch and partial kits to the
operating system) that may replace these objects are installed.
- This file statement provides
[SYSMGR]SYLOGIN.COM from a template file. The write
option indicates that customers are allowed to edit this file. On
upgrade, if this file exists it will not be replaced.
- This option...end option group
demonstrates how options can be nested. The MAIL option is
presented to the user only if the UTILITIES option is selected.
- The file statement that provides
[SYSHLP]HELPLIB.HLB is enclosed in a scope global...end scope
group to allow other products to freely make updates to this library.
The keyword phrase release merge indicates that
library modules propagate during an upgrade. For example, if a layered
product adds a module to HELPLIB.HLB, this module is automatically
inserted into the new library file that is provided by the VMS product
during an upgrade of the operating system.
- The remove...end remove group within
an option...end option group deletes all objects specified in
the remove group if the user selects the option.
3.5.3 The Platform Kit Type
The platform kit installs a product suite, which is an integrated set
of software products. It may provide files that are common to all
products in the suite, or it may not provide any files. It does,
however, contain software references to one or more other products.
These references can be either required, optional, or a combination of
required and optional. For example, the OPENVMS platform kit always
installs the OpenVMS operating system product and asks whether to
optionally install system integrated products such as Compaq DECwindows
Motif and Compaq TCP/IP Services for OpenVMS.
The PDF for a platform kit must contain a product statement
with the keyword platform and an end product
statement, as shown in the following example:
product DEC AXPVMS OPENVMS V7.2 platform ;
.
.
.
end product ;
|
The platform kit has the following characteristics:
- It contains all of the material that is common to the product
suite. Therefore, it can be used to install the product suite for the
first time or it can upgrade a previously installed version of the
platform. As stated, product material is optional for a platform kit.
It should, however, contain one or more software statements to
reference other products.
- Products referenced do not have to be present when the platform kit
is packaged because referenced products are not bundled into the
platform kit. However, when you copy a platform, products that are
referenced by software statements with the
component option must be present.
- The platform product can be removed, configured, or reconfigured.
- Its PDF can contain option and software
statements.
- Except for the kit type designation, the structure of a platform
kit is the same as a full kit; all PDL statements that are allowed in a
full kit can be used in a platform kit.
Example 3-4 shows a platform kit.
Example 3-4 PDF for a Platform Kit |
product DEC AXPVMS OPENVMS F7.1 platform ; (1)
upgrade version minimum A7.1 version below V7.2; (2)
software DEC AXPVMS VMS version required F7.1 ; (3)
option DWMOTIF_KIT ; (4)
software DEC AXPVMS DWMOTIF version minimum V1.2-4 ;
end option ;
option DECNET_OSI_KIT ;
software DEC AXPVMS DECNET_OSI version minimum K7.1 ;
end option ;
option UCX_KIT ;
software DEC AXPVMS UCX version minimum V4.1-12 ;
end option ;
end product ;
|
- The product statement identifies
this as the OPENVMS F7.1 product suite for installation or upgrade on
an OpenVMS Alpha system. The version type F indicates that
this is a test version of the kit. The platform
keyword indicates that the primary purpose of this product is to
install other products.
Note that VMS (the operating system
product) is different from OPENVMS (the product suite).
- The upgrade statement specifies that
if this kit is being used to upgrade the OPENVMS product then the
previous version must be within the stated range of versions. However,
if the OPENVMS product is not currently installed, then the
upgrade statement is ignored.
- The software statement specifies
that the operating system (OpenVMS F7.1) is a required component of the
product suite that will be implicitly installed. Should the VMS
F7.1 product kit not be accessible, an error message is displayed
and the installation terminated before any files from any products are
copied to the system.
- The option...end option group
conditionally executes statements within the group based on the user's
response to a question. In this example, the option statement
displays text associated with the label DWMOTIF_KIT from the PTF:
1 DWMOTIF_KIT
=prompt DECwindows Motif for OpenVMS Alpha
This option installs Compaq DECwindows Motif for OpenVMS Alpha, which
provides the X Window system graphical user interface.
|
An affirmative response to the question causes the DWMOTIF V1.2-4
product to be installed (or upgraded if a version is already
installed); otherwise the software statement is ignored.
Should the DWMOTIF V1.2-4 product kit not be accessible when the
platform is installed, this option is marked as unselectable and
skipped over.
3.5.4 The Partial Kit Type
You use a partial kit to upgrade a currently installed product,
including replacing some of the product's files, providing new files,
or removing files. The PDF for a partial kit must contain a
product statement with the keyword partial,
an upgrade statement, and an end product statement as
shown in the following example:
product CPQ AXPVMS TEST_A V2.1 partial ;
upgrade version required V2.0 ;
.
.
.
end product ;
|
A partial kit has the following characteristics:
- It does not contain all of the material for the product. Therefore,
it can be used only to upgrade a previously installed version of the
product.
- It can upgrade a full, operating system, or platform product. More
than one partial kit can be applied to the same product.
- The full product name (the producer-base-product string)
must be the same as the product it upgrades.
- After installation, the version of the product is changed to the
one specified in the partial kit's PDF.
- The product can be removed, in which case the managed objects
provided by the product's full and partial kits are deleted.
- The product can be configured or reconfigured.
- Its PDF can contain option and software
statements.
Generally, a new version of a product is provided as a full kit instead
of a partial kit because a full kit can be used for either an initial
installation or for an upgrade of the product. A partial kit is limited
to an upgrade path.
A partial kit, however, is usually much smaller in disk block size than
its corresponding full kit. For a very large product, this reduction in
size may significantly reduce the time it takes to distribute the kit
over the network.
Example 3-5 shows a partial kit.
Example 3-5 PDF for a Partial Kit |
product DEC AXPVMS FORTRAN V7.2 partial ; (1)
upgrade version required V7.1-1 ; (2)
information RELEASE_NOTES phase after ;
information STARTUP_TASK phase after ;
file [SYSHLP]FORTRAN.RELEASE_NOTES release notes ;
file [SYSHLP]FORTRAN_RELEASE_NOTES.PS ;
file [SYSHLP]FORTRAN_RELEASE_NOTES.DECW$BOOK ;
file [SYSEXE]FORT$MAIN.EXE generation 4 ; (3)
file [SYSMSG]FORT$MSG.EXE generation 4 ;
file [SYSMSG]FORT$MSG2.EXE generation 4 ;
module [000000]DEC_FORTCLD.CLD type command
generation 4 module FORTRAN ;(4)
execute test "@PCSI$DESTINATION:[SYSTEST]FORT$IVP.COM" ;(5)
end product ;
|
- The product statement identifies
this as a partial kit for the FORTRAN product that will upgrade FORTRAN
to V7.2 on an OpenVMS Alpha system.
- The upgrade statement (required for
a partial kit) specifies that FORTRAN V7.1-1 must be installed before
installing this upgrade kit.
- The keyword generation in
this file statement is used to supply sequencing information
to aid file conflict detection and resolution should a patch kit for
this product or another product supply the same file name.
- The module statement installs the
command definition module FORTRAN from the file DEC_FORTCLD.CLD in the
default command library [SYSLIB]DCLTABLES.EXE. The file DEC_FORTCLD.CLD
is not left on the system because a file statement is not used
to place it there. (In Example 3-7 a CLD file is put into DCLTABLES
and a copy of the file is left on the target disk.)
Note that if
this partial kit is installed after the patch kit in Example 3-6, the
module FORTRAN from this partial kit will supersede the module FORTRAN
from the patch kit because it has the higher generation number.
Conversely, if the patch kit is installed after this partial kit, the
module will not be updated. Conflict detection between patch kits and
between patch and partial kits for the same product is new for OpenVMS
V7.2. Previously, conflict detection only occurred between full,
platform, and operating system products.
- FORT$IVP.COM already exists on the system
disk, provided earlier by the full version of FORTRAN V7.1-1.
3.5.5 The Patch Kit Type
You use a patch kit to apply a correction to a currently installed
product. It can replace files, provide new files, or remove files. The
PDF for a patch kit must contain a product statement with the
keyword patch, an apply to statement, and an
end product statement as shown in the following example:
product CPQ AXPVMS TEST_A_ECO1 V1.0 patch ;
apply to CPQ AXPVMS TEST_A version minimum A2.0 version maximum V2.0 ;
.
.
.
end product ;
|
A patch kit has the following characteristics:
- It usually does not contain all of the material for the product.
Therefore, it can be used only to modify a previously installed version
of the product.
- It can modify a full, operating system, or platform product. Also,
it can modify a product that has been upgraded by a partial kit. More
than one patch kit can be applied to the same product.
- Its full product name (the producer-base-product string)
must be different than the full product name of the product it updates.
Further, its full product name must be unique among all products and
patches installed on the system.
- After installation, the version of the product that it modifies is
not changed. Use the PRODUCT SHOW PRODUCT /FULL command to display all
patch kits that have been installed on the system.
- Because it is not a product, you cannot remove a patch kit
individually using a PRODUCT REMOVE command. Patches to a product are
automatically removed when the product is removed or upgraded.
- The patch kit cannot be configured or reconfigured, but the product
that it modifies can be configured or reconfigured.
- Its PDF cannot contain option or software
statements.
- Patch kits are intended for making small updates to a product.
Since the installation of a patch kit does not change the version
number of the product, you should distribute a new version of the
product kit (full, operating system, or platform) or a partial kit to
make large updates or functional enhancements.
Example 3-6 shows a patch kit.
Example 3-6 PDF for a Patch Kit |
product DEC AXPVMS FORTECO_03 V1.0 patch ; (1)
apply to DEC AXPVMS FORTRAN version required V7.1-1 ; (2)
module [000000]FORTCLD.CLD type command generation 3 module FORTRAN ;(3)
end product ;
|
- The product statement identifies
this as V1.0 of a patch kit named FORTECO_03. The name of this kit must
be unique among all products and patches applied to the system.
- The apply to statement (required for
a patch kit) specifies that this patch can be applied only to the
installed product FORTRAN V7.1-1.
- The module statement installs the
FORTRAN CLD module in the default command library
[SYSLIB]DCLTABLES.EXE. The file FORTCLD.CLD is not left on the system
because a file statement is not used to place it there. (In
Example 3-7 a CLD file is put into DCLTABLES and a copy of the file is
left on the target disk.)
Example 3-7 shows a patch kit that modifies the operating system.
Example 3-7 PDF for a Patch Kit That Modifies
the Operating System |
product DEC AXPVMS VMS61TO71U2_PCSI B1.0 patch ; (1)
apply to DEC AXPVMS VMS version minimum V6.1 version below A7.2 ; (2)
-- This patch kit provides the entire POLYCENTER Software Installation(3)
-- facility built from OpenVMS V7.2 sources that can be installed on OpenVMS
-- V6.1 through V7.1-n systems. Installation of this patch extends the
-- capabilities of the DCL command PRODUCT, enhances the utility's user
-- interface, and corrects problems. In addition, the availability of this
-- patch enables product developers to use new product description language
-- syntax introduced in OpenVMS V7.1 and V7.2 in their product kits for
-- deployment on older OpenVMS systems that have this patch installed.
--
-- Although this kit could have been packaged as a layered product, it was
-- more appropriate to package it as a patch to the operating system because
-- it replaces a facility that is bundled with OpenVMS. Finally, the use
-- of generation numbers on files and library modules provides information
-- used during object conflict detection and resolution should other patches
-- for this facility be distributed in the future that update these objects.
file [SYSEXE]PCSI$MAIN.EXE generation 50000000 ;
file [SYSLIB]PCSI$SHR.EXE generation 50000000 ;
file [SYSUPD]PCSI.CLD generation 50000000 ; (4)
module [SYSUPD]PCSI.CLD type command generation 50000000 module PRODUCT ;
module [SYSUPD]PRODUCT.HLP type help generation 50000000 module PRODUCT ;
file [SYSUPD]PCSI$CREATE_RIGHTS_IDENTIFIER.COM generation 50000000 ;
file [SYSUPD]PCSI$DELETE_RIGHTS_IDENTIFIER.COM generation 50000000 ;
file [SYSUPD]PCSI$CREATE_ACCOUNT.COM generation 50000000 ;
file [SYSUPD]PCSI$DELETE_ACCOUNT.COM generation 50000000 ;
file [SYSUPD]PCSI$CREATE_NETWORK_OBJECT.COM generation 50000000 ;
file [SYSUPD]PCSI$DELETE_NETWORK_OBJECT.COM generation 50000000 ;
file [SYSUPD]PCSI$REGISTER_PRODUCT.COM generation 50000000 ;
file [SYSUPD]PCSI$EXTRACT_TLB.COM generation 50000000 ;
remove ;(5)
file [SYSLIB]PCSI$MOTIFSHR.EXE ; -- obsolete file as of VMS V7.2
end remove ;
end product ;
|
- The product statement identifies
this as B1.0 (a field test version) of a patch kit named
VMS61TO71U2_PCSI. The name of this kit must be unique among all
products and patches applied to the system.
- The apply to statement (required for
a patch kit) specifies that this patch can be applied only to versions
V6.1 through V7.1-2 of the VMS product.
- The double hyphen (-
- This file statement provides
[SYSUPD]PCSI.CLD. The following module statement installs the
command definition module PRODUCT from this file in the default command
library [SYSLIB]DCLTABLES.EXE. A file statement is not
required to provide the file specified in the module statement
unless you want the file left on the system.
- This remove...end remove group
deletes the obsolete file [SYSLIB]PCSI$MOTIFSHR.EXE.
3.5.6 The Mandatory Update Kit Type
You use a mandatory update kit to apply a correction to a currently
installed product. It can replace files, provide new files, or remove
files. The PDF for a mandatory update kit must contain a
product statement with the keyword mandatory
update, an apply to statement, and an end
product statement, as shown in the following example:
product CPQ AXPVMS TEST_A_ECO1 V1.0 mandatory update ;
apply to CPQ AXPVMS TEST_A version minimum A2.0 version maximum V2.0 ;
.
.
.
end product ;
|
A mandatory update kit is functionally identical to a patch kit except
for its kit type designation. It is used for corrections that must be
applied to the product.
The characteristics of a mandatory update kit are the same as for a
patch kit, as described in Section 3.5.5.
3.5.7 The Transition Kit Type
You use a transition kit to register in the product database a product
that was not installed by the POLYCENTER Software Installation utility.
For example, you would use a transition kit to register products
installed by the VMSINSTAL utility. The PDF for a layered product
transition kit must contain a product statement with the
keyword transition and an end product
statement as shown in the following example:
product DEC AXPVMS FMS V2.4 transition ;
.
.
.
end product ;
|
To register an operating system product, the keyword operating
system is added to the keyword transition as
shown in the following example:
product DEC VAXVMS VMS V7.2 transition operating system ;
.
.
.
end product ;
|
In contrast to OpenVMS Alpha, the OpenVMS VAX operating system is not
installed by the POLYCENTER Software Installation utility. The OpenVMS
VAX installation procedure uses the PRODUCT REGISTER PRODUCT VMS
command to register the operating system in the product database.
The transition kit has the following characteristics:
- It cannot be installed with a PRODUCT INSTALL command; instead, it
is registered with a PRODUCT REGISTER PRODUCT command.
- Optionally, it can reference managed objects such as files,
directories, modules, and so forth. However, none of these objects is
created or modified when the kit is registered, nor does the
installation utility verify that any of these objects actually exist on
the system.
- Files specified in file statements do not need to be
present when a transition kit is packaged because product material is
not included in this type of kit.
- The registered product can be removed with the PRODUCT REMOVE
command. If the transition kit references any managed objects, these
objects will be removed as if the transition kit had been a full kit.
- The registered product cannot be configured or reconfigured.
- The infer statement can be used only in a PDF for a
transition kit.
There are several benefits of registering a product:
- The product name is displayed with the PRODUCT SHOW PRODUCT and
PRODUCT SHOW HISTORY commands.
- Other software products that require this product as a prerequisite
can specify it in a software statement and have this software
dependency satisfied.
- If all of the managed objects for the product are specified in the
transition kit, then the product can be completely removed with a
PRODUCT REMOVE command.
Example 3-8 shows a transition PDF for the FMS product.
Example 3-8 PDF for a Transition Kit |
product DEC AXPVMS FMS V2.4 transition ; (1)
infer version from [SYSLIB]FDVSHR.EXE ; (2)
file [SYSLIB]FDVSHARE.OPT ; (3)
module [SYSUPD]FDV.OBJ type object module FDV ; (4)
module [SYSUPD]FDVMSG.OBJ type object module FDVMSG ;
module [SYSUPD]FDVDAT.OBJ type object module FDVDAT ;
module [SYSUPD]FDVERR.OBJ type object module FDVERR ;
module [SYSUPD]FDVTIO.OBJ type object module FDVTIO ;
module [SYSUPD]FDVXFR.OBJ type object module FDVXFR ;
module [SYSUPD]HLL.OBJ type object module HLL ;
module [SYSUPD]HLLDFN.OBJ type object module HLLDFN ;
end product ;
|
The following list describes the statements in this example:
- The transition keyword to
the product statement indicates that this is a transition PDF.
- The infer version statement tests
the execution environment to determine whether the file FDVSHR.EXE is
present. If it is, the utility infers the version that is installed.
- The file statement indicates that
the [SYSLIB]FDVSHARE.OPT file is part of the FMS kit.
- The module statements describe
object modules in the default object library [SYSLIB]STARLET.OLB that
are part of the FMS kit.
|