Makefile revision 1.6
11.6Sjakllsch#	$NetBSD: Makefile,v 1.6 2020/09/08 17:35:27 jakllsch 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.6SjakllschCLANG_NO_NONPORTABLE_VECTOR_INITIALIZATION= ${${ACTIVE_CC} == "clang":? -Wno-nonportable-vector-initialization :}
331.6Sjakllsch
341.1SriastradSRCS.t_aes+=	aes_neon.c
351.6SjakllschCOPTS.aes_neon.c+=${CLANG_NO_NONPORTABLE_VECTOR_INITIALIZATION}
361.1SriastradSRCS.t_aes+=	aes_neon_impl.c
371.1SriastradSRCS.t_aes+=	aes_neon_subr.c
381.6SjakllschCOPTS.aes_neon_subr.c+=${CLANG_NO_NONPORTABLE_VECTOR_INITIALIZATION}
391.5Sriastrad.if !empty(MACHINE_ARCH:Mearmv7*)
401.1SriastradSRCS.t_aes+=	aes_neon_32.S
411.1Sriastrad.endif
421.1Sriastrad
431.5Sriastrad.if !empty(MACHINE_ARCH:Mearmv7*) && empty(MACHINE_ARCH:Mearmv7hf*)
441.5SriastradCOPTS.aes_neon.c+=	-mfloat-abi=softfp -mfpu=neon
451.5SriastradCOPTS.aes_neon_subr.c+=	-mfloat-abi=softfp -mfpu=neon
461.5SriastradAOPTS.aes_neon_32.S+=	-D__SOFTFP__
471.5Sriastrad.endif
481.5Sriastrad
491.1Sriastrad.endif				# earmv7/aarch64
501.1Sriastrad
511.1Sriastrad.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64"
521.1Sriastrad
531.1Sriastrad.PATH:	${NETBSDSRCDIR}/sys/crypto/aes/arch/x86
541.1SriastradCPPFLAGS+=	-I${NETBSDSRCDIR}/sys/crypto/aes/arch/x86
551.1Sriastrad
561.1Sriastrad.if ${MACHINE_ARCH} == "x86_64"		# XXX no AES-NI in 32-bit mode yet
571.1SriastradSRCS.t_aes+=	aes_ni.c
581.1SriastradSRCS.t_aes+=	aes_ni_64.S
591.1Sriastrad.endif
601.1Sriastrad
611.1SriastradSRCS.t_aes+=	aes_sse2.c
621.1SriastradSRCS.t_aes+=	aes_sse2_dec.c
631.1SriastradSRCS.t_aes+=	aes_sse2_enc.c
641.1SriastradSRCS.t_aes+=	aes_sse2_impl.c
651.1SriastradSRCS.t_aes+=	aes_sse2_subr.c
661.2SriastradCOPTS.aes_sse2.c+=	-msse -msse2
671.2SriastradCOPTS.aes_sse2_dec.c+=	-msse -msse2
681.2SriastradCOPTS.aes_sse2_enc.c+=	-msse -msse2
691.2SriastradCOPTS.aes_sse2_subr.c+=	-msse -msse2
701.1Sriastrad
711.1SriastradSRCS.t_aes+=	aes_ssse3.c
721.1SriastradSRCS.t_aes+=	aes_ssse3_impl.c
731.1SriastradSRCS.t_aes+=	aes_ssse3_subr.c
741.2SriastradCOPTS.aes_ssse3.c+=		-msse -msse2 -msse3 -mssse3
751.2SriastradCOPTS.aes_ssse3_subr.c+=	-msse -msse2 -msse3 -mssse3
761.1Sriastrad
771.1SriastradSRCS.t_aes+=	aes_via.c
781.1Sriastrad
791.1Sriastrad.endif				# x86
801.1Sriastrad
811.1SriastradWARNS=		5
821.1Sriastrad
831.1Sriastrad.include <bsd.test.mk>
84