
SRCS   = ftpd.c ftpcmd.c glob.c logwtmp.c popen.c vers.c access.c extensions.c \
         realpath.c acl.c private.c authenticate.c conversions.c hostacc.c \
         sigfix.c routevector.c
OBJS   = ftpd.o ftpcmd.o glob.o logwtmp.o popen.o vers.o access.o extensions.o \
         realpath.o acl.o private.o authenticate.o conversions.o hostacc.o \
         sigfix.o routevector.o

all: ftpd ftpcount ftpshut ckconfig

ftpcount: ftpcount.o vers.o ../support/libsupport.a
	${CC} ${LFLAGS} -o $@ ftpcount.o vers.o

ftpshut: ftpshut.o vers.o ../support/libsupport.a
	${CC} ${LFLAGS} -o $@ ftpshut.o vers.o

ftpd: ${OBJS} ${XOBJS} ../support/libsupport.a
	${CC} ${LFLAGS} -o $@ ${OBJS} ${XOBJS} ${XLIBS}

ckconfig: ckconfig.o
	${CC} ${LFLAGS} -o $@ ckconfig.o

clean:
	rm -f ${OBJS} ftpd ftpcmd.c ftpshut ftpshut.o ftpcount ftpcount.o
	rm -f core ckconfig ckconfig.o *~ makefiles/*~
	rm -f config/*~

cleandir: clean
	rm -f tags .depend

depend: ${SRCS} ${XSRCS}
	${MKDEP} ${CFLAGS} ${SRCS} ${XSRCS}

lint: ${SRCS} ${XSRCS}
	lint ${CFLAGS} ${LINTFLAGS} ${SRCS} ${XSRCS}

tags: ${SRCS} ${XSRCS}
	ctags ${SRCS} ${XSRCS}

access.o: access.c config.h pathnames.h extensions.h ../config.h

acl.o: acl.c config.h pathnames.h extensions.h ../config.h

auth.o: auth.c config.h ../config.h

authenticate.o: authenticate.c config.h ../support/authuser.h authenticate.h ../config.h

ckconfig.o: ckconfig.c config.h pathnames.h ../config.h

conversions.o: conversions.c config.h conversions.h extensions.h pathnames.h ../config.h

extensions.o: extensions.c config.h pathnames.h extensions.h ../support/ftw.h ../config.h

ftpcmd.c: ftpcmd.y

ftpcmd.o: ftpcmd.c config.h extensions.h pathnames.h ../config.h

ftpcount.o: ftpcount.c config.h pathnames.h extensions.h ../config.h

ftpd.o: ftpd.c config.h conversions.h extensions.h pathnames.h ../config.h

ftpshut.o: ftpshut.c config.h pathnames.h ../config.h

glob.o: glob.c config.h ../config.h

hostacc.o: hostacc.c config.h hostacc.h ../config.h pathnames.h

logwtmp.o: logwtmp.c config.h pathnames.h ../config.h

popen.o: popen.c config.h ../config.h

private.o: private.c config.h pathnames.h extensions.h ../config.h

realpath.o: realpath.c config.h ../config.h

routevector.o: routevector.c config.h pathnames.h extensions.h ../config.h

sigfix.o: sigfix.c config.h ../config.h

vers.c: ftpcmd.y newvers.sh
	sh newvers.sh

vers.o: vers.c
