Document revision date: 30 March 2001

## Extensible Versatile Editor Reference Manual

Previous | Contents | Index

### D.1.7 How to Invoke EVE$BUILD

To prepare to use EVE$BUILD, define the following symbol:

    $ BUILD == "EDIT/TPU/NODISPLAY/SECTION=EVE$SECTION-
    _$ /COMMAND=device:[dir]EVE$BUILD/NOINITIALIZATION

If you specify /SECTION=EVE$SECTION, EVE$BUILD builds your product on top of the standard EVE section file. To build your product with a different version of EVE, specify a different section file with the /SECTION qualifier.

In most circumstances, you specify either the standard EVE section file or your own enhanced EVE section file. No matter which section file you specify, you must use the /NODISPLAY qualifier if you use the /SECTION qualifier.

If you want to rebuild EVE from scratch, you build it with /NOSECTION and use the EVE$MASTER.FILE that comes with the EVE sources.

After defining the symbol, create a master file. This file tells EVE$BUILD what modules to compile. If your product is not a Compaq product, use the following format to name your master file:

         facility_MASTER.FILE

For example, a valid name for a non-Compaq product's master file is as follows:

         SCHEDULER_MASTER.FILE

If your product is a Compaq product, use the following format to name your master file:

         facility$MASTER.FILE

Replace "facility" with the name of your product. For example, a valid name for a Compaq product's master file is as follows:

    UMPLE>
         NOTES$MASTER.FILE

When you have created the master file, type into it the name of each file whose contents you want to compile. Usually this means you type in the name of each file that contains a module that is part of your product. If the files that contain the modules are not in the same directory as the master file, then you must specify the directory name of each module file. The default file type is .TPU.

If one or more of your modules declare synonyms, enter the names of those modules at the end of the file. This ensures that all root commands have been created before synonyms for root commands are declared.

EVE$BUILD processes the modules in the order in which they appear in the master file. For example, EVE$BUILD calls exit and quit handlers in the same order that they occur in the master file.

Once you have completed the master file, create a version file in the same directory that contains the master file. If your product is not a Compaq product, name the version file as follows:

         facility_VERSION.DAT

If your product is a Compaq product, use the following format to name the version file:

         facility$VERSION.DAT

The version file is a text file that contains only the version number for the product. The procedure EVE$VERSION builds this version number into the section file as part of the value returned. For example, if your version file contains the string "V9.6", and you run EVE$BUILD at 12:00 on May 5, 1993, then EVE$VERSION returns the following string:

    SCHEDULER V9.6 1993-05-05 12:00.

When you have a symbol, a master file, and a version file, you can invoke EVE$BUILD with the following command:

    $ BUILD facility

For example, if the name of your product is SCHEDULER, you would build it by typing the following:

    $ BUILD SCHEDULER

You can use the /OUTPUT qualifier to specify the name of the section file to create. If you do not use the qualifier, EVE$BUILD prompts for a file name. If you respond with a null file name, EVE$BUILD gives the output file the same name as the product.

EVE$BUILD does not produce a log file if you use /NODISPLAY on the DCL command line. In addition, EVE$BUILD does not produce a log file if you use /DISPLAY on the DCL command line and the build produces errors.

## D.2 Using EVE$BUILD

Each file specified in the master file is read in and compiled. If there are any executable statements after the procedure definitions, the statements are compiled and executed. Any SAVE or QUIT statements or calls to DEBUGON (this procedure is defined in TPU$DEBUG.TPU) are removed before execution and therefore do not interfere with the build.

EVE$BUILD creates the following three output files:

- The new section file, with a file type of .TPU$SECTION
- A file preserving the dynamically generated code, with a file type of .INIT
- A file tracking what happened during the build, with a file type of .LIST

All three files have the same device, directory, and file name.

The .INIT file contains the following:

- EVE$DYNAMIC_MODULE_IDENT
- EVE$PARSER_DISPATCH
- EVE$$PRE_INIT_MODULES
- EVE$$INIT_MODULES
- EVE$GET_STATUS_FIELDS
- EVE$$INIT_ALL_SYNONYMS
- EVE$EXIT_DISPATCH
- EVE$QUIT_
- EVE$VERSION

The .LIST file contains the following:

- The date and time of the build
- The version of EVE used
- The full file specifications of the master file, section file, version file, and .INIT file
- A synopsis on each source module, including the module ident, the number of lines in the module, and the full file specification of the file that contains the module
- A list of all global variables used in the build
- A list of all procedures used in the build

Index | Contents

| privacy and legal statement |
6021PRO_021.HTML