Makefile revision 71d45228ba245d505c3beae1d756e775616f6d5a
4901N/A#
4901N/A# CDDL HEADER START
4901N/A#
4901N/A# The contents of this file are subject to the terms of the
4901N/A# Common Development and Distribution License (the "License").
4901N/A# You may not use this file except in compliance with the License.
4901N/A#
4901N/A# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
4901N/A# or http://www.opensolaris.org/os/licensing.
4901N/A# See the License for the specific language governing permissions
4901N/A# and limitations under the License.
4901N/A#
4901N/A# When distributing Covered Code, include this CDDL HEADER in each
4901N/A# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
4901N/A# If applicable, add the following below this CDDL HEADER, with the
4901N/A# fields enclosed by brackets "[]" replaced with your own identifying
4901N/A# information: Portions Copyright [yyyy] [name of copyright owner]
4901N/A#
4901N/A# CDDL HEADER END
4901N/A#
4901N/A
4901N/A# Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved.
5453N/A# Copyright 2015 Nexenta Systems, Inc. All rights reserved.
4901N/A# Copyright (c) 2012 Joyent, Inc. All rights reserved.
5680N/A# Copyright (c) 2012 by Delphix. All rights reserved.
4901N/A# Copyright (c) 2013 DEY Storage Systems, Inc. All rights reserved.
4901N/A# Copyright 2014 Garrett D'Amore <garrett@damore.org>
4901N/A
5928N/Ainclude ../Makefile.master
4901N/A
4901N/A#
4901N/A# Note that the commands 'lp', and 'perl' are first in
5928N/A# the list, violating alphabetical order. This is because they are very
4901N/A# long-running and should be given the most wall-clock time for a
4901N/A# parallel build.
4901N/A#
5928N/A# Commands in the FIRST_SUBDIRS list are built before starting the build
4901N/A# of other commands. Currently this includes only 'isaexec' and
4901N/A# 'platexec'. This is necessary because $(ROOT)/usr/lib/isaexec or
4901N/A# $(ROOT)/usr/lib/platexec must exist when some other commands are built
4901N/A# because their 'make install' creates a hard link to one of them.
4901N/A#
4901N/A# Commands are listed one per line so that TeamWare can auto-merge most
4901N/A# changes.
4901N/A#
4901N/A
4901N/AFIRST_SUBDIRS= \
4901N/A isaexec \
4901N/A platexec
5453N/A
5453N/ACOMMON_SUBDIRS= \
5453N/A allocate \
5453N/A availdevs \
5453N/A lp \
5453N/A perl \
5453N/A Adm \
5453N/A abi \
5453N/A adbgen \
5453N/A acct \
5453N/A acctadm \
5453N/A arch \
5453N/A asa \
5453N/A ast \
5453N/A audio \
5453N/A auths \
5680N/A autopush \
5680N/A avs \
5680N/A awk \
5680N/A awk_xpg4 \
5680N/A backup \
5680N/A banner \
5680N/A bart \
5680N/A basename \
5680N/A bc \
5680N/A bdiff \
5680N/A beadm \
5680N/A bnu \
5453N/A boot \
5453N/A busstat \
5453N/A cal \
5453N/A calendar \
5453N/A captoinfo \
5453N/A cat \
5453N/A cdrw \
5453N/A cfgadm \
5453N/A checkeq \
5453N/A checknr \
5453N/A chgrp \
5453N/A chmod \
5453N/A chown \
5453N/A chroot \
5453N/A clear \
5453N/A clinfo \
5453N/A cmd-crypto \
5453N/A cmd-inet \
5453N/A col \
5453N/A compress \
5453N/A consadm \
5453N/A coreadm \
5453N/A cpio \
5453N/A cpc \
5453N/A cron \
5453N/A crypt \
5453N/A csh \
5453N/A csplit \
5453N/A ctrun \
5453N/A ctstat \
5453N/A ctwatch \
5453N/A datadm \
5453N/A date \
5453N/A dc \
5453N/A dd \
5453N/A deroff \
5453N/A devfsadm \
5453N/A syseventd \
5453N/A devctl \
5453N/A devinfo \
5453N/A devmgmt \
5453N/A devprop \
5453N/A dfs.cmds \
5453N/A diff \
5453N/A diff3 \
5453N/A diffmk \
5453N/A dircmp \
5453N/A dirname \
5453N/A dis \
5453N/A diskmgtd \
5453N/A dispadmin \
5453N/A dladm \
5453N/A dlstat \
5453N/A dmesg \
5453N/A dodatadm \
5453N/A dtrace \
5453N/A du \
5453N/A dumpadm \
5453N/A dumpcs \
5453N/A echo \
5453N/A ed \
5453N/A eeprom \
5453N/A egrep \
5453N/A eject \
5453N/A emul64ioctl \
5453N/A enhance \
5453N/A env \
5453N/A eqn \
5453N/A expand \
5453N/A expr \
5453N/A exstr \
5453N/A factor \
5453N/A false \
5453N/A fcinfo \
5453N/A fcoesvc \
5453N/A fdetach \
5453N/A fdformat \
5453N/A fdisk \
5453N/A filesync \
5453N/A fgrep \
5453N/A file \
5453N/A find \
5453N/A flowadm \
5453N/A flowstat \
5453N/A fm \
5453N/A fmt \
5453N/A fmthard \
5453N/A fmtmsg \
5453N/A fold \
5453N/A format \
5453N/A fs.d \
5453N/A fstyp \
5453N/A fuser \
5453N/A fwflash \
5453N/A gcore \
5453N/A gencat \
5453N/A geniconvtbl \
5453N/A genmsg \
5453N/A getconf \
5453N/A getdevpolicy \
5453N/A getent \
5453N/A getfacl \
5453N/A getmajor \
5453N/A getopt \
5453N/A gettext \
5453N/A gettxt \
5453N/A grep \
5453N/A grep_xpg4 \
5453N/A groups \
5453N/A grpck \
5453N/A gss \
5453N/A hal \
5453N/A halt \
5453N/A head \
5453N/A hostid \
5453N/A hostname \
5453N/A hotplug \
5453N/A hotplugd \
5453N/A hwdata \
5453N/A ibd_upgrade \
5453N/A id \
5453N/A idmap \
5453N/A infocmp \
5453N/A init \
5453N/A initpkg \
5453N/A install.d \
5453N/A intrd \
5453N/A intrstat \
5453N/A ipcrm \
5453N/A ipcs \
5453N/A ipdadm \
5453N/A ipf \
5453N/A isainfo \
5453N/A isalist \
5453N/A itutools \
5453N/A iscsiadm \
5453N/A iscsid \
5453N/A iscsitsvc \
5453N/A isns \
5453N/A itadm \
5453N/A kbd \
5453N/A keyserv \
5453N/A killall \
5453N/A krb5 \
5453N/A ksh \
5453N/A kvmstat \
5453N/A last \
5453N/A lastcomm \
5453N/A latencytop \
5453N/A ldap \
5453N/A ldapcachemgr \
5453N/A lgrpinfo \
5453N/A line \
5453N/A link \
5453N/A dlmgmtd \
5453N/A listen \
5453N/A loadkeys \
5453N/A locale \
5453N/A localedef \
5453N/A lockstat \
5453N/A locator \
5453N/A lofiadm \
5453N/A logadm \
5453N/A logger \
5453N/A login \
5453N/A logins \
5453N/A look \
5453N/A ls \
5453N/A luxadm \
5453N/A lvm \
5453N/A mach \
5453N/A mail \
5453N/A mailwrapper \
5453N/A mailx \
5453N/A make \
5453N/A makekey \
5453N/A man \
5680N/A mandoc \
4901N/A mdb \
5680N/A mesg \
5680N/A mkdir \
5680N/A mkfifo \
5680N/A mkfile \
5680N/A mkmsgs \
5680N/A mknod \
5680N/A mkpwdict \
5680N/A mktemp \
5928N/A modload \
4901N/A more \
4901N/A mpathadm \
4901N/A msgfmt \
4901N/A msgid \
4901N/A mt \
4901N/A mv \
4901N/A mvdir \
4901N/A ndmpadm \
5453N/A ndmpd \
5453N/A ndmpstat \
5453N/A netadm \
5453N/A netfiles \
5453N/A newform \
5453N/A newgrp \
5453N/A news \
5453N/A newtask \
5680N/A nice \
5453N/A nl \
5453N/A nlsadmin \
5680N/A nohup \
5680N/A nsadmin \
5453N/A nscd \
5453N/A oamuser \
5680N/A oawk \
5453N/A od \
5453N/A pack \
5680N/A pagesize \
5453N/A passmgmt \
5453N/A passwd \
5680N/A pathchk \
4901N/A pbind \
4901N/A pcidr \
4901N/A pcitool \
4901N/A pfexec \
4901N/A pfexecd \
4901N/A pginfo \
4901N/A pgstat \
4901N/A pgrep \
4901N/A picl \
4901N/A plimit \
4901N/A policykit \
4901N/A pools \
4901N/A power \
4901N/A powertop \
4901N/A ppgsz \
4901N/A pg \
plockstat \
pr \
prctl \
print \
printf \
priocntl \
profiles \
projadd \
projects \
prstat \
prtconf \
prtdiag \
prtvtoc \
ps \
psradm \
psrinfo \
psrset \
ptools \
pwck \
pwconv \
pwd \
pyzfs \
raidctl \
ramdiskadm \
rcap \
rcm_daemon \
rctladm \
refer \
regcmp \
renice \
rexd \
rm \
rmdir \
rmformat \
rmmount \
rmt \
rmvolmgr \
roles \
rpcbind \
rpcgen \
rpcinfo \
rpcsvc \
runat \
sa \
saf \
sasinfo \
savecore \
sbdadm \
script \
scsi \
sdiff \
sdpadm \
sed \
sendmail \
setfacl \
setmnt \
setpgrp \
setuname \
sgs \
sh \
shcomp \
smbios \
smbsrv \
smserverd \
soelim \
sort \
spell \
split \
sqlite \
srchtxt \
srptadm \
srptsvc \
ssh \
stat \
stmfadm \
stmfproxy \
stmfsvc \
stmsboot \
streams \
strings \
su \
sulogin \
sunpc \
svc \
svr4pkg \
swap \
sync \
sysdef \
syseventadm \
syslogd \
tabs \
tail \
tar \
tbl \
tcopy \
tcpd \
terminfo \
th_tools \
tic \
time \
tip \
tnf \
touch \
tput \
tr \
trapstat \
troff \
true \
truss \
tsol \
tty \
ttymon \
tzreload \
uadmin \
ul \
uname \
units \
unlink \
unpack \
userattr \
users \
utmp_update \
utmpd \
uuidgen \
valtools \
vgrind \
vi \
volcheck \
volrmmount \
vrrpadm \
vscan \
vt \
w \
wall \
which \
who \
whodo \
wracct \
write \
xargs \
xstr \
yes \
ypcmd \
yppasswd \
zdb \
zdump \
zfs \
zhack \
zic \
zinject \
zlogin \
zoneadm \
zoneadmd \
zonecfg \
zonename \
zpool \
zlook \
zonestat \
zstreamdump \
ztest
i386_SUBDIRS= \
acpihpd \
addbadsec \
biosdev \
diskscan \
lms \
rtc \
ucodeadm \
xvm
sparc_SUBDIRS= \
cvcd \
dcs \
device_remap \
drd \
fruadm \
ldmad \
oplhpd \
prtdscp \
prtfru \
scadm \
sckmd \
sf880drd \
virtinfo \
vntsd
#
# Commands that are messaged. Note that 'lp' comes first
# (see previous comment about 'lp'.)
#
MSGSUBDIRS= \
lp \
abi \
acctadm \
allocate \
asa \
audio \
audit \
auditconfig \
auditd \
auditrecord \
auditset \
auths \
autopush \
avs \
awk \
awk_xpg4 \
backup \
banner \
bart \
basename \
beadm \
bnu \
busstat \
cal \
cat \
cdrw \
cfgadm \
checkeq \
checknr \
chgrp \
chmod \
chown \
cmd-crypto \
cmd-inet \
col \
compress \
consadm \
coreadm \
cpio \
cpc \
cron \
csh \
csplit \
ctrun \
ctstat \
ctwatch \
datadm \
date \
dc \
dcs \
dd \
deroff \
devfsadm \
dfs.cmds \
diff \
diffmk \
dladm \
dlstat \
du \
dumpcs \
ed \
eject \
env \
eqn \
expand \
expr \
fcinfo \
fgrep \
file \
filesync \
find \
flowadm \
flowstat \
fm \
fold \
fs.d \
fwflash \
geniconvtbl \
genmsg \
getconf \
getent \
gettext \
gettxt \
grep \
grep_xpg4 \
grpck \
gss \
halt \
head \
hostname \
hotplug \
id \
idmap \
isaexec \
iscsiadm \
iscsid \
isns \
itadm \
kbd \
krb5 \
ksh \
last \
ldap \
ldapcachemgr \
lgrpinfo \
locale \
lofiadm \
logadm \
logger \
logins \
ls \
luxadm \
lvm \
mailx \
make \
man \
mesg \
mkdir \
mkpwdict \
mktemp \
more \
mpathadm \
msgfmt \
mv \
ndmpadm \
ndmpstat \
newgrp \
newtask \
nice \
nohup \
oawk \
pack \
passwd \
passmgmt \
pathchk \
pfexec \
pg \
pgrep \
picl \
pools \
power \
pr \
praudit \
print \
profiles \
projadd \
projects \
prstat \
prtdiag \
ps \
psrinfo \
ptools \
pwconv \
pwd \
pyzfs \
raidctl \
ramdiskadm \
rcap \
rcm_daemon \
refer \
regcmp \
renice \
roles \
rm \
rmdir \
rmformat \
rmmount \
rmvolmgr \
sasinfo \
sbdadm \
scadm \
script \
scsi \
sdiff \
sdpadm \
sgs \
sh \
shcomp \
smbsrv \
sort \
split \
srptadm \
ssh \
stat \
stmfadm \
stmsboot \
strings \
su \
svc \
svr4pkg \
swap \
syseventadm \
syseventd \
tabs \
tar \
tbl \
time \
tnf \
touch \
tput \
troff \
tsol \
tty \
ttymon \
tzreload \
ul \
uname \
units \
unlink \
unpack \
userattr \
valtools \
vgrind \
vi \
volcheck \
volrmmount \
vrrpadm \
vscan \
w \
who \
whodo \
wracct \
write \
xargs \
yppasswd \
zdump \
zfs \
zic \
zlogin \
zoneadm \
zoneadmd \
zonecfg \
zonename \
zpool \
zonestat
sparc_MSGSUBDIRS= \
fruadm \
prtdscp \
prtfru \
virtinfo \
vntsd
i386_MSGSUBDIRS= \
ucodeadm
#
# commands that use dcgettext for localized time, LC_TIME
#
DCSUBDIRS= \
cal \
cfgadm \
diff \
ls \
pr \
ps \
tar \
w \
who \
whodo \
write
#
# commands that belong only to audit.
#
AUDITSUBDIRS= \
amt \
audit \
audit_warn \
auditconfig \
auditd \
auditrecord \
auditreduce \
auditset \
auditstat \
praudit
#
# commands not owned by the systems group
#
BWOSDIRS=
all := TARGET = all
install := TARGET = install
clean := TARGET = clean
clobber := TARGET = clobber
lint := TARGET = lint
_msg := TARGET = _msg
_dc := TARGET = _dc
.KEEP_STATE:
SUBDIRS = $(COMMON_SUBDIRS) $($(MACH)_SUBDIRS)
.PARALLEL: $(BWOSDIRS) $(SUBDIRS) $(MSGSUBDIRS) $(AUDITSUBDIRS)
all install clean clobber lint: $(FIRST_SUBDIRS) .WAIT $(SUBDIRS) \
$(AUDITSUBDIRS)
#
# Manifests cannot be checked in parallel, because we are using
# the global repository that is in $(SRC)/cmd/svc/seed/global.db.
# For this reason, to avoid .PARALLEL and .NO_PARALLEL conflicts,
# we spawn off a sub-make to perform the non-parallel 'make check'
#
check:
$(MAKE) -f Makefile.check check
#
# The .WAIT directive works around an apparent bug in parallel make.
# Evidently make was getting the target _msg vs. _dc confused under
# some level of parallelization, causing some of the _dc objects
# not to be built.
#
_msg: $(MSGSUBDIRS) $($(MACH)_MSGSUBDIRS) .WAIT _dc
_dc: $(DCSUBDIRS)
#
# Dependencies
#
fs.d: fstyp
ksh: shcomp isaexec
mdb: terminfo
print: lp
fmt: mailx
$(FIRST_SUBDIRS) $(BWOSDIRS) $(SUBDIRS) $(AUDITSUBDIRS): FRC
@if [ -f $@/Makefile ]; then \
cd $@; pwd; $(MAKE) $(TARGET); \
else \
true; \
fi
FRC: