|
|
1.1 root 1: Software shipment information. [better documentation forthcoming ...]
2:
3: All files and directories, except for those in /usr/spool/uucppublic,
4: are rooted at the shipment/installation directory named by
5: $INSTALLROOT. The $INSTALLROOT hierarchy is similar to the System V
6: /usr hierarchy.
7:
8: The $INSTALLROOT/ship subdirectory is automatically maintained by
9: shipin and shipout. If you expect to receive future shipments then
10: do not change files in this directory.
11:
12: pax is the Bell Labs implementation of the proposed POSIX (01/90)
13: portable archive interchange command. The default output format is
14: `cpio -c'. The pax delta format is a Bell Labs extension.
15:
16: The following assumes:
17:
18: INSTALLROOT=<path name of software installation root directory>
19:
20: After each shipment:
21:
22: <follow specific shipment instructions>
23: cd $INSTALLROOT
24: ship/shipin
25:
26: `ship/shipin -n' shows actions but does not unbundle or build.
27: `ship/shipin -s <dir>' unbundles from <dir> rather than /usr/spool/uucppublic.
28: `ship/shipin -u' unbundles the shipment but does not build.
29: `ship/shipin -i' copies from spool area but does not unbundle or build.
30:
31: Any non-option arguments to shipin are passed as arguments to the
32: generating make or shell script for each component.
33:
34: To pass the shipment to another machine (requires ksh):
35:
36: # rcp # TO=host:ship
37: # uucp # TO=machine!user
38: # list of files # TO=%list
39: # remote dk pull script # TO=%pull
40: cd $INSTALLROOT
41: ship/shipin -i # if not installed on this machine
42: cd ship
43: shipout $TO
44:
45: {rcp,uucp} initiate copies whereas {list,pull} generate information on
46: stdout. {uucp} copies to an intermediate spool area on the other machine
47: whereas {rcp,list,pull} are relative to $INSTALLROOT on the other machine.
48:
49: To copy a command <cmd> from $INSTALLROOT to a new root you must copy:
50:
51: $INSTALLROOT/bin/<cmd>
52: $INSTALLROOT/lib/<cmd>
53:
54: to the new root directory for all interdependent <cmd>'s. Depending on
55: <cmd>, only one of the above files/directories may exist.
56:
57: The files below may appear on the shipment side, the installation side,
58: or both. <installer-login> and <shipper-system> are defined in the
59: shipment mail announcement.
60:
61: Each shipment is identified by a two part version number [R]YYMMDD
62:
63: R release -- if specified then it must match for compatibility
64: YYMMDD shipment year, month and day number
65:
66: /usr/spool/uucppublic/<installer-login>/<shipper-system> directory hierarchy:
67:
68: <shipper-login>.<YYMMDD> shipment control directory
69: <shipper-login>.<YYMMDD>/manifest list of all files in shipment
70:
71: $INSTALLROOT directory hierarchy:
72:
73: bin/ executable binaries and scripts
74: include/ common header files
75: lib/ object archives a common data
76: man/ man page subtree
77: man1/ command man pages
78: man3/ library man pages
79: man8/ adminstration and maintenance man pages
80: src/ source subtree
81: cmd/ command source
82: lib/ library source
83: ship/ shipment and installation info
84:
85: $INSTALLROOT/ship contents:
86:
87: README installation info
88: !<mach_user> shipment installation message for machine!user
89: ship.body optional shipment announcement main body
90: ship.head optional shipment announcement header
91: ship.tail optional shipment announcement trailer
92: shipcost show relative cost of delta/update shipment
93: shipcrate crate all components for shipout
94: shipin unbundle, build and install shipment
95: shiplist shipout using name-tool list
96: shipop shipin/shipout support executable
97: shipout split and send shipment
98: shipslog shipment log and recipient address info
99: shipswab clean old stuff from the ship area
100: shipyard shipment support tools component name
101: lib* library components
102: * command components
103:
104: $INSTALLROOT/ship/<component> contents:
105:
106: <[R]YYMMDD> information for the <[R]YYMMDD> shipment
107: base link to the newest pax base archive
108: delta link to the newest pax delta archive
109: in.log shipin log
110: items required components (excluding this one)
111: list optional list of persons to send to
112: message optional message to include in shipment announcement
113: owner mail address for installation report
114: release the the current shipment release number
115: report optional list of $INSTALLROOT relative files to report
116:
117: $INSTALLROOT/ship/<component>/<[R]YYMMDD> contents:
118:
119: <[R]YYMMDD> pax delta archive for ../[R]YYMMDD/base
120: <[R]YYMMDD>.<NNN> delta archive split for uucp
121: BUILT present if release build succeeded
122: ERROR present if release build failed
123: GENERATED present if base archive was generated from a delta
124: UNCRATED present if release uncrate succeeded
125: base pax base archive
126: base.<NNN> base archive split for uucp
127: items items for this release
128: message message for this release
129: owner owner for this release
130: report report for this release
131:
132: Each component $NAME is extracted into either $INSTALLROOT/src/lib/$NAME
133: or $INSTALLROOT/src/cmd/$NAME. The following are attempted, in order,
134: to build and install $NAME under $INSTALLROOT:
135:
136: $INSTALLROOT/bin/nmake -f Makefile install
137: mamexec install < Mamfile
138: make -f makefile install
139: sh Makescript
140:
141: where Mamfile, Makescript and makefile are usually generated from the
142: corresponding nmake Makefile.
143:
144: Glenn Fowler ulysses!gsf
145: David Korn ulysses!dgk
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.