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