cmd: remove locator
[unleashed.git] / usr / src / cmd / Makefile
blobe79fa7bde01ceb5e365bd292fee45d6acd80a38e
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 (c) 2018, 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 2018 Nexenta Systems, Inc.
30 # Copyright 2018 Gary Mills
33 include ../Makefile.master
36 # Note that the command 'perl' is first in the list, violating
37 # alphabetical order. This is because it is very long-running and
38 # should be given the most wall-clock time for a 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 perl \
54 Adm \
55 abi \
56 acct \
57 acctadm \
58 ahciem \
59 ast \
60 audio \
61 auths \
62 autopush \
63 backup \
64 bart \
65 basename \
66 bc \
67 boot \
68 busstat \
69 cal \
70 cdrw \
71 cfgadm \
72 chgrp \
73 chmod \
74 chown \
75 chroot \
76 cmd-crypto \
77 cmd-inet \
78 col \
79 compress \
80 consadm \
81 coreadm \
82 cpio \
83 cpc \
84 cron \
85 crypt \
86 csh \
87 csplit \
88 ctfconvert \
89 ctfdiff \
90 ctfdump \
91 ctfmerge \
92 ctrun \
93 ctstat \
94 ctwatch \
95 cxgbetool \
96 datadm \
97 date \
98 dc \
99 dd \
100 devfsadm \
101 syseventd \
102 devctl \
103 devinfo \
104 devmgmt \
105 devprop \
106 dfs.cmds \
107 diff \
108 diff3 \
109 dircmp \
110 dirname \
111 diskinfo \
112 diskmgtd \
113 dispadmin \
114 dladm \
115 dlstat \
116 dlutil \
117 dmesg \
118 dodatadm \
119 dtrace \
120 du \
121 dumpadm \
122 dumpcs \
123 ed \
124 eeprom \
125 eject \
126 emul64ioctl \
127 enhance \
128 expand \
129 expr \
130 exstr \
131 factor \
132 fcinfo \
133 fcoesvc \
134 fdetach \
135 fdformat \
136 fdisk \
137 ficl \
138 filesync \
139 find \
140 flowadm \
141 flowstat \
142 fm \
143 fmt \
144 fmthard \
145 fmtmsg \
146 fold \
147 format \
148 fs.d \
149 fstyp \
150 fuser \
151 fwflash \
152 gcore \
153 gencat \
154 geniconvtbl \
155 genmsg \
156 getconf \
157 getdevpolicy \
158 getent \
159 getfacl \
160 getmajor \
161 getopt \
162 gettext \
163 gettxt \
164 groups \
165 growfs \
166 grpck \
167 gss \
168 hal \
169 halt \
170 head \
171 hostid \
172 hostname \
173 hotplug \
174 hotplugd \
175 ibd_upgrade \
176 iconv \
177 idmap \
178 init \
179 initpkg \
180 intrd \
181 intrstat \
182 ipcrm \
183 ipcs \
184 ipdadm \
185 ipf \
186 isainfo \
187 isalist \
188 itutools \
189 iscsiadm \
190 iscsid \
191 iscsitsvc \
192 isns \
193 itadm \
194 kbd \
195 keyserv \
196 killall \
197 krb5 \
198 ksh \
199 kvmstat \
200 last \
201 lastcomm \
202 latencytop \
203 ldap \
204 ldapcachemgr \
205 lgrpinfo \
206 line \
207 link \
208 dlmgmtd \
209 listen \
210 loadkeys \
211 locale \
212 lockstat \
213 lofiadm \
214 logadm \
215 logger \
216 login \
217 logins \
218 look \
219 ls \
220 luxadm \
221 mail \
222 mailx \
223 make \
224 mdb \
225 mesg \
226 mkdir \
227 mkfifo \
228 mkfile \
229 mkmsgs \
230 mknod \
231 mkpwdict \
232 mktemp \
233 modload \
234 mpathadm \
235 msgfmt \
236 msgid \
237 mt \
238 mv \
239 mvdir \
240 ndmpadm \
241 ndmpd \
242 ndmpstat \
243 netadm \
244 netfiles \
245 newform \
246 newgrp \
247 news \
248 newtask \
249 nice \
250 nl \
251 nlsadmin \
252 nohup \
253 nscd \
254 oamuser \
255 od \
256 pack \
257 pagesize \
258 passmgmt \
259 passwd \
260 pathchk \
261 pbind \
262 pcidr \
263 pcitool \
264 pfexec \
265 pfexecd \
266 pginfo \
267 pgstat \
268 pgrep \
269 picl \
270 plimit \
271 policykit \
272 pools \
273 power \
274 powertop \
275 ppgsz \
276 pg \
277 plockstat \
278 pr \
279 prctl \
280 printenv \
281 printf \
282 priocntl \
283 profiles \
284 projadd \
285 projects \
286 prstat \
287 prtconf \
288 prtdiag \
289 prtvtoc \
290 ps \
291 psradm \
292 psrinfo \
293 psrset \
294 ptools \
295 pwck \
296 raidctl \
297 ramdiskadm \
298 rcap \
299 rcm_daemon \
300 rctladm \
301 refer \
302 regcmp \
303 renice \
304 rm \
305 rmdir \
306 rmformat \
307 rmmount \
308 rmvolmgr \
309 roles \
310 rpcbind \
311 rpcgen \
312 rpcinfo \
313 rpcsvc \
314 runat \
315 sa \
316 saf \
317 sasinfo \
318 savecore \
319 sbdadm \
320 script \
321 scsi \
322 sdiff \
323 sdpadm \
324 setfacl \
325 setmnt \
326 setpgrp \
327 sgs \
328 smbios \
329 smbsrv \
330 smserverd \
331 sort \
332 spell \
333 split \
334 sqlite \
335 srchtxt \
336 srptadm \
337 srptsvc \
338 stat \
339 stmfadm \
340 stmfsvc \
341 stmsboot \
342 streams \
343 strings \
344 su \
345 sulogin \
346 sunpc \
347 svc \
348 swap \
349 sync \
350 sysdef \
351 syseventadm \
352 syslogd \
353 tail \
354 tar \
355 tcpd \
356 th_tools \
357 tip \
358 terminfo \
359 touch \
360 tr \
361 trapstat \
362 truss \
363 tty \
364 ttymon \
365 tzreload \
366 units \
367 unlink \
368 unpack \
369 userattr \
370 users \
371 utmpd \
372 uuidgen \
373 volcheck \
374 volrmmount \
375 vrrpadm \
376 vscan \
377 vt \
379 wall \
380 which \
381 who \
382 whodo \
383 wracct \
384 write \
385 xargs \
386 xstr \
387 ypcmd \
388 yppasswd \
389 zdb \
390 zdump \
391 zfs \
392 zhack \
393 zinject \
394 zlogin \
395 zoneadm \
396 zoneadmd \
397 zonecfg \
398 zonename \
399 zpool \
400 zlook \
401 zonestat \
402 zstreamdump \
403 ztest
405 i386_SUBDIRS= \
406 acpi \
407 acpihpd \
408 biosdev \
409 diskscan \
410 nvmeadm \
411 rtc \
412 ucodeadm \
413 xhci
416 # Commands that are messaged.
418 MSGSUBDIRS= \
419 abi \
420 acctadm \
421 allocate \
422 audio \
423 audit \
424 auditconfig \
425 auditd \
426 auditrecord \
427 auditset \
428 auths \
429 autopush \
430 backup \
431 bart \
432 basename \
433 busstat \
434 cal \
435 cdrw \
436 cfgadm \
437 chgrp \
438 chmod \
439 chown \
440 cmd-crypto \
441 cmd-inet \
442 col \
443 compress \
444 consadm \
445 coreadm \
446 cpio \
447 cpc \
448 cron \
449 csh \
450 csplit \
451 ctrun \
452 ctstat \
453 ctwatch \
454 datadm \
455 date \
456 dc \
457 dd \
458 devfsadm \
459 dfs.cmds \
460 diff \
461 dladm \
462 dlstat \
463 du \
464 dumpcs \
465 ed \
466 eject \
467 expand \
468 expr \
469 fcinfo \
470 filesync \
471 find \
472 flowadm \
473 flowstat \
474 fm \
475 fold \
476 fs.d \
477 fwflash \
478 geniconvtbl \
479 genmsg \
480 getconf \
481 getent \
482 gettext \
483 gettxt \
484 grpck \
485 gss \
486 halt \
487 head \
488 hostname \
489 hotplug \
490 iconv \
491 idmap \
492 isaexec \
493 iscsiadm \
494 iscsid \
495 isns \
496 itadm \
497 kbd \
498 krb5 \
499 ksh \
500 last \
501 ldap \
502 ldapcachemgr \
503 lgrpinfo \
504 locale \
505 lofiadm \
506 logadm \
507 logger \
508 logins \
509 ls \
510 luxadm \
511 mailx \
512 make \
513 mesg \
514 mkdir \
515 mkpwdict \
516 mktemp \
517 mpathadm \
518 msgfmt \
519 mv \
520 ndmpadm \
521 ndmpstat \
522 newgrp \
523 newtask \
524 nice \
525 nohup \
526 pack \
527 passwd \
528 passmgmt \
529 pathchk \
530 pfexec \
531 pg \
532 pgrep \
533 picl \
534 pools \
535 power \
536 pr \
537 praudit \
538 profiles \
539 projadd \
540 projects \
541 prstat \
542 prtdiag \
543 ps \
544 psrinfo \
545 ptools \
546 raidctl \
547 ramdiskadm \
548 rcap \
549 rcm_daemon \
550 refer \
551 regcmp \
552 renice \
553 roles \
554 rm \
555 rmdir \
556 rmformat \
557 rmmount \
558 rmvolmgr \
559 sasinfo \
560 sbdadm \
561 script \
562 scsi \
563 sdiff \
564 sdpadm \
565 sgs \
566 smbsrv \
567 sort \
568 split \
569 srptadm \
570 stat \
571 stmfadm \
572 stmsboot \
573 strings \
574 su \
575 svc \
576 swap \
577 syseventadm \
578 syseventd \
579 tar \
580 touch \
581 tty \
582 ttymon \
583 tzreload \
584 units \
585 unlink \
586 unpack \
587 userattr \
588 volcheck \
589 volrmmount \
590 vrrpadm \
591 vscan \
593 who \
594 whodo \
595 wracct \
596 write \
597 xargs \
598 yppasswd \
599 zdump \
600 zfs \
601 zlogin \
602 zoneadm \
603 zoneadmd \
604 zonecfg \
605 zonename \
606 zpool \
607 zonestat
609 i386_MSGSUBDIRS= \
610 ucodeadm
613 # commands that use dcgettext for localized time, LC_TIME
615 DCSUBDIRS= \
616 cal \
617 cfgadm \
618 diff \
619 ls \
620 pr \
621 ps \
622 tar \
624 who \
625 whodo \
626 write
629 # commands that belong only to audit.
631 AUDITSUBDIRS= \
632 amt \
633 audit \
634 audit_warn \
635 auditconfig \
636 auditd \
637 auditrecord \
638 auditreduce \
639 auditset \
640 auditstat \
641 praudit
644 # commands not owned by the systems group
646 BWOSDIRS=
649 all := TARGET = all
650 install := TARGET = install
651 clean := TARGET = clean
652 clobber := TARGET = clobber
653 _msg := TARGET = _msg
654 _dc := TARGET = _dc
656 .KEEP_STATE:
658 SUBDIRS = $(COMMON_SUBDIRS) $($(MACH)_SUBDIRS)
660 .PARALLEL: $(BWOSDIRS) $(SUBDIRS) $(MSGSUBDIRS) $(AUDITSUBDIRS)
662 all install clean clobber: $(FIRST_SUBDIRS) .WAIT $(SUBDIRS) \
663 $(AUDITSUBDIRS)
666 # Manifests cannot be checked in parallel, because we are using
667 # the global repository that is in $(SRC)/cmd/svc/seed/global.db.
668 # For this reason, to avoid .PARALLEL and .NO_PARALLEL conflicts,
669 # we spawn off a sub-make to perform the non-parallel 'make check'
671 check:
672 $(MAKE) -f Makefile.check check
675 # The .WAIT directive works around an apparent bug in parallel make.
676 # Evidently make was getting the target _msg vs. _dc confused under
677 # some level of parallelization, causing some of the _dc objects
678 # not to be built.
680 _msg: $(MSGSUBDIRS) $($(MACH)_MSGSUBDIRS) .WAIT _dc
682 _dc: $(DCSUBDIRS)
685 # Dependencies
687 fs.d: fstyp
688 ksh: isaexec
689 mdb: terminfo
690 fmt: mailx
692 $(FIRST_SUBDIRS) $(BWOSDIRS) $(SUBDIRS) $(AUDITSUBDIRS): FRC
693 @if [ -f $@/Makefile ]; then \
694 cd $@; pwd; $(MAKE) $(TARGET); \
695 else \
696 true; \
698 FRC: