GetFromReleaseDoc.tioga
Rick Beach, June 15, 1985 5:02:55 pm PDT
Mike Spreitzer July 14, 1986 5:01:08 pm PDT
GETFROMRELEASE
CEDAR 6.0 — FOR INTERNAL XEROX USE ONLY
GetFromRelease
-- or how to live with DIRECTORY clauses and DF files
Rick Beach
© Copyright 1985 Xerox Corporation. All rights reserved.
Abstract: GetFromRelease helps remove compiler errors that complain about missing BCD files for interfaces referenced in the DIRECTORY clause. Use GetFromRelease after a compilation with errors due to missing interface BCDs (interface `cannot be opened' in compiler jargon). It reads the Compiler.log (and hence any Foo.errlog files if you use separate logs) looking for the interface names that are missing. GetFromRelease uses the Cedar version maps to discover the released files containing the interfaces, makes the necessary attachments, and suggests the necessary IMPORTS clauses to add to your DF file (or add them itself). GetFromRelease can also get its list of goals from the command line or MakeDo.log, instead of Compiler.log.
Created by: Michael Plass, Rick Beach
Maintained by: Rick Beach <Beach.pa>
Keywords: Compiler, MakeDo, interfaces, version maps, DF files, compiler errors
XEROX  Xerox Corporation
   Palo Alto Research Center
   3333 Coyote Hill Road
   Palo Alto, California 94304

For Internal Xerox Use Only
1. The command
name GetFromRelease:
syntax
GetFromRelease [DF file name ← ] [-md | -c | fileName*]
description
Decides on a list of goal files, which it copies from the release (including CedarChest), and notes the set of DF-File import items needed to obtain the goals. If there is a list of file names on the command line, they are the goals. Otherwise, the goals will be determined from either MakeDo.log or Compiler.log, according to the following rules: (1) if -md is given, MakeDo.log is used; otherwise (2) if -c is given, Compiler.log is used; otherwise (3) if only one of those two logs exist, that one will be used; otherwise (4) the most recent of the two logs will be used.
The suggested imports will either be added to a DF file or printed out. If the command includes the "DF file name ←" construct, the imports will be added to that DF file. Otherwise, if MakeDo.log is used, and it contains a line like "MakingDo package in DF file name.", the imports will be added to that DF file. Otherwise, the imports will simply be printed in the typescript.
examples
% MakeDo -dr Package
MakingDo package in Package.DF.
Couldn't Compile []<>Users>YourName.pa>Package>PackageImpl.Mesa because []<>Users>YourName.pa>Package>Basics.BCD missing or unmakeable.
% GetFromRelease
[Cedar]<Cedar6.0>MesaRuntime>Basics.bcd!7 --> []<>Users>Spreitzer.pa>Gr>Basics.bcd!1
User YourName just tried to put his package together with MakeDo, but it failed because he didn't have Basics.BCD around. He then invoked GetFromRelease, which retrieved Basics.BCD and updated Package.DF.
warnings
It may guess something wrong.
stop/undo
The STOP! button in the command tool.
implementation
GetFromReleaseImpl in GetFromRelease.DF
contact
Michael Plass, Rick Beach
keyword hints
Compiler, MakeDo, interfaces, version maps, DF files, compiler errors
keywords
to be supplied by the Index Czar at the appropriate time in the future