Makefile revision 1.21
1#	$NetBSD: Makefile,v 1.21 2020/08/27 14:01:36 riastradh Exp $
2#
3
4SODIUM_IMPORTDIR=${.CURDIR}/../../../../external/isc/libsodium
5SODIUM_DIR=${.CURDIR}/../../../../external/isc/libsodium/dist/src/libsodium
6
7.PATH:	${.CURDIR}/../../../../crypto/adiantum				\
8	${.CURDIR}/../../../../crypto/aes				\
9	${.CURDIR}/../../../../crypto/blowfish				\
10	${.CURDIR}/../../../../crypto/camellia				\
11	${.CURDIR}/../../../../crypto/cast128				\
12	${.CURDIR}/../../../../crypto/des				\
13	${.CURDIR}/../../../../crypto/skipjack				\
14	${SODIUM_DIR}/crypto_scalarmult/curve25519/ref10		\
15	${SODIUM_DIR}/crypto_scalarmult/curve25519			\
16	${SODIUM_DIR}/crypto_scalarmult					\
17	${SODIUM_DIR}/crypto_onetimeauth/poly1305/donna			\
18	${SODIUM_DIR}/crypto_onetimeauth/poly1305			\
19	${SODIUM_DIR}/crypto_onetimeauth				\
20	${SODIUM_DIR}/crypto_stream/chacha20/ref			\
21	${SODIUM_DIR}/crypto_stream/chacha20				\
22	${SODIUM_DIR}/crypto_aead/xchacha20poly1305/sodium		\
23	${SODIUM_DIR}/crypto_aead/chacha20poly1305/sodium		\
24	${SODIUM_DIR}/crypto_core/hchacha20				\
25	${SODIUM_DIR}/crypto_core/ed25519/ref10
26
27LIB=	rumpkern_crypto
28COMMENT=Cryptographic routines
29
30# Adiantum
31SRCS+=	adiantum.c
32SRCS+=	adiantum_selftest.c
33
34# AES
35SRCS+=	aes_bear.c
36SRCS+=	aes_ccm.c
37SRCS+=	aes_ccm_mbuf.c
38SRCS+=	aes_ct.c
39SRCS+=	aes_ct_dec.c
40SRCS+=	aes_ct_enc.c
41SRCS+=	aes_impl.c
42SRCS+=	aes_selftest.c
43
44# blowfish
45SRCS+=	bf_ecb.c bf_enc.c bf_cbc.c bf_skey.c bf_module.c
46
47# camellia
48SRCS+=  camellia.c camellia-api.c
49
50# cast128
51SRCS+=	cast128.c
52
53# DES
54SRCS+=	des_ecb.c des_setkey.c des_enc.c des_cbc.c des_module.c
55
56# skipjack
57SRCS+=	skipjack.c
58
59# libsodium
60SODIUM_CPPFLAGS+=	-I${SODIUM_IMPORTDIR}/include
61SODIUM_CPPFLAGS+=	-I${SODIUM_IMPORTDIR}/dist/src/libsodium/include/sodium
62
63#SODIUM_CPPFLAGS+=	-DHAVE_TI_MODE
64
65SODIUM_CWARNFLAGS+=	-Wno-shadow
66SODIUM_CWARNFLAGS+=	-Wno-unused-function
67SODIUM_CWARNFLAGS+=	-Wno-unused-variable
68
69SODIUM_SRCS+=	x25519_ref10.c
70SODIUM_SRCS+=	scalarmult_curve25519.c
71SODIUM_SRCS+=	crypto_scalarmult.c
72SODIUM_SRCS+=	poly1305_donna.c
73SODIUM_SRCS+=	onetimeauth_poly1305.c
74SODIUM_SRCS+=	crypto_onetimeauth.c
75SODIUM_SRCS+=	chacha20_ref.c
76SODIUM_SRCS+=	stream_chacha20.c
77SODIUM_SRCS+=	aead_xchacha20poly1305.c
78SODIUM_SRCS+=	aead_chacha20poly1305.c
79SODIUM_SRCS+=	core_hchacha20.c
80SODIUM_SRCS+=	ed25519_ref10.c
81
82SRCS+=	${SODIUM_SRCS}
83
84.for _s_ in ${SODIUM_SRCS}
85CPPFLAGS.${_s_}+=	${SODIUM_CPPFLAGS}
86COPTS.${_s_}+=		${SODIUM_CWARNFLAGS}
87.endfor
88
89.include <bsd.lib.mk>
90.include <bsd.klinks.mk>
91