1# $FreeBSD$ 2 3.PATH: ${SRCTOP}/sys/opencrypto 4.PATH: ${SRCTOP}/sys/crypto 5.PATH: ${SRCTOP}/sys/crypto/blowfish 6.PATH: ${SRCTOP}/sys/crypto/camellia 7.PATH: ${SRCTOP}/sys/crypto/des 8.PATH: ${SRCTOP}/sys/crypto/rijndael 9.PATH: ${SRCTOP}/sys/crypto/sha2 10.PATH: ${SRCTOP}/sys/crypto/siphash 11.PATH: ${SRCTOP}/sys/crypto/skein 12.PATH: ${SRCTOP}/sys/crypto/blake2 13.PATH: ${SRCTOP}/sys/contrib/libb2 14 15KMOD = crypto 16SRCS = crypto.c cryptodev_if.c 17SRCS += criov.c cryptosoft.c xform.c 18SRCS += cast.c cryptodeflate.c rmd160.c rijndael-alg-fst.c rijndael-api.c rijndael-api-fst.c 19SRCS += skipjack.c bf_enc.c bf_ecb.c bf_skey.c 20SRCS += camellia.c camellia-api.c 21SRCS += des_ecb.c des_enc.c des_setkey.c 22SRCS += sha1.c sha256c.c sha512c.c 23SRCS += skein.c skein_block.c 24# unroll the 256 and 512 loops, half unroll the 1024 25CFLAGS+= -DSKEIN_LOOP=995 26.if exists(${MACHINE_ARCH}/skein_block_asm.s) 27.PATH: ${SRCTOP}/sys/crypto/skein/${MACHINE_ARCH} 28SRCS += skein_block_asm.s 29CFLAGS += -DSKEIN_ASM -DSKEIN_USE_ASM=1792 # list of block functions to replace with assembly: 256+512+1024 = 1792 30ACFLAGS += -DELF -Wa,--noexecstack 31# Fully unroll all loops in the assembly optimized version 32AFLAGS+= --defsym SKEIN_LOOP=0 33.endif 34SRCS += siphash.c 35SRCS += gmac.c gfmult.c 36SRCS += blake2b-ref.c 37SRCS += blake2s-ref.c 38SRCS += blake2-sw.c 39CFLAGS.blake2b-ref.c += -I${SRCTOP}/sys/crypto/blake2 -DSUFFIX=_ref 40CFLAGS.blake2s-ref.c += -I${SRCTOP}/sys/crypto/blake2 -DSUFFIX=_ref 41CFLAGS.blake2-sw.c += -I${SRCTOP}/sys/crypto/blake2 42CWARNFLAGS.blake2b-ref.c += ${NO_WCAST_QUAL} 43CWARNFLAGS.blake2s-ref.c += ${NO_WCAST_QUAL} 44SRCS += opt_param.h cryptodev_if.h bus_if.h device_if.h 45SRCS += opt_ddb.h 46 47.include <bsd.kmod.mk> 48