CFLAGS	= -O -DNO_STATCMD -DSTATS -DMOTD $(XFLAGS)
OBJS	= ftpd.o ftpcmd.o glob.o $(WTMP).o popen.o vers.o open_limit.o $(XOBJ)
MAN	= ftpd.8
SKEY_DIR= ../skey
SHELL	= /bin/sh
MAKE	= make

what:
	@echo Usage: make system-type. System types are:
	@echo sunos4 sunos5 sunos4-skey sunos5-skey freebsd-skey irix5-skey newsos4-skey
	@exit 1;

ultrix4-skey:
	@$(MAKE) ftpd-skey SYS=ultrix4 WTMP=logwtmp \
	    XOBJ="skey-stuff.o strdup.o getusershell.o" \
	    XFLAGS="-DSKEY -I$(SKEY_DIR)" LIBS=$(SKEY_DIR)/libskey.a

sunos4-skey:
	@$(MAKE) ftpd-skey SYS=sunos4 WTMP=logwtmp XOBJ=skey-stuff.o \
	    XFLAGS="-DSKEY -I$(SKEY_DIR)" LIBS=$(SKEY_DIR)/libskey.a

freebsd-skey:
	@$(MAKE) ftpd-skey SYS=bsd44 WTMP=logwtmp XOBJ=skey-stuff.o \
	    XFLAGS="-DSKEY -I$(SKEY_DIR) -DBSD44" LIBS=$(SKEY_DIR)/libskey.a

newsos4-skey:
	@$(MAKE) ftpd-skey SYS=newsos4 WTMP=logwtmp XOBJ=skey-stuff.o \
	    XFLAGS="-DSKEY -I$(SKEY_DIR) -DUSE_SIGSETMASK" \
	    LIBS=$(SKEY_DIR)/libskey.a

ultrix4:
	@$(MAKE) ftpd SYS=ultrix4 WTMP=logwtmp XOBJ="strdup.o getusershell.o"

sunos4:
	@$(MAKE) ftpd SYS=sunos4 WTMP=logwtmp

hpux-skey:
	@$(MAKE) ftpd-skey SYS=hpux WTMP=logwtmp \
	    XOBJ="skey-stuff.o" \
	    XFLAGS="-DHPUX -DSKEY -I$(SKEY_DIR)" LIBS=$(SKEY_DIR)/libskey.a

sunos5-skey:
	@$(MAKE) ftpd-skey SYS=sunos5 WTMP=sysv4wtmp \
	    XOBJ="getusershell.o skey-stuff.o" \
	    XFLAGS="-DSYSV4 -DSKEY -I$(SKEY_DIR)" LIBS=$(SKEY_DIR)/libskey.a \
	    SYSLIBS="-lsocket -lnsl"

irix5-skey:
	@$(MAKE) ftpd-skey SYS=irix5 WTMP=sysv4wtmp \
	    XOBJ="getusershell.o skey-stuff.o" \
	    XFLAGS="-DIRIX5 -DSYSV4 -DSKEY -I$(SKEY_DIR)" \
	    LIBS=$(SKEY_DIR)/libskey.a

sunos5:
	@$(MAKE) ftpd SYS=sunos5 WTMP=sysv4wtmp \
	    XOBJ=getusershell.o \
	    XFLAGS=-DSYSV4 \
	    SYSLIBS="-lsocket -lnsl"

ftpd-skey: skey ftpd

ftpd: ${OBJS} ${LIBS}
	${CC} -s -o $@ ${OBJS} ${LIBS} ${SYSLIBS}

skey:
	cd $(SKEY_DIR); $(MAKE) $(SYS)

vers.o: ftpd.c ftpcmd.y
	sh newvers.sh
	${CC} ${CFLAGS} -c vers.c

clean:
	rm -f *.o ftpd core ftpcmd.c
	cd $(SKEY_DIR); $(MAKE) clean

ftpd.o: sys_defs.h
