Makefile revision 69bb4bb45c98da60d21839c4dc3c01ea1be60585
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo#
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# CDDL HEADER START
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo#
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# The contents of this file are subject to the terms of the
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# Common Development and Distribution License (the "License").
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# You may not use this file except in compliance with the License.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo#
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# or http://www.opensolaris.org/os/licensing.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# See the License for the specific language governing permissions
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# and limitations under the License.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo#
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# When distributing Covered Code, include this CDDL HEADER in each
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# If applicable, add the following below this CDDL HEADER, with the
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# fields enclosed by brackets "[]" replaced with your own identifying
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# information: Portions Copyright [yyyy] [name of copyright owner]
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo#
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# CDDL HEADER END
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo#
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# Use is subject to license terms.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo#
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# ident "%Z%%M% %I% %E% SMI"
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo#
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoPROG= finger rdate ruptime rwho whois
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoSUIDPROG= rcp rlogin rsh
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoALL= $(PROG) $(SUIDPROG)
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoSRCS= $(ALL:%=%.c)
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoKCMDPROGS= rcp rlogin rsh
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoSUBDIRS= chat ftp nca netstat pppd pppdump pppstats rdist talk tftp telnet
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoSUBDIR1= talk
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoMSGSUBDIRS= nca talk
4bac220845f606f60663ed6f3a2b88caa00ae87enarayan
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# As programs get lint-clean, add them here. Eventually.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# This hack should go away, and all in PROG should be lint-clean.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoLINTCLEAN= rlogin.c rsh.c rcp.c rdate.c rwho.c
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# Likewise, as subdirs get lint-clean, add them here. Once
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# they're all clean, replace the dependency of the lint target
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# with SUBDIRS. Also (sigh) deal with the commented-out build lines
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# for the lint rule.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoLINTSUBDIRS= nca netstat pppd pppstats tftp
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoinclude ../../Makefile.cmd
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoinclude ../Makefile.cmd-inet
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoCOMMONOBJS= kcmd.o
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoCOMMONPOFILES= $(COMMONOBJS:.o=.po)
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoCOMMONSRCS= $(CMDINETCOMMONDIR)/$(COMMONOBJS:.o=.c)
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo
d10e4ef2fabf16c3237c6d6592496df3eac6a1efnarayanPOFILES= rlogin.po rsh.po rcp.po $(COMMONPOFILES)
d10e4ef2fabf16c3237c6d6592496df3eac6a1efnarayanPOFILE= usr.bin.po
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoall:= TARGET= all
34683adecebe88ca2c857e28be4749f3a083f9fcsginstall:= TARGET= install
3af08d828975d7e2581b6829e0eecff14d87a483lmclean:= TARGET= clean
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoclobber:= TARGET= clobber
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppolint:= TARGET= lint
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo_msg:= TARGET= _msg
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoROOTSUIDPROG= $(SUIDPROG:%=$(ROOTBIN)/%)
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo$(ROOTSUIDPROG) := FILEMODE= 04555
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo$(ROOTSUIDPROG) := OWNER= root
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoCPPFLAGS += -DSYSV -DSTRNET -DBSD_COMP -I$(CMDINETCOMMONDIR)
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# Eventually just plain CFLAGS should be += -v, but not until all in
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# PROGS are lint clean.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo$(LINTCLEAN) := CFLAGS += $(CCVERBOSE)
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppofinger := CFLAGS += $(CCVERBOSE)
d10e4ef2fabf16c3237c6d6592496df3eac6a1efnarayan# Enable large file support for reading the lastlog file.
d10e4ef2fabf16c3237c6d6592496df3eac6a1efnarayanfinger := CPPFLAGS += -D_FILE_OFFSET_BITS=64
d10e4ef2fabf16c3237c6d6592496df3eac6a1efnarayan
d10e4ef2fabf16c3237c6d6592496df3eac6a1efnarayanfinger := LDLIBS += -lnsl -lcurses -lcmd -lsocket
1ae0874509b6811fdde1dfd46f0d93fd09867a3fhepporcp lint-rcp := LDLIBS += -lsocket -lsec -lsendfile
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppordate lint-rdate:= LDLIBS += -lsocket
1ae0874509b6811fdde1dfd46f0d93fd09867a3fhepporlogin lint-rlogin := LDLIBS += -lnsl -lsocket
1ae0874509b6811fdde1dfd46f0d93fd09867a3fhepporsh lint-rsh := LDLIBS += -lsocket
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppowhois := LDLIBS += -lnsl -lsocket
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoinclude $(SRC)/lib/gss_mechs/mech_krb5/Makefile.mech_krb5
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo$(KCMDPROGS) := LDLIBS += -lnsl -lmech_krb5
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo$(KCMDPROGS) := LDFLAGS += $(ZIGNORE) $(ZLAZYLOAD) $(KRUNPATH) \
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo -L$(ROOT)$(KLIBDIR_DO) \
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo -L$(ROOT)$(KLIBDIR_GL)
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoKCMDLINTS= $(KCMDPROGS:%=lint-%)
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo$(COMMONPOFILES) \
1ae0874509b6811fdde1dfd46f0d93fd09867a3fhepporlogin.po rcp.po rsh.po \
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo$(KCMDPROGS) \
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo$(KCMDLINTS) := CPPFLAGS += -DKERBEROS \
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo -I$(CMDINETCOMMONDIR) \
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo -I$(SRC)/lib/gss_mechs/mech_krb5 \
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo -I$(SRC)/uts/common/gssapi/mechs/krb5/include \
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo -I$(SRC)/lib/gss_mechs/mech_krb5/include \
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo -I$(SRC)/lib/gss_mechs/mech_krb5/include/krb5
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# "-erroff=E_NAME_USED_NOT_DEF2" and "-erroff=E_NAME_DEF_NOT_USED2"
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# are required because lint problems in the Kerberos 5 framework.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo$(KCMDLINTS) := LINTFLAGS += -lnsl \
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo -erroff=E_NAME_USED_NOT_DEF2 \
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo -erroff=E_NAME_DEF_NOT_USED2
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# Extra source files to lint with
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoLINTXTRA=
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo$(KCMDLINTS) := LINTXTRA += $(COMMONSRCS)
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoROOTSUNWRCP= $(ROOT)/usr/lib/sunw,rcp
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoROOTRSHSYMLINK= $(ROOT)/usr/ucb/rsh
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoROOTREMSHSYMLINK=$(ROOT)/usr/bin/remsh
3af08d828975d7e2581b6829e0eecff14d87a483lm
3af08d828975d7e2581b6829e0eecff14d87a483lm.KEEP_STATE:
3af08d828975d7e2581b6829e0eecff14d87a483lm
3af08d828975d7e2581b6829e0eecff14d87a483lmall: $(ALL) $(SUBDIRS)
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoinstall: all .WAIT $(ROOTPROG) $(ROOTSUIDPROG) \
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo $(SUBDIRS) $(ROOTSUNWRCP) $(ROOTRSHSYMLINK) $(ROOTREMSHSYMLINK)
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# Messaging - copy $POFILES to $POFILE to work with the parent directory
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo# Makefile's '_msg' target.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo#
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo_msg: $(MSGSUBDIRS) $(POFILES)
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo $(RM) $(POFILE)
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo $(CAT) $(POFILES) > $(POFILE)
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo$(COMMONPOFILES): $(COMMONSRCS)
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo $(COMPILE.cpp) $(COMMONSRCS) > $(@:.po=.c).i
3af08d828975d7e2581b6829e0eecff14d87a483lm $(XGETTEXT) $(XGETFLAGS) $(@:.po=.c).i
3af08d828975d7e2581b6829e0eecff14d87a483lm $(RM) $@
3af08d828975d7e2581b6829e0eecff14d87a483lm sed "/^domain/d" < messages.po > $@
3af08d828975d7e2581b6829e0eecff14d87a483lm $(RM) messages.po $(@:.po=.c).i
3af08d828975d7e2581b6829e0eecff14d87a483lm
3af08d828975d7e2581b6829e0eecff14d87a483lm$(COMMONOBJS): $(COMMONSRCS)
3af08d828975d7e2581b6829e0eecff14d87a483lm $(COMPILE.c) $(COMMONSRCS)
3af08d828975d7e2581b6829e0eecff14d87a483lm
3af08d828975d7e2581b6829e0eecff14d87a483lmrlogin: rlogin.o $(COMMONOBJS)
3af08d828975d7e2581b6829e0eecff14d87a483lm $(LINK.c) $@.o $(COMMONOBJS) -o $@ $(LDLIBS)
3af08d828975d7e2581b6829e0eecff14d87a483lm $(POST_PROCESS)
3af08d828975d7e2581b6829e0eecff14d87a483lm
3af08d828975d7e2581b6829e0eecff14d87a483lmrcp: rcp.o $(COMMONOBJS)
3af08d828975d7e2581b6829e0eecff14d87a483lm $(LINK.c) $@.o $(COMMONOBJS) -o $@ $(LDLIBS)
3af08d828975d7e2581b6829e0eecff14d87a483lm $(POST_PROCESS)
3af08d828975d7e2581b6829e0eecff14d87a483lm
3af08d828975d7e2581b6829e0eecff14d87a483lmrsh: rsh.o $(COMMONOBJS)
3af08d828975d7e2581b6829e0eecff14d87a483lm $(LINK.c) $@.o $(COMMONOBJS) -o $@ $(LDLIBS)
3af08d828975d7e2581b6829e0eecff14d87a483lm $(POST_PROCESS)
3af08d828975d7e2581b6829e0eecff14d87a483lm
3af08d828975d7e2581b6829e0eecff14d87a483lm$(ROOTSUNWRCP):
3af08d828975d7e2581b6829e0eecff14d87a483lm $(RM) $@; $(SYMLINK) ../bin/rcp $@
3af08d828975d7e2581b6829e0eecff14d87a483lm
3af08d828975d7e2581b6829e0eecff14d87a483lm$(ROOTRSHSYMLINK):
3af08d828975d7e2581b6829e0eecff14d87a483lm $(RM) $@; $(SYMLINK) ../bin/rsh $@
3af08d828975d7e2581b6829e0eecff14d87a483lm
3af08d828975d7e2581b6829e0eecff14d87a483lm$(ROOTREMSHSYMLINK):
3af08d828975d7e2581b6829e0eecff14d87a483lm $(RM) $@; $(SYMLINK) rsh $@
3af08d828975d7e2581b6829e0eecff14d87a483lm
3af08d828975d7e2581b6829e0eecff14d87a483lm$(SUBDIRS): FRC
3af08d828975d7e2581b6829e0eecff14d87a483lm @cd $@; pwd; $(MAKE) $(MFLAGS) $(TARGET)
3af08d828975d7e2581b6829e0eecff14d87a483lm
3af08d828975d7e2581b6829e0eecff14d87a483lmFRC:
3af08d828975d7e2581b6829e0eecff14d87a483lm
3af08d828975d7e2581b6829e0eecff14d87a483lmclean: $(SUBDIRS)
3af08d828975d7e2581b6829e0eecff14d87a483lm
3af08d828975d7e2581b6829e0eecff14d87a483lmclobber: $(SUBDIRS) clobber_local
3af08d828975d7e2581b6829e0eecff14d87a483lm
3af08d828975d7e2581b6829e0eecff14d87a483lmclobber_local:
3af08d828975d7e2581b6829e0eecff14d87a483lm echo $(CLOBBERFILES)
3af08d828975d7e2581b6829e0eecff14d87a483lm $(RM) $(ALL) $(CLOBBERFILES)
3af08d828975d7e2581b6829e0eecff14d87a483lm
3af08d828975d7e2581b6829e0eecff14d87a483lm
3af08d828975d7e2581b6829e0eecff14d87a483lmLINTLOCALS= $(LINTCLEAN:%.c=lint-%)
3af08d828975d7e2581b6829e0eecff14d87a483lm
3af08d828975d7e2581b6829e0eecff14d87a483lmlint: $(LINTSUBDIRS) $(LINTLOCALS)
3af08d828975d7e2581b6829e0eecff14d87a483lm
3af08d828975d7e2581b6829e0eecff14d87a483lm$(LINTLOCALS):
3af08d828975d7e2581b6829e0eecff14d87a483lm $(LINT.c) $(@:lint-%=%.c) $(LINTXTRA) $(LDLIBS)
3af08d828975d7e2581b6829e0eecff14d87a483lm