kill tsol ("Trusted Solaris") aka TX ("Trusted Extensions")
[unleashed.git] / usr / src / cmd / Makefile
blob357a1b483a239529191c542ce4b9677ecbac8d66
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
23 # Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved.
24 # Copyright 2016 Joyent, Inc.
25 # Copyright (c) 2012 by Delphix. All rights reserved.
26 # Copyright (c) 2013 DEY Storage Systems, Inc. All rights reserved.
27 # Copyright 2014 Garrett D'Amore <garrett@damore.org>
28 # Copyright 2016 Toomas Soome <tsoome@me.com>
29 # Copyright 2016 Nexenta Systems, Inc.
32 include ../Makefile.master
35 # Note that the commands 'lp', and 'perl' are first in
36 # the list, violating alphabetical order. This is because they are very
37 # long-running and should be given the most wall-clock time for a
38 # parallel build.
40 # Commands in the FIRST_SUBDIRS list are built before starting the build
41 # of other commands. Currently this includes only 'isaexec' and
42 # 'platexec'. This is necessary because $(ROOT)/usr/lib/isaexec or
43 # $(ROOT)/usr/lib/platexec must exist when some other commands are built
44 # because their 'make install' creates a hard link to one of them.
47 FIRST_SUBDIRS= \
48 isaexec \
49 platexec
51 COMMON_SUBDIRS= \
52 allocate \
53 lp \
54 perl \
55 Adm \
56 abi \
57 adbgen \
58 acct \
59 acctadm \
60 asa \
61 ast \
62 audio \
63 auths \
64 autopush \
65 awk \
66 awk_xpg4 \
67 backup \
68 banner \
69 bart \
70 basename \
71 bc \
72 bdiff \
73 beadm \
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 ctfconvert \
104 ctfdiff \
105 ctfdump \
106 ctfmerge \
107 ctrun \
108 ctstat \
109 ctwatch \
110 datadm \
111 date \
112 dc \
113 dd \
114 deroff \
115 devfsadm \
116 syseventd \
117 devctl \
118 devinfo \
119 devmgmt \
120 devprop \
121 dfs.cmds \
122 diff \
123 diff3 \
124 diffmk \
125 dircmp \
126 dirname \
127 diskmgtd \
128 dispadmin \
129 dladm \
130 dlstat \
131 dmesg \
132 dodatadm \
133 dtrace \
134 du \
135 dumpadm \
136 dumpcs \
137 echo \
138 ed \
139 eeprom \
140 egrep \
141 eject \
142 emul64ioctl \
143 enhance \
144 env \
145 eqn \
146 expand \
147 expr \
148 exstr \
149 factor \
150 false \
151 fcinfo \
152 fcoesvc \
153 fdetach \
154 fdformat \
155 fdisk \
156 ficl \
157 filesync \
158 fgrep \
159 file \
160 find \
161 flowadm \
162 flowstat \
163 fm \
164 fmt \
165 fmthard \
166 fmtmsg \
167 fold \
168 format \
169 fs.d \
170 fstyp \
171 fuser \
172 fwflash \
173 gcore \
174 gencat \
175 geniconvtbl \
176 genmsg \
177 getconf \
178 getdevpolicy \
179 getent \
180 getfacl \
181 getmajor \
182 getopt \
183 gettext \
184 gettxt \
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 ibd_upgrade \
199 iconv \
200 id \
201 idmap \
202 infocmp \
203 init \
204 initpkg \
205 intrd \
206 intrstat \
207 ipcrm \
208 ipcs \
209 ipdadm \
210 ipf \
211 isainfo \
212 isalist \
213 itutools \
214 iscsiadm \
215 iscsid \
216 iscsitsvc \
217 isns \
218 itadm \
219 kbd \
220 keyserv \
221 killall \
222 krb5 \
223 ksh \
224 kvmstat \
225 last \
226 lastcomm \
227 latencytop \
228 ldap \
229 ldapcachemgr \
230 lgrpinfo \
231 line \
232 link \
233 dlmgmtd \
234 listen \
235 loadkeys \
236 locale \
237 lockstat \
238 locator \
239 lofiadm \
240 logadm \
241 logger \
242 login \
243 logins \
244 look \
245 ls \
246 luxadm \
247 mail \
248 mailwrapper \
249 mailx \
250 make \
251 man \
252 mandoc \
253 mdb \
254 mesg \
255 mkdir \
256 mkfifo \
257 mkfile \
258 mkmsgs \
259 mknod \
260 mkpwdict \
261 mktemp \
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 od \
287 pack \
288 pagesize \
289 passmgmt \
290 passwd \
291 pathchk \
292 pbind \
293 pcidr \
294 pcitool \
295 pfexec \
296 pfexecd \
297 pginfo \
298 pgstat \
299 pgrep \
300 picl \
301 plimit \
302 policykit \
303 pools \
304 power \
305 powertop \
306 ppgsz \
307 pg \
308 plockstat \
309 pr \
310 prctl \
311 print \
312 printenv \
313 printf \
314 priocntl \
315 profiles \
316 projadd \
317 projects \
318 prstat \
319 prtconf \
320 prtdiag \
321 prtvtoc \
322 ps \
323 psradm \
324 psrinfo \
325 psrset \
326 ptools \
327 pwck \
328 pwconv \
329 pwd \
330 pyzfs \
331 raidctl \
332 ramdiskadm \
333 rcap \
334 rcm_daemon \
335 rctladm \
336 refer \
337 regcmp \
338 renice \
339 rexd \
340 rm \
341 rmdir \
342 rmformat \
343 rmmount \
344 rmt \
345 rmvolmgr \
346 roles \
347 rpcbind \
348 rpcgen \
349 rpcinfo \
350 rpcsvc \
351 runat \
352 sa \
353 saf \
354 sasinfo \
355 savecore \
356 sbdadm \
357 script \
358 scsi \
359 sdiff \
360 sdpadm \
361 setfacl \
362 setmnt \
363 setpgrp \
364 sgs \
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 tail \
397 tar \
398 tbl \
399 tcopy \
400 tcpd \
401 terminfo \
402 th_tools \
403 tic \
404 time \
405 tip \
406 touch \
407 tput \
408 tr \
409 trapstat \
410 troff \
411 true \
412 truss \
413 tty \
414 ttymon \
415 tzreload \
416 uadmin \
417 ul \
418 units \
419 unlink \
420 unpack \
421 userattr \
422 users \
423 utmp_update \
424 utmpd \
425 uuidgen \
426 valtools \
427 vgrind \
428 volcheck \
429 volrmmount \
430 vrrpadm \
431 vscan \
432 vt \
434 wall \
435 which \
436 who \
437 whodo \
438 wracct \
439 write \
440 xargs \
441 xstr \
442 yes \
443 ypcmd \
444 yppasswd \
445 zdb \
446 zdump \
447 zfs \
448 zhack \
449 zic \
450 zinject \
451 zlogin \
452 zoneadm \
453 zoneadmd \
454 zonecfg \
455 zonename \
456 zpool \
457 zlook \
458 zonestat \
459 zstreamdump \
460 ztest
462 i386_SUBDIRS= \
463 acpi \
464 acpihpd \
465 addbadsec \
466 biosdev \
467 diskscan \
468 lms \
469 rtc \
470 ucodeadm \
473 sparc_SUBDIRS= \
474 cvcd \
475 dcs \
476 device_remap \
477 drd \
478 fruadm \
479 ldmad \
480 oplhpd \
481 prtdscp \
482 prtfru \
483 scadm \
484 sckmd \
485 sf880drd \
486 virtinfo \
487 vntsd
490 # Commands that are messaged. Note that 'lp' comes first
491 # (see previous comment about 'lp'.)
493 MSGSUBDIRS= \
494 lp \
495 abi \
496 acctadm \
497 allocate \
498 asa \
499 audio \
500 audit \
501 auditconfig \
502 auditd \
503 auditrecord \
504 auditset \
505 auths \
506 autopush \
507 awk \
508 awk_xpg4 \
509 backup \
510 banner \
511 bart \
512 basename \
513 beadm \
514 bnu \
515 busstat \
516 cal \
517 cat \
518 cdrw \
519 cfgadm \
520 checkeq \
521 checknr \
522 chgrp \
523 chmod \
524 chown \
525 cmd-crypto \
526 cmd-inet \
527 col \
528 compress \
529 consadm \
530 coreadm \
531 cpio \
532 cpc \
533 cron \
534 csh \
535 csplit \
536 ctrun \
537 ctstat \
538 ctwatch \
539 datadm \
540 date \
541 dc \
542 dcs \
543 dd \
544 deroff \
545 devfsadm \
546 dfs.cmds \
547 diff \
548 diffmk \
549 dladm \
550 dlstat \
551 du \
552 dumpcs \
553 ed \
554 eject \
555 env \
556 eqn \
557 expand \
558 expr \
559 fcinfo \
560 fgrep \
561 file \
562 filesync \
563 find \
564 flowadm \
565 flowstat \
566 fm \
567 fold \
568 fs.d \
569 fwflash \
570 geniconvtbl \
571 genmsg \
572 getconf \
573 getent \
574 gettext \
575 gettxt \
576 grep \
577 grep_xpg4 \
578 grpck \
579 gss \
580 halt \
581 head \
582 hostname \
583 hotplug \
584 iconv \
585 id \
586 idmap \
587 isaexec \
588 iscsiadm \
589 iscsid \
590 isns \
591 itadm \
592 kbd \
593 krb5 \
594 ksh \
595 last \
596 ldap \
597 ldapcachemgr \
598 lgrpinfo \
599 locale \
600 lofiadm \
601 logadm \
602 logger \
603 logins \
604 ls \
605 luxadm \
606 mailx \
607 make \
608 man \
609 mesg \
610 mkdir \
611 mkpwdict \
612 mktemp \
613 more \
614 mpathadm \
615 msgfmt \
616 mv \
617 ndmpadm \
618 ndmpstat \
619 newgrp \
620 newtask \
621 nice \
622 nohup \
623 pack \
624 passwd \
625 passmgmt \
626 pathchk \
627 pfexec \
628 pg \
629 pgrep \
630 picl \
631 pools \
632 power \
633 pr \
634 praudit \
635 print \
636 profiles \
637 projadd \
638 projects \
639 prstat \
640 prtdiag \
641 ps \
642 psrinfo \
643 ptools \
644 pwconv \
645 pwd \
646 pyzfs \
647 raidctl \
648 ramdiskadm \
649 rcap \
650 rcm_daemon \
651 refer \
652 regcmp \
653 renice \
654 roles \
655 rm \
656 rmdir \
657 rmformat \
658 rmmount \
659 rmvolmgr \
660 sasinfo \
661 sbdadm \
662 scadm \
663 script \
664 scsi \
665 sdiff \
666 sdpadm \
667 sgs \
668 shcomp \
669 smbsrv \
670 sort \
671 split \
672 srptadm \
673 stat \
674 stmfadm \
675 stmsboot \
676 strings \
677 su \
678 svc \
679 svr4pkg \
680 swap \
681 syseventadm \
682 syseventd \
683 tabs \
684 tar \
685 tbl \
686 time \
687 touch \
688 tput \
689 troff \
690 tty \
691 ttymon \
692 tzreload \
693 ul \
694 units \
695 unlink \
696 unpack \
697 userattr \
698 valtools \
699 vgrind \
700 volcheck \
701 volrmmount \
702 vrrpadm \
703 vscan \
705 who \
706 whodo \
707 wracct \
708 write \
709 xargs \
710 yppasswd \
711 zdump \
712 zfs \
713 zic \
714 zlogin \
715 zoneadm \
716 zoneadmd \
717 zonecfg \
718 zonename \
719 zpool \
720 zonestat
722 sparc_MSGSUBDIRS= \
723 fruadm \
724 prtdscp \
725 prtfru \
726 virtinfo \
727 vntsd
729 i386_MSGSUBDIRS= \
730 ucodeadm
733 # commands that use dcgettext for localized time, LC_TIME
735 DCSUBDIRS= \
736 cal \
737 cfgadm \
738 diff \
739 ls \
740 pr \
741 ps \
742 tar \
744 who \
745 whodo \
746 write
749 # commands that belong only to audit.
751 AUDITSUBDIRS= \
752 amt \
753 audit \
754 audit_warn \
755 auditconfig \
756 auditd \
757 auditrecord \
758 auditreduce \
759 auditset \
760 auditstat \
761 praudit
764 # commands not owned by the systems group
766 BWOSDIRS=
769 all := TARGET = all
770 install := TARGET = install
771 clean := TARGET = clean
772 clobber := TARGET = clobber
773 _msg := TARGET = _msg
774 _dc := TARGET = _dc
776 .KEEP_STATE:
778 SUBDIRS = $(COMMON_SUBDIRS) $($(MACH)_SUBDIRS)
780 .PARALLEL: $(BWOSDIRS) $(SUBDIRS) $(MSGSUBDIRS) $(AUDITSUBDIRS)
782 all install clean clobber: $(FIRST_SUBDIRS) .WAIT $(SUBDIRS) \
783 $(AUDITSUBDIRS)
786 # Manifests cannot be checked in parallel, because we are using
787 # the global repository that is in $(SRC)/cmd/svc/seed/global.db.
788 # For this reason, to avoid .PARALLEL and .NO_PARALLEL conflicts,
789 # we spawn off a sub-make to perform the non-parallel 'make check'
791 check:
792 $(MAKE) -f Makefile.check check
795 # The .WAIT directive works around an apparent bug in parallel make.
796 # Evidently make was getting the target _msg vs. _dc confused under
797 # some level of parallelization, causing some of the _dc objects
798 # not to be built.
800 _msg: $(MSGSUBDIRS) $($(MACH)_MSGSUBDIRS) .WAIT _dc
802 _dc: $(DCSUBDIRS)
805 # Dependencies
807 fs.d: fstyp
808 ksh: shcomp isaexec
809 mdb: terminfo
810 print: lp
811 fmt: mailx
813 $(FIRST_SUBDIRS) $(BWOSDIRS) $(SUBDIRS) $(AUDITSUBDIRS): FRC
814 @if [ -f $@/Makefile ]; then \
815 cd $@; pwd; $(MAKE) $(TARGET); \
816 else \
817 true; \
819 FRC: