#	
#	Linux-Makefile for "to-talk" and "to-talkd"
#	V1.1 Thomas Omerzu <omerzu@quantum.de>, 25.9.95
#	

# --- select installation directory ---

SBINDIR=/usr/local/sbin
#SBINDIR=/usr/sbin
BINDIR=	/usr/local/bin
#BINDIR=/usr/bin

# --- below this point, no changes should be necessary ---


VERS=1.1
CFLAGS= -DOTALK -I. -I/usr/include/bsd -Dosockaddr=sockaddr -DMSG_EOR
LDFLAGS= -s #-static

SERVER=	to-talkd
SADD=	-lbsd
SSRCS=	talkd.c announce.c process.c table.c print.c
SOBJS=   $(SSRCS:.c=.o)

CLIENT=	to-talk
CADD=	-lbsd -lcurses -ltermcap 
CSRCS=	ctl.c ctl_transact.c display.c get_addrs.c get_names.c \
	init_disp.c invite.c io.c look_up.c msgs.c talk.c
COBJS=$(CSRCS:.c=.o)





all:	$(CLIENT) $(SERVER)

$(SERVER): $(SOBJS)
	$(CC) $(LDFLAGS) -o $@ $(SOBJS) $(SADD)


$(CLIENT): $(COBJS)
	$(CC) $(LDFLAGS) -o $@ $(COBJS) $(CADD)

clean:
	rm -f $(COBJS) $(SOBJS)

clear clobber: clean
	rm -f $(SERVER) $(CLIENT)


install:
	@if [ ! -f $(SERVER) -o ! -f $(CLIENT) ]; then \
		echo "*** please compile first using 'make all'";\
		exit 2;\
	fi
	@-mkdir $(SBINDIR)
	cp $(SERVER) $(SBINDIR)
	chmod 755 $(SBINDIR)/$(SERVER)
	@-mkdir $(BINDIR)
	cp $(CLIENT) $(BINDIR)
	chmod 755 $(BINDIR)/$(CLIENT)
	cp /etc/inetd.conf /etc/inetd.conf.save
	awk '/^talk/ { if ($$0!~/to-/) print "#"$$0; print "talk	dgram	udp	wait	root	'$(SBINDIR)/$(SERVER)' '$(SERVER)' -d"; next }\
	{ print }'  /etc/inetd.conf.save > /etc/inetd.conf
	@if [ -f "/var/run/inetd.pid" ]; then\
		kill -1 `cat /var/run/inetd.pid`;\
	else\
		echo "Please restart inetd!";\
	fi

xxx:
	-mv $(SBINDIR)/$(SERVER) $(SBINDIR)/$(SERVER).old

BINTAR=to-talk-$(VERS).bin.tar
SRCTAR=to-talk-$(VERS).src.tar
DIR=to-talk-$(VERS)
BINFILES=$(DIR)/README $(DIR)/Makefile $(DIR)/$(CLIENT) $(DIR)/$(SERVER)
SRCFILES=$(DIR)/*.c $(DIR)/*.h $(DIR)/protocols

tar: $(SERVER) $(CLIENT)
	@echo "creating tar files"
	@cd .. ; tar cf $(BINTAR) $(BINFILES) ; gzip -f -9 $(BINTAR)
	@cd .. ; tar cf $(SRCTAR) $(BINFILES) $(SRCFILES) ; gzip -f -9 $(SRCTAR)
	@cp README ../$(DIR).README
