author | esaxe |
Fri, 11 Aug 2006 18:11:49 -0700 | |
changeset 2538 | b5894d78c55a |
parent 2456 | 0bd2410bad66 |
child 2630 | f114839610fb |
permissions | -rw-r--r-- |
0 | 1 |
.\" ident "%Z%%M% %I% %E% SMI" |
2 |
.\" " CDDL HEADER START |
|
3 |
.\" " |
|
4 |
.\" " The contents of this file are subject to the terms of the |
|
2294
658bd7c13512
4416654 warning filter list in nightly should be cleaned up
meem
parents:
0
diff
changeset
|
5 |
.\" " Common Development and Distribution License (the "License"). |
658bd7c13512
4416654 warning filter list in nightly should be cleaned up
meem
parents:
0
diff
changeset
|
6 |
.\" " You may not use this file except in compliance with the License. |
0 | 7 |
.\" " |
8 |
.\" " You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE |
|
9 |
.\" " or http://www.opensolaris.org/os/licensing. |
|
10 |
.\" " See the License for the specific language governing permissions |
|
11 |
.\" " and limitations under the License. |
|
12 |
.\" " |
|
13 |
.\" " When distributing Covered Code, include this CDDL HEADER in each |
|
14 |
.\" " file and include the License file at usr/src/OPENSOLARIS.LICENSE. |
|
15 |
.\" " If applicable, add the following below this CDDL HEADER, with the |
|
16 |
.\" " fields enclosed by brackets "[]" replaced with your own identifying |
|
17 |
.\" " information: Portions Copyright [yyyy] [name of copyright owner] |
|
18 |
.\" " |
|
19 |
.\" " CDDL HEADER END |
|
20 |
.\" " |
|
2294
658bd7c13512
4416654 warning filter list in nightly should be cleaned up
meem
parents:
0
diff
changeset
|
21 |
.\" "Copyright 2006 Sun Microsystems, Inc. All rights reserved." |
0 | 22 |
.\" "Use is subject to license terms." |
2294
658bd7c13512
4416654 warning filter list in nightly should be cleaned up
meem
parents:
0
diff
changeset
|
23 |
.TH nightly 1 "23 June 2006" |
0 | 24 |
.SH NAME |
25 |
.I nightly |
|
26 |
\- build an OS-Net consolidation overnight |
|
27 |
.SH SYNOPSIS |
|
28 |
\fBnightly [-in] [-V VERS] <env_file>\fP |
|
29 |
.LP |
|
30 |
.SH DESCRIPTION |
|
31 |
.IX "OS-Net build tools" "nightly" "" "\fBnightly\fP" |
|
32 |
.LP |
|
33 |
.I nightly, |
|
34 |
the mother of all build scripts, |
|
35 |
can bringover, build, archive, package, error check, and |
|
36 |
generally do everything it takes to |
|
37 |
turn OS/Net consolidation source code into useful stuff. |
|
38 |
It is customizable to permit you to run anything from a |
|
39 |
simple build to all of the cross-checking a gatekeeper |
|
40 |
needs. The advantage to using |
|
41 |
.I nightly |
|
42 |
is that you build things correctly, consistently and |
|
43 |
automatically, with the best practices; building with |
|
44 |
.I nightly |
|
45 |
can mean never having to say you're sorry to your |
|
46 |
gatekeeper. |
|
47 |
.LP |
|
48 |
More |
|
49 |
specifically, |
|
50 |
.I nightly |
|
51 |
performs the following tasks, in order, if |
|
52 |
all these things are desired: |
|
53 |
.LP |
|
54 |
.RS |
|
55 |
.TP |
|
56 |
perform a "make clobber" to clean up old binaries |
|
57 |
.TP |
|
58 |
bringover from the identified parent gate/clone |
|
59 |
.TP |
|
60 |
perform non-debug and debug builds |
|
61 |
.TP |
|
62 |
list proto area files and compare with previous list |
|
63 |
.TP |
|
64 |
copy updated proto area to parent |
|
65 |
.TP |
|
66 |
list shared lib interface and compare with previous list |
|
67 |
.TP |
|
68 |
perform a "make lint" of the kernel and report errors |
|
69 |
.TP |
|
70 |
perform a "make check" to report hdrchk/cstyle errors |
|
71 |
.TP |
|
72 |
report the presence of any core files |
|
73 |
.TP |
|
74 |
check the ELF runtime attributes of all dynamic objects |
|
75 |
.TP |
|
76 |
check for unreferenced files |
|
77 |
.TP |
|
2538
b5894d78c55a
5016095 nightly should help determine what really changes from build to build
esaxe
parents:
2456
diff
changeset
|
78 |
report on which proto area objects have changed (since the last build) |
b5894d78c55a
5016095 nightly should help determine what really changes from build to build
esaxe
parents:
2456
diff
changeset
|
79 |
.TP |
0 | 80 |
report the total build time |
81 |
.TP |
|
82 |
save a detailed log file for reference |
|
83 |
.TP |
|
84 |
mail the user a summary of the completed build |
|
85 |
.RE |
|
86 |
.LP |
|
87 |
The actions of the script are almost completely determined by |
|
88 |
the environment variables in the |
|
89 |
.I env |
|
90 |
file, the only necessary argument. Ths only thing you really |
|
91 |
need to use |
|
92 |
.I nightly |
|
93 |
is an |
|
94 |
.I env |
|
95 |
file that does what you want. |
|
96 |
.LP |
|
97 |
||
98 |
.LP |
|
99 |
.SH NIGHTLY_OPTIONS |
|
100 |
The environment variable NIGHTLY_OPTIONS controls the actions |
|
101 |
.I nightly |
|
102 |
will take as it proceeds. |
|
103 |
The -i, -n and -V options may also be used from the command line to |
|
104 |
control the actions without editing your environment file. The |
|
105 |
-i and -n each make the build complete more quickly by bypassing |
|
106 |
some actions. If NIGHTLY_OPTIONS is not set, "-aBm" is used. |
|
107 |
||
108 |
.B Basic action options |
|
109 |
.TP 10 |
|
110 |
.B \-D |
|
111 |
Do a build with DEBUG on (non-DEBUG is built by default) |
|
112 |
.TP |
|
113 |
.B \-F |
|
114 |
Do _not_ do a non-DEBUG build (use with -D to get just a DEBUG build) |
|
115 |
.TP |
|
116 |
.B \-M |
|
117 |
Do not run pmodes (safe file permission checker) |
|
118 |
.TP |
|
119 |
.B \-i |
|
2371 | 120 |
Do an incremental build, suppressing the "make clobber" that by |
121 |
default removes all existing binaries and derived files. From the |
|
122 |
command line, -i also suppresses the lint pass and the cstyle/hdrchk |
|
123 |
pass |
|
0 | 124 |
.TP |
125 |
.B \-n |
|
126 |
Suppress the bringover so that the build will start immediately with |
|
127 |
current source code |
|
128 |
.TP |
|
129 |
.B \-o |
|
130 |
Do an "old style" (pre-S10) build using root privileges to set OWNER |
|
131 |
and GROUP from the Makefiles. |
|
132 |
.TP |
|
133 |
.B \-a |
|
134 |
Create BFU archives |
|
135 |
.TP |
|
136 |
.B \-z |
|
137 |
Compress cpio archives with gzip |
|
138 |
.TP |
|
139 |
.B \-p |
|
140 |
Create packages for regular install |
|
141 |
.TP |
|
142 |
.B \-U |
|
143 |
Update proto area in the parent workspace |
|
144 |
.TP |
|
145 |
.B \-u |
|
146 |
Copy proto_list_${MACH} and friends to usr/src in the parent |
|
147 |
workspace. When used with -f, also build a usr/src/unrefmaster.out in |
|
148 |
the parent by merging all the usr/src/unref-${MACH}.out files in the |
|
149 |
parent. |
|
150 |
.TP |
|
151 |
.B \-m |
|
152 |
Send mail to $MAILTO at end of build |
|
153 |
.TP |
|
154 |
.B \-t |
|
155 |
Build and use the tools in $SRC/tools. |
|
156 |
||
157 |
.LP |
|
158 |
.B Code checking options |
|
159 |
.TP 10 |
|
160 |
.B \-A |
|
161 |
Check for ABI discrepancies in .so files. |
|
162 |
It is only required for shared object developers when there is an |
|
163 |
addition, deletion or change of interface in the .so files. |
|
164 |
.TP |
|
165 |
.B \-C |
|
166 |
Check for cstyle/hdrchk errors |
|
167 |
.TP |
|
168 |
.B \-f |
|
169 |
Check for unreferenced files. Since the full workspace must be built |
|
170 |
in order to accurately identify unreferenced files, -f is ignored for |
|
171 |
incremental (-i) builds, or builds that do not include -l and -p. |
|
172 |
.TP |
|
173 |
.B \-r |
|
174 |
Check the ELF runtime attributes of all dynamic objects |
|
175 |
.TP |
|
176 |
.B \-l |
|
177 |
Do "make lint" in $LINTDIRS (default: $SRC n) |
|
178 |
.TP |
|
179 |
.B \-N |
|
180 |
Do not run protocmp or checkpaths (note: this option is not |
|
181 |
recommended, especially in conjunction with the \-p option) |
|
182 |
.TP |
|
183 |
.B \-W |
|
184 |
Do not report warnings (for freeware gate ONLY) |
|
2538
b5894d78c55a
5016095 nightly should help determine what really changes from build to build
esaxe
parents:
2456
diff
changeset
|
185 |
.TP |
b5894d78c55a
5016095 nightly should help determine what really changes from build to build
esaxe
parents:
2456
diff
changeset
|
186 |
.B \-w |
b5894d78c55a
5016095 nightly should help determine what really changes from build to build
esaxe
parents:
2456
diff
changeset
|
187 |
Report which proto area objects differ between this and the last build. |
b5894d78c55a
5016095 nightly should help determine what really changes from build to build
esaxe
parents:
2456
diff
changeset
|
188 |
See wsdiff(1) for details. Note that the proto areas used for comparison |
b5894d78c55a
5016095 nightly should help determine what really changes from build to build
esaxe
parents:
2456
diff
changeset
|
189 |
are the last ones constructed as part of the build. As an example, if both |
b5894d78c55a
5016095 nightly should help determine what really changes from build to build
esaxe
parents:
2456
diff
changeset
|
190 |
a non-debug and debug build are performed (in that order), then the debug |
b5894d78c55a
5016095 nightly should help determine what really changes from build to build
esaxe
parents:
2456
diff
changeset
|
191 |
proto area will be used for comparison (which might not be what you want). |
0 | 192 |
.LP |
193 |
.B Groups of options |
|
194 |
.TP 10 |
|
195 |
.B \-G |
|
196 |
Gate keeper default group of options (-au) |
|
197 |
.TP |
|
198 |
.B \-I |
|
199 |
Integration engineer default group of options (-ampu) |
|
200 |
.TP |
|
201 |
.B \-R |
|
202 |
Default group of options for building a release (-mp) |
|
203 |
||
204 |
.LP |
|
205 |
.B Miscellaneous options |
|
206 |
.TP 10 |
|
207 |
.B \-V VERS |
|
208 |
set the build version string to VERS, overriding VERSION |
|
209 |
.TP |
|
210 |
.B \-X |
|
211 |
do IA32 realmode builds (requires access to a |
|
212 |
properly-configured NT build machine and root permissions) |
|
213 |
.TP |
|
214 |
.B \-S E | D | H |
|
215 |
Build the Export, Domestic, or Hybrid source product. Only Export and |
|
216 |
Domestic are truly buildable at this time. |
|
217 |
||
218 |
.LP |
|
219 |
.SH ENVIRONMENT VARIABLES |
|
220 |
.LP |
|
221 |
Here is a list of prominent environment variables that |
|
222 |
.I nightly |
|
223 |
references and the meaning of each variable. |
|
224 |
.LP |
|
225 |
.RE |
|
226 |
.B CODEMGR_WS |
|
227 |
.RS 5 |
|
228 |
The root of your Teamware workspace, which is the directory |
|
229 |
containing Codemgr_wsdata. This is the source to be built |
|
230 |
.LP |
|
231 |
.RE |
|
232 |
.B PARENT_WS |
|
233 |
.RS 5 |
|
234 |
The root of the Teamware workspace which is the parent of the |
|
235 |
one being built; |
|
236 |
.I nightly |
|
237 |
uses this for the bringover if $CLONE_WS is not defined |
|
238 |
.LP |
|
239 |
.RE |
|
240 |
.B CLONE_WS |
|
241 |
.RS 5 |
|
242 |
The clone of the parent Teamware workspace; |
|
243 |
.I nightly |
|
244 |
uses this for the bringover if it is defined, to avoid locking out |
|
245 |
updates to the parent for the duration of the bringover |
|
246 |
.LP |
|
247 |
.RE |
|
248 |
.B SRC |
|
249 |
.RS 5 |
|
250 |
Root of OS-Net source code, referenced by the Makefiles. It is |
|
251 |
the starting point of build activity. It should be expressed |
|
252 |
in terms of $CODEMGR_WS |
|
253 |
.LP |
|
254 |
.RE |
|
255 |
.B ROOT |
|
256 |
.RS 5 |
|
257 |
Root of the proto area for the build. The makefiles direct |
|
258 |
the installation of header files and libraries to this area and |
|
259 |
direct references to these files by builds of commands and other |
|
260 |
targets. It should be expressed in terms of $CODEMGR_WS |
|
261 |
.LP |
|
262 |
.RE |
|
263 |
.B MACH |
|
264 |
.RS 5 |
|
265 |
The instruction set architecture of the build machine as given |
|
266 |
by \fIuname -p\fP, e.g. sparc, i386 |
|
267 |
.LP |
|
268 |
.RE |
|
269 |
.B LOCKNAME |
|
270 |
.RS 5 |
|
271 |
The name of the file used to lock out multiple runs of |
|
272 |
.I nightly. |
|
273 |
This should generally be left to the default setting |
|
274 |
.LP |
|
275 |
.RE |
|
276 |
.B ATLOG |
|
277 |
.RS 5 |
|
278 |
The location of the log directory maintained by |
|
279 |
.I nightly |
|
280 |
This should generally be left to the default setting |
|
281 |
.LP |
|
282 |
.RE |
|
283 |
.B LOGFILE |
|
284 |
.RS 5 |
|
285 |
The name of the log file in the $ATLOG directory maintained by |
|
286 |
.I nightly |
|
287 |
This should generally be left to the default setting |
|
288 |
.LP |
|
289 |
.RE |
|
290 |
.B STAFFER |
|
291 |
.RS 5 |
|
292 |
The non-root user identity to use for the bringover from the |
|
293 |
clone or parent workspace |
|
294 |
.LP |
|
295 |
.RE |
|
296 |
.B MAILTO |
|
297 |
.RS 5 |
|
298 |
The address to be used to send completion e-mail at the end of |
|
299 |
the build (for the -m option) |
|
300 |
.LP |
|
301 |
.RE |
|
302 |
.B REF_PROTO_LIST |
|
303 |
.RS 5 |
|
304 |
Name of file used with protocmp to compare proto area contents |
|
305 |
.LP |
|
306 |
.RE |
|
307 |
.B CPIODIR |
|
308 |
.RS 5 |
|
309 |
The destination for cpio archives. This may be relative to |
|
310 |
$CODEMGR_WS for private archives or relative to $PARENT_WS |
|
311 |
if you have different workspaces for different architectures |
|
312 |
but want one hierarchy of BFU archives |
|
313 |
.LP |
|
314 |
.RE |
|
315 |
.B PARENT_ROOT |
|
316 |
.RS 5 |
|
317 |
The parent root, which is the destination for updated headers and |
|
318 |
libraries when using the -U option |
|
319 |
.LP |
|
320 |
.RE |
|
321 |
.B RELEASE |
|
322 |
.RS 5 |
|
323 |
The release version number to be used; e.g., 5.10.1 (Note: this is set |
|
324 |
in Makefile.master and should not normally be overridden) |
|
325 |
.LP |
|
326 |
.RE |
|
327 |
.B VERSION |
|
328 |
.RS 5 |
|
329 |
The version text string to be used; e.g., "onnv:`date '+%Y-%m-%d'`" |
|
330 |
.LP |
|
331 |
.RE |
|
332 |
.B RELEASE_DATE |
|
333 |
.RS 5 |
|
334 |
The release date text to be used; e.g., October 2007 |
|
335 |
.LP |
|
336 |
.RE |
|
337 |
.B INTERNAL_RELEASE_BUILD |
|
338 |
.RS 5 |
|
339 |
See Makefile.master - but it mostly controls id strings. Generally, |
|
340 |
let |
|
341 |
.I nightly |
|
342 |
set this for you. |
|
343 |
.LP |
|
344 |
.RE |
|
345 |
.B RELEASE_BUILD |
|
346 |
.RS 5 |
|
347 |
Define this to build a release with a non-debug kernel. |
|
348 |
Generally, let |
|
349 |
.I nightly |
|
350 |
set this for you based on its options. |
|
351 |
.LP |
|
352 |
.RE |
|
353 |
.B PKGDEFS |
|
354 |
.RS 5 |
|
355 |
Points to "$SRC/pkgdefs." Not used these days. |
|
356 |
.LP |
|
357 |
.RE |
|
358 |
.B PKGARCHIVE |
|
359 |
.RS 5 |
|
360 |
The destination for packages. This may be relative to |
|
361 |
$CODEMGR_WS for private archives or relative to $PARENT_WS |
|
362 |
if you have different workspaces for different architectures |
|
363 |
but want one hierarchy of BFU archives |
|
364 |
.LP |
|
365 |
.RE |
|
366 |
.B MAKEFLAGS |
|
367 |
.RS 5 |
|
368 |
Set default flags to make; e.g., -k to build all targets regardless of errors. |
|
369 |
.LP |
|
370 |
.RE |
|
371 |
.B UT_NO_USAGE_TRACKING |
|
372 |
.RS 5 |
|
373 |
Disables usage reporting by listed Devpro tools. Otherwise it sends mail |
|
374 |
to some Devpro machine every time the tools are used. |
|
375 |
.LP |
|
376 |
.RE |
|
377 |
.B LINTDIRS |
|
378 |
.RS 5 |
|
379 |
Directories to lint with the -l option |
|
380 |
.LP |
|
381 |
.RE |
|
382 |
.B BUILD_TOOLS |
|
383 |
.RS 5 |
|
384 |
BUILD_TOOLS is the root of all tools including the compilers; e.g., |
|
385 |
/ws/onnv-tools. It is used by the makefile system, but not nightly. |
|
386 |
.LP |
|
387 |
.RE |
|
388 |
.B ONBLD_TOOLS |
|
389 |
.RS 5 |
|
390 |
ONBLD_TOOLS is the root of all the tools that are part of SUNWonbld; e.g., |
|
391 |
/ws/onnv-tools/onbld. By default, it is derived from |
|
392 |
.BR BUILD_TOOLS . |
|
393 |
It is used by the makefile system, but not nightly. |
|
394 |
.LP |
|
395 |
.RE |
|
396 |
.B SPRO_ROOT |
|
397 |
.RS 5 |
|
398 |
The gate-defined default location for the Sun compilers, e.g. |
|
399 |
/ws/onnv-tools/SUNWspro. By default, it is derived from |
|
400 |
.BR BUILD_TOOLS . |
|
401 |
It is used by the makefile system, but not nightly. |
|
402 |
.LP |
|
403 |
.RE |
|
404 |
.B JAVA_ROOT |
|
405 |
.RS 5 |
|
406 |
The location for the java compilers for the build, generally /usr/java. |
|
407 |
.LP |
|
408 |
.RE |
|
409 |
.B OPTHOME |
|
410 |
.RS 5 |
|
411 |
The gate-defined default location of things formerly in /opt; e.g., |
|
412 |
/ws/onnv-tools. This is used by nightly, but not the makefiles. |
|
413 |
.LP |
|
414 |
.RE |
|
415 |
.B TEAMWARE |
|
416 |
.RS 5 |
|
417 |
The gate-defined default location for the Teamware tools; e.g., |
|
418 |
/ws/onnv-tools/SUNWspro. By default, it is derived from |
|
419 |
.BR OPTHOME . |
|
420 |
This is used by nightly, but not the makefiles. |
|
421 |
.LP |
|
422 |
.RE |
|
423 |
.B EXPORT_SRC |
|
424 |
.RS 5 |
|
425 |
The source product has no SCCS history, and is modified to remove source |
|
426 |
that cannot be shipped. EXPORT_SRC is where the clear files are copied, then |
|
427 |
modified with 'make EXPORT_SRC' |
|
428 |
.LP |
|
429 |
.RE |
|
430 |
.B CRYPT_SRC |
|
431 |
.RS 5 |
|
432 |
CRYPT_SRC is similar to EXPORT_SRC, but after 'make CRYPT_SRC' the files in |
|
433 |
xmod/cry_files are saved. They are dropped on the exportable source to create |
|
434 |
the domestic build |
|
435 |
.RE |
|
436 |
.LP |
|
437 |
.B CHECK_PATHS |
|
438 |
.RS 5 |
|
439 |
Normally, nightly runs the 'checkpaths' script to check for |
|
440 |
discrepancies among the files that list paths to other files, such as |
|
441 |
exception lists and req.flg. Set this flag to 'n' to disable this |
|
442 |
check, which appears in the nightly output as "Check lists of files." |
|
443 |
.RE |
|
444 |
.LP |
|
445 |
.B CHECK_DMAKE |
|
446 |
.RS 5 |
|
2294
658bd7c13512
4416654 warning filter list in nightly should be cleaned up
meem
parents:
0
diff
changeset
|
447 |
Nightly validates that the version of dmake encountered is known to be |
658bd7c13512
4416654 warning filter list in nightly should be cleaned up
meem
parents:
0
diff
changeset
|
448 |
safe to use. Set this flag to 'n' to disable this test, allowing any |
658bd7c13512
4416654 warning filter list in nightly should be cleaned up
meem
parents:
0
diff
changeset
|
449 |
version of dmake to be used. |
0 | 450 |
.RE |
451 |
.LP |
|
2456
0bd2410bad66
6451253 6451117 should have spent a bit more time in code review
rscott
parents:
2371
diff
changeset
|
452 |
.B POST_NIGHTLY |
0bd2410bad66
6451253 6451117 should have spent a bit more time in code review
rscott
parents:
2371
diff
changeset
|
453 |
.RS 5 |
0bd2410bad66
6451253 6451117 should have spent a bit more time in code review
rscott
parents:
2371
diff
changeset
|
454 |
The command specified here will be executed at the end of nightly. The |
0bd2410bad66
6451253 6451117 should have spent a bit more time in code review
rscott
parents:
2371
diff
changeset
|
455 |
return status of nightly - one of "Completed", "Interrupted", or "Failed" - |
0bd2410bad66
6451253 6451117 should have spent a bit more time in code review
rscott
parents:
2371
diff
changeset
|
456 |
will be available in the environment variable NIGHTLY_STATUS. Any other |
0bd2410bad66
6451253 6451117 should have spent a bit more time in code review
rscott
parents:
2371
diff
changeset
|
457 |
environment variables exported in the environment file or by nightly are |
0bd2410bad66
6451253 6451117 should have spent a bit more time in code review
rscott
parents:
2371
diff
changeset
|
458 |
available, although these are not stable, and should be checked before use. |
0bd2410bad66
6451253 6451117 should have spent a bit more time in code review
rscott
parents:
2371
diff
changeset
|
459 |
The command output will be appended to the mail message and log file. |
0bd2410bad66
6451253 6451117 should have spent a bit more time in code review
rscott
parents:
2371
diff
changeset
|
460 |
.RE |
0bd2410bad66
6451253 6451117 should have spent a bit more time in code review
rscott
parents:
2371
diff
changeset
|
461 |
.LP |
0 | 462 |
.SH REALMODE ENVIRONMENT VARIABLES |
463 |
.LP |
|
464 |
The following environment variables referenced by |
|
465 |
.I nightly |
|
466 |
are only required on IA32 realmode builds, enabled with option -X. |
|
467 |
.LP |
|
468 |
.B NTSERVER |
|
469 |
.RS 5 |
|
470 |
The host name of the NT server to be used for realmode builds. |
|
471 |
It is unlikely there will be any public NT machines available, |
|
472 |
so you'll most likely need to set one of these up for your project's |
|
473 |
use if you need to build realmode. |
|
474 |
.LP |
|
475 |
.RE |
|
476 |
.B IA32_IHV_WS |
|
477 |
.RS 5 |
|
478 |
Reference to the IHV workspace containing IHV driver binaries. |
|
479 |
The IHV workspace must be fully built before starting the ON realmode build. |
|
480 |
.LP |
|
481 |
.RE |
|
482 |
.B IA32_IHV_ROOT |
|
483 |
.RS 5 |
|
484 |
Reference to the IHV workspace proto area. |
|
485 |
The IHV workspace must be fully built before starting the ON realmode build. |
|
486 |
.LP |
|
487 |
.RE |
|
488 |
.B IA32_IHV_PKGS |
|
489 |
.RS 5 |
|
490 |
Reference to the IHV workspace packages. |
|
491 |
The IHV workspace must be fully built before starting the ON realmode build. |
|
492 |
.LP |
|
493 |
.RE |
|
494 |
.B IA32_IHV_BINARY_PKGS |
|
495 |
.RS 5 |
|
496 |
Reference to binary-only IHV packages. These packages must |
|
497 |
be available before starting the ON realmode build. |
|
498 |
.LP |
|
499 |
.RE |
|
500 |
.B DCB_ROOT |
|
501 |
.RS 5 |
|
502 |
The DCB proto area containing all the individual realmode |
|
503 |
drivers used to construct the boot floppy. |
|
504 |
.LP |
|
505 |
.RE |
|
506 |
.B BOOTFLOPPY_ROOT |
|
507 |
.RS 5 |
|
508 |
Boot floppy proto area containing the actual boot floppy image |
|
509 |
resulting from the build. |
|
510 |
.LP |
|
511 |
.RE |
|
512 |
.B SPARC_RM_PKGARCHIVE |
|
513 |
.RS 5 |
|
514 |
Destination for sparc realmode package SUNWrmodu. |
|
515 |
Yes, this sparc package really is built on x86. |
|
516 |
.LP |
|
517 |
.RE |
|
518 |
.B REF_PROTO_LIST_DCB |
|
519 |
.RS 5 |
|
520 |
This is the reference DCB proto area to compare against |
|
521 |
the results of your build. This makes it easy to see |
|
522 |
the changes introduced from one build to the next. |
|
523 |
.LP |
|
524 |
.RE |
|
525 |
.B REF_PROTO_LIST_BOOTFLOPPY |
|
526 |
.RS 5 |
|
527 |
This is the reference BootFloppy proto area to compare against |
|
528 |
the results of your build. This makes it easy to see |
|
529 |
the changes introduced from one build to the next. |
|
530 |
.SH REALMODE BUILDS |
|
531 |
.LP |
|
532 |
Since realmode builds are always non-DEBUG, there's no difference |
|
533 |
between the DEBUG & non-DEBUG versions of the realmode packages. |
|
534 |
All the realmode and IHV packages are installed by |
|
535 |
.I nightly |
|
536 |
in both the nightly and nightly-nd |
|
537 |
packages so both sets of packages are complete. |
|
538 |
This means both the IHV and ON builds must include non-DEBUG. |
|
539 |
.SH BUILDING THE IHV WORKSPACE |
|
540 |
.LP |
|
541 |
The IHV workspace can be built with |
|
542 |
.I nightly. |
|
543 |
The recommended options are: |
|
544 |
.LP |
|
545 |
.RS 5 |
|
546 |
NIGHTLY_OPTIONS="-pmWN" |
|
547 |
.RE |
|
548 |
.LP |
|
549 |
The NTSERVER variable must be set to provide the NT server |
|
550 |
to be used for the realmode part of the IHV build. None |
|
551 |
of the other realmode environment variables needed for |
|
552 |
ON realmode builds are required to build the IHV |
|
553 |
workspace. |
|
554 |
.SH EXAMPLES |
|
555 |
.LP |
|
556 |
Start with the example file in usr/src/tools/env/developer.sh |
|
557 |
(or gatekeeper.sh), copy to myenv and make your changes. |
|
558 |
.LP |
|
559 |
.PD 0 |
|
560 |
# grep NIGHTLY_OPTIONS myenv |
|
561 |
.LP |
|
562 |
NIGHTLY_OPTIONS="-ACrlapDm" |
|
563 |
.LP |
|
564 |
export NIGHTLY_OPTIONS |
|
565 |
.LP |
|
566 |
# /opt/onbld/bin/nightly -i myenv |
|
567 |
.LP |