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