# Makefile - S/KEY v1.1b
#
# Neil M. Haller <nmh@thumper.bellcore.com>
# Philip R. Karn <karn@chicago.qualcomm.com>
# John S. Walden <jsw@thumper.bellcore.com>
# Scott Chasin <chasin@crimelab.com>

MANDIR  =  /usr/local/man/man8
DESTDIR =  /usr/local/bin

CFLAGS	=  # -g -DUSE_ECHO

LIB      =  libskey.a
DLIB     =  libskyd.a
LIBOBJS  =  skeylogin.o skeysubr.o md4.o put.o
DLIBOBJS =  skeysubr.o md4.o put.o
LIBSRCS  =  skeylogin.c skeysubr.c md4.c put.c
DLIBSRCS =  skeysubr.c md4.c put.c

what:
	@echo ""
	@echo "Please specify the type of system you are compiling on:"
	@echo ""
	@echo " bsd             Berkeley 4.x, 386BSD, Aviion DG/UX"
	@echo " sunos4          Sun SunOS 4.x"
	@echo " sunos5          Sun SunOS 5.x (Solaris 2.x)"
	@echo " ultrix          Dec Ultrix 4.1.x"
	@echo " sysv            AT&T System V and clones"
	@echo " irix            Silicon Graphic's IRIX"
	@echo " next            NeXTStep 2.0"
	@echo " hpux            HP/UX Hewlett-Packard Unix v9.x"
	@echo " linux           Linux"
	@echo " msdos           MSDOS"
	@echo ""
	@echo "Example: make sunos4"
	@echo ""

all:	$(LIB) key keyinit keysh done

dos:	$(DLIB) dkey done

setuid:
	chmod u+s keyinit keysh

install:
	chmod u+s keyinit keysh
	mv key $(BIN)
	mv keyinit $(BIN)
	mv keysh $(BIN)

sunos5:
	make all SYS=$@ RANLIB="echo" CFLAGS="$(CFLAGS) -DSYSV -DSOLARIS \
        -DSIGVOID"

sunos4:
	make all SYS=$@ RANLIB="/bin/ranlib" CFLAGS="$(CFLAGS) -DSUN"

linux:
	make all SYS=$@ RANLIB=ranlib CFLAGS="$(CFLAGS) -DSYSV -DMPU8086"

msdos:
	make dos CC=gcc RANLIB=ranlib 

ultrix:
	make all SYS=$@ RANLIB="/usr/bin/ranlib" CFLAGS="$(CFLAGS) -DULTRIX"

sysv:
	make all SYS=$@ RANLIB="echo" CFLAGS="$(CFLAGS) -DSYSV"

key:    skey.c
	$(CC) -o $@ $(CFLAGS) skey.c $(LIB) $(SYSLIBS)

dkey:   skey.c
	$(CC) -o $@ $(CFLAGS) skey.c $(DLIB) $(SYSLIBS)
	strip $@
	coff2exe $@
	rm $@

keyinit: skeyinit.c
	$(CC) -o $@ $(CFLAGS) skeyinit.c $(LIB) $(SYSLIBS)

keysh:  skeysh.c
	$(CC) -o $@ $(CFLAGS) skeysh.c $(LIB) $(SYSLIBS)

$(LIB): $(LIBOBJS)
	ar rv $(LIB) $(LIBOBJS)
	$(RANLIB) $(LIB)

$(DLIB): $(DLIBOBJS)
	ar rv $(DLIB) $(DLIBOBJS)
	$(RANLIB) $(DLIB)

done:
	@echo "Make completed."

clean:
	rm -f *.exe key keyinit keysh *.o *.a *.bak *.BAK *.s tags
