1# $FreeBSD$ 2 3 4KMOD= if_wg 5 6INCDIR= ${SRCTOP}/sys/dev/if_wg/include 7ZINCDIR= ${SRCTOP}/sys/dev/if_wg/module/crypto/zinc 8 9.PATH: ${SRCTOP}/sys/dev/if_wg/module 10.PATH: ${ZINCDIR} 11.PATH: ${ZINCDIR}/chacha20 12.PATH: ${ZINCDIR}/poly1305 13 14CFLAGS+= -I${INCDIR} 15 16CFLAGS+= -D__KERNEL__ 17CFLAGS+= -ferror-limit=7 18 19DEBUG_FLAGS=-g 20 21SRCS= opt_inet.h opt_inet6.h device_if.h bus_if.h ifdi_if.h 22 23SRCS+= if_wg_session.c module.c 24SRCS+= wg_noise.c wg_cookie.c 25SRCS+= curve25519.c blake2s.c 26SRCS+= chacha20poly1305.c chacha20.c poly1305.c 27 28.if ${MACHINE_ARCH} == "amd64" 29SRCS += poly1305-x86_64.S chacha20-x86_64.S 30SIMD_FLAGS = -DCONFIG_AS_SSSE3=1 -DCONFIG_AS_AVX=1 \ 31 -DCONFIG_AS_AVX512=1 -DCONFIG_AS_AVX2=1 32.endif 33.include <bsd.kmod.mk> 34 35.if ${MACHINE_ARCH} == "amd64" 36CFLAGS.poly1305-x86_64.S = -D__LOCORE -gdwarf-4 ${SIMD_FLAGS} -include ${INCDIR}/sys/support.h 37CFLAGS.chacha20-x86_64.S = -D__LOCORE -gdwarf-4 ${SIMD_FLAGS} -include ${INCDIR}/sys/support.h 38CFLAGS.chacha20poly1305.c = -DCONFIG_ZINC_ARCH_X86_64 39CFLAGS.chacha20.c = -DCONFIG_ZINC_ARCH_X86_64 40CFLAGS.poly1305.c = -DCONFIG_ZINC_ARCH_X86_64 41.endif 42