installboot: fix stage2 size check for MBR
[unleashed.git] / usr / src / cmd / Makefile
blob45558c4a5934fbfde29e9a15c0086c9995d701d5
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 bnu \
79 boot \
80 busstat \
81 cal \
82 calendar \
83 captoinfo \
84 cat \
85 cdrw \
86 cfgadm \
87 checkeq \
88 checknr \
89 chgrp \
90 chmod \
91 chown \
92 chroot \
93 clear \
94 clinfo \
95 cmd-crypto \
96 cmd-inet \
97 col \
98 compress \
99 consadm \
100 coreadm \
101 cpio \
102 cpc \
103 cron \
104 crypt \
105 csh \
106 csplit \
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 dis \
128 diskmgtd \
129 dispadmin \
130 dladm \
131 dlstat \
132 dmesg \
133 dodatadm \
134 dtrace \
135 du \
136 dumpadm \
137 dumpcs \
138 echo \
139 ed \
140 eeprom \
141 egrep \
142 eject \
143 emul64ioctl \
144 enhance \
145 env \
146 eqn \
147 expand \
148 expr \
149 exstr \
150 factor \
151 false \
152 fcinfo \
153 fcoesvc \
154 fdetach \
155 fdformat \
156 fdisk \
157 ficl \
158 filesync \
159 fgrep \
160 file \
161 find \
162 flowadm \
163 flowstat \
164 fm \
165 fmt \
166 fmthard \
167 fmtmsg \
168 fold \
169 format \
170 fs.d \
171 fstyp \
172 fuser \
173 fwflash \
174 gcore \
175 gencat \
176 geniconvtbl \
177 genmsg \
178 getconf \
179 getdevpolicy \
180 getent \
181 getfacl \
182 getmajor \
183 getopt \
184 gettext \
185 gettxt \
186 grep \
187 grep_xpg4 \
188 groups \
189 grpck \
190 gss \
191 hal \
192 halt \
193 head \
194 hostid \
195 hostname \
196 hotplug \
197 hotplugd \
198 hwdata \
199 ibd_upgrade \
200 id \
201 idmap \
202 infocmp \
203 init \
204 initpkg \
205 install.d \
206 intrd \
207 intrstat \
208 ipcrm \
209 ipcs \
210 ipdadm \
211 ipf \
212 isainfo \
213 isalist \
214 itutools \
215 iscsiadm \
216 iscsid \
217 iscsitsvc \
218 isns \
219 itadm \
220 kbd \
221 keyserv \
222 killall \
223 krb5 \
224 ksh \
225 kvmstat \
226 last \
227 lastcomm \
228 latencytop \
229 ldap \
230 ldapcachemgr \
231 lgrpinfo \
232 line \
233 link \
234 dlmgmtd \
235 listen \
236 loadkeys \
237 locale \
238 localedef \
239 lockstat \
240 locator \
241 lofiadm \
242 logadm \
243 logger \
244 login \
245 logins \
246 look \
247 ls \
248 luxadm \
249 lvm \
250 mach \
251 mail \
252 mailwrapper \
253 mailx \
254 make \
255 man \
256 mandoc \
257 mdb \
258 mesg \
259 mkdir \
260 mkfifo \
261 mkfile \
262 mkmsgs \
263 mknod \
264 mkpwdict \
265 mktemp \
266 modload \
267 more \
268 mpathadm \
269 msgfmt \
270 msgid \
271 mt \
272 mv \
273 mvdir \
274 ndmpadm \
275 ndmpd \
276 ndmpstat \
277 netadm \
278 netfiles \
279 newform \
280 newgrp \
281 news \
282 newtask \
283 nice \
284 nl \
285 nlsadmin \
286 nohup \
287 nsadmin \
288 nscd \
289 oamuser \
290 od \
291 pack \
292 pagesize \
293 passmgmt \
294 passwd \
295 pathchk \
296 pbind \
297 pcidr \
298 pcitool \
299 pfexec \
300 pfexecd \
301 pginfo \
302 pgstat \
303 pgrep \
304 picl \
305 plimit \
306 policykit \
307 pools \
308 power \
309 powertop \
310 ppgsz \
311 pg \
312 plockstat \
313 pr \
314 prctl \
315 print \
316 printenv \
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 setfacl \
367 setmnt \
368 setpgrp \
369 setuname \
370 sgs \
371 shcomp \
372 smbios \
373 smbsrv \
374 smserverd \
375 soelim \
376 sort \
377 spell \
378 split \
379 sqlite \
380 srchtxt \
381 srptadm \
382 srptsvc \
383 ssh \
384 stat \
385 stmfadm \
386 stmfproxy \
387 stmfsvc \
388 stmsboot \
389 streams \
390 strings \
391 su \
392 sulogin \
393 sunpc \
394 svc \
395 svr4pkg \
396 swap \
397 sync \
398 sysdef \
399 syseventadm \
400 syslogd \
401 tabs \
402 tail \
403 tar \
404 tbl \
405 tcopy \
406 tcpd \
407 terminfo \
408 th_tools \
409 tic \
410 time \
411 tip \
412 touch \
413 tput \
414 tr \
415 trapstat \
416 troff \
417 true \
418 truss \
419 tsol \
420 tty \
421 ttymon \
422 tzreload \
423 uadmin \
424 ul \
425 uname \
426 units \
427 unlink \
428 unpack \
429 userattr \
430 users \
431 utmp_update \
432 utmpd \
433 uuidgen \
434 valtools \
435 vgrind \
436 volcheck \
437 volrmmount \
438 vrrpadm \
439 vscan \
440 vt \
442 wall \
443 which \
444 who \
445 whodo \
446 wracct \
447 write \
448 xargs \
449 xstr \
450 yes \
451 ypcmd \
452 yppasswd \
453 zdb \
454 zdump \
455 zfs \
456 zhack \
457 zic \
458 zinject \
459 zlogin \
460 zoneadm \
461 zoneadmd \
462 zonecfg \
463 zonename \
464 zpool \
465 zlook \
466 zonestat \
467 zstreamdump \
468 ztest
470 i386_SUBDIRS= \
471 acpihpd \
472 addbadsec \
473 biosdev \
474 diskscan \
475 lms \
476 rtc \
477 ucodeadm \
480 sparc_SUBDIRS= \
481 cvcd \
482 dcs \
483 device_remap \
484 drd \
485 fruadm \
486 ldmad \
487 oplhpd \
488 prtdscp \
489 prtfru \
490 scadm \
491 sckmd \
492 sf880drd \
493 virtinfo \
494 vntsd
497 # Commands that are messaged. Note that 'lp' comes first
498 # (see previous comment about 'lp'.)
500 MSGSUBDIRS= \
501 lp \
502 abi \
503 acctadm \
504 allocate \
505 asa \
506 audio \
507 audit \
508 auditconfig \
509 auditd \
510 auditrecord \
511 auditset \
512 auths \
513 autopush \
514 avs \
515 awk \
516 awk_xpg4 \
517 backup \
518 banner \
519 bart \
520 basename \
521 beadm \
522 bnu \
523 busstat \
524 cal \
525 cat \
526 cdrw \
527 cfgadm \
528 checkeq \
529 checknr \
530 chgrp \
531 chmod \
532 chown \
533 cmd-crypto \
534 cmd-inet \
535 col \
536 compress \
537 consadm \
538 coreadm \
539 cpio \
540 cpc \
541 cron \
542 csh \
543 csplit \
544 ctrun \
545 ctstat \
546 ctwatch \
547 datadm \
548 date \
549 dc \
550 dcs \
551 dd \
552 deroff \
553 devfsadm \
554 dfs.cmds \
555 diff \
556 diffmk \
557 dladm \
558 dlstat \
559 du \
560 dumpcs \
561 ed \
562 eject \
563 env \
564 eqn \
565 expand \
566 expr \
567 fcinfo \
568 fgrep \
569 file \
570 filesync \
571 find \
572 flowadm \
573 flowstat \
574 fm \
575 fold \
576 fs.d \
577 fwflash \
578 geniconvtbl \
579 genmsg \
580 getconf \
581 getent \
582 gettext \
583 gettxt \
584 grep \
585 grep_xpg4 \
586 grpck \
587 gss \
588 halt \
589 head \
590 hostname \
591 hotplug \
592 id \
593 idmap \
594 isaexec \
595 iscsiadm \
596 iscsid \
597 isns \
598 itadm \
599 kbd \
600 krb5 \
601 ksh \
602 last \
603 ldap \
604 ldapcachemgr \
605 lgrpinfo \
606 locale \
607 lofiadm \
608 logadm \
609 logger \
610 logins \
611 ls \
612 luxadm \
613 lvm \
614 mailx \
615 make \
616 man \
617 mesg \
618 mkdir \
619 mkpwdict \
620 mktemp \
621 more \
622 mpathadm \
623 msgfmt \
624 mv \
625 ndmpadm \
626 ndmpstat \
627 newgrp \
628 newtask \
629 nice \
630 nohup \
631 pack \
632 passwd \
633 passmgmt \
634 pathchk \
635 pfexec \
636 pg \
637 pgrep \
638 picl \
639 pools \
640 power \
641 pr \
642 praudit \
643 print \
644 profiles \
645 projadd \
646 projects \
647 prstat \
648 prtdiag \
649 ps \
650 psrinfo \
651 ptools \
652 pwconv \
653 pwd \
654 pyzfs \
655 raidctl \
656 ramdiskadm \
657 rcap \
658 rcm_daemon \
659 refer \
660 regcmp \
661 renice \
662 roles \
663 rm \
664 rmdir \
665 rmformat \
666 rmmount \
667 rmvolmgr \
668 sasinfo \
669 sbdadm \
670 scadm \
671 script \
672 scsi \
673 sdiff \
674 sdpadm \
675 sgs \
676 shcomp \
677 smbsrv \
678 sort \
679 split \
680 srptadm \
681 stat \
682 stmfadm \
683 stmsboot \
684 strings \
685 su \
686 svc \
687 svr4pkg \
688 swap \
689 syseventadm \
690 syseventd \
691 tabs \
692 tar \
693 tbl \
694 time \
695 touch \
696 tput \
697 troff \
698 tsol \
699 tty \
700 ttymon \
701 tzreload \
702 ul \
703 uname \
704 units \
705 unlink \
706 unpack \
707 userattr \
708 valtools \
709 vgrind \
710 volcheck \
711 volrmmount \
712 vrrpadm \
713 vscan \
715 who \
716 whodo \
717 wracct \
718 write \
719 xargs \
720 yppasswd \
721 zdump \
722 zfs \
723 zic \
724 zlogin \
725 zoneadm \
726 zoneadmd \
727 zonecfg \
728 zonename \
729 zpool \
730 zonestat
732 sparc_MSGSUBDIRS= \
733 fruadm \
734 prtdscp \
735 prtfru \
736 virtinfo \
737 vntsd
739 i386_MSGSUBDIRS= \
740 ucodeadm
743 # commands that use dcgettext for localized time, LC_TIME
745 DCSUBDIRS= \
746 cal \
747 cfgadm \
748 diff \
749 ls \
750 pr \
751 ps \
752 tar \
754 who \
755 whodo \
756 write
759 # commands that belong only to audit.
761 AUDITSUBDIRS= \
762 amt \
763 audit \
764 audit_warn \
765 auditconfig \
766 auditd \
767 auditrecord \
768 auditreduce \
769 auditset \
770 auditstat \
771 praudit
774 # commands not owned by the systems group
776 BWOSDIRS=
779 all := TARGET = all
780 install := TARGET = install
781 clean := TARGET = clean
782 clobber := TARGET = clobber
783 _msg := TARGET = _msg
784 _dc := TARGET = _dc
786 .KEEP_STATE:
788 SUBDIRS = $(COMMON_SUBDIRS) $($(MACH)_SUBDIRS)
790 .PARALLEL: $(BWOSDIRS) $(SUBDIRS) $(MSGSUBDIRS) $(AUDITSUBDIRS)
792 all install clean clobber: $(FIRST_SUBDIRS) .WAIT $(SUBDIRS) \
793 $(AUDITSUBDIRS)
796 # Manifests cannot be checked in parallel, because we are using
797 # the global repository that is in $(SRC)/cmd/svc/seed/global.db.
798 # For this reason, to avoid .PARALLEL and .NO_PARALLEL conflicts,
799 # we spawn off a sub-make to perform the non-parallel 'make check'
801 check:
802 $(MAKE) -f Makefile.check check
805 # The .WAIT directive works around an apparent bug in parallel make.
806 # Evidently make was getting the target _msg vs. _dc confused under
807 # some level of parallelization, causing some of the _dc objects
808 # not to be built.
810 _msg: $(MSGSUBDIRS) $($(MACH)_MSGSUBDIRS) .WAIT _dc
812 _dc: $(DCSUBDIRS)
815 # Dependencies
817 fs.d: fstyp
818 ksh: shcomp isaexec
819 mdb: terminfo
820 print: lp
821 fmt: mailx
823 $(FIRST_SUBDIRS) $(BWOSDIRS) $(SUBDIRS) $(AUDITSUBDIRS): FRC
824 @if [ -f $@/Makefile ]; then \
825 cd $@; pwd; $(MAKE) $(TARGET); \
826 else \
827 true; \
829 FRC: