17c478bd9Sstevel@tonic-gate# 27c478bd9Sstevel@tonic-gate# CDDL HEADER START 37c478bd9Sstevel@tonic-gate# 47c478bd9Sstevel@tonic-gate# The contents of this file are subject to the terms of the 545916cd2Sjpk# Common Development and Distribution License (the "License"). 645916cd2Sjpk# You may not use this file except in compliance with the License. 77c478bd9Sstevel@tonic-gate# 87c478bd9Sstevel@tonic-gate# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 97c478bd9Sstevel@tonic-gate# or http://www.opensolaris.org/os/licensing. 107c478bd9Sstevel@tonic-gate# See the License for the specific language governing permissions 117c478bd9Sstevel@tonic-gate# and limitations under the License. 127c478bd9Sstevel@tonic-gate# 137c478bd9Sstevel@tonic-gate# When distributing Covered Code, include this CDDL HEADER in each 147c478bd9Sstevel@tonic-gate# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 157c478bd9Sstevel@tonic-gate# If applicable, add the following below this CDDL HEADER, with the 167c478bd9Sstevel@tonic-gate# fields enclosed by brackets "[]" replaced with your own identifying 177c478bd9Sstevel@tonic-gate# information: Portions Copyright [yyyy] [name of copyright owner] 187c478bd9Sstevel@tonic-gate# 197c478bd9Sstevel@tonic-gate# CDDL HEADER END 207c478bd9Sstevel@tonic-gate# 214e5b757fSkupfer 227c478bd9Sstevel@tonic-gate# 233e95bd4aSAnders Persson# Copyright (c) 1990, 2010, Oracle and/or its affiliates. All rights reserved. 2490a455acSGarrett D'Amore# Copyright 2014 Garrett D'Amore <garrett@damore.org> 257c478bd9Sstevel@tonic-gate# 267c478bd9Sstevel@tonic-gate 277c478bd9Sstevel@tonic-gateSYNCPROG= syncinit syncloop syncstat 287c478bd9Sstevel@tonic-gate 2990a455acSGarrett D'AmorePROG= 6to4relay arp if_mpadm \ 30a192e900Samaguire in.comsat in.fingerd in.rarpd in.rexecd in.rlogind \ 3140537fccSgd78059 in.rshd in.rwhod in.telnetd in.tftpd ipaddrsel \ 32*e7df7762SCody Peter Mello ndd ndp $(SYNCPROG) wanbootutil 337c478bd9Sstevel@tonic-gate 347c478bd9Sstevel@tonic-gateMANIFEST= rarp.xml telnet.xml comsat.xml finger.xml \ 35dd49f125SAnders Persson login.xml shell.xml rexec.xml socket-filter-kssl.xml 363e95bd4aSAnders PerssonSVCMETHOD= svc-sockfilter 377c478bd9Sstevel@tonic-gate 38a192e900SamaguireROOTFS_PROG= hostconfig route soconfig 39a192e900SamaguireSBINLINKS= hostconfig route 407c478bd9Sstevel@tonic-gate 417c478bd9Sstevel@tonic-gateRPCSVCPROG= hostconfig 427c478bd9Sstevel@tonic-gateAUDITPROG= in.rexecd in.rlogind in.rshd in.telnetd 437c478bd9Sstevel@tonic-gatePAMPROG= in.rexecd in.rlogind in.rshd in.telnetd 4490a455acSGarrett D'AmoreSOCKETPROG= 6to4relay arp hostconfig if_mpadm in.comsat \ 45a192e900Samaguire in.fingerd in.rarpd in.rexecd in.rlogind in.rshd \ 46*e7df7762SCody Peter Mello in.rwhod in.telnetd in.tftpd ipaddrsel ndp route 4790a455acSGarrett D'AmoreNSLPROG= 6to4relay arp hostconfig in.comsat in.rarpd \ 48a192e900Samaguire in.rexecd in.rlogind in.rshd in.rwhod in.telnetd \ 49*e7df7762SCody Peter Mello in.tftpd ipaddrsel ndp route 507c478bd9Sstevel@tonic-gateCMDPROG= in.telnetd 517c478bd9Sstevel@tonic-gateK5PROGS= in.telnetd in.rlogind in.rshd 5245916cd2SjpkTSNETPROG= route 536e91bba0SGirish MoodalbailDLADMPROG= 6to4relay 54a7872406SmeemDEFAULTFILES= telnetd.dfl 557c478bd9Sstevel@tonic-gate 567c478bd9Sstevel@tonic-gatePROGSRCS= $(PROG:%=%.c) 577c478bd9Sstevel@tonic-gateTFTPDOBJS= in.tftpd.o tftpsubs.o 587c478bd9Sstevel@tonic-gateOTHERSRC= ../usr.bin/tftp/tftpsubs.c 597c478bd9Sstevel@tonic-gateK5RLOGINOBJS= in.rlogind.o 607c478bd9Sstevel@tonic-gateK5RSHDOBJS= in.rshd.o 6132885d59SgtbK5TELNETOBJS= in.telnetd.o 627c478bd9Sstevel@tonic-gateSRCS= $(PROGSRCS) $(OTHERSRC) 637c478bd9Sstevel@tonic-gate 6490a455acSGarrett D'AmoreSUBDIRS= bootconfchk ifconfig ilbadm in.rdisc in.routed \ 656e91bba0SGirish Moodalbail in.talkd inetadm inetconv ipadm ipmpstat ipqosconf ipsecutils \ 666ba597c5SAnurag S. Maskey kssl/kssladm kssl/ksslcfg nwamadm nwamcfg ping routeadm \ 676ba597c5SAnurag S. Maskey snoop sppptun traceroute wificonfig 687c478bd9Sstevel@tonic-gate 6990a455acSGarrett D'AmoreMSGSUBDIRS= bootconfchk ifconfig ilbadm in.routed in.talkd \ 70dd49f125SAnders Persson inetadm inetconv ipadm ipmpstat ipqosconf ipsecutils \ 71dd49f125SAnders Persson kssl/ksslcfg nwamadm nwamcfg routeadm sppptun snoop wificonfig 727c478bd9Sstevel@tonic-gate 737c478bd9Sstevel@tonic-gate# As programs get lint-clean, add them here and to the 'lint' target. 747c478bd9Sstevel@tonic-gate# Eventually this hack should go away, and all in PROG should be 757c478bd9Sstevel@tonic-gate# lint-clean. 76e3320f40SmarkfenLINTCLEAN= 6to4relay arp in.rlogind in.rshd in.telnetd in.tftpd \ 77*e7df7762SCody Peter Mello ipaddrsel ndp route \ 784b908718Smeem in.rarpd if_mpadm $(SYNCPROG) 797c478bd9Sstevel@tonic-gate# Likewise, as subdirs get lint-clean, add them here. Once 807c478bd9Sstevel@tonic-gate# they're all clean, replace the dependency of the lint target 817c478bd9Sstevel@tonic-gate# with SUBDIRS. Also (sigh) deal with the commented-out build lines 827c478bd9Sstevel@tonic-gate# for the lint rule. 83dbed73cbSSangeeta MisraLINTSUBDIRS= bootconfchk ilbadm in.rdisc in.routed in.talkd inetadm \ 84dd49f125SAnders Persson inetconv ipmpstat ipqosconf ipsecutils kssl/kssladm \ 85dd49f125SAnders Persson kssl/ksslcfg nwamadm nwamcfg ping routeadm sppptun traceroute \ 86dd49f125SAnders Persson wificonfig 877c478bd9Sstevel@tonic-gate# And as programs are verified not to attempt to write into constants, 887c478bd9Sstevel@tonic-gate# -xstrconst should be used to ensure they stay that way. 89e3320f40SmarkfenCONSTCLEAN= 907c478bd9Sstevel@tonic-gate 917c478bd9Sstevel@tonic-gateinclude ../../Makefile.cmd 927c478bd9Sstevel@tonic-gateROOTMANIFESTDIR= $(ROOTSVCNETWORK) 937c478bd9Sstevel@tonic-gate$(ROOTMANIFEST) := FILEMODE= 444 947c478bd9Sstevel@tonic-gateinclude ../Makefile.cmd-inet 957c478bd9Sstevel@tonic-gate 967c478bd9Sstevel@tonic-gateROOTSBINPROG = $(ROOTFS_PROG:%=$(ROOTSBIN)/%) 977c478bd9Sstevel@tonic-gateROOTUSRSBINLINKS = $(SBINLINKS:%=$(ROOTUSRSBIN)/%) 987c478bd9Sstevel@tonic-gate 9932885d59SgtbCOMMONOBJS= addr_match.o kcmd.o store_forw_creds.o 1007243fb49SjbeckCOMMONSRCS= $(COMMONOBJS:%.o=$(CMDINETCOMMONDIR)/%.c) 1017c478bd9Sstevel@tonic-gateSRCS+= $(COMMONSRCS) 1027c478bd9Sstevel@tonic-gate 1037014882cSRichard LoweCERRWARN += -_gcc=-Wno-implicit-function-declaration 1047014882cSRichard LoweCERRWARN += -_gcc=-Wno-uninitialized 1057014882cSRichard LoweCERRWARN += -_gcc=-Wno-unused-variable 1067014882cSRichard LoweCERRWARN += -_gcc=-Wno-unused-function 1077014882cSRichard LoweCERRWARN += -_gcc=-Wno-parentheses 1087014882cSRichard LoweCERRWARN += -_gcc=-Wno-char-subscripts 1097014882cSRichard LoweCERRWARN += -_gcc=-Wno-extra 1107014882cSRichard LoweCERRWARN += -_gcc=-Wno-address 1117014882cSRichard Lowe 1127c478bd9Sstevel@tonic-gate# 1137c478bd9Sstevel@tonic-gate# Message catalog 1147c478bd9Sstevel@tonic-gate# 1153e95bd4aSAnders PerssonPOFILES= 6to4relay.po if_mpadm.po in.comsat.po ipaddrsel.po route.po \ 1163e95bd4aSAnders Persson soconfig.po 1177c478bd9Sstevel@tonic-gatePOFILE= usr.sbin.po 1187c478bd9Sstevel@tonic-gate 1197c478bd9Sstevel@tonic-gateall:= TARGET= all 1207c478bd9Sstevel@tonic-gateinstall:= TARGET= install 1217c478bd9Sstevel@tonic-gateclean:= TARGET= clean 1227c478bd9Sstevel@tonic-gateclobber:= TARGET= clobber 1237c478bd9Sstevel@tonic-gatelint:= TARGET= lint 1247c478bd9Sstevel@tonic-gate_msg:= TARGET= _msg 1257c478bd9Sstevel@tonic-gate 126c2785286SgtbCLOBBERFILES += $(ROOTFS_PROG) $(PROG) 127b6805bf7SGordon RossCLEANFILES += $(COMMONOBJS) $(K5RLOGINOBJS) $(K5RSHDOBJS) $(TFTPDOBJS) \ 128b6805bf7SGordon Ross $(K5TELNETOBJS) 1297c478bd9Sstevel@tonic-gate 130a192e900SamaguireCPPFLAGS += -DSYSV -DBSD_COMP -I$(CMDINETCOMMONDIR) -I 1317c478bd9Sstevel@tonic-gate 1327c478bd9Sstevel@tonic-gateinclude $(SRC)/lib/gss_mechs/mech_krb5/Makefile.mech_krb5 1337c478bd9Sstevel@tonic-gateK5LIBS= 1347c478bd9Sstevel@tonic-gate 1357c478bd9Sstevel@tonic-gate# Eventually just plain CFLAGS should be += -v, but not until all in 1367c478bd9Sstevel@tonic-gate# PROGS are lint clean. 1377c478bd9Sstevel@tonic-gate$(LINTCLEAN) := CFLAGS += $(CCVERBOSE) 1387c478bd9Sstevel@tonic-gate$(CONSTCLEAN) := CFLAGS += $(XSTRCONST) 1397c478bd9Sstevel@tonic-gate 1407c478bd9Sstevel@tonic-gate$(SYNCPROG) := LDLIBS += -ldlpi 1417c478bd9Sstevel@tonic-gate$(SOCKETPROG) := LDLIBS += -lsocket 1427c478bd9Sstevel@tonic-gate$(NSLPROG) := LDLIBS += -lnsl 1437c478bd9Sstevel@tonic-gate$(AUDITPROG) := LDLIBS += -lbsm 1447c478bd9Sstevel@tonic-gate$(PAMPROG) := LDLIBS += -lpam 1457c478bd9Sstevel@tonic-gate$(RPCSVCPROG) := LDLIBS += -lrpcsvc 14667e3a03eSrie$(K5PROGS) := LDFLAGS += $(KRUNPATH) \ 1477c478bd9Sstevel@tonic-gate -L$(ROOT)$(KLIBDIR_DO) -L$(ROOT)$(KLIBDIR_GL) 1487c478bd9Sstevel@tonic-gate$(K5PROGS) := K5LIBS= -lmech_krb5 1497c478bd9Sstevel@tonic-gate$(K5PROGS) := CPPFLAGS += -I$(SRC)/head \ 1507c478bd9Sstevel@tonic-gate -I$(SRC)/uts/common/ \ 1517c478bd9Sstevel@tonic-gate -I$(SRC)/uts/common/gssapi/mechs/krb5/include \ 1527c478bd9Sstevel@tonic-gate -I$(SRC)/lib/gss_mechs/mech_krb5/include \ 1537c478bd9Sstevel@tonic-gate -I$(SRC)/lib/pam_modules/krb5 1547c478bd9Sstevel@tonic-gateLDLIBS += $(K5LIBS) 15567e3a03eSrie$(TSNETPROG) := LDLIBS += -ltsnet 1562b24ab6bSSebastien Roy$(DLADMPROG) := LDLIBS += -ldladm 1577c478bd9Sstevel@tonic-gate 158948f2876Sss150715in.rarpd := LDLIBS += -linetutil -ldlpi 159e11c3f44Smeemif_mpadm := LDLIBS += -linetutil -lipmp 160e11c3f44Smeemif_mpadm.po := XGETFLAGS += -a 1617c478bd9Sstevel@tonic-gateroute := CPPFLAGS += -DNDEBUG 1626e91bba0SGirish Moodalbailndd := LDLIBS += -ldladm -lipadm 16390a455acSGarrett D'Amorein.comsat := LDFLAGS += $(MAPFILE.NGB:%=-M%) 1647c478bd9Sstevel@tonic-gate 1657c478bd9Sstevel@tonic-gate.KEEP_STATE: 1667c478bd9Sstevel@tonic-gate 1677c478bd9Sstevel@tonic-gate.PARALLEL: 1687c478bd9Sstevel@tonic-gate 1694e5b757fSkupferall: $(PROG) $(ROOTFS_PROG) $(SUBDIRS) THIRDPARTYLICENSE.arp 1707c478bd9Sstevel@tonic-gate 1717c478bd9Sstevel@tonic-gate# 1727c478bd9Sstevel@tonic-gate# message catalog 1737c478bd9Sstevel@tonic-gate# 1747c478bd9Sstevel@tonic-gate_msg: $(MSGSUBDIRS) $(POFILE) 1757c478bd9Sstevel@tonic-gate 1767c478bd9Sstevel@tonic-gatesyncutil: $(SYNCPROG) 1777c478bd9Sstevel@tonic-gate 1787c478bd9Sstevel@tonic-gate$(POFILE): $(POFILES) 1797c478bd9Sstevel@tonic-gate $(RM) $@ 1807c478bd9Sstevel@tonic-gate cat $(POFILES) > $@ 1817c478bd9Sstevel@tonic-gate 1827243fb49Sjbeck%.o: $(CMDINETCOMMONDIR)/%.c 1837243fb49Sjbeck $(COMPILE.c) -o $@ $< 1847c478bd9Sstevel@tonic-gate 185c2785286Sgtbin.telnetd: $(K5TELNETOBJS) 186c2785286Sgtb $(LINK.c) $(K5TELNETOBJS) -o $@ $(LDLIBS) 1877c478bd9Sstevel@tonic-gate $(POST_PROCESS) 1887c478bd9Sstevel@tonic-gate 189c2785286Sgtbin.rlogind: $(K5RLOGINOBJS) $(COMMONOBJS) 190c2785286Sgtb $(LINK.c) $(K5RLOGINOBJS) $(COMMONOBJS) -o $@ $(LDLIBS) 19132885d59Sgtb $(POST_PROCESS) 19232885d59Sgtb 193c2785286Sgtbin.rshd: $(K5RSHDOBJS) $(COMMONOBJS) 194c2785286Sgtb $(LINK.c) $(K5RSHDOBJS) $(COMMONOBJS) -o $@ $(LDLIBS) 1957c478bd9Sstevel@tonic-gate $(POST_PROCESS) 1967c478bd9Sstevel@tonic-gate 1977c478bd9Sstevel@tonic-gatein.tftpd: $(TFTPDOBJS) 1987c478bd9Sstevel@tonic-gate $(LINK.c) $(TFTPDOBJS) -o $@ $(LDLIBS) 1997c478bd9Sstevel@tonic-gate $(POST_PROCESS) 2007c478bd9Sstevel@tonic-gate 2017c478bd9Sstevel@tonic-gatetftpsubs.o: $(OTHERSRC) 2027c478bd9Sstevel@tonic-gate $(COMPILE.c) $(OTHERSRC) -o $@ 2037c478bd9Sstevel@tonic-gate $(POST_PROCESS_O) 2047c478bd9Sstevel@tonic-gate 2057c478bd9Sstevel@tonic-gate$(ROOTUSRSBINLINKS): 2067c478bd9Sstevel@tonic-gate -$(RM) $@; $(SYMLINK) ../../sbin/$(@F) $@ 2077c478bd9Sstevel@tonic-gate 2087c478bd9Sstevel@tonic-gateinstall: $(PROG) $(ROOTFS_PROG) $(SUBDIRS) .WAIT $(ROOTUSRSBINPROG) \ 2097c478bd9Sstevel@tonic-gate $(ROOTSBINPROG) $(ROOTUSRSBINLINKS) $(ROOTETCDEFAULTFILES) \ 2103e95bd4aSAnders Persson $(ROOTMANIFEST) $(ROOTSVCMETHOD) THIRDPARTYLICENSE.arp 2114e5b757fSkupfer 2124e5b757fSkupferTHIRDPARTYLICENSE.arp: arp.c 2134e5b757fSkupfer $(SED) -n '/University of California/,/SUCH DAMAGE/p' arp.c > $@ 2144e5b757fSkupfer 2154e5b757fSkupferCLOBBERFILES += THIRDPARTYLICENSE.arp 2167c478bd9Sstevel@tonic-gate 2177c478bd9Sstevel@tonic-gate# 2187c478bd9Sstevel@tonic-gate# The reason this rule checks for the existence of the 2197c478bd9Sstevel@tonic-gate# Makefile is that some of the directories do not exist 2207c478bd9Sstevel@tonic-gate# in our exportable source builds. 2217c478bd9Sstevel@tonic-gate# 2227c478bd9Sstevel@tonic-gate$(SUBDIRS): FRC 2237c478bd9Sstevel@tonic-gate @if [ -f $@/Makefile ]; then \ 2247c478bd9Sstevel@tonic-gate cd $@; pwd; $(MAKE) $(TARGET); \ 2257c478bd9Sstevel@tonic-gate else \ 2267c478bd9Sstevel@tonic-gate true; \ 2277c478bd9Sstevel@tonic-gate fi 2287c478bd9Sstevel@tonic-gate 2297c478bd9Sstevel@tonic-gateFRC: 2307c478bd9Sstevel@tonic-gate 2317c478bd9Sstevel@tonic-gatecheck: $(CHKMANIFEST) 2327c478bd9Sstevel@tonic-gate 233b6805bf7SGordon Rossclean: $(SUBDIRS) clean_local 234b6805bf7SGordon Rossclean_local: 235b6805bf7SGordon Ross $(RM) $(CLEANFILES) 2367c478bd9Sstevel@tonic-gate 237b6805bf7SGordon Rossclobber: $(SUBDIRS) clobber_local 238b6805bf7SGordon Rossclobber_local: clean_local 239b6805bf7SGordon Ross $(RM) $(CLOBBERFILES) 2407c478bd9Sstevel@tonic-gate 2417c478bd9Sstevel@tonic-gatelint: $(LINTSUBDIRS) 2422b24ab6bSSebastien Roy $(LINT.c) 6to4relay.c $(LDLIBS) -lsocket -ldladm 2437c478bd9Sstevel@tonic-gate $(LINT.c) arp.c $(LDLIBS) -lsocket -lnsl 2447c478bd9Sstevel@tonic-gate @# $(LINT.c) in.rexecd.c $(LDLIBS) -lbsm -lpam 2457c478bd9Sstevel@tonic-gate $(LINT.c) -erroff=E_NAME_USED_NOT_DEF2 -erroff=E_NAME_DEF_NOT_USED2 \ 2467c478bd9Sstevel@tonic-gate -I$(SRC)/head -I$(SRC)/uts/common/ \ 2477c478bd9Sstevel@tonic-gate -I$(SRC)/uts/common/gssapi/mechs/krb5/include \ 2487c478bd9Sstevel@tonic-gate -I$(SRC)/lib/gss_mechs/mech_krb5/include \ 2497c478bd9Sstevel@tonic-gate -I$(SRC)/lib/pam_modules/krb5 \ 2507c478bd9Sstevel@tonic-gate in.rlogind.c $(COMMONSRCS) $(LDLIBS) -lbsm -lpam -lsocket -lnsl 2517c478bd9Sstevel@tonic-gate $(LINT.c) -erroff=E_NAME_USED_NOT_DEF2 -erroff=E_NAME_DEF_NOT_USED2 \ 2527c478bd9Sstevel@tonic-gate -I$(SRC)/head -I$(SRC)/uts/common/ \ 2537c478bd9Sstevel@tonic-gate -I$(SRC)/uts/common/gssapi/mechs/krb5/include \ 2547c478bd9Sstevel@tonic-gate -I$(SRC)/lib/gss_mechs/mech_krb5/include \ 2557c478bd9Sstevel@tonic-gate -I$(SRC)/lib/pam_modules/krb5 \ 2567c478bd9Sstevel@tonic-gate in.rshd.c $(COMMONSRCS) $(LDLIBS) -lbsm -lpam -lsocket -lnsl 2577c478bd9Sstevel@tonic-gate $(LINT.c) -erroff=E_NAME_USED_NOT_DEF2 \ 2587c478bd9Sstevel@tonic-gate -erroff=E_GLOBAL_COULD_BE_STATIC2 \ 2597c478bd9Sstevel@tonic-gate -I$(SRC)/head -I$(SRC)/uts/common/ \ 2607c478bd9Sstevel@tonic-gate -I$(SRC)/uts/common/gssapi/mechs/krb5/include \ 2617c478bd9Sstevel@tonic-gate -I$(SRC)/lib/gss_mechs/mech_krb5/include \ 2627c478bd9Sstevel@tonic-gate -I$(SRC)/lib/pam_modules/krb5 \ 2637c478bd9Sstevel@tonic-gate in.telnetd.c $(LDLIBS) -lbsm -lpam -lsocket -lnsl 264e11c3f44Smeem $(LINT.c) if_mpadm.c $(LDLIBS) -lsocket -lnsl -lipmp -linetutil 2657c478bd9Sstevel@tonic-gate $(LINT.c) ipaddrsel.c $(LDLIBS) -lsocket -lnsl 26645916cd2Sjpk $(LINT.c) route.c $(LDLIBS) -lsocket -lnsl -ltsnet 2677c478bd9Sstevel@tonic-gate $(LINT.c) syncinit.c $(LDLIBS) -ldlpi 2687c478bd9Sstevel@tonic-gate $(LINT.c) syncloop.c $(LDLIBS) -ldlpi 2697c478bd9Sstevel@tonic-gate $(LINT.c) syncstat.c $(LDLIBS) -ldlpi 2707c478bd9Sstevel@tonic-gate $(LINT.c) -erroff=E_NAME_USED_NOT_DEF2 in.rarpd.c $(LDLIBS) \ 2717c478bd9Sstevel@tonic-gate -lsocket -lnsl 272*e7df7762SCody Peter Mello $(LINT.c) ndp.c $(LDLIBS) \ 273*e7df7762SCody Peter Mello -lsocket -lnsl 2747c478bd9Sstevel@tonic-gate $(LINT.c) in.tftpd.c ../usr.bin/tftp/tftpsubs.c $(LDLIBS) \ 2757c478bd9Sstevel@tonic-gate -lsocket -lnsl 276