##
##  Makefile for mail/news gateway programs.
##  $Header: Makefile,v 1.6 89/10/31 17:57:11 rsalz Exp $
##
SHELL	= /bin/sh

##  Edit appropriately.  See gate.h before you touch UUCP_INET.
2_11	= /nfs/papaya/source/news2.11/src
UUCP_INET=	/usr/lib/news/.admin/uucp-2-inet
DESTDIR	= /usr/uucp/bin
OPT	= -g
#OPT	= -O
DEFS	=
CFLAGS	= $(OPT) $(DEFS)
LOADF	=
#LOADF	= -s

##  News files, copied over from $(2_11).
GETDATE	= getdate.o

##  Gag, the gateway alias generator.
G_SRCS	= gag.c lex.c misc.c
G_OBJS	= gag.o lex.o misc.o

##  Mail2News, the mail into news part of the gateway.
M_SRCS	= misc.c regex.c str.c hdr.c mail2news.c rfc822.c
M_OBJS	= misc.o regex.o str.o hdr.o mail2news.o rfc822.o $(GETDATE)

##  News2Mail, the news into mail part of the gateway.
N_SRCS	= misc.c news2mail.c
N_OBJS	= misc.o news2mail.o


all:			mail2news news2mail gag mkmailpost tags lint

install:		all
	@echo "Install as directed in the README file."
#	@rm -f $(DESTDIR)/gag $(DESTDIR)/mail2news $(DESTDIR)/news2mail
#	cp gag mail2news news2mail $(DESTDIR)/.
#	cp uucp-2-inet $(UUCP_INET)

clean:
	rm -f mail2news news2mail gag mkmailpost *.o
	rm -f tags lint.? core gag.c gag.h lex.c
#	rm -f Part0?

tags:			$(N_SRCS) $(M_SRCS)
	ctags -tw $(N_SRCS) $(M_SRCS) $(G_SRCS) gate.h

lint:			lint.g lint.m lint.n


##
mail2news:		$(M_OBJS)
	@rm -f mail2news
	$(CC) $(CFLAGS) $(LOADF) -o mail2news $(M_OBJS)

news2mail:		$(N_OBJS)
	@rm -f news2mail
	$(CC) $(CFLAGS) $(LOADF) -o news2mail $(N_OBJS)

gag:			$(G_OBJS)
	@rm -f gag
	$(CC) $(CFLAGS) $(LOADF) -o gag $(G_OBJS)

mkmailpost:		mkmailpost.sh
	@rm -f mkmailpost
	cp mkmailpost.sh mkmailpost
	chmod 755 mkmailpost

##
$(G_OBJS) $(M_OBJS) $(N_OBJS):	gate.h


##
lint.g:			gag
	exec lint -a    -h $(DEFS) $(G_SRCS) >lint.g
lint.m:			mail2news
	exec lint -a -b -h $(DEFS) $(M_SRCS) >lint.m
lint.n:			news2mail
	exec lint -a -b -h $(DEFS) $(N_SRCS) >lint.n


##  Keep intermediate files around.
lex.o:			lex.c
gag.o:			gag.c
gag.c:			gag.y
	@rm -f gag.c gag.h
	yacc -d gag.y
	@mv y.tab.c gag.c
	@mv y.tab.h gag.h


##
shar:
	@rm -f Part0?
	makekit -m
	@rm -f MANIFEST.BAK
	@-chmod 444 Part0?


##  Get the date parser from 2.11 news.
$(GETDATE):
	@rm -f $(GETDATE)
	cd $(2_11) ; make $(GETDATE)
	cp $(2_11)/$(GETDATE) .
