1#	$OpenBSD: Makefile,v 1.3 2017/12/21 05:46:35 djm Exp $
2
3.include <bsd.own.mk>
4.include <bsd.obj.mk>
5
6# XXX detect from ssh binary?
7SSH1?=		no
8OPENSSL?=	yes
9
10PROG=	kexfuzz
11SRCS=	kexfuzz.c
12
13SSHREL=../../../../../usr.bin/ssh
14.PATH: ${.CURDIR}/${SSHREL}
15# From usr.bin/ssh
16SRCS+=sshbuf-getput-basic.c sshbuf-getput-crypto.c sshbuf-misc.c sshbuf.c
17SRCS+=atomicio.c sshkey.c authfile.c cipher.c log.c ssh-rsa.c ssh-dss.c
18SRCS+=ssh-ecdsa.c ssh-ed25519.c mac.c umac.c umac128.c hmac.c misc.c
19SRCS+=ssherr.c uidswap.c cleanup.c xmalloc.c match.c krl.c fatal.c
20SRCS+=addrmatch.c bitmap.c packet.c dispatch.c canohost.c ssh_api.c
21SRCS+=kex.c kexc25519.c kexc25519c.c kexc25519s.c kexdh.c kexdhc.c kexdhs.c
22SRCS+=kexecdh.c kexecdhc.c kexecdhs.c kexgex.c kexgexc.c kexgexs.c
23SRCS+=dh.c compat.c
24SRCS+=ed25519.c hash.c ge25519.c fe25519.c sc25519.c verify.c
25SRCS+=cipher-chachapoly.c chacha.c poly1305.c
26SRCS+=smult_curve25519_ref.c
27
28SRCS+=digest-openssl.c
29#SRCS+=digest-libc.c
30
31NOMAN=	1
32
33.if (${OPENSSL:L} == "yes")
34CFLAGS+=	-DWITH_OPENSSL
35.else
36# SSH v.1 requires OpenSSL.
37SSH1=		no
38.endif
39
40.if (${SSH1:L} == "yes")
41CFLAGS+=	-DWITH_SSH1
42.endif
43
44# enable warnings
45WARNINGS=Yes
46
47DEBUG=-g
48CFLAGS+=	-fstack-protector-all
49CDIAGFLAGS=	-Wall
50CDIAGFLAGS+=	-Wextra
51CDIAGFLAGS+=	-Werror
52CDIAGFLAGS+=	-Wchar-subscripts
53CDIAGFLAGS+=	-Wcomment
54CDIAGFLAGS+=	-Wformat
55CDIAGFLAGS+=	-Wformat-security
56CDIAGFLAGS+=	-Wimplicit
57CDIAGFLAGS+=	-Winline
58CDIAGFLAGS+=	-Wmissing-declarations
59CDIAGFLAGS+=	-Wmissing-prototypes
60CDIAGFLAGS+=	-Wparentheses
61CDIAGFLAGS+=	-Wpointer-arith
62CDIAGFLAGS+=	-Wreturn-type
63CDIAGFLAGS+=	-Wshadow
64CDIAGFLAGS+=	-Wsign-compare
65CDIAGFLAGS+=	-Wstrict-aliasing
66CDIAGFLAGS+=	-Wstrict-prototypes
67CDIAGFLAGS+=	-Wswitch
68CDIAGFLAGS+=	-Wtrigraphs
69CDIAGFLAGS+=	-Wuninitialized
70CDIAGFLAGS+=	-Wunused
71CDIAGFLAGS+=	-Wno-unused-parameter
72.if ${COMPILER_VERSION:L} != "gcc3"
73CDIAGFLAGS+=	-Wold-style-definition
74.endif
75
76
77CFLAGS+=-I${.CURDIR}/${SSHREL}
78
79LDADD+= -lutil -lz
80DPADD+= ${LIBUTIL} ${LIBZ}
81
82.if (${OPENSSL:L} == "yes")
83LDADD+= -lcrypto
84DPADD+= ${LIBCRYPTO}
85.endif
86
87.include <bsd.prog.mk>
88
89