1# 2# CDDL HEADER START 3# 4# The contents of this file are subject to the terms of the 5# Common Development and Distribution License (the "License"). 6# You may not use this file except in compliance with the License. 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# 21 22# Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved. 23 24include ../Makefile.master 25 26# 27# Note that the commands 'agents', 'lp', 'perl', and 'man' are first in 28# the list, violating alphabetical order. This is because they are very 29# long-running and should be given the most wall-clock time for a 30# parallel build. 31# 32# Commands in the FIRST_SUBDIRS list are built before starting the build 33# of other commands. Currently this includes only 'isaexec' and 34# 'platexec'. This is necessary because $(ROOT)/usr/lib/isaexec or 35# $(ROOT)/usr/lib/platexec must exist when some other commands are built 36# because their 'make install' creates a hard link to one of them. 37# 38# Commands are listed one per line so that TeamWare can auto-merge most 39# changes. 40# 41 42FIRST_SUBDIRS= \ 43 isaexec \ 44 platexec 45 46COMMON_SUBDIRS= \ 47 agents \ 48 allocate \ 49 availdevs \ 50 lp \ 51 perl \ 52 man \ 53 Adm \ 54 abi \ 55 adbgen \ 56 acct \ 57 acctadm \ 58 arch \ 59 asa \ 60 ast \ 61 audio \ 62 auths \ 63 autopush \ 64 avs \ 65 awk \ 66 awk_xpg4 \ 67 backup \ 68 banner \ 69 bart \ 70 basename \ 71 bc \ 72 bdiff \ 73 beadm \ 74 bfs \ 75 bnu \ 76 boot \ 77 busstat \ 78 cal \ 79 calendar \ 80 captoinfo \ 81 cat \ 82 cdrw \ 83 cfgadm \ 84 checkeq \ 85 checknr \ 86 chgrp \ 87 chmod \ 88 chown \ 89 chroot \ 90 clear \ 91 clinfo \ 92 cmd-crypto \ 93 cmd-inet \ 94 col \ 95 compress \ 96 consadm \ 97 coreadm \ 98 cpio \ 99 cpc \ 100 cron \ 101 crypt \ 102 csh \ 103 csplit \ 104 ctrun \ 105 ctstat \ 106 ctwatch \ 107 datadm \ 108 date \ 109 dc \ 110 dd \ 111 deroff \ 112 des \ 113 devfsadm \ 114 syseventd \ 115 devctl \ 116 devinfo \ 117 devmgmt \ 118 devprop \ 119 dfs.cmds \ 120 diff \ 121 diff3 \ 122 diffmk \ 123 dircmp \ 124 dirname \ 125 dis \ 126 diskmgtd \ 127 dispadmin \ 128 dladm \ 129 dlstat \ 130 dmesg \ 131 dodatadm \ 132 dtrace \ 133 du \ 134 dumpadm \ 135 dumpcs \ 136 echo \ 137 ed \ 138 eeprom \ 139 egrep \ 140 eject \ 141 emul64ioctl \ 142 enhance \ 143 env \ 144 eqn \ 145 expand \ 146 expr \ 147 exstr \ 148 factor \ 149 false \ 150 fcinfo \ 151 fcoesvc \ 152 fdetach \ 153 fdformat \ 154 fdisk \ 155 filesync \ 156 fgrep \ 157 file \ 158 filebench \ 159 find \ 160 flowadm \ 161 flowstat \ 162 fm \ 163 fmt \ 164 fmthard \ 165 fmtmsg \ 166 fold \ 167 format \ 168 fs.d \ 169 fstyp \ 170 fuser \ 171 fwflash \ 172 gcore \ 173 gencat \ 174 geniconvtbl \ 175 genmsg \ 176 getconf \ 177 getdevpolicy \ 178 getent \ 179 getfacl \ 180 getmajor \ 181 getopt \ 182 gettext \ 183 gettxt \ 184 grep \ 185 grep_xpg4 \ 186 groups \ 187 grpck \ 188 gss \ 189 hal \ 190 halt \ 191 head \ 192 hostid \ 193 hostname \ 194 hotplug \ 195 hotplugd \ 196 hwdata \ 197 ibd_upgrade \ 198 id \ 199 idmap \ 200 infocmp \ 201 init \ 202 initpkg \ 203 install.d \ 204 intrd \ 205 intrstat \ 206 ipcrm \ 207 ipcs \ 208 ipf \ 209 isainfo \ 210 isalist \ 211 itutools \ 212 iscsiadm \ 213 iscsid \ 214 iscsitsvc \ 215 isns \ 216 itadm \ 217 java \ 218 kbd \ 219 keyserv \ 220 killall \ 221 krb5 \ 222 ksh \ 223 kstat \ 224 last \ 225 lastcomm \ 226 latencytop \ 227 ldap \ 228 ldapcachemgr \ 229 lgrpinfo \ 230 line \ 231 link \ 232 dlmgmtd \ 233 listen \ 234 loadkeys \ 235 locale \ 236 lockstat \ 237 locator \ 238 lofiadm \ 239 logadm \ 240 logger \ 241 login \ 242 logins \ 243 look \ 244 ls \ 245 luxadm \ 246 lvm \ 247 mach \ 248 machid \ 249 mail \ 250 mailx \ 251 makekey \ 252 mdb \ 253 mesg \ 254 mkdir \ 255 mkfifo \ 256 mkfile \ 257 mkmsgs \ 258 mknod \ 259 mkpwdict \ 260 mktemp \ 261 modload \ 262 more \ 263 mpathadm \ 264 msgfmt \ 265 msgid \ 266 mt \ 267 mv \ 268 mvdir \ 269 ndmpadm \ 270 ndmpd \ 271 ndmpstat \ 272 netadm \ 273 netfiles \ 274 newform \ 275 newgrp \ 276 news \ 277 newtask \ 278 nice \ 279 nl \ 280 nlsadmin \ 281 nohup \ 282 nsadmin \ 283 nscd \ 284 oamuser \ 285 oawk \ 286 pack \ 287 pagesize \ 288 passmgmt \ 289 passwd \ 290 pathchk \ 291 pbind \ 292 pcidr \ 293 pcitool \ 294 pfexec \ 295 pfexecd \ 296 pginfo \ 297 pgstat \ 298 pgrep \ 299 picl \ 300 plimit \ 301 policykit \ 302 pools \ 303 power \ 304 powertop \ 305 ppgsz \ 306 pg \ 307 plockstat \ 308 pr \ 309 prctl \ 310 print \ 311 priocntl \ 312 profiles \ 313 projadd \ 314 projects \ 315 prstat \ 316 prtconf \ 317 prtdiag \ 318 prtvtoc \ 319 ps \ 320 psradm \ 321 psrinfo \ 322 psrset \ 323 ptools \ 324 pwck \ 325 pwconv \ 326 pwd \ 327 pyzfs \ 328 raidctl \ 329 ramdiskadm \ 330 rcap \ 331 rcm_daemon \ 332 rctladm \ 333 refer \ 334 regcmp \ 335 renice \ 336 rexd \ 337 rm \ 338 rmdir \ 339 rmformat \ 340 rmmount \ 341 rmt \ 342 rmvolmgr \ 343 roles \ 344 rpcbind \ 345 rpcgen \ 346 rpcinfo \ 347 rpcsvc \ 348 runat \ 349 sa \ 350 saf \ 351 sasinfo \ 352 savecore \ 353 sbdadm \ 354 script \ 355 scsi \ 356 sdiff \ 357 sdpadm \ 358 sendmail \ 359 setfacl \ 360 setmnt \ 361 setpgrp \ 362 setuname \ 363 sgs \ 364 sh \ 365 shcomp \ 366 smbios \ 367 smbsrv \ 368 smserverd \ 369 soelim \ 370 sort \ 371 spell \ 372 split \ 373 sqlite \ 374 srchtxt \ 375 srptadm \ 376 srptsvc \ 377 ssh \ 378 stat \ 379 stmfadm \ 380 stmfproxy \ 381 stmfsvc \ 382 stmsboot \ 383 streams \ 384 strings \ 385 su \ 386 sulogin \ 387 sunpc \ 388 svc \ 389 svr4pkg \ 390 swap \ 391 sync \ 392 sysdef \ 393 syseventadm \ 394 syslogd \ 395 tabs \ 396 tar \ 397 tbl \ 398 tcopy \ 399 tcpd \ 400 terminfo \ 401 th_tools \ 402 tic \ 403 time \ 404 tip \ 405 tnf \ 406 touch \ 407 tplot \ 408 tput \ 409 trapstat \ 410 troff \ 411 true \ 412 truss \ 413 tsol \ 414 tty \ 415 ttymon \ 416 tzreload \ 417 uadmin \ 418 ul \ 419 uname \ 420 units \ 421 unlink \ 422 unpack \ 423 userattr \ 424 users \ 425 utmp_update \ 426 utmpd \ 427 valtools \ 428 vgrind \ 429 vi \ 430 volcheck \ 431 volrmmount \ 432 vrrpadm \ 433 vscan \ 434 vt \ 435 w \ 436 wall \ 437 wbem \ 438 which \ 439 who \ 440 whodo \ 441 wracct \ 442 write \ 443 wusbadm \ 444 xargs \ 445 xstr \ 446 yes \ 447 ypcmd \ 448 yppasswd \ 449 zdb \ 450 zdump \ 451 zfs \ 452 zic \ 453 zinject \ 454 zlogin \ 455 zoneadm \ 456 zoneadmd \ 457 zonecfg \ 458 zonename \ 459 zpool \ 460 zlook \ 461 zonestat \ 462 zstreamdump \ 463 ztest 464 465$(CLOSED_BUILD)COMMON_SUBDIRS += \ 466 $(CLOSED)/cmd/iconv \ 467 $(CLOSED)/cmd/ksh \ 468 $(CLOSED)/cmd/llc2 \ 469 $(CLOSED)/cmd/localedef \ 470 $(CLOSED)/cmd/more_xpg4 \ 471 $(CLOSED)/cmd/mtst \ 472 $(CLOSED)/cmd/od \ 473 $(CLOSED)/cmd/patch \ 474 $(CLOSED)/cmd/pax \ 475 $(CLOSED)/cmd/printf \ 476 $(CLOSED)/cmd/sed \ 477 $(CLOSED)/cmd/sed_xpg4 \ 478 $(CLOSED)/cmd/tail \ 479 $(CLOSED)/cmd/tr_xpg4 480 481i386_SUBDIRS= \ 482 acpihpd \ 483 addbadsec \ 484 biosdev \ 485 diskscan \ 486 lms \ 487 ntfsprogs \ 488 parted \ 489 rtc \ 490 ucodeadm \ 491 xvm 492 493sparc_SUBDIRS= \ 494 cvcd \ 495 dcs \ 496 device_remap \ 497 drd \ 498 fps \ 499 fruadm \ 500 ldmad \ 501 oplhpd \ 502 prtdscp \ 503 prtfru \ 504 scadm \ 505 sckmd \ 506 sf880drd \ 507 virtinfo \ 508 vntsd 509 510# 511# Commands that are messaged. Note that 'lp' and 'man' come first 512# (see previous comment about 'lp' and 'man'). 513# 514MSGSUBDIRS= \ 515 lp \ 516 man \ 517 abi \ 518 acctadm \ 519 allocate \ 520 asa \ 521 audio \ 522 audit \ 523 auditconfig \ 524 auditd \ 525 auditrecord \ 526 auditset \ 527 auths \ 528 autopush \ 529 avs \ 530 awk \ 531 awk_xpg4 \ 532 backup \ 533 banner \ 534 bart \ 535 basename \ 536 beadm \ 537 bnu \ 538 busstat \ 539 cal \ 540 cat \ 541 cdrw \ 542 cfgadm \ 543 checkeq \ 544 checknr \ 545 chgrp \ 546 chmod \ 547 chown \ 548 cmd-crypto \ 549 cmd-inet \ 550 col \ 551 compress \ 552 consadm \ 553 coreadm \ 554 cpio \ 555 cpc \ 556 cron \ 557 csh \ 558 csplit \ 559 ctrun \ 560 ctstat \ 561 ctwatch \ 562 datadm \ 563 date \ 564 dc \ 565 dcs \ 566 dd \ 567 deroff \ 568 devfsadm \ 569 dfs.cmds \ 570 diff \ 571 diffmk \ 572 dladm \ 573 dlstat \ 574 du \ 575 dumpcs \ 576 ed \ 577 eject \ 578 env \ 579 eqn \ 580 expand \ 581 expr \ 582 fcinfo \ 583 fgrep \ 584 file \ 585 filesync \ 586 find \ 587 flowadm \ 588 flowstat \ 589 fm \ 590 fold \ 591 fs.d \ 592 fwflash \ 593 geniconvtbl \ 594 genmsg \ 595 getconf \ 596 getent \ 597 gettext \ 598 gettxt \ 599 grep \ 600 grep_xpg4 \ 601 grpck \ 602 gss \ 603 halt \ 604 head \ 605 hostname \ 606 hotplug \ 607 id \ 608 idmap \ 609 isaexec \ 610 iscsiadm \ 611 iscsid \ 612 isns \ 613 itadm \ 614 kbd \ 615 krb5 \ 616 ksh \ 617 kstat \ 618 last \ 619 ldap \ 620 ldapcachemgr \ 621 lgrpinfo \ 622 locale \ 623 lofiadm \ 624 logadm \ 625 logger \ 626 logins \ 627 ls \ 628 luxadm \ 629 lvm \ 630 mailx \ 631 mesg \ 632 mkdir \ 633 mkpwdict \ 634 mktemp \ 635 more \ 636 mpathadm \ 637 msgfmt \ 638 mv \ 639 ndmpadm \ 640 ndmpstat \ 641 newgrp \ 642 newtask \ 643 nice \ 644 nohup \ 645 oawk \ 646 pack \ 647 passwd \ 648 passmgmt \ 649 pathchk \ 650 pfexec \ 651 pg \ 652 pgrep \ 653 picl \ 654 pools \ 655 power \ 656 pr \ 657 praudit \ 658 print \ 659 profiles \ 660 projadd \ 661 projects \ 662 prstat \ 663 prtdiag \ 664 ps \ 665 psrinfo \ 666 ptools \ 667 pwconv \ 668 pwd \ 669 pyzfs \ 670 raidctl \ 671 ramdiskadm \ 672 rcap \ 673 rcm_daemon \ 674 refer \ 675 regcmp \ 676 renice \ 677 roles \ 678 rm \ 679 rmdir \ 680 rmformat \ 681 rmmount \ 682 rmvolmgr \ 683 sasinfo \ 684 sbdadm \ 685 scadm \ 686 script \ 687 scsi \ 688 sdiff \ 689 sdpadm \ 690 sgs \ 691 sh \ 692 shcomp \ 693 smbsrv \ 694 sort \ 695 split \ 696 srptadm \ 697 ssh \ 698 stat \ 699 stmfadm \ 700 stmsboot \ 701 strings \ 702 su \ 703 svc \ 704 svr4pkg \ 705 swap \ 706 syseventadm \ 707 syseventd \ 708 tabs \ 709 tar \ 710 tbl \ 711 time \ 712 tnf \ 713 touch \ 714 tput \ 715 troff \ 716 tsol \ 717 tty \ 718 ttymon \ 719 tzreload \ 720 ul \ 721 uname \ 722 units \ 723 unlink \ 724 unpack \ 725 userattr \ 726 valtools \ 727 vgrind \ 728 vi \ 729 volcheck \ 730 volrmmount \ 731 vrrpadm \ 732 vscan \ 733 w \ 734 wbem \ 735 who \ 736 whodo \ 737 wracct \ 738 write \ 739 wusbadm \ 740 xargs \ 741 yppasswd \ 742 zdump \ 743 zfs \ 744 zic \ 745 zlogin \ 746 zoneadm \ 747 zoneadmd \ 748 zonecfg \ 749 zonename \ 750 zpool \ 751 zonestat 752 753$(CLOSED_BUILD)MSGSUBDIRS += \ 754 $(CLOSED)/cmd/iconv \ 755 $(CLOSED)/cmd/ksh \ 756 $(CLOSED)/cmd/llc2 \ 757 $(CLOSED)/cmd/localedef \ 758 $(CLOSED)/cmd/more_xpg4 \ 759 $(CLOSED)/cmd/od \ 760 $(CLOSED)/cmd/patch \ 761 $(CLOSED)/cmd/pax \ 762 $(CLOSED)/cmd/printf \ 763 $(CLOSED)/cmd/sed \ 764 $(CLOSED)/cmd/sed_xpg4 \ 765 $(CLOSED)/cmd/tail \ 766 $(CLOSED)/cmd/tr_xpg4 767 768sparc_MSGSUBDIRS= \ 769 fruadm \ 770 prtdscp \ 771 prtfru \ 772 virtinfo \ 773 vntsd 774 775i386_MSGSUBDIRS= \ 776 ucodeadm 777 778# 779# commands that use dcgettext for localized time, LC_TIME 780# 781DCSUBDIRS= \ 782 cal \ 783 cfgadm \ 784 diff \ 785 ls \ 786 pr \ 787 ps \ 788 tar \ 789 w \ 790 who \ 791 whodo \ 792 write 793 794$(CLOSED_BUILD)DCSUBDIRS += \ 795 $(CLOSED)/cmd/pax 796 797# 798# commands that belong only to audit. 799# 800AUDITSUBDIRS= \ 801 amt \ 802 audit \ 803 audit_warn \ 804 auditconfig \ 805 auditd \ 806 auditrecord \ 807 auditreduce \ 808 auditset \ 809 auditstat \ 810 praudit 811 812# 813# commands not owned by the systems group 814# 815BWOSDIRS= 816 817 818all := TARGET = all 819install := TARGET = install 820clean := TARGET = clean 821clobber := TARGET = clobber 822lint := TARGET = lint 823_msg := TARGET = _msg 824_dc := TARGET = _dc 825 826.KEEP_STATE: 827 828SUBDIRS = $(COMMON_SUBDIRS) $($(MACH)_SUBDIRS) 829 830.PARALLEL: $(BWOSDIRS) $(SUBDIRS) $(MSGSUBDIRS) $(AUDITSUBDIRS) 831 832all install clean clobber lint: $(FIRST_SUBDIRS) .WAIT $(SUBDIRS) \ 833 $(AUDITSUBDIRS) 834 835# 836# Manifests cannot be checked in parallel, because we are using 837# the global repository that is in $(SRC)/cmd/svc/seed/global.db. 838# For this reason, to avoid .PARALLEL and .NO_PARALLEL conflicts, 839# we spawn off a sub-make to perform the non-parallel 'make check' 840# 841check: 842 $(MAKE) -f Makefile.check check 843 844# 845# The .WAIT directive works around an apparent bug in parallel make. 846# Evidently make was getting the target _msg vs. _dc confused under 847# some level of parallelization, causing some of the _dc objects 848# not to be built. 849# 850_msg: $(MSGSUBDIRS) $($(MACH)_MSGSUBDIRS) .WAIT _dc 851 852_dc: $(DCSUBDIRS) 853 854# 855# Dependencies 856# 857fs.d: fstyp 858ksh: shcomp isaexec 859print: lp 860 861$(FIRST_SUBDIRS) $(BWOSDIRS) $(SUBDIRS) $(AUDITSUBDIRS): FRC 862 @if [ -f $@/Makefile ]; then \ 863 cd $@; pwd; $(MAKE) $(TARGET); \ 864 else \ 865 true; \ 866 fi 867 868FRC: 869