xref: /dragonfly/lib/libssh/Makefile (revision ec1c3f3a)
1LIB=	private_ssh
2SHLIB_MAJOR= 5
3PRIVATELIB= shpub
4
5.PATH: ${.CURDIR}/../../crypto/openssh
6SRCS=	addr.c addrmatch.c atomicio.c authfd.c authfile.c bitmap.c canohost.c \
7	chacha.c channels.c cipher.c cipher-chachapoly-libcrypto.c cleanup.c compat.c \
8	dh.c digest-openssl.c dispatch.c dns.c entropy.c fatal.c \
9	hash.c hmac.c hostfile.c \
10	krl.c log.c mac.c match.c misc.c moduli.c monitor_fdpass.c msg.c \
11	nchan.c packet.c platform-misc.c poly1305.c readpass.c srclimit.c \
12	ssh_api.c ssh-dss.c ssh-ecdsa.c ssh-ecdsa-sk.c ssh-ed25519.c ssh-ed25519-sk.c \
13	ssh-rsa.c ssh-sk-client.c sshbuf.c sshbuf-getput-basic.c sshbuf-getput-crypto.c \
14	sshbuf-io.c sshbuf-misc.c \
15	ssherr.c sshkey.c sshsig.c ttymodes.c \
16	umac.c umac128.c utf8.c verify.c xmalloc.c
17SRCS+=	ed25519.c fe25519.c ge25519.c sc25519.c smult_curve25519_ref.c
18SRCS+=	kex.c kexc25519.c kexdh.c kexecdh.c \
19	kexgen.c kexgex.c kexgexc.c kexgexs.c \
20	kexsntrup761x25519.c sntrup761.c
21
22# not implemented: platform-pledge.c platform-tracing.c
23# only for scp/sftp: progressmeter.c
24# disabled: ssh-pkcs11.c
25# no GSSAPI: gss-genr.c
26# no openssl: cipher-aes.c cipher-aesctr.c cipher-ctr.c crc32.c digest-libc.c rijndael.c
27# no xmss: ssh-xmss.c sshkey-xmss.c xmss_commons.c xmss_fast.c xmss_hash.c
28#	   xmss_hash_address.c xmss_wots.c
29
30# Portability layer
31.PATH: ${.CURDIR}/openbsd-compat
32SRCS+=	bcrypt_pbkdf.c blowfish.c bsd-misc.c bsd-signal.c fmt_scaled.c \
33	getrrsetbyname-ldns.c glob.c openssl-compat.c port-net.c xcrypt.c
34
35# not needed compat:
36# arc4random.c base64.c basename.c bindresvport.c bsd-asprintf.c
37# bsd-closefrom.c bsd-cygwin_util.c bsd-err.c bsd-flock.c bsd-getline.c
38# bsd-getpagesize.c bsd-getpeereid.c bsd-malloc.c bsd-nextstep.c bsd-openpty.c
39# bsd-poll.c bsd-setres_id.c bsd-snprintf.c bsd-statvfs.c bsd-waitpid.c
40# daemon.c dirname.c explicit_bzero.c fake-rfc2553.c freezero.c getcwd.c
41# getgrouplist.c getopt_long.c inet_aton.c inet_ntoa.c inet_ntop.c
42# kludge-fd_set.c libressl-api-compat.c md5.c mktemp.c
43# port-aix.c port-irix.c port-linux.c port-solaris.c port-uw.c
44# pwcache.c readpassphrase.c reallocarray.c recallocarray.c rmd160.c
45# rresvport.c setenv.c setproctitle.c sha1.c sha2.c sigact.c
46# strcasestr.c strlcat.c strlcpy.c strmode.c strndup.c strnlen.c strptime.c
47# strsep.c strtoll.c strtonum.c strtoul.c strtoull.c timingsafe_bcmp.c vis.c
48
49MAN=	moduli.5
50
51WARNS?=	2
52NO_STRICT_ALIASING=
53
54CFLAGS+=	-I${.CURDIR} -I${.CURDIR}/../../crypto/openssh
55CFLAGS+=	-I${.CURDIR}/../../crypto/libressl/include
56CFLAGS+=	-I${.CURDIR}/../../contrib/ldns
57CFLAGS+=	-I${.CURDIR}/../libldns
58DPADD=		${LIBCRYPTO} ${LIBLDNS} ${LIBUTIL} ${LIBZ}
59LDADD=		-lprivate_crypto -lprivate_ldns -lutil -lz
60LDFLAGS+=	-rpath /usr/lib/priv ${PRIVATELIB_LDFLAGS}
61
62.include <bsd.lib.mk>
63