# Makefile for the 4.4BSD Syslog package
# Ported to the 3B2 series machine (running WIN/TCP)
#	November 1992 - jeffrey@squid.tram.com
##############

OWNER=bsd	# Change this to root if you don't have an owner for BSD stuff
GROUP=bsd	# Change this to sys if you don't have a group for BSD stuff
IC=/usr/include
EC=/etc
UE=/usr$(EC)
BN=/usr/local/bin
MN=/usr/man

DBG=-O

# -DNO_KLOG means you don't have /dev/klog (kernel syslogging)
# -Du3b2 is not really necessary with stock C compilers, but is there 
#	just for safety's sake
DEFINES= -DNO_KLOG -Du3b2

CFLAGS= $(DBG) $(DEFINES)

LIBS = -lnet -lnsl_s

COMOBJS =	strerror.o

DMNOBJS = 	syslogd.o \
		herror.o \
		daemon.o \
		snprintf.o \
		ttymsg.o

LGROBJS = 	syslog.o \
		logger.o

all:	syslogd logger

syslogd: $(COMOBJS) $(DMNOBJS)
	$(CC) $(CFLAGS) -o syslogd $(DMNOBJS) $(COMOBJS) $(LIBS)

logger: $(COMOBJS) $(LGROBJS)
	$(CC) $(CFLAGS) -o logger $(LGROBJS) $(COMOBJS) $(LIBS)

clean:
	@rm -f logger syslogd $(COMOBJS) $(DMNOBJS) $(LGROBJS)
	@rm -f syslog.conf
	@rm -f isock usock isock.o usock.o

install: syslogd logger syslog.conf
	@echo Installing header files...
	@cp syslog.h /usr/include/sys/syslog.h
	@cp sl.h /usr/include/syslog.h
	@chmod 444 $(IC)/syslog.h $(IC)/sys/syslog.h
	@chgrp $(GROUP) $(IC)/syslog.h $(IC)/sys/syslog.h
	@chown $(OWNER) $(IC)/syslog.h $(IC)/sys/syslog.h
	@echo Installing the executables...
	@strip syslogd
	@cp syslogd $(UE)
	@chmod 544 $(UE)/syslogd
	@chgrp $(GROUP) $(UE)/syslogd
	@chown $(OWNER) $(UE)/syslogd
	@strip logger
	@cp logger $(BN)
	@chmod 555 $(BN)/logger
	@chgrp $(GROUP) $(BN)/logger
	@chown $(OWNER) $(BN)/logger
	@echo Installing the config file
	@cp syslog.conf $(EC)
	@chmod 644 $(EC)/syslog.conf
	@chgrp $(GROUP) $(EC)/syslog.conf
	@chown $(OWNER) $(EC)/syslog.conf
	@echo Installing man pages
	@cp syslog.3 $(MN)/man3
	@chmod 444 $(MN)/man3/syslog.3 
	@chgrp $(GROUP) $(MN)/man3/syslog.3 
	@chown $(OWNER) $(MN)/man3/syslog.3 
	@cp syslogd.8 $(MN)/man8
	@chmod 444 $(MN)/man8/syslogd.8 
	@chgrp $(GROUP) $(MN)/man8/syslogd.8 
	@chown $(OWNER) $(MN)/man8/syslogd.8 
	@cp logger.1 $(MN)/man1
	@chmod 444 $(MN)/man1/logger.1 
	@chgrp $(GROUP) $(MN)/man1/logger.1 
	@chown $(OWNER) $(MN)/man1/logger.1 
	@cp syslog.conf.5 $(MN)/man5
	@chmod 444 $(MN)/man5/syslog.conf.5 
	@chgrp $(GROUP) $(MN)/man5/syslog.conf.5 
	@chown $(OWNER) $(MN)/man5/syslog.conf.5 

syslog.conf:	syslog.default
	sed "s/HOSTNAME/`hostname`/" < syslog.default > syslog.conf

test:	usock isock
	@echo Testing the UNIX domain socket
	@./usock||echo Are you sure that the syslogd is running?
	@echo Testing the Internet domain socket
	@./isock localhost

isock:	isock.c
	cc -g -o isock isock.c -lnet -lnsl_s

usock:	usock.c
	cc -g -o usock usock.c -lnet -lnsl_s
