SRCS=	transit.c \
	servconf.c \
	log.c \
	access.c \
	yp.c \
	util.c \
	modules.c \
	conf.tab.c \
	lex.conf.c \
	yp_svc.c

OBJS=$(SRCS:.c=.o)
GEN_C_SRCS= conf.tab.c conf.tab.h lex.conf.c yp_svc.c yp.h

prefix = @prefix@
CONFDIR=@sysconfdir@/yptransitd
BINDIR=@prefix@/sbin
MODDIR=$(CONFDIR)/modules
RPCDIR = @rpcdir@

LIBS=@LIBS@ @LEXLIB@
INCLUDES=
CFLAGS=-O2 -g -Wall -fPIC $(INCLUDES)
CPPFLAGS=@CPPFLAGS@ -DCONFDIR='"$(CONFDIR)"'
LDFLAGS=@PTHREAD_CFLAGS@
CC=@CC@
CPP=@CPP@
LD=@CC@
YACC=@YACC@
YACCOPTS=
LEX=@LEX@
LEXOPTS=
RANLIB=@RANLIB@
RPCGEN=@RPCGEN@
INSTALL=@INSTALL@
INSTALL_PROGRAM=@INSTALL@ -s -c -m 755

COMPILE = $(CC) -c $(CPPFLAGS) $(CFLAGS)

.c.o:
	$(COMPILE) $<

all: $(GEN_C_SRCS) $(OBJS)
	$(LD) $(LDFLAGS) $(OBJS) ../lib/getopt_long.o -o yptransitd $(LIBS)

install: all
	$(INSTALL_PROGRAM) yptransitd ${BINDIR}/yptransitd

conf.tab.c conf.tab.h: confparse.y
	$(YACC) $(YACCOPT) -b conf -p conf -d confparse.y

lex.conf.c: confparse.l
	$(LEX) $(LEXOPT) -Pconf confparse.l

yp_svc.c:
	${RPCGEN} -DYPSERV_ONLY -m ${RPCDIR}/yp.x | \
	sed s/"static int _rpcsvcstate"/"int _rpcsvcstate"/g | \
	sed s/"#include \"\/usr\/include\/rpcsvc\/yp.h\""/"#include \"yp.h\""/ > yp_svc.c

yp.h: yp_svc.c
	rm -f yp.h
	${RPCGEN} -h -o yp.h ${RPCDIR}/yp.x

clean:
	rm -f $(OBJS) ${GEN_C_SRCS} core yptransitd


syntax highlighted by Code2HTML, v. 0.9.1