1# $FreeBSD$
2
3.include <src.opts.mk>
4
5LIB=	ssh
6PRIVATELIB=	true
7SHLIB_MAJOR=	5
8SRCS=	ssh_api.c ssherr.c sshbuf.c sshkey.c sshbuf-getput-basic.c \
9	sshbuf-misc.c sshbuf-getput-crypto.c krl.c bitmap.c
10SRCS+=	authfd.c authfile.c \
11	canohost.c channels.c cipher.c cipher-aes.c cipher-aesctr.c \
12	cipher-ctr.c cleanup.c \
13	compat.c crc32.c fatal.c hostfile.c \
14	log.c match.c moduli.c nchan.c packet.c opacket.c \
15	readpass.c ttymodes.c xmalloc.c addrmatch.c \
16	atomicio.c dispatch.c mac.c uuencode.c misc.c utf8.c \
17	monitor_fdpass.c rijndael.c ssh-dss.c ssh-ecdsa.c ssh-rsa.c dh.c \
18	msg.c progressmeter.c dns.c entropy.c umac.c umac128.c \
19	ssh-pkcs11.c smult_curve25519_ref.c \
20	poly1305.c chacha.c cipher-chachapoly.c \
21	ssh-ed25519.c digest-openssl.c digest-libc.c hmac.c \
22	sc25519.c ge25519.c fe25519.c ed25519.c verify.c hash.c \
23	kex.c kexdh.c kexgex.c kexecdh.c kexc25519.c \
24	kexdhc.c kexgexc.c kexecdhc.c kexc25519c.c \
25	kexdhs.c kexgexs.c kexecdhs.c kexc25519s.c \
26	platform-pledge.c platform-tracing.c platform-misc.c
27PACKAGE=	ssh
28
29# gss-genr.c should be in $SRCS but causes linking problems, so it is
30# compiled directly into sshd instead.
31
32# Portability layer
33SRCS+=	bcrypt_pbkdf.c blowfish.c bsd-misc.c bsd-signal.c explicit_bzero.c \
34	fmt_scaled.c freezero.c glob.c \
35	libressl-api-compat.c \
36	openssl-compat.c port-net.c \
37	realpath.c recallocarray.c strtonum.c timingsafe_bcmp.c vis.c xcrypt.c
38
39.if ${MK_LDNS} == "no"
40SRCS+=	getrrsetbyname.c
41.else
42LDNSDIR=	${SRCTOP}/contrib/ldns
43CFLAGS+=	-DHAVE_LDNS=1 -I${LDNSDIR}
44SRCS+=	getrrsetbyname-ldns.c
45LIBADD+=	ldns
46.endif
47
48CFLAGS+= -I${SSHDIR} -include ssh_namespace.h
49SRCS+=	 ssh_namespace.h
50
51.if ${MK_GSSAPI} != "no" && ${MK_KERBEROS_SUPPORT} != "no"
52CFLAGS+= -include krb5_config.h
53SRCS+=	 krb5_config.h
54.endif
55
56NO_LINT=
57
58LIBADD+=	crypto crypt z
59
60.include <bsd.lib.mk>
61
62.PATH: ${SSHDIR} ${SSHDIR}/openbsd-compat
63