prefix=@prefix@
exec_prefix=@exec_prefix@
bindir=@bindir@
sbindir=@sbindir@
libdir=@libdir@
mandir=@mandir@

CC=@CC@
OPT_FLAGS=-g
CFLAGS=$(OPT_FLAGS) -Wall -DETCDIR=\"@sysconfdir@\" @DEFS@
TARGETS=libssh.a ssh sshd ssh-add ssh-keygen ssh-agent scp
LFLAGS=-L.
LIBS=-lssh @LIBS@
AR=@AR@
RANLIB=@RANLIB@

OBJS=	authfd.o authfile.o auth-passwd.o auth-rhosts.o auth-rh-rsa.o \
		auth-rsa.o bufaux.o buffer.o canohost.o channels.o cipher.o \
		clientloop.o compress.o crc32.o deattack.o helper.o hostfile.o \
		log-client.o login.o log-server.o match.o mpaux.o packet.o pty.o \
		readconf.o readpass.o rsa.o servconf.o serverloop.o \
		sshconnect.o tildexpand.o ttymodes.o uidswap.o xmalloc.o \
		helper.o mktemp.o strlcpy.o rc4.o

all: $(OBJS) $(TARGETS)

libssh.a: authfd.o authfile.o bufaux.o buffer.o canohost.o channels.o cipher.o compat.o compress.o crc32.o deattack.o hostfile.o match.o mpaux.o nchan.o packet.o readpass.o rsa.o tildexpand.o ttymodes.o uidswap.o xmalloc.o helper.o rc4.o mktemp.o strlcpy.o
	$(AR) rv $@ $^
	$(RANLIB) $@

ssh: ssh.o sshconnect.o log-client.o readconf.o clientloop.o
	$(CC) -o $@ $^ $(LFLAGS) $(LIBS) 

sshd:	sshd.o auth-rhosts.o auth-passwd.o auth-rsa.o auth-rh-rsa.o pty.o log-server.o login.o servconf.o serverloop.o
	$(CC) -o $@ $^ $(LFLAGS) $(LIBS) 

scp:	scp.o
	$(CC) -o $@ $^ $(LFLAGS) $(LIBS) 

ssh-add: ssh-add.o log-client.o
	$(CC) -o $@ $^ $(LFLAGS) $(LIBS) 

ssh-agent: ssh-agent.o log-client.o
	$(CC) -o $@ $^ $(LFLAGS) $(LIBS) 

ssh-keygen: ssh-keygen.o log-client.o
	$(CC) -o $@ $^ $(LFLAGS) $(LIBS) 

clean:
	rm -f *.o core $(TARGETS) config.status config.cache config.log
	
install:
	install -d $(bindir)
	install -d $(sbindir)
	install -d $(mandir)
	install -d $(mandir)/man1
	install -d $(mandir)/man8
	install -s -c ssh $(bindir)/ssh
	install -s -c scp $(bindir)/scp
	install -s -c ssh-add $(bindir)/ssh-add
	install -s -c ssh-agent $(bindir)/ssh-agent
	install -s -c ssh-keygen $(bindir)/ssh-keygen
	install -s -c sshd $(sbindir)/sshd
	install -m644 -c ssh.1 $(mandir)/man1/ssh.1
	install -m644 -c scp.1 $(mandir)/man1/scp.1
	install -m644 -c ssh-add.1 $(mandir)/man1/ssh-add.1
	install -m644 -c ssh-agent.1 $(mandir)/man1/ssh-agent.1
	install -m644 -c ssh-keygen.1 $(mandir)/man1/ssh-keygen.1
	install -m644 -c sshd.8 $(mandir)/man8/sshd.8

distclean: clean
	rm -f Makefile config.h core configure *~

mrproper: distclean
