InstallDoc.tioga
Spreitzer, February 13, 1986 12:57:29 pm PST
Install
CEDAR 6.0 — FOR INTERNAL XEROX USE ONLY
Install
Mike Spreitzer
© Copyright 1986 Xerox Corporation. All rights reserved.
Abstract: Install is for loading packages. Given a package name, if it's not already done so, it executes the load file for the package.
Created by: Mike Spreitzer
Maintained by: Mike Spreitzer <Spreitzer.pa>
Keywords: Install, Package, Load File, Command File, Command, Load, Implement
XEROX  Xerox Corporation
   Palo Alto Research Center
   3333 Coyote Hill Road
   Palo Alto, California 94304

For Internal Xerox Use Only
1. Commands
name Install
syntax
Install name name ...
description
"Install Foo" means to make sure Foo has been loaded. If "Install Foo" has suceeded in the past, nothing more need be done. If not, Install looks for a load file for Foo and executes it. The load file is sought first in the current working directory, then in each directory in the command tool's search path. In each directory, files named either LoadFoo.cm or Foo.Load are considered load files. The most recently created load file in the first directory with any load files is taken. If no load file is found, Install fails.
examples
There is a package Central, which is very popular. It is used by packages Peripheral and Mediocre. Package Peripheral also uses package Mediocre. Package Peripheral, being properly independent, doesn't know or care what stuff package Mediocre uses. They have the following load files:
LoadCentral.cm:
...whatever...
LoadMediocre.cm:
Install Central
...other stuff...
LoadPeripheral.cm:
Install Central Mediocre
...other stuff...
When LoadPeripheral.cm is executed to get package Peripheral going, the use of Install prevents LoadCentral.cm from being executed twice.
2. Installing Install

% cd ///Commands
% Bringover -p [Cedar]<CedarChest6.0>Top>Install.DF