Guide to VAX DEC/Module Management System

*HyperReader

  CONTENTS

  Title Page

  Copyright Page

  Preface

  1      Introduction to MMS

  1.1     Overview

  1.2     Invoking MMS

  1.3     Getting Help

  1.4     MMS Concepts
    1.4.1      Description Files
    1.4.2      Targets
    1.4.3      Sources
    1.4.4      Action Lines
    1.4.5      Built-in Rules
    1.4.6      Dependencies

  1.5     Building Software Systems
    1.5.1      Single Source System
    1.5.2      Multiple Source System
    1.5.3      Multiple Programming Language System
    1.5.4      System with Included Files
    1.5.5      System with Multiple Targets
    1.5.6      System with an Object Library

  1.6     Rebuilding Software Systems
    1.6.1      Single Source System
    1.6.2      Multiple Source System
    1.6.3      Multiple Programming Language System
    1.6.4      System with Included Files
    1.6.5      System with Multiple Targets
    1.6.6      System with an Object Library

  2      MMS Description Files

  2.1     Creating the Description File
    2.1.1      Writing Dependency Rules
    2.1.2      Specifying the Target on the Command Line
    2.1.3      Using Mnemonic Names for Targets and Sources
      2.1.3.1      Specifying Target and Source Files
      2.1.3.2      Specifying Multiple Targets and Sources
      2.1.3.3      Hierarchy of Dependency Rule Application

  2.2     Using Built-In Rules
    2.2.1      Suffixes Precedence List
    2.2.2      Default Macros

  2.3     Defining Your Own Macros
    2.3.1      Formatting Macro Definitions
    2.3.2      Order of Processing Macros
    2.3.3      Invoking Macros
    2.3.4      Defining Macros on the Command Line

  2.4     Using Special Macros

  2.5     Defining Your Own Rules
    2.5.1      Creating a User-Defined Rule
    2.5.2      Using User-Defined Rules

  2.6     Using Action Lines
    2.6.1      Multiple Action Lines
    2.6.2      $STATUS and $SEVERITY
    2.6.3      MMS$STATUS
    2.6.4      Action Line Prefixes
    2.6.5      Ignore Prefix ( - )
    2.6.6      Silent Prefix ( @ )
    2.6.7      Action Line Restrictions

  2.7     Using Directives
    2.7.1      .IGNORE Directive
    2.7.2      .SILENT Directive
    2.7.3      .DEFAULT Directive
    2.7.4      .SUFFIXES Directive
    2.7.5      Adding a New File Extension to the Suffixes List
    2.7.6      Using the .SUFFIXES Directive in a Description File
    2.7.7      Building a System with a New File Extension
    2.7.8      Using the .SUFFIXES Directive with CMS Files
    2.7.9      .INCLUDE Directive
    2.7.10     .FIRST Directive
    2.7.11     .LAST Directive
    2.7.12     .IFDEF, .ELSE, and .ENDIF Directives

  3      Advanced Description File Techniques

  3.1     Using Double Colon Dependencies

  3.2     Maintaining a Library of Object Files

  3.3     Invoking MMS from a Description File
    3.3.1      Using the $(MMS) Reserved Macro
    3.3.2      Process Quotas for MMS Subprocesses
    3.3.3      Process Quotas for Using MMS
    3.3.4      MMS Reserved Macros

  3.4     Invoking MMS from a Command Procedure

  3.5     Invoking a Command Procedure from a Description File

  3.6     Changing System Build Options

  3.7     Gathering Statistics
    3.7.1      Finding Missing Sources
    3.7.2      Creating a Checkpoint File

  3.8     Creating and Using Time Stamps
    3.8.1      Using DCL Symbols
    3.8.2      Using Included Files

  3.9     Deleting Files Selectively
    3.9.1      Using a Command Procedure
    3.9.2      Using a Macro Definition

  3.10    Using Parallel Processing

  3.11    Using MMS in Complex Examples
    3.11.1     MMS and Object Libraries
    3.11.2     Producing Multiple Outputs with MMS
      3.11.2.1     Independent Outputs
      3.11.2.2     Dependent Outputs
    3.11.3     Multiple Outputs Work-Around

  4      Accessing Libraries with MMS

  4.1     Creating and Accessing Files in VMS Libraries
    4.1.1      Formatting Library Module Specifications
    4.1.2      Using Logical Names in a Library Module Specification
    4.1.3      Specifying Multiple Modules
    4.1.4      Accessing Library Modules with Non-VMS File Specifications
    4.1.5      Using Special Macros with Library Specifications
    4.1.6      Using Libraries as a Source

  4.2     Using MMS with CMS
    4.2.1      Using CMS Commands in a Description File
    4.2.2      Automatic Access of CMS Elements from Dependency Rules
    4.2.3      Explicit References to CMS Elements in Dependency Rules
    4.2.4      Using CMS Elements to Build the System
    4.2.5      Using CMS Libraries to Rebuild the System
    4.2.6      Building a System from a Specified CMS Class
    4.2.7      Building a System from a Previous Class
    4.2.8      Using the .INCLUDE Directive to Include CMS Files
    4.2.9      Using a User-Defined Rule to Access a Single CMS Element
    4.2.10     Accessing a CMS Element Not in the Default CMS Library
    4.2.11     Accessing Description Files in CMS Libraries

  4.3     Checking for Replacement of CMS Elements

  4.4     Accessing Forms in an FMS Library

  4.5     Accessing Definitions in CDD/Plus

  4.6     Using MMS with SCA

  Command Dictionary

  MMS

  A   Error Messages

  A.1     Message Display

  A.2     Severity Levels

  A.3     MMS Messages

  B   MMS and UNIX make Comparisons

  C   MMS Built-In Features

  C.1     Default Macros

  C.2     Default Macro Changes with the /SCA_LIBRARY Qualifiers

  C.3     Special Macros

  C.4     Suffixes Precedence List

  C.5     Directives

  C.6     Built-In Rules

  C.7     Built-In Rules for Library Files

  C.8     Built-In Rules for the /SCA_LIBRARY Qualifier

  C.9     Built-In Rules for CMS Access

  Glossary

  EXAMPLES

  1-1        Description File Using a Single Object

  1-2        Description File Using Multiple Objects

  1-3        Description File Using Multiple Language Compilers

  1-4        Description File Using Included Files

  1-5        Description File Using Multiple Targets

  1-6        Description File Using Object Libraries

  2-1        Built-In Rule

  2-2        Description File Using Built-In Rules

  2-3        Macro Definitions in a Description File

  2-4        Description File Using a User-Defined Rule

  2-5        Description File Using Action Lines

  2-6        Description File Using Multiple Action Lines

  2-7        Description File Using the .SUFFIXES Directive

  3-1        Invoking MMS from a Command Procedure

  3-2        Invoking a Command Procedure from a Description File

  3-3        Command Procedure to Change Build Options

  3-4        Description File Using Object Libraries

  4-1        Description File Using CMS Libraries

  4-2        Building a System from CMS Library Elements

  4-3        Rebuilding Using CMS Libraries

  4-4        Description File for Building from a CMS Class

  4-5        Building a System from a Previous CMS Class

  4-6        Using MMS with the /SCA_LIBRARY Qualifier

  FIGURES

  1-1        Dependencies in a Single Source System

  1-2        Multiple Source System

  1-3        Multiple Programming Language System

  1-4        Included Files in a System

  1-5        System with More than One Executable Image

  1-6        Object Library in a System

  1-7        How MMS Rebuilds a System

  2-1        Relationship Between Suffixes

  2-2        CMS Rules

  4-1        A Software System Using CMS Libraries

  TABLES

  2-1        MMS Action Line Prefixes

  2-2        MMS Directives

  3-1        MMS Process Quotas

  C-1        MMS Default Macros

  C-2        The /SCA_LIBRARY Qualifiers Default Macros

  C-3        MMS Special Macros

  C-4        Suffixes Precedence List

  C-5        MMS Directives

  C-6        MMS Built-In Rules