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 MMS User Interface 1.5.1 Menu Bar 1.5.1.1 MMS Options Menu 1.5.2 Build Activation Area 1.5.3 MMS Description File Area 1.5.4 Build Log Area 1.6 Building 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 1.7 Rebuilding Software Systems 1.7.1 Single Source System 1.7.2 Multiple Source System 1.7.3 Multiple Programming Language System 1.7.4 System with Included Files 1.7.5 System with Multiple Targets 1.7.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 .IGNORE_ALL Directive 2.7.3 .SILENT Directive 2.7.4 .DEFAULT Directive 2.7.5 .SUFFIXES Directive 2.7.6 Adding a New File Extension to the Suffixes List 2.7.7 Using the .SUFFIXES Directive in a Description File 2.7.8 Building a System with a New File Extension 2.7.9 Using the .SUFFIXES Directive with CMS Files 2.7.10 .INCLUDE Directive 2.7.11 .FIRST Directive 2.7.12 .LAST Directive 2.7.13 .IFDEF, .ELSE, and .ENDIF Directives 2.8 Generating the MMS Description File Automatically 2.8.1 Using the Motif User Interface 2.8.1.1 MMS Description File Generator Dialog Box 2.8.1.2 MMS Sources Dialog Box 2.8.2 Using the Automatic Description File Generator 2.8.2.1 Application Dependencies 2.8.2.2 Trigger Summary Dependencies 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 OpenVMS 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-OpenVMS 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.7.1 Using Logical Names for CMS Library Specifications 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 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