LBIN=/usr/local/bin
CDEBUGFLAGS = -O

# 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 =

CFLAGS = $(CDEBUGFLAGS) $(HASSTDLIB)

all: key keylogin keyinit keysu

install: all
	chmod 755 key keylogin keyinit keysu keyinfo
	chown root keylogin keyinit keysu
	cp key keylogin keyinit keysu keyinfo $(LBIN)
	chmod 4755 $(LBIN)/keylogin $(LBIN)/keyinit $(LBIN)/keysu
	cp /bin/login /bin/Ologin.$$
	rm /bin/login
	ln -s $(LBIN)/keylogin /bin/login
	touch /etc/skeykeys
	chmod 644 /etc/skeykeys
	cp *.1 /usr/local/man/man1

clean:
	rm *.o key keylogin keyinit keysu

suid: all
	chown root keylogin keyinit keysu
	chmod 4755 keylogin keyinit keysu

key: skey.o skeysubr.o md4.o put.o
	$(CC) $(CFLAGS) $(LDFLAGS) -o key skey.o skeysubr.o md4.o put.o

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

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

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

.c.o:
	$(CC) $(CFLAGS) -c $<

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


