# # CDDL HEADER START # # The contents of this file are subject to the terms of the # Common Development and Distribution License (the "License"). # You may not use this file except in compliance with the License. # # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE # or http://www.opensolaris.org/os/licensing. # See the License for the specific language governing permissions # and limitations under the License. # # When distributing Covered Code, include this CDDL HEADER in each # file and include the License file at usr/src/OPENSOLARIS.LICENSE. # If applicable, add the following below this CDDL HEADER, with the # fields enclosed by brackets "[]" replaced with your own identifying # information: Portions Copyright [yyyy] [name of copyright owner] # # CDDL HEADER END # # # Copyright 2009 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # # Copyright 2011 Nexenta Systems, Inc. All rights reserved. # Copyright 2016 Toomas Soome # Copyright (c) 2018, Joyent, Inc. # Copyright 2022 Garrett D'Amore # # Hammerhead: Removed in Phase A: finger, ruptime, rwho (obsolete) # Hammerhead: Removed in Phase A: rcp, rlogin, rsh (insecure r-commands, use SSH) # Hammerhead: Removed in Phase A: talk (obsolete chat protocol) # Hammerhead: Removed in Phase B: ftp, telnet (insecure cleartext protocols) # Hammerhead: Removed in Phase B: rdist (obsolete remote file distribution) # Hammerhead: Removed in Phase B: tftp (obsolete trivial FTP) PROG= rdate whois SUIDPROG= ALL= $(PROG) $(SUIDPROG) SRCS= $(ALL:%=%.c) KCMDPROGS= SUBDIRS= chat dns-sd nc netstat \ pppd pppdump pppstats SUBDIR1= MSGSUBDIRS= # As programs get lint-clean, add them here. Eventually. # This hack should go away, and all in PROG should be lint-clean. # NB: This still applies to enabling compiler warnings and is not lint specific LINTCLEAN= rdate.c whois.c include ../../Makefile.cmd include ../Makefile.cmd-inet # Hammerhead: COMMONOBJS/POFILES for r-commands removed (Phase A/B) CLOBBERFILES += $(ALL) all: TARGET= all install: TARGET= install clean: TARGET= clean clobber: TARGET= clobber _msg: TARGET= _msg ROOTSUIDPROG= $(SUIDPROG:%=$(ROOTBIN)/%) $(ROOTSUIDPROG) : FILEMODE= 04555 CPPFLAGS += -DSYSV -DSTRNET -DBSD_COMP -I$(CMDINETCOMMONDIR) CERRWARN += -Wno-parentheses CERRWARN += $(CNOWARN_UNINIT) CERRWARN += -Wno-unused-function # Hammerhead: Suppress pointer/int cast warnings in legacy network code CERRWARN += -Wno-pointer-to-int-cast CERRWARN += -Wno-int-to-pointer-cast CERRWARN += -Wno-overflow # Eventually just plain CFLAGS should be += -v, but not until all in # PROGS are lint clean. $(LINTCLEAN) : CFLAGS += $(CCVERBOSE) rdate: LDLIBS += -lsocket whois: LDLIBS += -lsocket # Hammerhead: Kerberos r-command support removed (Phase A/B) .KEEP_STATE: all: $(ALL) $(SUBDIRS) # Hammerhead: Don't list 'all' as prerequisite — GNU Make install dispatch bug. # 'all' dispatches $(SUBDIRS) with TARGET=all, then GNU Make considers them # "already built" and skips the TARGET=install dispatch. Let each subdirectory's # own install target handle building. install: $(ALL) .WAIT $(ROOTPROG) $(ROOTSUIDPROG) $(SUBDIRS) # Hammerhead: _msg, COMMONPOFILES, r-command build rules removed (Phase A/B) $(SUBDIRS): FRC @cd $@; pwd; $(MAKE) $(TARGET) FRC: _msg: $(MSGSUBDIRS) clean: $(SUBDIRS) clean_local clean_local: $(RM) $(CLEANFILES) clobber: $(SUBDIRS) clobber_local clobber_local: clean_local $(RM) $(CLOBBERFILES)