Makefile revision 1.5
11.5Sriastrad#	$NetBSD: Makefile,v 1.5 2020/08/17 16:26:02 riastradh Exp $
21.1Sriastrad
31.1Sriastrad.include <bsd.own.mk>
41.1Sriastrad
51.1SriastradTESTSDIR=	${TESTSBASE}/sys/crypto/aes
61.1Sriastrad
71.1SriastradTESTS_C=	t_aes
81.1Sriastrad
91.3SriastradAFLAGS+=	-D_LOCORE
101.3Sriastrad
111.1Sriastrad.PATH:	${NETBSDSRCDIR}/sys/crypto/aes
121.1SriastradCPPFLAGS+=	-I${NETBSDSRCDIR}/sys
131.1Sriastrad
141.1SriastradSRCS.t_aes+=	t_aes.c
151.1Sriastrad
161.1SriastradSRCS.t_aes+=	aes_bear.c
171.1SriastradSRCS.t_aes+=	aes_ct.c
181.1SriastradSRCS.t_aes+=	aes_ct_dec.c
191.1SriastradSRCS.t_aes+=	aes_ct_enc.c
201.1SriastradSRCS.t_aes+=	aes_selftest.c
211.1Sriastrad
221.5Sriastrad.if !empty(MACHINE_ARCH:Mearmv7*) || !empty(MACHINE_ARCH:Maarch64*)
231.1Sriastrad
241.1Sriastrad.PATH:	${NETBSDSRCDIR}/sys/crypto/aes/arch/arm
251.1SriastradCPPFLAGS+=	-I${NETBSDSRCDIR}/sys/crypto/aes/arch/arm
261.1Sriastrad
271.1Sriastrad.if !empty(MACHINE_ARCH:Maarch64*)	# XXX no AESE/AESD in 32-bit mode yet
281.1SriastradSRCS.t_aes+=	aes_armv8.c
291.1SriastradSRCS.t_aes+=	aes_armv8_64.S
301.1Sriastrad.endif
311.1Sriastrad
321.1SriastradSRCS.t_aes+=	aes_neon.c
331.1SriastradSRCS.t_aes+=	aes_neon_impl.c
341.1SriastradSRCS.t_aes+=	aes_neon_subr.c
351.5Sriastrad.if !empty(MACHINE_ARCH:Mearmv7*)
361.1SriastradSRCS.t_aes+=	aes_neon_32.S
371.1Sriastrad.endif
381.1Sriastrad
391.5Sriastrad.if !empty(MACHINE_ARCH:Mearmv7*) && empty(MACHINE_ARCH:Mearmv7hf*)
401.5SriastradCOPTS.aes_neon.c+=	-mfloat-abi=softfp -mfpu=neon
411.5SriastradCOPTS.aes_neon_subr.c+=	-mfloat-abi=softfp -mfpu=neon
421.5SriastradAOPTS.aes_neon_32.S+=	-D__SOFTFP__
431.5Sriastrad.endif
441.5Sriastrad
451.1Sriastrad.endif				# earmv7/aarch64
461.1Sriastrad
471.1Sriastrad.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64"
481.1Sriastrad
491.1Sriastrad.PATH:	${NETBSDSRCDIR}/sys/crypto/aes/arch/x86
501.1SriastradCPPFLAGS+=	-I${NETBSDSRCDIR}/sys/crypto/aes/arch/x86
511.1Sriastrad
521.1Sriastrad.if ${MACHINE_ARCH} == "x86_64"		# XXX no AES-NI in 32-bit mode yet
531.1SriastradSRCS.t_aes+=	aes_ni.c
541.1SriastradSRCS.t_aes+=	aes_ni_64.S
551.1Sriastrad.endif
561.1Sriastrad
571.1SriastradSRCS.t_aes+=	aes_sse2.c
581.1SriastradSRCS.t_aes+=	aes_sse2_dec.c
591.1SriastradSRCS.t_aes+=	aes_sse2_enc.c
601.1SriastradSRCS.t_aes+=	aes_sse2_impl.c
611.1SriastradSRCS.t_aes+=	aes_sse2_subr.c
621.2SriastradCOPTS.aes_sse2.c+=	-msse -msse2
631.2SriastradCOPTS.aes_sse2_dec.c+=	-msse -msse2
641.2SriastradCOPTS.aes_sse2_enc.c+=	-msse -msse2
651.2SriastradCOPTS.aes_sse2_subr.c+=	-msse -msse2
661.1Sriastrad
671.1SriastradSRCS.t_aes+=	aes_ssse3.c
681.1SriastradSRCS.t_aes+=	aes_ssse3_impl.c
691.1SriastradSRCS.t_aes+=	aes_ssse3_subr.c
701.2SriastradCOPTS.aes_ssse3.c+=		-msse -msse2 -msse3 -mssse3
711.2SriastradCOPTS.aes_ssse3_subr.c+=	-msse -msse2 -msse3 -mssse3
721.1Sriastrad
731.1SriastradSRCS.t_aes+=	aes_via.c
741.1Sriastrad
751.1Sriastrad.endif				# x86
761.1Sriastrad
771.1SriastradWARNS=		5
781.1Sriastrad
791.1Sriastrad.include <bsd.test.mk>
80