Print this page
3882 remove xmod & friends
Split |
Close |
Expand all |
Collapse all |
--- old/usr/src/tools/scripts/nightly.1
+++ new/usr/src/tools/scripts/nightly.1
1 1 .\" "
2 2 .\" " The contents of this file are subject to the terms of the
3 3 .\" " Common Development and Distribution License (the "License").
4 4 .\" " You may not use this file except in compliance with the License.
5 5 .\" "
6 6 .\" " You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
7 7 .\" " or http://www.opensolaris.org/os/licensing.
8 8 .\" " See the License for the specific language governing permissions
9 9 .\" " and limitations under the License.
10 10 .\" "
11 11 .\" " When distributing Covered Code, include this CDDL HEADER in each
12 12 .\" " file and include the License file at usr/src/OPENSOLARIS.LICENSE.
13 13 .\" " If applicable, add the following below this CDDL HEADER, with the
14 14 .\" " fields enclosed by brackets "[]" replaced with your own identifying
15 15 .\" " information: Portions Copyright [yyyy] [name of copyright owner]
16 16 .\" "
17 17 .\" " CDDL HEADER END
18 18 .\" "
19 19 .\" "Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
20 20 .\" "Copyright 2012 Joshua M. Clulow <josh@sysmgr.org>
21 21 .\" "
22 22 .TH nightly 1 "6 July 2010"
23 23 .SH NAME
24 24 .I nightly
25 25 \- build an OS-Net consolidation overnight
26 26 .SH SYNOPSIS
27 27 \fBnightly [-in] [-V VERS] <env_file>\fP
28 28 .LP
29 29 .SH DESCRIPTION
30 30 .IX "OS-Net build tools" "nightly" "" "\fBnightly\fP"
31 31 .LP
32 32 .I nightly,
33 33 the mother of all build scripts,
34 34 can bringover, build, archive, package, error check, and
35 35 generally do everything it takes to
36 36 turn OS/Net consolidation source code into useful stuff.
37 37 It is customizable to permit you to run anything from a
38 38 simple build to all of the cross-checking a gatekeeper
39 39 needs. The advantage to using
40 40 .I nightly
41 41 is that you build things correctly, consistently and
42 42 automatically, with the best practices; building with
43 43 .I nightly
44 44 can mean never having to say you're sorry to your
45 45 gatekeeper.
46 46 .LP
47 47 More
48 48 specifically,
49 49 .I nightly
50 50 performs the following tasks, in order, if
51 51 all these things are desired:
52 52 .LP
53 53 .RS
54 54 .TP
55 55 \(bu
56 56 perform a "make clobber" to clean up old binaries
57 57 .TP
58 58 \(bu
59 59 bringover from the identified parent gate/clone
60 60 .TP
61 61 \(bu
62 62 perform non-DEBUG and DEBUG builds
63 63 .TP
64 64 \(bu
65 65 list proto area files and compare with previous list
66 66 .TP
67 67 \(bu
68 68 copy updated proto area to parent
69 69 .TP
70 70 \(bu
71 71 list shared lib interface and compare with previous list
72 72 .TP
73 73 \(bu
74 74 perform a "make lint" of the kernel and report errors
75 75 .TP
76 76 \(bu
77 77 perform a "make check" to report hdrchk/cstyle errors
78 78 .TP
79 79 \(bu
80 80 report the presence of any core files
81 81 .TP
82 82 \(bu
83 83 check the ELF runtime attributes of all dynamic objects
84 84 .TP
85 85 \(bu
86 86 check for unreferenced files
87 87 .TP
88 88 \(bu
89 89 report on which proto area objects have changed (since the last build)
90 90 .TP
91 91 \(bu
92 92 report the total build time
93 93 .TP
94 94 \(bu
95 95 save a detailed log file for reference
96 96 .TP
97 97 \(bu
98 98 mail the user a summary of the completed build
99 99 .RE
100 100 .LP
101 101 The actions of the script are almost completely determined by
102 102 the environment variables in the
103 103 .I env
104 104 file, the only necessary argument. Ths only thing you really
105 105 need to use
106 106 .I nightly
107 107 is an
108 108 .I env
109 109 file that does what you want.
110 110 .LP
111 111 Like most of the other build tools in usr/src/tools, this script tends
112 112 to change on a fairly regular basis; do not expect to be able to build
113 113 OS/Net with a version of nightly significantly older than your source
114 114 tree. It has what is effectively a Consolidation Private relationship
115 115 to other build tools and with many parts of the OS/Net makefiles,
116 116 although it may also be used to build other consolidations.
117 117 .LP
118 118 .SH NIGHTLY_OPTIONS
119 119 The environment variable NIGHTLY_OPTIONS controls the actions
120 120 .I nightly
121 121 will take as it proceeds.
122 122 The -i, -n, +t and -V options may also be used from the command
123 123 line to control the actions without editing your environment file.
124 124 The -i and -n options complete the build more quickly by bypassing
125 125 some actions. If NIGHTLY_OPTIONS is not set, then "-Bmt" build
126 126 options will be used.
127 127
128 128 .B Basic action options
129 129 .TP 10
130 130 .B \-D
131 131 Do a build with DEBUG on (non-DEBUG is built by default)
132 132 .TP
133 133 .B \-F
134 134 Do _not_ do a non-DEBUG build (use with -D to get just a DEBUG build)
135 135 .TP
136 136 .B \-M
137 137 Do not run pmodes (safe file permission checker)
138 138 .TP
139 139 .B \-i
140 140 Do an incremental build, suppressing the "make clobber" that by
141 141 default removes all existing binaries and derived files. From the
142 142 command line, -i also suppresses the lint pass and the cstyle/hdrchk
143 143 pass
144 144 .TP
145 145 .B \-n
146 146 Suppress the bringover so that the build will start immediately with
147 147 current source code
148 148 .TP
149 149 .B \-o
150 150 Do an "old style" (pre-S10) build using root privileges to set OWNER
151 151 and GROUP from the Makefiles.
152 152 .TP
153 153 .B \-p
154 154 Create packages for regular install
155 155 .TP
156 156 .B \-U
157 157 Update proto area in the parent workspace
158 158 .TP
159 159 .B \-u
160 160 Update the parent workspace with files generated by the build, as follows.
161 161 .RS
162 162 .TP
163 163 \(bu
164 164 Copy proto_list_${MACH} and friends to usr/src in the parent.
165 165 .TP
166 166 \(bu
167 167 When used with -f, build a usr/src/unrefmaster.out in
168 168 the parent by merging all the usr/src/unref-${MACH}.out files in the
169 169 parent.
170 170 .TP
171 171 \(bu
172 172 When used with -A or -r, copy the contents of the resulting
173 173 ELF-data.${MACH} directory to usr/src/ELF-data.${MACH} in the parent
174 174 workspace.
175 175 .RE
176 176 .TP
177 177 .B \-m
178 178 Send mail to $MAILTO at end of build
179 179 .TP
180 180 .B \-t
181 181 Build and use the tools in $SRC/tools (default setting).
182 182 .TP
183 183 .B \+t
184 184 Use the build tools in "$ONBLD_TOOLS/bin".
185 185
186 186 .LP
187 187 .B Code checking options
188 188 .TP 10
189 189 .B \-A
190 190 Check for ABI discrepancies in .so files.
191 191 It is only required for shared object developers when there is an
192 192 addition, deletion or change of interface in the .so files.
193 193 .TP
194 194 .B \-C
195 195 Check for cstyle/hdrchk errors
196 196 .TP
197 197 .B \-f
198 198 Check for unreferenced files. Since the full workspace must be built
199 199 in order to accurately identify unreferenced files, -f is ignored for
200 200 incremental (-i) builds, or builds that do not include -l, and -p.
201 201 .TP
202 202 .B \-r
203 203 Check the ELF runtime attributes of all dynamic objects
204 204 .TP
205 205 .B \-l
206 206 Do "make lint" in $LINTDIRS (default: $SRC n)
207 207 .TP
208 208 .B \-N
209 209 Do not run protocmp or checkpaths (note: this option is not
210 210 recommended, especially in conjunction with the \-p option)
211 211 .TP
212 212 .B \-W
213 213 Do not report warnings (for freeware gate ONLY)
214 214 .TP
215 215 .B \-w
216 216 Report which proto area objects differ between this and the last build.
217 217 See wsdiff(1) for details. Note that the proto areas used for comparison
218 218 are the last ones constructed as part of the build. As an example, if both
219 219 a non-debug and debug build are performed (in that order), then the debug
220 220 proto area will be used for comparison (which might not be what you want).
221 221 .LP
222 222 .B Groups of options
223 223 .TP 10
224 224 .B \-G
225 225 Gate keeper default group of options (-u)
226 226 .TP
227 227 .B \-I
228 228 Integration engineer default group of options (-mpu)
229 229 .TP
230 230 .B \-R
231 231 Default group of options for building a release (-mp)
232 232
233 233 .LP
234 234 .B Source Build options
235 235 .TP 10
236 236 .B \-S E | D | H
237 237 Build the Export, Domestic, or Hybrid source product. Only Export and
238 238 Domestic are truly buildable at this time.
239 239 .TP 10
240 240 .B \-S O
241 241 Simulate an OpenSolaris build on a full tree. This can be used by
242 242 internal developers to ensure that they haven't broken the build for
243 243 external developers.
244 244 .LP
245 245 Source build options only make sense for a full internal tree (open
246 246 and closed source). Only one source build option can be specified at
247 247 a time.
248 248
249 249 .LP
250 250 .B Miscellaneous options
251 251 .TP 10
252 252 .B \-O
253 253 generate deliverables for OpenSolaris. Tarballs containing signed
254 254 cryptographic binaries and binaries
255 255 of closed-source components are put in $CODEMGR_WS. (The
256 256 cryptographic tarballs are copies of the
257 257 ones that are put in the parent directory of
258 258 $PKGARCHIVE.)
259 259 .TP 10
260 260 .B \-V VERS
261 261 set the build version string to VERS, overriding VERSION
262 262 .TP
263 263 .B \-X
264 264 Copies the proto area and packages from the IHV and IHV-bin gates into the
265 265 nightly proto and package areas. This is only available on i386. See
266 266 .B REALMODE ENVIRONMENT VARIABLES
267 267 and
268 268 .B BUILDING THE IHV WORKSPACE
269 269 below.
270 270
271 271 .LP
272 272 .SH ENVIRONMENT VARIABLES
273 273 .LP
274 274 Here is a list of prominent environment variables that
275 275 .I nightly
276 276 references and the meaning of each variable.
277 277 .LP
278 278 .RE
279 279 .B CODEMGR_WS
280 280 .RS 5
281 281 The root of your workspace, including whatever metadata is kept by
282 282 the source code management system. This is the workspace in which the
283 283 build will be done.
284 284 .RE
285 285 .LP
286 286 .B PARENT_WS
287 287 .RS 5
288 288 The root of the workspace that is the parent of the
289 289 one being built. This is particularly relevant for configurations
290 290 with a main
291 291 workspace and build workspaces underneath it; see the
292 292 \-u and \-U
293 293 options as well as the PKGARCHIVE environment variable, for more
294 294 information.
295 295 .RE
296 296 .LP
297 297 .B BRINGOVER_WS
298 298 .RS 5
299 299 This is the workspace from which
300 300 .I nightly
301 301 will fetch sources to either populate or update your workspace;
302 302 it defaults to $CLONE_WS.
303 303 .RE
304 304 .LP
305 305 .B CLOSED_BRINGOVER_WS
306 306 .RS 5
307 307 A full Mercurial workspace has two repositories: one for open source
308 308 and one for closed source. If this variable is non-null,
309 309 .I nightly
310 310 will pull from the repository that it names to get the closed source.
311 311 It defaults to $CLOSED_CLONE_WS.
312 312 .LP
313 313 If $CODEMGR_WS already exists and contains only the open repository,
314 314 .I nightly
315 315 will ignore this variable; you'll need to pull the closed repository
316 316 by hand if you want it.
317 317 .RE
318 318 .LP
319 319 .B CLONE_WS
320 320 .RS 5
321 321 This is the workspace from which
322 322 .I nightly
323 323 will fetch sources by default. This is
324 324 often distinct from the parent, particularly if the parent is a gate.
325 325 .RE
326 326 .LP
327 327 .B CLOSED_CLONE_WS
328 328 .RS 5
329 329 This is the default closed-source Mercurial repository that
330 330 .I nightly
331 331 might pull from (see
332 332 .B CLOSED_BRINGOVER_WS
333 333 for details).
334 334 .RE
335 335 .LP
336 336 .B SRC
337 337 .RS 5
338 338 Root of OS-Net source code, referenced by the Makefiles. It is
339 339 the starting point of build activity. It should be expressed
340 340 in terms of $CODEMGR_WS.
341 341 .RE
342 342 .LP
343 343 .B ROOT
344 344 .RS 5
345 345 Root of the proto area for the build. The makefiles direct
346 346 installation of build products to this area and
347 347 direct references to these files by builds of commands and other
348 348 targets. It should be expressed in terms of $CODEMGR_WS.
349 349 .LP
350 350 If $MULTI_PROTO is "no", $ROOT may contain a DEBUG or non-DEBUG
351 351 build. If $MULTI_PROTO is "yes", $ROOT contains the DEBUG build and
352 352 $ROOT-nd contains the non-DEBUG build.
353 353 .LP
354 354 For OpenSolaris deliveries (\fB\-O\fR), $ROOT-closed contains a parallel
355 355 proto area containing the DEBUG build of just usr/closed components, and
356 356 $ROOT-nd-closed contains the non-DEBUG equivalent.
357 357 .RE
358 358 .LP
359 359 .B TOOLS_ROOT
360 360 .RS 5
361 361 Root of the tools proto area for the build. The makefiles direct
362 362 installation of tools build products to this area. Unless \fB+t\fR
363 363 is part of $NIGHTLY_OPTIONS, these tools will be used during the
364 364 build.
365 365 .LP
366 366 As built by nightly, this will always contain non-DEBUG objects.
367 367 Therefore, this will always have a -nd suffix, regardless of
368 368 $MULTI_PROTO.
369 369 .RE
370 370 .LP
371 371 .B MACH
372 372 .RS 5
373 373 The instruction set architecture of the build machine as given
374 374 by \fIuname -p\fP, e.g. sparc, i386.
375 375 .RE
376 376 .LP
377 377 .B LOCKNAME
378 378 .RS 5
379 379 The name of the file used to lock out multiple runs of
380 380 .IR nightly .
381 381 This should generally be left to the default setting.
382 382 .RE
383 383 .LP
384 384 .B ATLOG
385 385 .RS 5
386 386 The location of the log directory maintained by
387 387 .IR nightly .
388 388 This should generally be left to the default setting.
389 389 .RE
390 390 .LP
391 391 .B LOGFILE
392 392 .RS 5
393 393 The name of the log file in the $ATLOG directory maintained by
394 394 .IR nightly .
395 395 This should generally be left to the default setting.
396 396 .RE
397 397 .LP
398 398 .B STAFFER
399 399 .RS 5
400 400 The non-root account to use on the build machine for the
401 401 bringover from the clone or parent workspace.
402 402 This may not be the same identify used by the SCM.
403 403 .RE
404 404 .LP
405 405 .B MAILTO
406 406 .RS 5
407 407 The address to be used to send completion e-mail at the end of
408 408 the build (for the \-m option).
409 409 .RE
410 410 .LP
411 411 .B MAILFROM
412 412 .RS 5
413 413 The address to be used for From: in the completion e-mail at the
414 414 end of the build (for the \-m option).
415 415 .RE
416 416 .LP
417 417 .B REF_PROTO_LIST
418 418 .RS 5
419 419 Name of file used with protocmp to compare proto area contents.
420 420 .RE
421 421 .LP
422 422 .B PARENT_ROOT
423 423 .RS 5
424 424 The parent root, which is the destination for copying the proto
425 425 area(s) when using the \-U option.
426 426 .RE
427 427 .LP
428 428 .B PARENT_TOOLS_ROOT
429 429 .RS 5
430 430 The parent tools root, which is the destination for copying the tools
431 431 proto area when using the \-U option.
432 432 .RE
433 433 .LP
434 434 .B RELEASE
435 435 .RS 5
436 436 The release version number to be used; e.g., 5.10.1 (Note: this is set
437 437 in Makefile.master and should not normally be overridden).
438 438 .RE
439 439 .LP
440 440 .B VERSION
441 441 .RS 5
442 442 The version text string to be used; e.g., "onnv:`date '+%Y-%m-%d'`".
443 443 .RE
444 444 .LP
445 445 .B RELEASE_DATE
446 446 .RS 5
447 447 The release date text to be used; e.g., October 2009. If not set in
448 448 your environment file, then this text defaults to the output from
449 449 $(LC_ALL=C date +"%B %Y"); e.g., "October 2009".
450 450 .RE
451 451 .LP
452 452 .B INTERNAL_RELEASE_BUILD
453 453 .RS 5
454 454 See Makefile.master - but it mostly controls id strings. Generally,
455 455 let
456 456 .I nightly
457 457 set this for you.
458 458 .RE
459 459 .LP
460 460 .B RELEASE_BUILD
461 461 .RS 5
462 462 Define this to build a release with a non-DEBUG kernel.
463 463 Generally, let
464 464 .I nightly
465 465 set this for you based on its options.
466 466 .RE
467 467 .LP
468 468 .B PKGARCHIVE
469 469 .RS 5
470 470 The destination for packages. This may be relative to
471 471 $CODEMGR_WS for private packages or relative to $PARENT_WS
472 472 if you have different workspaces for different architectures
473 473 but want one hierarchy of packages.
474 474 .RE
475 475 .LP
476 476 .B MAKEFLAGS
477 477 .RS 5
478 478 Set default flags to make; e.g., -k to build all targets regardless of errors.
479 479 .RE
480 480 .LP
481 481 .B UT_NO_USAGE_TRACKING
482 482 .RS 5
483 483 Disables usage reporting by listed Devpro tools. Otherwise it sends mail
484 484 to some Devpro machine every time the tools are used.
485 485 .RE
486 486 .LP
487 487 .B LINTDIRS
488 488 .RS 5
489 489 Directories to lint with the \-l option.
490 490 .RE
491 491 .LP
492 492 .B BUILD_TOOLS
493 493 .RS 5
494 494 BUILD_TOOLS is the root of all tools including the compilers; e.g.,
495 495 /ws/onnv-tools. It is used by the makefile system, but not nightly.
496 496 .RE
497 497 .LP
498 498 .B ONBLD_TOOLS
499 499 .RS 5
500 500 ONBLD_TOOLS is the root of all the tools that are part of SUNWonbld; e.g.,
501 501 /ws/onnv-tools/onbld. By default, it is derived from
502 502 .BR BUILD_TOOLS .
503 503 It is used by the makefile system, but not nightly.
504 504 .RE
505 505 .LP
506 506 .B SPRO_ROOT
507 507 .RS 5
508 508 The gate-defined default location for the Sun compilers, e.g.
509 509 /ws/onnv-tools/SUNWspro. By default, it is derived from
510 510 .BR BUILD_TOOLS .
511 511 It is used by the makefile system, but not nightly.
512 512 .RE
513 513 .LP
514 514 .B JAVA_ROOT
515 515 .RS 5
516 516 The location for the java compilers for the build, generally /usr/java.
517 517 .RE
518 518 .LP
519 519 .B OPTHOME
520 520 .RS 5
521 521 The gate-defined default location of things formerly in /opt; e.g.,
522 522 /ws/onnv-tools. This is used by nightly, but not the makefiles.
523 523 .RE
524 524 .LP
↓ open down ↓ |
524 lines elided |
↑ open up ↑ |
525 525 .B TEAMWARE
526 526 .RS 5
527 527 The gate-defined default location for the Teamware tools; e.g.,
528 528 /ws/onnv-tools/SUNWspro. By default, it is derived from
529 529 .BR OPTHOME .
530 530 This is used by nightly, but not the makefiles. There is no
531 531 corresponding variable for Mercurial or Subversion, which are assumed
532 532 to be installed in the default path.
533 533 .RE
534 534 .LP
535 -.B EXPORT_SRC
536 -.RS 5
537 -The source product has no SCCS history, and is modified to remove source
538 -that cannot be shipped. EXPORT_SRC is where the clear files are copied, then
539 -modified with 'make EXPORT_SRC'.
540 -.RE
541 -.LP
542 -.B CRYPT_SRC
543 -.RS 5
544 -CRYPT_SRC is similar to EXPORT_SRC, but after 'make CRYPT_SRC' the files in
545 -xmod/cry_files are saved. They are dropped on the exportable source to create
546 -the domestic build.
547 -.LP
548 -.RE
549 535 .B OPEN_SRCDIR
550 536 .RS 5
551 537 The open source tree is copied to this directory when simulating an
552 538 OpenSolaris build (\fB\-S O\fR). It defaults to $CODEMGR_WS/open_src.
553 539 .LP
554 540 .RE
555 541 .B ON_CLOSED_BINS
556 542 .RS 5
557 543 OpenSolaris builds do not contain the closed source tree. Instead,
558 544 the developer downloads a closed binaries tree and unpacks it.
559 545 .B ON_CLOSED_BINS
560 546 tells nightly
561 547 where to find these closed binaries, so that it can add them into the
562 548 build.
563 549 .LP
564 550 .RE
565 551 .B ON_CRYPTO_BINS
566 552 .RS 5
567 553 This is the path to a compressed tarball that contains debug
568 554 cryptographic binaries that have been signed to allow execution
569 555 outside of Sun, e.g., $PARENT_WS/packages/$MACH/on-crypto.$MACH.bz2.
570 556 .I nightly
571 557 will automatically adjust the path for non-debug builds. This tarball
572 558 is needed if the closed-source tree is not present. Also, it is
573 559 usually needed when generating OpenSolaris deliverables from a project
574 560 workspace. This is because most projects do not have access to the
575 561 necessary key and certificate that would let them sign their own
576 562 cryptographic binaries.
577 563 .LP
578 564 .RE
579 565 .B CHECK_PATHS
580 566 .RS 5
581 567 Normally, nightly runs the 'checkpaths' script to check for
582 568 discrepancies among the files that list paths to other files, such as
583 569 exception lists and req.flg. Set this flag to 'n' to disable this
584 570 check, which appears in the nightly output as "Check lists of files."
585 571 .RE
586 572 .LP
587 573 .B CHECK_DMAKE
588 574 .RS 5
589 575 Nightly validates that the version of dmake encountered is known to be
590 576 safe to use. Set this flag to 'n' to disable this test, allowing any
591 577 version of dmake to be used.
592 578 .RE
593 579 .LP
594 580 .B MULTI_PROTO
595 581 .RS 5
596 582 If "no" (the default),
597 583 .I nightly
598 584 will reuse $ROOT for both the DEBUG and non-DEBUG builds. If "yes",
599 585 the DEBUG build will go in $ROOT and the non-DEBUG build will go in
600 586 $ROOT-nd. Other values will be treated as "no". Use of the
601 587 .B \-O
602 588 flag forces MULTI_PROTO to "yes".
603 589 .RE
604 590 .LP
605 591 .SH NIGHTLY HOOK ENVIRONMENT VARIABLES
606 592 .LP
607 593 Several optional environment variables may specify commands to run at
608 594 various points during the build. Commands specified in the hook
609 595 variable will be run in a subshell; command output will be appended to
610 596 the mail message and log file. If the hook exits with a non-zero
611 597 status, the build is aborted immediately. Environment variables
612 598 defined in the environment file will be available.
613 599 .LP
614 600 .B SYS_PRE_NIGHTLY
615 601 .RS 5
616 602 Run just after the workspace lock is acquired. This is reserved for
617 603 per-build-machine customizations and should be set only in /etc/nightly.conf
618 604 .RE
619 605 .LP
620 606 .B PRE_NIGHTLY
621 607 .RS 5
622 608 Run just after SYS_PRE_NIGHTLY.
623 609 .RE
624 610 .LP
625 611 .B PRE_BRINGOVER
626 612 .RS 5
627 613 Run just before bringover is started; not run if no bringover is done.
628 614 .RE
629 615 .LP
630 616 .B POST_BRINGOVER
631 617 .RS 5
632 618 Run just after bringover completes; not run if no bringover is done.
633 619 .RE
634 620 .LP
635 621 .B POST_NIGHTLY
636 622 .RS 5
637 623 Run after the build completes, with the return status of nightly - one
638 624 of "Completed", "Interrupted", or "Failed" - available in the
639 625 environment variable NIGHTLY_STATUS.
640 626 .RE
641 627 .LP
642 628 .B SYS_POST_NIGHTLY
643 629 .RS 5
644 630 This is reserved for per-build-machine customizations, and runs
645 631 immedately after POST_NIGHTLY.
646 632 .RE
647 633 .LP
648 634 .SH REALMODE ENVIRONMENT VARIABLES
649 635 .LP
650 636 The following environment variables referenced by
651 637 .I nightly
652 638 are only required when the -X option is used.
653 639 .LP
654 640 .RE
655 641 .B IA32_IHV_WS
656 642 .RS 5
657 643 Reference to the IHV workspace containing IHV driver binaries.
658 644 The IHV workspace must be fully built before starting the ON realmode build.
659 645 .LP
660 646 .RE
661 647 .B IA32_IHV_ROOT
662 648 .RS 5
663 649 Reference to the IHV workspace proto area.
664 650 The IHV workspace must be fully built before starting the ON realmode build.
665 651 .LP
666 652 .RE
667 653 .B IA32_IHV_PKGS
668 654 .RS 5
669 655 Reference to the IHV workspace packages. If this is empty or the directory
670 656 is non-existent, then nightly will skip copying the packages.
671 657 .LP
672 658 .RE
673 659 .B IA32_IHV_BINARY_PKGS
674 660 .RS 5
675 661 Reference to binary-only IHV packages. If this is empty or the directory
676 662 is non-existent, then nightly will skip copying the packages.
677 663 .LP
678 664 .RE
679 665 .B SPARC_RM_PKGARCHIVE
680 666 .RS 5
681 667 Destination for sparc realmode package SUNWrmodu.
682 668 Yes, this sparc package really is built on x86.
683 669 .SH FILES
684 670 .LP
685 671 .RS 5
686 672 /etc/nightly.conf
687 673 .RE
688 674 .LP
689 675 If present, nightly executes this file just prior to executing the
690 676 .I env
691 677 file.
692 678 .SH BUILDING THE IHV WORKSPACE
693 679 .LP
694 680 The IHV workspace can be built with
695 681 .I nightly.
696 682 The recommended options are:
697 683 .LP
698 684 .RS 5
699 685 NIGHTLY_OPTIONS="-pmWN"
700 686 .RE
701 687 .LP
702 688 None of the realmode environment variables needed for ON realmode builds
703 689 are required to build the IHV workspace.
704 690 .SH EXAMPLES
705 691 .LP
706 692 Start with the example file in usr/src/tools/env/developer.sh
707 693 (or gatekeeper.sh), copy to myenv and make your changes.
708 694 .LP
709 695 .PD 0
710 696 # grep NIGHTLY_OPTIONS myenv
711 697 .LP
712 698 NIGHTLY_OPTIONS="-ACrlapDm"
713 699 .LP
714 700 export NIGHTLY_OPTIONS
715 701 .LP
716 702 # /opt/onbld/bin/nightly -i myenv
717 703 .PD
718 704 .LP
719 705 .SH SEE ALSO
720 706 .BR bldenv (1)
↓ open down ↓ |
162 lines elided |
↑ open up ↑ |
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX