## Override the following if needed
CC = gcc
OPT_CFLAGS = -O2 -Wall -Wno-unused -Wno-uninitialized
EXTRA_CFLAGS = 
EXTRA_LIBS = 
YACC = bison -y

CFLAGS = $(OPT_CFLAGS) $(EXTRA_CFLAGS) -DTCPWRAPPERS -DUSE_PAM -DAUTO_UNCOMPRESS -DINTERNAL_LS
LIBS = $(EXTRA_LIBS) -lutil -lwrap -lnsl -lcrypt -lpam -ldl
## If you prefer shadow password support, try this:
#CFLAGS = $(OPT_CFLAGS) $(EXTRA_CFLAGS) -DTCPWRAPPERS -DUSE_SHADOW -DAUTO_UNCOMPRESS -DINTERNAL_LS
#LIBS = $(EXTRA_LIBS) -lutil -lwrap -lnsl -lcrypt

## You shouldn't need to edit anything below
objects = ftpd.o popen.o logwtmp.o logutmp.o y.tab.o bsdport.o
more_objects = ../ls/cmp.o ../ls/stat_flags.o ../ls/ls.o ../ls/print.o \
  ../ls/util.o ../ls/bsdport.o

ftpd : $(objects) $(more_objects)
	$(CC) -o ftpd $(objects) $(more_objects) $(LIBS)

$(more_objects) :
	cd ../ls && $(MAKE)

ftpd.o : bsdport.h pathnames.h extern.h
popen.o : extern.h
logwtmp.o : extern.h
y.tab.o : extern.h
bsdport.o : bsdport.h

y.tab.c : ftpcmd.y
	$(YACC) ftpcmd.y

.PHONY : clean all
all : ftpd
clean :
	-rm ftpd $(objects)
