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