LBIN=/usr/local/bin
CDEBUGFLAGS= 
#CDEBUGFLAGS= -O do NOT ---- use causes different output

# if this machine uses shared libraries, (such as Suns), uncomment the first
# line, otherwise, uncomment the second
LDFLAGS=-Bstatic
#LDFLAGS=

# if this machine has /usr/include/stdlib.h, uncomment the first line,
# otherwise, uncomment the second
HASSTDLIB=-DHASSTDLIB
#HASSTDLIB=

LIB=libskey.a
LIBOBJS=skeylogin.o skeysubr.o md4.o put.o skey.o

CFLAGS=$(CDEBUGFLAGS) $(HASSTDLIB)

$all:	key keylogin skey.init keysu $(LIB)

install:	all man
	chmod 755 key keylogin skey.init keysu keyinfo keyinit
	chown root keylogin skey.init keysu keyinit
	cp keyinit skey.init key keylogin keysu keyinfo $(LBIN)
	chmod 4755 $(LBIN)/keylogin $(LBIN)/skey.init $(LBIN)/keysu
# this assumes things are set up it /etc
	cp /etc/login /etc/login.$$
	cp  keylogin /etc/login
	chmod 4755 /etc/login
	cp /bin/login /bin/Ologin.$$
#       rm /bin/login
#       ln -s $(LBIN)/keylogin /bin/login
#       touch /etc/skeykeys
#       chmod 644 /etc/skeykeys

man:
	cp *.1 /usr/local/man/man1
	
$(LIB):	 $(LIBOBJS)
	ar rc $(LIB) $(LIBOBJS)
	ranlib $(LIB)

clean:
	rm *.o key keylogin skey.init keysu

suid:	all
	chown root keylogin skey.init keysu
	chmod 4755 keylogin skey.init keysu

key:	skey.o $(LIB)
	$(CC) $(CFLAGS) $(LDFLAGS) -o key skey.o $(LIB)

keylogin:	login.o skeylogin.o skeysubr.o md4.o put.o setenv.o getenv.o
	$(CC) $(CFLAGS) $(LDFLAGS) -o keylogin \
		login.o getenv.o setenv.o skeylogin.o $(LIB)

skey.init:	skeyinit.o skeylogin.o skeysubr.o md4.o put.o
	$(CC) $(CFLAGS) $(LDFLAGS) -o skey.init \
		skeyinit.o $(LIB)

keysu:	su.o skeylogin.o skeysubr.o md4.o put.o
	$(CC) $(CFLAGS) $(LDFLAGS) -o keysu su.o $(LIB)

login.o:	login.c skey.h
md4.o:	md4.c md4.h
skey.o:	skey.c md4.h skey.h
skeylogin.o:	skeylogin.c skey.h
skeysubr.o:	skeysubr.c md4.h skey.h
put.o:	put.c skey.h


