GenerateCedarScriptDoc.tioga
Copyright Ó 1992, 1993 by Xerox Corporation. All rights reserved.
Michael Plass, January 27, 1993 3:10 pm PST
Willie-s, February 12, 1993 5:27 pm PST
GenerateCedarScript
CEDAR 10.1 FOR INTERNAL XEROX USE ONLY
GenerateCedarScript
Generating UnixTM shell scripts for dynamically loading Cedar
Michael Plass
Ó Copyright 1990, 1992 Xerox Corporation. All rights reserved.
Abstract: Some UnixTM commands for making UnixTM shell scripts for dynamically loading Cedar.
Created by: Michael Plass:PARC:Xerox
Maintained by: Michael Plass:PARC:Xerox
Keywords: Unix, shell, getting started
XEROX  Xerox Corporation
   Palo Alto Research Center
   3333 Coyote Hill Road
   Palo Alto, California 94304

For Internal Xerox Use Only
0. News
February 12, 1993: Added files for generating scripts for ppcr (GeneratePpcrScript, GENppcrcedar). These are not completely stable yet.
January 27, 1993: Added flat option, which allows loading all non-PCR pieces from the CWD.
Removed unused files (lr, UnixLoad). Made latestvux do downcasing. Made lcr take 2 cases args rather than 3 args in both cases.
January 13, 1992: Moved CedarCommander script to this component. Added dbxscript to the list of valid options (this was a bug fix). Removed RopeFileOnPFSImpl from the Template.
August 6, 1990: Added bindir option.
1. Introduction
GenerateCedarScript is a UnixTM command for making UnixTM shell scripts for dynamically loading Cedar through the Commander level. The files that come from versioned directories have their fully-qualified versioned names bound into the generated script, so you won't run new versions until make a new script. The idea is to be able to make a script for starting Cedar before you have Cedar running.
2. UnixTM Commands
The following commands should be available in /project/cedar10.1/bin
CedarCommander
is a script for starting up a dynamically-loaded cedar world, using the most-recent components. The first argument is the initial commander command; remaining arguments are passed to PCR.
CedarCommander works by first using GenerateCedarScript (below) to make a new script, and then invoking that script.
GenerateCedarScript script=newscriptname key=value ...
Generates a UnixTM shellscript to start PCR and Cedar through the Commander level, dynamically loading the pieces.

key
default

script  NONAME
vp  2
slaveiop  1
striop  1
stdiop  2
thread  85
mem  262144
stack  65536
tmp  /tmp
h  4000000
xrhome  /pseudo/xrhome
world  /project/cedar10.1/release
pcrver  INSTALLED
verbose  8 (must be >= 12 for gc messages)
pcrname  BIN/Threads-sparc/PortableCommonRuntime
shmtype  sv
opt  no
pcropt  '' (set to 'Opt' by opt=yes)
cedaropt '' (set to '' by opt=yes)
bindir   dir to copy bin files to (default => do not copy)
flat  no (yes => get packages relative to CWD)
GENcedar is simply
GenerateCedarScript script=cedar opt=no pcropt=Opt verbose=0 thread=85 stack=120000 $*
GENdevcedar is simply
GenerateCedarScript script=devcedar pcrver=DEVELOPMENT verbose=11 thread=85 stack=120000 $*
Since the DEVELOPMENT version of pcr is apt to go away at random times (when it gets remade), it is strongly recommended that you specify a bindir when you use GENdevcedar, e.g.
GENdevcedar bindir=$HOME/pcrbin
3. Commander Commands
For convenience, the GenerateCedarScript, GENcedar and GENdevcedar commands have also been made visible to the Commander.