xref: /dragonfly/contrib/tcp_wrappers/Makefile (revision 86d7f5d3)
1*86d7f5d3SJohn Marino# @(#) Makefile 1.23 97/03/21 19:27:20
2*86d7f5d3SJohn Marino# $FreeBSD: src/contrib/tcp_wrappers/Makefile,v 1.2 2000/02/03 10:26:57 shin Exp $
3*86d7f5d3SJohn Marino# $DragonFly: src/contrib/tcp_wrappers/Makefile,v 1.2 2003/06/17 04:24:06 dillon Exp $
4*86d7f5d3SJohn Marino
5*86d7f5d3SJohn Marinowhat:
6*86d7f5d3SJohn Marino	@echo
7*86d7f5d3SJohn Marino	@echo "Usage: edit the REAL_DAEMON_DIR definition in the Makefile then:"
8*86d7f5d3SJohn Marino	@echo
9*86d7f5d3SJohn Marino	@echo "	make sys-type"
10*86d7f5d3SJohn Marino	@echo
11*86d7f5d3SJohn Marino	@echo "If you are in a hurry you can try instead:"
12*86d7f5d3SJohn Marino	@echo
13*86d7f5d3SJohn Marino	@echo "	make REAL_DAEMON_DIR=/foo/bar sys-type"
14*86d7f5d3SJohn Marino	@echo
15*86d7f5d3SJohn Marino	@echo "And for a version with language extensions enabled:"
16*86d7f5d3SJohn Marino	@echo
17*86d7f5d3SJohn Marino	@echo "	make REAL_DAEMON_DIR=/foo/bar STYLE=-DPROCESS_OPTIONS sys-type"
18*86d7f5d3SJohn Marino	@echo
19*86d7f5d3SJohn Marino	@echo "This Makefile knows about the following sys-types:"
20*86d7f5d3SJohn Marino	@echo
21*86d7f5d3SJohn Marino	@echo "	generic (most bsd-ish systems with sys5 compatibility)"
22*86d7f5d3SJohn Marino	@echo "	386bsd aix alpha apollo bsdos convex-ultranet dell-gcc dgux dgux543"
23*86d7f5d3SJohn Marino	@echo "	dynix epix esix freebsd hpux irix4 irix5 irix6 isc iunix"
24*86d7f5d3SJohn Marino	@echo "	linux machten mips(untested) ncrsvr4 netbsd next osf power_unix_211"
25*86d7f5d3SJohn Marino	@echo "	ptx-2.x ptx-generic pyramid sco sco-nis sco-od2 sco-os5 sinix sunos4"
26*86d7f5d3SJohn Marino	@echo "	sunos40 sunos5 solaris8 sysv4 tandem ultrix unicos7 unicos8 unixware1 unixware2"
27*86d7f5d3SJohn Marino	@echo "	uts215 uxp"
28*86d7f5d3SJohn Marino	@echo
29*86d7f5d3SJohn Marino	@echo "If none of these match your environment, edit the system"
30*86d7f5d3SJohn Marino	@echo "dependencies sections in the Makefile and do a 'make other'."
31*86d7f5d3SJohn Marino	@echo
32*86d7f5d3SJohn Marino
33*86d7f5d3SJohn Marino#######################################################
34*86d7f5d3SJohn Marino# Choice between easy and advanced installation recipe.
35*86d7f5d3SJohn Marino#
36*86d7f5d3SJohn Marino# Advanced installation: vendor-provided daemons are left alone, and the
37*86d7f5d3SJohn Marino# inetd configuration file is edited. In this case, the REAL_DAEMON_DIR
38*86d7f5d3SJohn Marino# macro should reflect the actual directory with (most of) your
39*86d7f5d3SJohn Marino# vendor-provided network daemons.  These names can be found in the
40*86d7f5d3SJohn Marino# inetd.conf file. Usually, the telnet, ftp and finger daemons all live
41*86d7f5d3SJohn Marino# in the same directory.
42*86d7f5d3SJohn Marino#
43*86d7f5d3SJohn Marino# Uncomment the appropriate line if you are going to edit inetd.conf.
44*86d7f5d3SJohn Marino#
45*86d7f5d3SJohn Marino# Ultrix 4.x SunOS 4.x ConvexOS 10.x Dynix/ptx
46*86d7f5d3SJohn Marino#REAL_DAEMON_DIR=/usr/etc
47*86d7f5d3SJohn Marino#
48*86d7f5d3SJohn Marino# SysV.4 Solaris 2.x OSF AIX
49*86d7f5d3SJohn Marino#REAL_DAEMON_DIR=/usr/sbin
50*86d7f5d3SJohn Marino#
51*86d7f5d3SJohn Marino# BSD 4.4
52*86d7f5d3SJohn Marino#REAL_DAEMON_DIR=/usr/libexec
53*86d7f5d3SJohn Marino#
54*86d7f5d3SJohn Marino# HP-UX SCO Unicos
55*86d7f5d3SJohn Marino#REAL_DAEMON_DIR=/etc
56*86d7f5d3SJohn Marino
57*86d7f5d3SJohn Marino# Easy installation: vendor-provided network daemons are moved to "some
58*86d7f5d3SJohn Marino# other" directory, and the tcpd wrapper fills in the "holes". For this
59*86d7f5d3SJohn Marino# mode of operation, the REAL_DAEMON_DIR macro should be set to the "some
60*86d7f5d3SJohn Marino# other" directory.  The "..." is here for historical reasons only; you
61*86d7f5d3SJohn Marino# should probably use some other name.
62*86d7f5d3SJohn Marino#
63*86d7f5d3SJohn Marino# Uncomment the appropriate line if you are going to move your daemons.
64*86d7f5d3SJohn Marino#
65*86d7f5d3SJohn Marino# Ultrix 4.x SunOS 4.x ConvexOS 10.x Dynix/ptx
66*86d7f5d3SJohn Marino#REAL_DAEMON_DIR=/usr/etc/...
67*86d7f5d3SJohn Marino#
68*86d7f5d3SJohn Marino# SysV.4 Solaris 2.x OSF AIX
69*86d7f5d3SJohn Marino#REAL_DAEMON_DIR=/usr/sbin/...
70*86d7f5d3SJohn Marino#
71*86d7f5d3SJohn Marino# BSD 4.4
72*86d7f5d3SJohn Marino#REAL_DAEMON_DIR=/usr/libexec/...
73*86d7f5d3SJohn Marino#
74*86d7f5d3SJohn Marino# HP-UX SCO Unicos
75*86d7f5d3SJohn Marino#REAL_DAEMON_DIR=/etc/...
76*86d7f5d3SJohn Marino
77*86d7f5d3SJohn Marino# End of mandatory section
78*86d7f5d3SJohn Marino##########################
79*86d7f5d3SJohn Marino
80*86d7f5d3SJohn Marino##########################################
81*86d7f5d3SJohn Marino# Ready-to-use system-dependent templates.
82*86d7f5d3SJohn Marino#
83*86d7f5d3SJohn Marino# Ready-to-use templates are available for many systems (see the "echo"
84*86d7f5d3SJohn Marino# commands at the start of this Makefile).  The templates take care of
85*86d7f5d3SJohn Marino# all system dependencies: after editing the REAL_DAEMON_DIR definition
86*86d7f5d3SJohn Marino# above, do a "make sunos4" (or whatever system type is appropriate).
87*86d7f5d3SJohn Marino#
88*86d7f5d3SJohn Marino# If your system is not listed (or something that comes close enough), you
89*86d7f5d3SJohn Marino# have to edit the system dependencies section below and do a "make other".
90*86d7f5d3SJohn Marino#
91*86d7f5d3SJohn Marino# Send templates for other UNIX versions to wietse@wzv.win.tue.nl.
92*86d7f5d3SJohn Marino
93*86d7f5d3SJohn Marino# This is good for many BSD+SYSV hybrids with NIS (formerly YP).
94*86d7f5d3SJohn Marinogeneric aix osf alpha dynix:
95*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
96*86d7f5d3SJohn Marino	LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ=setenv.o \
97*86d7f5d3SJohn Marino	NETGROUP=-DNETGROUP TLI= all
98*86d7f5d3SJohn Marino
99*86d7f5d3SJohn Marino# Ditto, with vsyslog
100*86d7f5d3SJohn Marinosunos4:
101*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
102*86d7f5d3SJohn Marino	LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ=setenv.o \
103*86d7f5d3SJohn Marino	NETGROUP=-DNETGROUP VSYSLOG= TLI= all
104*86d7f5d3SJohn Marino
105*86d7f5d3SJohn Marino# Generic with resolver library.
106*86d7f5d3SJohn Marinogeneric-resolver:
107*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
108*86d7f5d3SJohn Marino	LIBS=-lresolv RANLIB=ranlib ARFLAGS=rv AUX_OBJ=setenv.o \
109*86d7f5d3SJohn Marino	NETGROUP=-DNETGROUP TLI= all
110*86d7f5d3SJohn Marino
111*86d7f5d3SJohn Marino# The NeXT loader needs "-m" or it barfs on redefined library functions.
112*86d7f5d3SJohn Marinonext:
113*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
114*86d7f5d3SJohn Marino	LIBS=-m RANLIB=ranlib ARFLAGS=rv AUX_OBJ=environ.o \
115*86d7f5d3SJohn Marino	NETGROUP=-DNETGROUP TLI= all
116*86d7f5d3SJohn Marino
117*86d7f5d3SJohn Marino# SunOS for the 386 was frozen at release 4.0.x.
118*86d7f5d3SJohn Marinosunos40:
119*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
120*86d7f5d3SJohn Marino	LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ="setenv.o strcasecmp.o" \
121*86d7f5d3SJohn Marino	NETGROUP=-DNETGROUP VSYSLOG= TLI= all
122*86d7f5d3SJohn Marino
123*86d7f5d3SJohn Marino# Ultrix is like aix, next, etc., but has miscd and setenv().
124*86d7f5d3SJohn Marinoultrix:
125*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
126*86d7f5d3SJohn Marino	LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ= \
127*86d7f5d3SJohn Marino	NETGROUP=-DNETGROUP TLI= all miscd
128*86d7f5d3SJohn Marino
129*86d7f5d3SJohn Marino# This works on EP/IX 1.4.3 and will likely work on Mips (reggers@julian.uwo.ca)
130*86d7f5d3SJohn Marinoepix:
131*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
132*86d7f5d3SJohn Marino	LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ=environ.o \
133*86d7f5d3SJohn Marino	NETGROUP=-DNETGROUP TLI= SYSTYPE="-systype bsd43" all
134*86d7f5d3SJohn Marino
135*86d7f5d3SJohn Marino# Freebsd and linux by default have no NIS.
136*86d7f5d3SJohn Marino386bsd bsdos:
137*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
138*86d7f5d3SJohn Marino	LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ= NETGROUP= TLI= \
139*86d7f5d3SJohn Marino	EXTRA_CFLAGS=-DSYS_ERRLIST_DEFINED VSYSLOG= all
140*86d7f5d3SJohn Marino
141*86d7f5d3SJohn Marinofreebsd:
142*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
143*86d7f5d3SJohn Marino	RANLIB=ranlib ARFLAGS=rv AUX_OBJ= NETGROUP=-DNETGROUP TLI= \
144*86d7f5d3SJohn Marino	EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DINET6 -DUSE_GETIPNODEBY" \
145*86d7f5d3SJohn Marino	VSYSLOG= all
146*86d7f5d3SJohn Marino
147*86d7f5d3SJohn Marinonetbsd:
148*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
149*86d7f5d3SJohn Marino	LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ= NETGROUP= TLI= \
150*86d7f5d3SJohn Marino	EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DINET6 \
151*86d7f5d3SJohn Marino	-Dss_family=__ss_family -Dss_len=__ss_len" VSYSLOG= all
152*86d7f5d3SJohn Marino
153*86d7f5d3SJohn Marinolinux:
154*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
155*86d7f5d3SJohn Marino	LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ=setenv.o NETGROUP= TLI= \
156*86d7f5d3SJohn Marino	EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DBROKEN_SO_LINGER -DINET6=1 \
157*86d7f5d3SJohn Marino	-Dss_family=__ss_family -Dss_len=__ss_len" all
158*86d7f5d3SJohn Marino
159*86d7f5d3SJohn Marinolinux-old:
160*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
161*86d7f5d3SJohn Marino	LIBS="/usr/inet6/lib/libinet6.a -lresolv" \
162*86d7f5d3SJohn Marino	RANLIB=ranlib ARFLAGS=rv AUX_OBJ=setenv.o NETGROUP= TLI= \
163*86d7f5d3SJohn Marino	EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DBROKEN_SO_LINGER -DINET6=1 -Dss_family=sin6_family -Dsockaddr_storage=sockaddr_in6 -I/usr/inet6/include" all
164*86d7f5d3SJohn Marino
165*86d7f5d3SJohn Marino# This is good for many SYSV+BSD hybrids with NIS, probably also for HP-UX 7.x.
166*86d7f5d3SJohn Marinohpux hpux8 hpux9 hpux10:
167*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
168*86d7f5d3SJohn Marino	LIBS= RANLIB=echo ARFLAGS=rv AUX_OBJ=setenv.o \
169*86d7f5d3SJohn Marino	NETGROUP=-DNETGROUP TLI= all
170*86d7f5d3SJohn Marino
171*86d7f5d3SJohn Marino# ConvexOS-10.x with UltraNet support (ukkonen@csc.fi).
172*86d7f5d3SJohn Marinoconvex-ultranet:
173*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
174*86d7f5d3SJohn Marino	LIBS=-lulsock RANLIB=ranlib ARFLAGS=rv AUX_OBJ=environ.o \
175*86d7f5d3SJohn Marino	NETGROUP=-DNETGROUP TLI= all
176*86d7f5d3SJohn Marino
177*86d7f5d3SJohn Marino# Generic support for the Dynix/PTX version of TLI.
178*86d7f5d3SJohn Marinoptx-generic:
179*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
180*86d7f5d3SJohn Marino	LIBS="-lsocket -linet -lnsl" RANLIB=echo ARFLAGS=rv \
181*86d7f5d3SJohn Marino	AUX_OBJ="setenv.o strcasecmp.o ptx.o" NETGROUP= TLI=-DPTX all
182*86d7f5d3SJohn Marino
183*86d7f5d3SJohn Marino# With UDP support optimized for PTX 2.x (timw@sequent.com).
184*86d7f5d3SJohn Marinoptx-2.x:
185*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
186*86d7f5d3SJohn Marino	LIBS="-lsocket -linet -lnsl" RANLIB=echo ARFLAGS=rv \
187*86d7f5d3SJohn Marino	AUX_OBJ="setenv.o strcasecmp.o tli-sequent.o" NETGROUP= \
188*86d7f5d3SJohn Marino	TLI=-DTLI_SEQUENT all
189*86d7f5d3SJohn Marino
190*86d7f5d3SJohn Marino# IRIX 4.0.x has a special ar(1) flag.
191*86d7f5d3SJohn Marinoirix4:
192*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
193*86d7f5d3SJohn Marino	LIBS="-lc -lsun" RANLIB=echo ARFLAGS=rvs AUX_OBJ=setenv.o \
194*86d7f5d3SJohn Marino	NETGROUP=-DNETGROUP TLI= all
195*86d7f5d3SJohn Marino
196*86d7f5d3SJohn Marino# IRIX 5.2 is SYSV4 with several broken things (such as -lsocket -lnsl).
197*86d7f5d3SJohn Marinoirix5:
198*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
199*86d7f5d3SJohn Marino	LIBS=-lsun RANLIB=echo ARFLAGS=rv VSYSLOG= \
200*86d7f5d3SJohn Marino	NETGROUP=-DNETGROUP AUX_OBJ=setenv.o TLI= all
201*86d7f5d3SJohn Marino
202*86d7f5d3SJohn Marino# IRIX 6.2 (tucker@math.unc.edu). Must find a better value than 200000.
203*86d7f5d3SJohn Marinoirix6:
204*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
205*86d7f5d3SJohn Marino	LIBS= RANLIB=echo ARFLAGS=rv VSYSLOG= \
206*86d7f5d3SJohn Marino	NETGROUP=-DNETGROUP EXTRA_CFLAGS="-DBSD=200000" TLI= all
207*86d7f5d3SJohn Marino
208*86d7f5d3SJohn Marino# SunOS 5.x is another SYSV4 variant.
209*86d7f5d3SJohn Marinosunos5:
210*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
211*86d7f5d3SJohn Marino	LIBS="-lsocket -lnsl" RANLIB=echo ARFLAGS=rv VSYSLOG= \
212*86d7f5d3SJohn Marino	NETGROUP=-DNETGROUP AUX_OBJ=setenv.o TLI=-DTLI \
213*86d7f5d3SJohn Marino	BUGS="$(BUGS) -DSOLARIS_24_GETHOSTBYNAME_BUG" all
214*86d7f5d3SJohn Marino
215*86d7f5d3SJohn Marino# SunOS 5.8 is another SYSV4 variant, but has IPv6 support
216*86d7f5d3SJohn Marinosolaris8:
217*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
218*86d7f5d3SJohn Marino	LIBS="-lsocket -lnsl" RANLIB=echo ARFLAGS=rv VSYSLOG= \
219*86d7f5d3SJohn Marino	NETGROUP=-DNETGROUP AUX_OBJ=setenv.o TLI=-DTLI \
220*86d7f5d3SJohn Marino	EXTRA_CFLAGS="-DINET6 -DUSE_GETIPNODEBY -DNO_CLONE_DEVICE \
221*86d7f5d3SJohn Marino	-DINT32_T" all
222*86d7f5d3SJohn Marino
223*86d7f5d3SJohn Marino# Generic SYSV40
224*86d7f5d3SJohn Marinoesix sysv4:
225*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
226*86d7f5d3SJohn Marino	LIBS="-lsocket -lnsl" RANLIB=echo ARFLAGS=rv \
227*86d7f5d3SJohn Marino	NETGROUP=-DNETGROUP AUX_OBJ=setenv.o TLI=-DTLI all
228*86d7f5d3SJohn Marino
229*86d7f5d3SJohn Marino# DG/UX 5.4.1 and 5.4.2 have an unusual inet_addr() interface.
230*86d7f5d3SJohn Marinodgux:
231*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
232*86d7f5d3SJohn Marino	LIBS=-lnsl RANLIB=echo ARFLAGS=rv \
233*86d7f5d3SJohn Marino	NETGROUP=-DNETGROUP AUX_OBJ=setenv.o TLI=-DTLI \
234*86d7f5d3SJohn Marino	BUGS="$(BUGS) -DINET_ADDR_BUG" all
235*86d7f5d3SJohn Marino
236*86d7f5d3SJohn Marinodgux543:
237*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
238*86d7f5d3SJohn Marino	LIBS=-lnsl RANLIB=echo ARFLAGS=rv \
239*86d7f5d3SJohn Marino	NETGROUP=-DNETGROUP AUX_OBJ=setenv.o TLI=-DTLI all
240*86d7f5d3SJohn Marino
241*86d7f5d3SJohn Marino# NCR UNIX 02.02.01 and 02.03.00 (Alex Chircop, msu@unimt.mt)
242*86d7f5d3SJohn Marinoncrsvr4:
243*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
244*86d7f5d3SJohn Marino	LIBS="-lresolv -lnsl -lsocket" RANLIB=echo ARFLAGS=rv \
245*86d7f5d3SJohn Marino	AUX_OBJ="setenv.o strcasecmp.o" NETGROUP= TLI=-DTLI \
246*86d7f5d3SJohn Marino	EXTRA_CFLAGS="" FROM_OBJ=ncr.o all
247*86d7f5d3SJohn Marino
248*86d7f5d3SJohn Marino# Tandem SYSV4 (eqawas@hedgehog.ac.cowan.edu.au)
249*86d7f5d3SJohn Marinotandem:
250*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
251*86d7f5d3SJohn Marino	LIBS="-lsocket -lnsl" RANLIB=echo ARFLAGS=rv \
252*86d7f5d3SJohn Marino	NETGROUP= AUX_OBJ="setenv.o strcasecmp.o" TLI=-DTLI all
253*86d7f5d3SJohn Marino
254*86d7f5d3SJohn Marino# Amdahl UTS 2.1.5 (Richard.Richmond@bridge.bst.bls.com)
255*86d7f5d3SJohn Marinouts215:
256*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
257*86d7f5d3SJohn Marino	LIBS="-lsocket" RANLIB=echo \
258*86d7f5d3SJohn Marino	ARFLAGS=rv AUX_OBJ=setenv.o NETGROUP=-DNO_NETGROUP TLI= all
259*86d7f5d3SJohn Marino
260*86d7f5d3SJohn Marino# UXP/DS System V.4 clone (vic@uida0.uida.es).
261*86d7f5d3SJohn Marinouxp:
262*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
263*86d7f5d3SJohn Marino	LIBS="-L/usr/ucblib -lsocket -lnsl -lucb" \
264*86d7f5d3SJohn Marino	RANLIB=echo ARFLAGS=rv NETGROUP=-DNETGROUP \
265*86d7f5d3SJohn Marino	AUX_OBJ=setenv.o TLI="-DTLI -DDRS_XTI" all
266*86d7f5d3SJohn Marino
267*86d7f5d3SJohn Marino# DELL System V.4 Issue 2.2 using gcc (kim@tac.nyc.ny.us, jurban@norden1.com)
268*86d7f5d3SJohn Marinodell-gcc:
269*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
270*86d7f5d3SJohn Marino	LIBS="-lsocket -lnsl" RANLIB=ranlib ARFLAGS=rv CC=gcc \
271*86d7f5d3SJohn Marino	AUX_OBJ="setenv.o strcasecmp.o" TLI=-DTLI all
272*86d7f5d3SJohn Marino
273*86d7f5d3SJohn Marino# SCO 3.2v4.1 no frills (jedwards@sol1.solinet.net).
274*86d7f5d3SJohn Marinosco:
275*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
276*86d7f5d3SJohn Marino	LIBS="-lsocket -lnsl_s" RANLIB=echo ARFLAGS=rv \
277*86d7f5d3SJohn Marino	NETGROUP= AUX_OBJ=setenv.o TLI= all
278*86d7f5d3SJohn Marino
279*86d7f5d3SJohn Marino# SCO OpenDesktop 2.0, release 3.2 (peter@midnight.com). Please simplify.
280*86d7f5d3SJohn Marinosco-od2:
281*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
282*86d7f5d3SJohn Marino	LIBS="-lrpcsvc -lrpc -lyp -lrpc -lrpcsvc -lsocket" \
283*86d7f5d3SJohn Marino	RANLIB=echo ARFLAGS=rv AUX_OBJ=setenv.o \
284*86d7f5d3SJohn Marino	NETGROUP=-DNETGROUP TLI= all
285*86d7f5d3SJohn Marino
286*86d7f5d3SJohn Marino# SCO 3.2v4.2 with TCP/IP 1.2.1 (Eduard.Vopicka@vse.cz). Please simplify.
287*86d7f5d3SJohn Marinosco-nis:
288*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
289*86d7f5d3SJohn Marino	LIBS="-lyp -lrpc -lsocket -lyp -lc_s -lc" \
290*86d7f5d3SJohn Marino	RANLIB=echo ARFLAGS=rv AUX_OBJ=setenv.o \
291*86d7f5d3SJohn Marino	NETGROUP=-DNETGROUP TLI= EXTRA_CFLAGS="-nointl -DNO_NETGRENT" all
292*86d7f5d3SJohn Marino
293*86d7f5d3SJohn Marino# SCO 3.2v5.0.0 OpenServer 5 (bob@odt.handy.com, bill@razorlogic.com)
294*86d7f5d3SJohn Marinosco-os5:
295*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
296*86d7f5d3SJohn Marino	LIBS="-lrpcsvc -lsocket" RANLIB=echo ARFLAGS=rv VSYSLOG= \
297*86d7f5d3SJohn Marino	AUX_OBJ=setenv.o NETGROUP=-DNETGROUP TLI= all
298*86d7f5d3SJohn Marino
299*86d7f5d3SJohn Marino# sinix 5.42 setjmp workaround (szrzs023@ub3.ub.uni-kiel.de)
300*86d7f5d3SJohn Marinosinix:
301*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
302*86d7f5d3SJohn Marino	LIBS="-lsocket -lnsl -L/usr/ccs/lib -lc -L/usr/ucblib -lucb" \
303*86d7f5d3SJohn Marino	RANLIB=echo ARFLAGS=rv AUX_OBJ=setenv.o TLI=-DTLI all
304*86d7f5d3SJohn Marino
305*86d7f5d3SJohn Marino# Domain SR10.4. Build under bsd, run under either sysv3 or bsd43.
306*86d7f5d3SJohn Marinoapollo:
307*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
308*86d7f5d3SJohn Marino	LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ=setenv.o \
309*86d7f5d3SJohn Marino	NETGROUP=-DNETGROUP TLI= SYSTYPE="-A run,any -A sys,any" all
310*86d7f5d3SJohn Marino
311*86d7f5d3SJohn Marino# Pyramid OSx 5.1, using the BSD universe.
312*86d7f5d3SJohn Marinopyramid:
313*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
314*86d7f5d3SJohn Marino	LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ="environ.o vfprintf.o" \
315*86d7f5d3SJohn Marino	STRINGS="-Dstrchr=index -Dstrrchr=rindex -Dmemcmp=bcmp -Dno_memcpy" \
316*86d7f5d3SJohn Marino	NETGROUP="-DNETGROUP -DUSE_GETDOMAIN" TLI= all
317*86d7f5d3SJohn Marino
318*86d7f5d3SJohn Marino# Untested.
319*86d7f5d3SJohn Marinomips:
320*86d7f5d3SJohn Marino	@echo "Warning: some definitions may be wrong."
321*86d7f5d3SJohn Marino	make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
322*86d7f5d3SJohn Marino	LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ=environ.o \
323*86d7f5d3SJohn Marino	NETGROUP=-DNETGROUP TLI= SYSTYPE="-sysname bsd43" all
324*86d7f5d3SJohn Marino
325*86d7f5d3SJohn Marino# Cray (tested with UNICOS 7.0.4).
326*86d7f5d3SJohn Marinounicos7:
327*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
328*86d7f5d3SJohn Marino	LIBS=-lnet RANLIB=echo ARFLAGS=rv \
329*86d7f5d3SJohn Marino	EXTRA_CFLAGS=-DINADDR_NONE="\"((unsigned long) -1)\"" \
330*86d7f5d3SJohn Marino	AUX_OBJ="setenv.o strcasecmp.o" NETGROUP= TLI= all
331*86d7f5d3SJohn Marino
332*86d7f5d3SJohn Marino# Unicos 8.x, Cray-YMP (Bruce Kelly).
333*86d7f5d3SJohn Marinounicos8:
334*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
335*86d7f5d3SJohn Marino	LIBS= RANLIB=echo AR=bld ARFLAGS=rv \
336*86d7f5d3SJohn Marino	AUX_OBJ= NETGROUP= TLI= all
337*86d7f5d3SJohn Marino
338*86d7f5d3SJohn Marino# Power_UNIX 2.1.1 (amantel@lerc.nasa.gov)
339*86d7f5d3SJohn Marinopower_unix_211:
340*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
341*86d7f5d3SJohn Marino	LIBS="-lnsl -lsocket -lgen -lresolv" RANLIB=echo ARFLAGS=rv \
342*86d7f5d3SJohn Marino	NETGROUP= AUX_OBJ=setenv.o TLI=-DTLI BUGS="$(BUGS)" all
343*86d7f5d3SJohn Marino
344*86d7f5d3SJohn Marino# ISC (fc@all.net)
345*86d7f5d3SJohn Marinoisc:
346*86d7f5d3SJohn Marino	make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
347*86d7f5d3SJohn Marino	LIBS="-linet -lnsl_s -ldbm" RANLIB=echo ARFLAGS=rv \
348*86d7f5d3SJohn Marino	AUX_OBJ="setenv.o strcasecmp.o" EXTRA_CFLAGS="-DENOTCONN=ENAVAIL" \
349*86d7f5d3SJohn Marino	NETGROUP= TLI= all
350*86d7f5d3SJohn Marino
351*86d7f5d3SJohn Marino# Interactive UNIX R3.2 version 4.0 (Bobby D. Wright).
352*86d7f5d3SJohn Marinoiunix:
353*86d7f5d3SJohn Marino	make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
354*86d7f5d3SJohn Marino	LIBS="-linet -lnsl_s -ldbm" RANLIB=echo ARFLAGS=rv \
355*86d7f5d3SJohn Marino	AUX_OBJ=environ.o strcasecmp.o NETGROUP= TLI= all
356*86d7f5d3SJohn Marino
357*86d7f5d3SJohn Marino# RTU 6.0 on a Masscomp 5400 (ben@piglet.cr.usgs.gov). When using the
358*86d7f5d3SJohn Marino# advanced installation, increment argv before actually looking at it.
359*86d7f5d3SJohn Marinortu:
360*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
361*86d7f5d3SJohn Marino	LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ=environ.o \
362*86d7f5d3SJohn Marino	NETGROUP= TLI= all
363*86d7f5d3SJohn Marino
364*86d7f5d3SJohn Marino# Unixware sans NIS (mc@telebase.com). Compiler dislikes strcasecmp.c.
365*86d7f5d3SJohn Marinounixware1:
366*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
367*86d7f5d3SJohn Marino	LIBS="-lsocket -lnsl -lc -L/usr/ucblib -lucb" RANLIB=echo ARFLAGS=rv \
368*86d7f5d3SJohn Marino	NETGROUP=$(NETGROUP) AUX_OBJ=environ.o TLI=-DTLI all
369*86d7f5d3SJohn Marino
370*86d7f5d3SJohn Marinounixware2:
371*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
372*86d7f5d3SJohn Marino	LIBS="-lsocket -lnsl -lgen -lc -L/usr/ucblib -lucb" RANLIB=echo \
373*86d7f5d3SJohn Marino	ARFLAGS=rv NETGROUP=$(NETGROUP) AUX_OBJ=environ.o TLI=-DTLI all
374*86d7f5d3SJohn Marino
375*86d7f5d3SJohn Marinou6000:
376*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
377*86d7f5d3SJohn Marino	LIBS="-lsocket -lnsl" RANLIB=echo ARFLAGS=rv \
378*86d7f5d3SJohn Marino	NETGROUP=-DNETGROUP AUX_OBJ="setenv.o strcasecmp.o" TLI=-DTLI all
379*86d7f5d3SJohn Marino
380*86d7f5d3SJohn Marino# MachTen
381*86d7f5d3SJohn Marinomachten:
382*86d7f5d3SJohn Marino	@make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \
383*86d7f5d3SJohn Marino	LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ=environ.o \
384*86d7f5d3SJohn Marino	NETGROUP= TLI= all
385*86d7f5d3SJohn Marino
386*86d7f5d3SJohn Marino###############################################################
387*86d7f5d3SJohn Marino# System dependencies: TLI (transport-level interface) support.
388*86d7f5d3SJohn Marino#
389*86d7f5d3SJohn Marino# Uncomment the following macro if your system has System V.4-style TLI
390*86d7f5d3SJohn Marino# support (/usr/include/sys/timod.h, /etc/netconfig, and the netdir(3)
391*86d7f5d3SJohn Marino# routines).
392*86d7f5d3SJohn Marino#
393*86d7f5d3SJohn Marino#TLI	= -DTLI
394*86d7f5d3SJohn Marino
395*86d7f5d3SJohn Marino###############################################################################
396*86d7f5d3SJohn Marino# System dependencies: differences between ranlib(1) and ar(1) implementations.
397*86d7f5d3SJohn Marino#
398*86d7f5d3SJohn Marino# Some C compilers (Ultrix 4.x) insist that ranlib(1) be run on an object
399*86d7f5d3SJohn Marino# library; some don't care as long as the modules are in the right order;
400*86d7f5d3SJohn Marino# some systems don't even have a ranlib(1) command. Make your choice.
401*86d7f5d3SJohn Marino
402*86d7f5d3SJohn MarinoRANLIB	= ranlib	# have ranlib (BSD-ish UNIX)
403*86d7f5d3SJohn Marino#RANLIB	= echo		# no ranlib (SYSV-ish UNIX)
404*86d7f5d3SJohn Marino
405*86d7f5d3SJohn MarinoARFLAGS	= rv		# most systems
406*86d7f5d3SJohn Marino#ARFLAGS= rvs		# IRIX 4.0.x
407*86d7f5d3SJohn Marino
408*86d7f5d3SJohn MarinoAR	= ar
409*86d7f5d3SJohn Marino#AR	= bld		# Unicos 8.x
410*86d7f5d3SJohn Marino
411*86d7f5d3SJohn Marino#############################################################################
412*86d7f5d3SJohn Marino# System dependencies: routines that are not present in the system libraries.
413*86d7f5d3SJohn Marino#
414*86d7f5d3SJohn Marino# If your system library does not have set/putenv() or strcasecmp(), use
415*86d7f5d3SJohn Marino# the ones provided with this source distribution. The environ.c module
416*86d7f5d3SJohn Marino# implements setenv(), getenv(), and putenv().
417*86d7f5d3SJohn Marino
418*86d7f5d3SJohn Marino#AUX_OBJ= setenv.o
419*86d7f5d3SJohn Marino#AUX_OBJ= environ.o
420*86d7f5d3SJohn Marino#AUX_OBJ= environ.o strcasecmp.o
421*86d7f5d3SJohn Marino
422*86d7f5d3SJohn Marino# Uncomment the following if your C library does not provide the
423*86d7f5d3SJohn Marino# strchr/strrchr/memcmp routines, but comes with index/rindex/bcmp.
424*86d7f5d3SJohn Marino#
425*86d7f5d3SJohn Marino#STRINGS= -Dstrchr=index -Dstrrchr=rindex -Dmemcmp=bcmp -Dno_memcpy
426*86d7f5d3SJohn Marino
427*86d7f5d3SJohn Marino#################################################################
428*86d7f5d3SJohn Marino# System dependencies: selection of non-default object libraries.
429*86d7f5d3SJohn Marino#
430*86d7f5d3SJohn Marino# Most System V implementations require that you explicitly specify the
431*86d7f5d3SJohn Marino# networking libraries. There is no general consensus, though.
432*86d7f5d3SJohn Marino#
433*86d7f5d3SJohn Marino#LIBS	= -lsocket -lnsl		# SysV.4 Solaris 2.x
434*86d7f5d3SJohn Marino#LIBS	= -lsun				# IRIX
435*86d7f5d3SJohn Marino#LIBS	= -lsocket -linet -lnsl -lnfs	# PTX
436*86d7f5d3SJohn Marino#LIBS	= -linet -lnsl_s -ldbm		# ISC
437*86d7f5d3SJohn Marino#LIBS	= -lnet				# Unicos 7
438*86d7f5d3SJohn Marino#LIBS	= -linet -lsyslog -ldbm
439*86d7f5d3SJohn Marino#LIBS	= -lsyslog -lsocket -lnsl
440*86d7f5d3SJohn Marino
441*86d7f5d3SJohn Marino######################################################
442*86d7f5d3SJohn Marino# System dependencies: system-specific compiler flags.
443*86d7f5d3SJohn Marino#
444*86d7f5d3SJohn Marino# Apollo Domain/OS offers both bsd and sys5 environments, sometimes
445*86d7f5d3SJohn Marino# on the same machine.  If your Apollo is primarily sys5.3 and also
446*86d7f5d3SJohn Marino# has bsd4.3, uncomment the following to build under bsd and run under
447*86d7f5d3SJohn Marino# either environment.
448*86d7f5d3SJohn Marino#
449*86d7f5d3SJohn Marino#SYSTYPE= -A run,any -A sys,any
450*86d7f5d3SJohn Marino
451*86d7f5d3SJohn Marino# For MIPS RISC/os 4_52.p3, uncomment the following definition.
452*86d7f5d3SJohn Marino#
453*86d7f5d3SJohn Marino#SYSTYPE= -sysname bsd43
454*86d7f5d3SJohn Marino
455*86d7f5d3SJohn Marino##################################################
456*86d7f5d3SJohn Marino# System dependencies: working around system bugs.
457*86d7f5d3SJohn Marino#
458*86d7f5d3SJohn Marino# -DGETPEERNAME_BUG works around a getpeername(2) bug in some versions of
459*86d7f5d3SJohn Marino# Apollo or SYSV.4 UNIX:  the wrapper would report that all UDP requests
460*86d7f5d3SJohn Marino# come from address 0.0.0.0. The workaround does no harm on other systems.
461*86d7f5d3SJohn Marino#
462*86d7f5d3SJohn Marino# -DBROKEN_FGETS works around an fgets(3) bug in some System V versions
463*86d7f5d3SJohn Marino# (IRIX):  fgets() gives up too fast when reading from a network socket.
464*86d7f5d3SJohn Marino# The workaround does no harm on other systems.
465*86d7f5d3SJohn Marino#
466*86d7f5d3SJohn Marino# Some UNIX systems (IRIX) make the error of calling the strtok() library
467*86d7f5d3SJohn Marino# routine from other library routines such as, e.g., gethostbyname/addr().
468*86d7f5d3SJohn Marino# The result is that hosts can slip through the wrapper allow/deny filters.
469*86d7f5d3SJohn Marino# Compile with -DLIBC_CALLS_STRTOK to avoid the vendor's strtok() routine.
470*86d7f5d3SJohn Marino# The workaround does no harm on other systems.
471*86d7f5d3SJohn Marino#
472*86d7f5d3SJohn Marino# DG/UX 5.4.1 comes with an inet_ntoa() function that returns a structure
473*86d7f5d3SJohn Marino# instead of a long integer. Compile with -DINET_ADDR_BUG to work around
474*86d7f5d3SJohn Marino# this mutant behavour. Fixed in 5.4R3.
475*86d7f5d3SJohn Marino#
476*86d7f5d3SJohn Marino# Solaris 2.4 gethostbyname(), in DNS through NIS mode, puts only one
477*86d7f5d3SJohn Marino# address in the host address list; all other addresses are treated as
478*86d7f5d3SJohn Marino# host name aliases. Compile with -DSOLARIS_24_GETHOSTBYNAME_BUG to work
479*86d7f5d3SJohn Marino# around this. The workaround does no harm on other Solaris versions.
480*86d7f5d3SJohn Marino
481*86d7f5d3SJohn Marino#BUGS = -DGETPEERNAME_BUG -DBROKEN_FGETS -DLIBC_CALLS_STRTOK
482*86d7f5d3SJohn Marino#BUGS = -DGETPEERNAME_BUG -DBROKEN_FGETS -DINET_ADDR_BUG
483*86d7f5d3SJohn Marino#BUGS = -DGETPEERNAME_BUG -DBROKEN_FGETS -DSOLARIS_24_GETHOSTBYNAME_BUG
484*86d7f5d3SJohn Marino
485*86d7f5d3SJohn Marino##########################################################################
486*86d7f5d3SJohn Marino# System dependencies: whether or not your system has NIS (or YP) support.
487*86d7f5d3SJohn Marino#
488*86d7f5d3SJohn Marino# If your system supports NIS or YP-style netgroups, enable the following
489*86d7f5d3SJohn Marino# macro definition. Netgroups are used only for host access control.
490*86d7f5d3SJohn Marino#
491*86d7f5d3SJohn Marino#NETGROUP= -DNETGROUP
492*86d7f5d3SJohn Marino
493*86d7f5d3SJohn Marino###############################################################
494*86d7f5d3SJohn Marino# System dependencies: whether or not your system has vsyslog()
495*86d7f5d3SJohn Marino#
496*86d7f5d3SJohn Marino# If your system supports vsyslog(), comment out the following definition.
497*86d7f5d3SJohn Marino# If in doubt leave it in, it won't harm.
498*86d7f5d3SJohn Marino
499*86d7f5d3SJohn Marino#VSYSLOG	= -Dvsyslog=myvsyslog
500*86d7f5d3SJohn Marino
501*86d7f5d3SJohn Marino# End of the system dependencies.
502*86d7f5d3SJohn Marino#################################
503*86d7f5d3SJohn Marino
504*86d7f5d3SJohn Marino##############################
505*86d7f5d3SJohn Marino# Start of the optional stuff.
506*86d7f5d3SJohn Marino
507*86d7f5d3SJohn Marino###########################################
508*86d7f5d3SJohn Marino# Optional: Turning on language extensions
509*86d7f5d3SJohn Marino#
510*86d7f5d3SJohn Marino# Instead of the default access control language that is documented in
511*86d7f5d3SJohn Marino# the hosts_access.5 document, the wrappers can be configured to
512*86d7f5d3SJohn Marino# implement an extensible language documented in the hosts_options.5
513*86d7f5d3SJohn Marino# document.  This language is implemented by the "options.c" source
514*86d7f5d3SJohn Marino# module, which also gives hints on how to add your own extensions.
515*86d7f5d3SJohn Marino# Uncomment the next definition to turn on the language extensions
516*86d7f5d3SJohn Marino# (examples: allow, deny, banners, twist and spawn).
517*86d7f5d3SJohn Marino#
518*86d7f5d3SJohn Marino#STYLE	= -DPROCESS_OPTIONS	# Enable language extensions.
519*86d7f5d3SJohn Marino
520*86d7f5d3SJohn Marino################################################################
521*86d7f5d3SJohn Marino# Optional: Changing the default disposition of logfile records
522*86d7f5d3SJohn Marino#
523*86d7f5d3SJohn Marino# By default, logfile entries are written to the same file as used for
524*86d7f5d3SJohn Marino# sendmail transaction logs. See your /etc/syslog.conf file for actual
525*86d7f5d3SJohn Marino# path names of logfiles. The tutorial section in the README file
526*86d7f5d3SJohn Marino# gives a brief introduction to the syslog daemon.
527*86d7f5d3SJohn Marino#
528*86d7f5d3SJohn Marino# Change the FACILITY definition below if you disagree with the default
529*86d7f5d3SJohn Marino# disposition. Some syslog versions (including Ultrix 4.x) do not provide
530*86d7f5d3SJohn Marino# this flexibility.
531*86d7f5d3SJohn Marino#
532*86d7f5d3SJohn Marino# If nothing shows up on your system, it may be that the syslog records
533*86d7f5d3SJohn Marino# are sent to a dedicated loghost. It may also be that no syslog daemon
534*86d7f5d3SJohn Marino# is running at all. The README file gives pointers to surrogate syslog
535*86d7f5d3SJohn Marino# implementations for systems that have no syslog library routines or
536*86d7f5d3SJohn Marino# no syslog daemons. When changing the syslog.conf file, remember that
537*86d7f5d3SJohn Marino# there must be TABs between fields.
538*86d7f5d3SJohn Marino#
539*86d7f5d3SJohn Marino# The LOG_XXX names below are taken from the /usr/include/syslog.h file.
540*86d7f5d3SJohn Marino
541*86d7f5d3SJohn MarinoFACILITY= LOG_MAIL	# LOG_MAIL is what most sendmail daemons use
542*86d7f5d3SJohn Marino
543*86d7f5d3SJohn Marino# The syslog priority at which successful connections are logged.
544*86d7f5d3SJohn Marino
545*86d7f5d3SJohn MarinoSEVERITY= LOG_INFO	# LOG_INFO is normally not logged to the console
546*86d7f5d3SJohn Marino
547*86d7f5d3SJohn Marino###########################
548*86d7f5d3SJohn Marino# Optional: Reduce DNS load
549*86d7f5d3SJohn Marino#
550*86d7f5d3SJohn Marino# When looking up the address for a host.domain name, the typical DNS
551*86d7f5d3SJohn Marino# code will first append substrings of your own domain, so it tries
552*86d7f5d3SJohn Marino# host.domain.your.own.domain, then host.domain.own.domain, and then
553*86d7f5d3SJohn Marino# host.domain. The APPEND_DOT feature stops this waste of cycles. It is
554*86d7f5d3SJohn Marino# off by default because it causes problems on sites that don't use DNS
555*86d7f5d3SJohn Marino# and with Solaris < 2.4. APPEND_DOT will not work with hostnames taken
556*86d7f5d3SJohn Marino# from /etc/hosts or from NIS maps. It does work with DNS through NIS.
557*86d7f5d3SJohn Marino#
558*86d7f5d3SJohn Marino# DOT= -DAPPEND_DOT
559*86d7f5d3SJohn Marino
560*86d7f5d3SJohn Marino##################################################
561*86d7f5d3SJohn Marino# Optional: Always attempt remote username lookups
562*86d7f5d3SJohn Marino#
563*86d7f5d3SJohn Marino# By default, the wrappers look up the remote username only when the
564*86d7f5d3SJohn Marino# access control rules require them to do so.
565*86d7f5d3SJohn Marino#
566*86d7f5d3SJohn Marino# Username lookups require that the remote host runs a daemon that
567*86d7f5d3SJohn Marino# supports an RFC 931 like protocol.  Remote user name lookups are not
568*86d7f5d3SJohn Marino# possible for UDP-based connections, and can cause noticeable delays
569*86d7f5d3SJohn Marino# with connections from non-UNIX PCs.  On some systems, remote username
570*86d7f5d3SJohn Marino# lookups can trigger a kernel bug, causing loss of service. The README
571*86d7f5d3SJohn Marino# file describes how to find out if your UNIX kernel has that problem.
572*86d7f5d3SJohn Marino#
573*86d7f5d3SJohn Marino# Uncomment the following definition if the wrappers should always
574*86d7f5d3SJohn Marino# attempt to get the remote user name. If this is not enabled you can
575*86d7f5d3SJohn Marino# still do selective username lookups as documented in the hosts_access.5
576*86d7f5d3SJohn Marino# and hosts_options.5 manual pages (`nroff -man' format).
577*86d7f5d3SJohn Marino#
578*86d7f5d3SJohn Marino#AUTH	= -DALWAYS_RFC931
579*86d7f5d3SJohn Marino#
580*86d7f5d3SJohn Marino# The default username lookup timeout is 10 seconds. This may not be long
581*86d7f5d3SJohn Marino# enough for slow hosts or networks, but is enough to irritate PC users.
582*86d7f5d3SJohn Marino
583*86d7f5d3SJohn MarinoRFC931_TIMEOUT = 10
584*86d7f5d3SJohn Marino
585*86d7f5d3SJohn Marino######################################################
586*86d7f5d3SJohn Marino# Optional: Changing the default file protection mask
587*86d7f5d3SJohn Marino#
588*86d7f5d3SJohn Marino# On many systems, network daemons and other system processes are started
589*86d7f5d3SJohn Marino# with a zero umask value, so that world-writable files may be produced.
590*86d7f5d3SJohn Marino# It is a good idea to edit your /etc/rc* files so that they begin with
591*86d7f5d3SJohn Marino# an explicit umask setting.  On our site we use `umask 022' because it
592*86d7f5d3SJohn Marino# does not break anything yet gives adequate protection against tampering.
593*86d7f5d3SJohn Marino#
594*86d7f5d3SJohn Marino# The following macro specifies the default umask for processes run under
595*86d7f5d3SJohn Marino# control of the daemon wrappers. Comment it out only if you are certain
596*86d7f5d3SJohn Marino# that inetd and its children are started with a safe umask value.
597*86d7f5d3SJohn Marino
598*86d7f5d3SJohn MarinoUMASK	= -DDAEMON_UMASK=022
599*86d7f5d3SJohn Marino
600*86d7f5d3SJohn Marino#######################################
601*86d7f5d3SJohn Marino# Optional: Turning off access control
602*86d7f5d3SJohn Marino#
603*86d7f5d3SJohn Marino# By default, host access control is enabled.  To disable host access
604*86d7f5d3SJohn Marino# control, comment out the following definition.  Host access control
605*86d7f5d3SJohn Marino# can also be turned off at runtime by providing no or empty access
606*86d7f5d3SJohn Marino# control tables.
607*86d7f5d3SJohn Marino
608*86d7f5d3SJohn MarinoACCESS	= -DHOSTS_ACCESS
609*86d7f5d3SJohn Marino
610*86d7f5d3SJohn Marino########################################################
611*86d7f5d3SJohn Marino# Optional: Changing the access control table pathnames
612*86d7f5d3SJohn Marino#
613*86d7f5d3SJohn Marino# The HOSTS_ALLOW and HOSTS_DENY macros define where the programs will
614*86d7f5d3SJohn Marino# look for access control information. Watch out for the quotes and
615*86d7f5d3SJohn Marino# backslashes when you make changes.
616*86d7f5d3SJohn Marino
617*86d7f5d3SJohn MarinoTABLES	= -DHOSTS_DENY=\"/etc/hosts.deny\" -DHOSTS_ALLOW=\"/etc/hosts.allow\"
618*86d7f5d3SJohn Marino
619*86d7f5d3SJohn Marino####################################################
620*86d7f5d3SJohn Marino# Optional: dealing with host name/address conflicts
621*86d7f5d3SJohn Marino#
622*86d7f5d3SJohn Marino# By default, the software tries to protect against hosts that claim to
623*86d7f5d3SJohn Marino# have someone elses host name. This is relevant for network services
624*86d7f5d3SJohn Marino# whose authentication depends on host names, such as rsh and rlogin.
625*86d7f5d3SJohn Marino#
626*86d7f5d3SJohn Marino# With paranoid mode on, connections will be rejected when the host name
627*86d7f5d3SJohn Marino# does not match the host address. Connections will also be rejected when
628*86d7f5d3SJohn Marino# the host name is available but cannot be verified.
629*86d7f5d3SJohn Marino#
630*86d7f5d3SJohn Marino# Comment out the following definition if you want more control over such
631*86d7f5d3SJohn Marino# requests. When paranoid mode is off and a host name double check fails,
632*86d7f5d3SJohn Marino# the client can be matched with the PARANOID access control pattern.
633*86d7f5d3SJohn Marino#
634*86d7f5d3SJohn Marino# Paranoid mode implies hostname lookup. In order to disable hostname
635*86d7f5d3SJohn Marino# lookups altogether, see the next section.
636*86d7f5d3SJohn Marino
637*86d7f5d3SJohn MarinoPARANOID= -DPARANOID
638*86d7f5d3SJohn Marino
639*86d7f5d3SJohn Marino########################################
640*86d7f5d3SJohn Marino# Optional: turning off hostname lookups
641*86d7f5d3SJohn Marino#
642*86d7f5d3SJohn Marino# By default, the software always attempts to look up the client
643*86d7f5d3SJohn Marino# hostname.  With selective hostname lookups, the client hostname
644*86d7f5d3SJohn Marino# lookup is postponed until the name is required by an access control
645*86d7f5d3SJohn Marino# rule or by a %letter expansion.
646*86d7f5d3SJohn Marino#
647*86d7f5d3SJohn Marino# In order to perform selective hostname lookups, disable paranoid
648*86d7f5d3SJohn Marino# mode (see previous section) and comment out the following definition.
649*86d7f5d3SJohn Marino
650*86d7f5d3SJohn MarinoHOSTNAME= -DALWAYS_HOSTNAME
651*86d7f5d3SJohn Marino
652*86d7f5d3SJohn Marino#############################################
653*86d7f5d3SJohn Marino# Optional: Turning on host ADDRESS checking
654*86d7f5d3SJohn Marino#
655*86d7f5d3SJohn Marino# Optionally, the software tries to protect against hosts that pretend to
656*86d7f5d3SJohn Marino# have someone elses host address. This is relevant for network services
657*86d7f5d3SJohn Marino# whose authentication depends on host names, such as rsh and rlogin,
658*86d7f5d3SJohn Marino# because the network address is used to look up the remote host name.
659*86d7f5d3SJohn Marino#
660*86d7f5d3SJohn Marino# The protection is to refuse TCP connections with IP source routing
661*86d7f5d3SJohn Marino# options.
662*86d7f5d3SJohn Marino#
663*86d7f5d3SJohn Marino# This feature cannot be used with SunOS 4.x because of a kernel bug in
664*86d7f5d3SJohn Marino# the implementation of the getsockopt() system call. Kernel panics have
665*86d7f5d3SJohn Marino# been observed for SunOS 4.1.[1-3]. Symptoms are "BAD TRAP" and "Data
666*86d7f5d3SJohn Marino# fault" while executing the tcp_ctloutput() kernel function.
667*86d7f5d3SJohn Marino#
668*86d7f5d3SJohn Marino# Reportedly, Sun patch 100804-03 or 101790 fixes this for SunOS 4.1.x.
669*86d7f5d3SJohn Marino#
670*86d7f5d3SJohn Marino# Uncomment the following macro definition if your getsockopt() is OK.
671*86d7f5d3SJohn Marino#
672*86d7f5d3SJohn Marino# -DKILL_IP_OPTIONS is not needed on modern UNIX systems that can stop
673*86d7f5d3SJohn Marino# source-routed traffic in the kernel. Examples: 4.4BSD derivatives,
674*86d7f5d3SJohn Marino# Solaris 2.x, and Linux. See your system documentation for details.
675*86d7f5d3SJohn Marino#
676*86d7f5d3SJohn Marino# KILL_OPT= -DKILL_IP_OPTIONS
677*86d7f5d3SJohn Marino
678*86d7f5d3SJohn Marino## End configuration options
679*86d7f5d3SJohn Marino############################
680*86d7f5d3SJohn Marino
681*86d7f5d3SJohn Marino# Protection against weird shells or weird make programs.
682*86d7f5d3SJohn Marino
683*86d7f5d3SJohn MarinoSHELL	= /bin/sh
684*86d7f5d3SJohn Marino.c.o:;	$(CC) $(CFLAGS) -c $*.c
685*86d7f5d3SJohn Marino
686*86d7f5d3SJohn MarinoCFLAGS	= -O -DFACILITY=$(FACILITY) $(ACCESS) $(PARANOID) $(NETGROUP) \
687*86d7f5d3SJohn Marino	$(BUGS) $(SYSTYPE) $(AUTH) $(UMASK) \
688*86d7f5d3SJohn Marino	-DREAL_DAEMON_DIR=\"$(REAL_DAEMON_DIR)\" $(STYLE) $(KILL_OPT) \
689*86d7f5d3SJohn Marino	-DSEVERITY=$(SEVERITY) -DRFC931_TIMEOUT=$(RFC931_TIMEOUT) \
690*86d7f5d3SJohn Marino	$(UCHAR) $(TABLES) $(STRINGS) $(TLI) $(EXTRA_CFLAGS) $(DOT) \
691*86d7f5d3SJohn Marino	$(VSYSLOG) $(HOSTNAME)
692*86d7f5d3SJohn Marino
693*86d7f5d3SJohn MarinoLIB_OBJ= hosts_access.o options.o shell_cmd.o rfc931.o eval.o \
694*86d7f5d3SJohn Marino	hosts_ctl.o refuse.o percent_x.o clean_exit.o $(AUX_OBJ) \
695*86d7f5d3SJohn Marino	$(FROM_OBJ) fix_options.o socket.o tli.o workarounds.o \
696*86d7f5d3SJohn Marino	update.o misc.o diag.o percent_m.o myvsyslog.o
697*86d7f5d3SJohn Marino
698*86d7f5d3SJohn MarinoFROM_OBJ= fromhost.o
699*86d7f5d3SJohn Marino
700*86d7f5d3SJohn MarinoKIT	= README miscd.c tcpd.c fromhost.c hosts_access.c shell_cmd.c \
701*86d7f5d3SJohn Marino	tcpd.h tcpdmatch.c Makefile hosts_access.5 strcasecmp.c BLURB rfc931.c \
702*86d7f5d3SJohn Marino	tcpd.8 eval.c hosts_access.3 hosts_ctl.c percent_x.c options.c \
703*86d7f5d3SJohn Marino	clean_exit.c environ.c patchlevel.h fix_options.c workarounds.c \
704*86d7f5d3SJohn Marino	socket.c tli.c DISCLAIMER fakelog.c safe_finger.c hosts_options.5 \
705*86d7f5d3SJohn Marino	CHANGES try-from.c update.c ptx.c vfprintf.c tli-sequent.c \
706*86d7f5d3SJohn Marino	tli-sequent.h misc.c diag.c ncr.c tcpdchk.c percent_m.c \
707*86d7f5d3SJohn Marino	myvsyslog.c mystdarg.h printf.ck README.IRIX Banners.Makefile \
708*86d7f5d3SJohn Marino	refuse.c tcpdchk.8 setenv.c inetcf.c inetcf.h scaffold.c \
709*86d7f5d3SJohn Marino	scaffold.h tcpdmatch.8 README.NIS
710*86d7f5d3SJohn Marino
711*86d7f5d3SJohn MarinoLIB	= libwrap.a
712*86d7f5d3SJohn Marino
713*86d7f5d3SJohn Marinoall other: config-check tcpd tcpdmatch try-from safe_finger tcpdchk
714*86d7f5d3SJohn Marino
715*86d7f5d3SJohn Marino# Invalidate all object files when the compiler options (CFLAGS) have changed.
716*86d7f5d3SJohn Marino
717*86d7f5d3SJohn Marinoconfig-check:
718*86d7f5d3SJohn Marino	@set +e; test -n "$(REAL_DAEMON_DIR)" || { make; exit 1; }
719*86d7f5d3SJohn Marino	@set +e; echo $(CFLAGS) >/tmp/cflags.$$$$ ; \
720*86d7f5d3SJohn Marino	if cmp cflags /tmp/cflags.$$$$ ; \
721*86d7f5d3SJohn Marino	then rm /tmp/cflags.$$$$ ; \
722*86d7f5d3SJohn Marino	else mv /tmp/cflags.$$$$ cflags ; \
723*86d7f5d3SJohn Marino	fi >/dev/null 2>/dev/null
724*86d7f5d3SJohn Marino
725*86d7f5d3SJohn Marino$(LIB):	$(LIB_OBJ)
726*86d7f5d3SJohn Marino	rm -f $(LIB)
727*86d7f5d3SJohn Marino	$(AR) $(ARFLAGS) $(LIB) $(LIB_OBJ)
728*86d7f5d3SJohn Marino	-$(RANLIB) $(LIB)
729*86d7f5d3SJohn Marino
730*86d7f5d3SJohn Marinotcpd:	tcpd.o $(LIB)
731*86d7f5d3SJohn Marino	$(CC) $(CFLAGS) -o $@ tcpd.o $(LIB) $(LIBS)
732*86d7f5d3SJohn Marino
733*86d7f5d3SJohn Marinomiscd:	miscd.o $(LIB)
734*86d7f5d3SJohn Marino	$(CC) $(CFLAGS) -o $@ miscd.o $(LIB) $(LIBS)
735*86d7f5d3SJohn Marino
736*86d7f5d3SJohn Marinosafe_finger: safe_finger.o $(LIB)
737*86d7f5d3SJohn Marino	$(CC) $(CFLAGS) -o $@ safe_finger.o $(LIB) $(LIBS)
738*86d7f5d3SJohn Marino
739*86d7f5d3SJohn MarinoTCPDMATCH_OBJ = tcpdmatch.o fakelog.o inetcf.o scaffold.o
740*86d7f5d3SJohn Marino
741*86d7f5d3SJohn Marinotcpdmatch: $(TCPDMATCH_OBJ) $(LIB)
742*86d7f5d3SJohn Marino	$(CC) $(CFLAGS) -o $@ $(TCPDMATCH_OBJ) $(LIB) $(LIBS)
743*86d7f5d3SJohn Marino
744*86d7f5d3SJohn Marinotry-from: try-from.o fakelog.o $(LIB)
745*86d7f5d3SJohn Marino	$(CC) $(CFLAGS) -o $@ try-from.o fakelog.o $(LIB) $(LIBS)
746*86d7f5d3SJohn Marino
747*86d7f5d3SJohn MarinoTCPDCHK_OBJ = tcpdchk.o fakelog.o inetcf.o scaffold.o
748*86d7f5d3SJohn Marino
749*86d7f5d3SJohn Marinotcpdchk: $(TCPDCHK_OBJ) $(LIB)
750*86d7f5d3SJohn Marino	$(CC) $(CFLAGS) -o $@ $(TCPDCHK_OBJ) $(LIB) $(LIBS)
751*86d7f5d3SJohn Marino
752*86d7f5d3SJohn Marinoshar:	$(KIT)
753*86d7f5d3SJohn Marino	@shar $(KIT)
754*86d7f5d3SJohn Marino
755*86d7f5d3SJohn Marinokit:	$(KIT)
756*86d7f5d3SJohn Marino	@makekit $(KIT)
757*86d7f5d3SJohn Marino
758*86d7f5d3SJohn Marinofiles:
759*86d7f5d3SJohn Marino	@echo $(KIT)
760*86d7f5d3SJohn Marino
761*86d7f5d3SJohn Marinoarchive:
762*86d7f5d3SJohn Marino	$(ARCHIVE) $(KIT)
763*86d7f5d3SJohn Marino
764*86d7f5d3SJohn Marinoclean:
765*86d7f5d3SJohn Marino	rm -f tcpd miscd safe_finger tcpdmatch tcpdchk try-from *.[oa] core \
766*86d7f5d3SJohn Marino	cflags
767*86d7f5d3SJohn Marino
768*86d7f5d3SJohn Marinotidy:	clean
769*86d7f5d3SJohn Marino	chmod -R a+r .
770*86d7f5d3SJohn Marino	chmod 755 .
771*86d7f5d3SJohn Marino
772*86d7f5d3SJohn Marino# Enable all bells and whistles for linting.
773*86d7f5d3SJohn Marino
774*86d7f5d3SJohn Marinolint: tcpd_lint miscd_lint match_lint chk_lint
775*86d7f5d3SJohn Marino
776*86d7f5d3SJohn Marinotcpd_lint:
777*86d7f5d3SJohn Marino	lint -DFACILITY=LOG_MAIL -DHOSTS_ACCESS -DPARANOID -DNETGROUP \
778*86d7f5d3SJohn Marino	-DGETPEERNAME_BUG -DDAEMON_UMASK=022 -DSEVERITY=$(SEVERITY) \
779*86d7f5d3SJohn Marino	$(TABLES) -DKILL_IP_OPTIONS -DPROCESS_OPTIONS \
780*86d7f5d3SJohn Marino	-DRFC931_TIMEOUT=$(RFC931_TIMEOUT) -DALWAYS_RFC931 \
781*86d7f5d3SJohn Marino	-DREAL_DAEMON_DIR=\"$(REAL_DAEMON_DIR)\" \
782*86d7f5d3SJohn Marino	-Dvsyslog=myvsyslog \
783*86d7f5d3SJohn Marino	tcpd.c fromhost.c socket.c tli.c hosts_access.c \
784*86d7f5d3SJohn Marino	shell_cmd.c refuse.c rfc931.c eval.c percent_x.c clean_exit.c \
785*86d7f5d3SJohn Marino	options.c setenv.c fix_options.c workarounds.c update.c misc.c \
786*86d7f5d3SJohn Marino	diag.c myvsyslog.c percent_m.c
787*86d7f5d3SJohn Marino
788*86d7f5d3SJohn Marinomiscd_lint:
789*86d7f5d3SJohn Marino	lint -DFACILITY=LOG_MAIL -DHOSTS_ACCESS -DPARANOID -DNETGROUP \
790*86d7f5d3SJohn Marino	-DGETPEERNAME_BUG -DDAEMON_UMASK=022 -DSEVERITY=$(SEVERITY) \
791*86d7f5d3SJohn Marino	$(TABLES) -DKILL_IP_OPTIONS -DPROCESS_OPTIONS \
792*86d7f5d3SJohn Marino	-DRFC931_TIMEOUT=$(RFC931_TIMEOUT) -DALWAYS_RFC931 \
793*86d7f5d3SJohn Marino	-DREAL_DAEMON_DIR=\"$(REAL_DAEMON_DIR)\" \
794*86d7f5d3SJohn Marino	-Dvsyslog=myvsyslog \
795*86d7f5d3SJohn Marino	miscd.c fromhost.c socket.c tli.c hosts_access.c \
796*86d7f5d3SJohn Marino	shell_cmd.c refuse.c rfc931.c eval.c percent_x.c clean_exit.c \
797*86d7f5d3SJohn Marino	options.c setenv.c fix_options.c workarounds.c update.c misc.c \
798*86d7f5d3SJohn Marino	diag.c myvsyslog.c percent_m.c
799*86d7f5d3SJohn Marino
800*86d7f5d3SJohn Marinomatch_lint:
801*86d7f5d3SJohn Marino	lint -DFACILITY=LOG_MAIL -DSEVERITY=$(SEVERITY) -DHOSTS_ACCESS \
802*86d7f5d3SJohn Marino	-DPARANOID $(TABLES) -DNETGROUP -DPROCESS_OPTIONS -DRFC931_TIMEOUT=10 \
803*86d7f5d3SJohn Marino	-DREAL_DAEMON_DIR=\"$(REAL_DAEMON_DIR)\" \
804*86d7f5d3SJohn Marino	-Dvsyslog=myvsyslog \
805*86d7f5d3SJohn Marino	tcpdmatch.c hosts_access.c eval.c percent_x.c options.c workarounds.c \
806*86d7f5d3SJohn Marino	update.c socket.c misc.c diag.c myvsyslog.c percent_m.c setenv.c \
807*86d7f5d3SJohn Marino	inetcf.c scaffold.c
808*86d7f5d3SJohn Marino
809*86d7f5d3SJohn Marinochk_lint:
810*86d7f5d3SJohn Marino	lint -DFACILITY=LOG_MAIL -DSEVERITY=$(SEVERITY) -DHOSTS_ACCESS \
811*86d7f5d3SJohn Marino	-DPARANOID $(TABLES) -DNETGROUP -DPROCESS_OPTIONS -DRFC931_TIMEOUT=10 \
812*86d7f5d3SJohn Marino	-DREAL_DAEMON_DIR=\"$(REAL_DAEMON_DIR)\" \
813*86d7f5d3SJohn Marino	-Dvsyslog=myvsyslog \
814*86d7f5d3SJohn Marino	tcpdchk.c eval.c percent_x.c options.c update.c workarounds.c \
815*86d7f5d3SJohn Marino	setenv.c misc.c diag.c myvsyslog.c percent_m.c inetcf.c scaffold.c
816*86d7f5d3SJohn Marino
817*86d7f5d3SJohn Marinoprintfck:
818*86d7f5d3SJohn Marino	printfck -f printf.ck \
819*86d7f5d3SJohn Marino	tcpd.c fromhost.c socket.c tli.c hosts_access.c \
820*86d7f5d3SJohn Marino	shell_cmd.c refuse.c rfc931.c eval.c percent_x.c clean_exit.c \
821*86d7f5d3SJohn Marino	options.c setenv.c fix_options.c workarounds.c update.c misc.c \
822*86d7f5d3SJohn Marino	diag.c myvsyslog.c percent_m.c >aap.c
823*86d7f5d3SJohn Marino	lint -DFACILITY=LOG_MAIL -DHOSTS_ACCESS -DPARANOID -DNETGROUP \
824*86d7f5d3SJohn Marino	-DGETPEERNAME_BUG -DDAEMON_UMASK=022 -DSEVERITY=$(SEVERITY) \
825*86d7f5d3SJohn Marino	$(TABLES) -DKILL_IP_OPTIONS -DPROCESS_OPTIONS \
826*86d7f5d3SJohn Marino	-DRFC931_TIMEOUT=$(RFC931_TIMEOUT) -DALWAYS_RFC931 \
827*86d7f5d3SJohn Marino	-DREAL_DAEMON_DIR=\"$(REAL_DAEMON_DIR)\" -Dvsyslog=myvsyslog aap.c
828*86d7f5d3SJohn Marino	printfck -f printf.ck \
829*86d7f5d3SJohn Marino	tcpdchk.c eval.c percent_x.c options.c update.c workarounds.c \
830*86d7f5d3SJohn Marino	setenv.c misc.c diag.c myvsyslog.c percent_m.c inetcf.c scaffold.c \
831*86d7f5d3SJohn Marino	>aap.c
832*86d7f5d3SJohn Marino	lint -DFACILITY=LOG_MAIL -DSEVERITY=$(SEVERITY) -DHOSTS_ACCESS \
833*86d7f5d3SJohn Marino	-DPARANOID $(TABLES) -DNETGROUP -DPROCESS_OPTIONS -DRFC931_TIMEOUT=10 \
834*86d7f5d3SJohn Marino	-Dvsyslog=myvsyslog -DREAL_DAEMON_DIR=\"$(REAL_DAEMON_DIR)\"
835*86d7f5d3SJohn Marino
836*86d7f5d3SJohn Marino# Internal compilation dependencies.
837*86d7f5d3SJohn Marino
838*86d7f5d3SJohn Marinoclean_exit.o: cflags
839*86d7f5d3SJohn Marinoclean_exit.o: tcpd.h
840*86d7f5d3SJohn Marinodiag.o: cflags
841*86d7f5d3SJohn Marinodiag.o: mystdarg.h
842*86d7f5d3SJohn Marinodiag.o: tcpd.h
843*86d7f5d3SJohn Marinoenviron.o: cflags
844*86d7f5d3SJohn Marinoeval.o: cflags
845*86d7f5d3SJohn Marinoeval.o: tcpd.h
846*86d7f5d3SJohn Marinofakelog.o: cflags
847*86d7f5d3SJohn Marinofakelog.o: mystdarg.h
848*86d7f5d3SJohn Marinofix_options.o: cflags
849*86d7f5d3SJohn Marinofix_options.o: tcpd.h
850*86d7f5d3SJohn Marinofromhost.o: cflags
851*86d7f5d3SJohn Marinofromhost.o: tcpd.h
852*86d7f5d3SJohn Marinohosts_access.o: cflags
853*86d7f5d3SJohn Marinohosts_access.o: tcpd.h
854*86d7f5d3SJohn Marinohosts_ctl.o: cflags
855*86d7f5d3SJohn Marinohosts_ctl.o: tcpd.h
856*86d7f5d3SJohn Marinoinetcf.o: cflags
857*86d7f5d3SJohn Marinoinetcf.o: inetcf.h
858*86d7f5d3SJohn Marinoinetcf.o: tcpd.h
859*86d7f5d3SJohn Marinomisc.o: cflags
860*86d7f5d3SJohn Marinomisc.o: tcpd.h
861*86d7f5d3SJohn Marinomiscd.o: cflags
862*86d7f5d3SJohn Marinomiscd.o: patchlevel.h
863*86d7f5d3SJohn Marinomiscd.o: tcpd.h
864*86d7f5d3SJohn Marinomyvsyslog.o: cflags
865*86d7f5d3SJohn Marinomyvsyslog.o: mystdarg.h
866*86d7f5d3SJohn Marinomyvsyslog.o: tcpd.h
867*86d7f5d3SJohn Marinoncr.o: cflags
868*86d7f5d3SJohn Marinoncr.o: tcpd.h
869*86d7f5d3SJohn Marinooptions.o: cflags
870*86d7f5d3SJohn Marinooptions.o: tcpd.h
871*86d7f5d3SJohn Marinopercent_m.o: cflags
872*86d7f5d3SJohn Marinopercent_m.o: mystdarg.h
873*86d7f5d3SJohn Marinopercent_x.o: cflags
874*86d7f5d3SJohn Marinopercent_x.o: tcpd.h
875*86d7f5d3SJohn Marinoptx.o: cflags
876*86d7f5d3SJohn Marinoptx.o: tcpd.h
877*86d7f5d3SJohn Marinorefuse.o: cflags
878*86d7f5d3SJohn Marinorefuse.o: tcpd.h
879*86d7f5d3SJohn Marinorfc931.o: cflags
880*86d7f5d3SJohn Marinorfc931.o: tcpd.h
881*86d7f5d3SJohn Marinosafe_finger.o: cflags
882*86d7f5d3SJohn Marinoscaffold.o: cflags
883*86d7f5d3SJohn Marinoscaffold.o: scaffold.h
884*86d7f5d3SJohn Marinoscaffold.o: tcpd.h
885*86d7f5d3SJohn Marinosetenv.o: cflags
886*86d7f5d3SJohn Marinoshell_cmd.o: cflags
887*86d7f5d3SJohn Marinoshell_cmd.o: tcpd.h
888*86d7f5d3SJohn Marinosocket.o: cflags
889*86d7f5d3SJohn Marinosocket.o: tcpd.h
890*86d7f5d3SJohn Marinostrcasecmp.o: cflags
891*86d7f5d3SJohn Marinotcpd.o: cflags
892*86d7f5d3SJohn Marinotcpd.o: patchlevel.h
893*86d7f5d3SJohn Marinotcpd.o: tcpd.h
894*86d7f5d3SJohn Marinotcpdchk.o: cflags
895*86d7f5d3SJohn Marinotcpdchk.o: inetcf.h
896*86d7f5d3SJohn Marinotcpdchk.o: scaffold.h
897*86d7f5d3SJohn Marinotcpdchk.o: tcpd.h
898*86d7f5d3SJohn Marinotcpdmatch.o: cflags
899*86d7f5d3SJohn Marinotcpdmatch.o: scaffold.h
900*86d7f5d3SJohn Marinotcpdmatch.o: tcpd.h
901*86d7f5d3SJohn Marinotli-sequent.o: cflags
902*86d7f5d3SJohn Marinotli-sequent.o: tcpd.h
903*86d7f5d3SJohn Marinotli-sequent.o: tli-sequent.h
904*86d7f5d3SJohn Marinotli.o: cflags
905*86d7f5d3SJohn Marinotli.o: tcpd.h
906*86d7f5d3SJohn Marinotry-from.o: cflags
907*86d7f5d3SJohn Marinotry-from.o: tcpd.h
908*86d7f5d3SJohn Marinoupdate.o: cflags
909*86d7f5d3SJohn Marinoupdate.o: mystdarg.h
910*86d7f5d3SJohn Marinoupdate.o: tcpd.h
911*86d7f5d3SJohn Marinovfprintf.o: cflags
912*86d7f5d3SJohn Marinoworkarounds.o: cflags
913*86d7f5d3SJohn Marinoworkarounds.o: tcpd.h
914