xref: /linux/lib/crypto/arm/Makefile (revision 13150742b09e720fdf021de14cd2b98b37415a89)
1# SPDX-License-Identifier: GPL-2.0-only
2
3obj-$(CONFIG_CRYPTO_BLAKE2S_ARM) += libblake2s-arm.o
4libblake2s-arm-y := blake2s-core.o blake2s-glue.o
5
6obj-$(CONFIG_CRYPTO_CHACHA20_NEON) += chacha-neon.o
7chacha-neon-y := chacha-scalar-core.o chacha-glue.o
8chacha-neon-$(CONFIG_KERNEL_MODE_NEON) += chacha-neon-core.o
9
10obj-$(CONFIG_CRYPTO_POLY1305_ARM) += poly1305-arm.o
11poly1305-arm-y := poly1305-core.o poly1305-glue.o
12
13quiet_cmd_perl = PERL    $@
14      cmd_perl = $(PERL) $(<) > $(@)
15
16$(obj)/%-core.S: $(src)/%-armv4.pl
17	$(call cmd,perl)
18
19clean-files += poly1305-core.S
20
21aflags-thumb2-$(CONFIG_THUMB2_KERNEL)  := -U__thumb2__ -D__thumb2__=1
22
23# massage the perlasm code a bit so we only get the NEON routine if we need it
24poly1305-aflags-$(CONFIG_CPU_V7) := -U__LINUX_ARM_ARCH__ -D__LINUX_ARM_ARCH__=5
25poly1305-aflags-$(CONFIG_KERNEL_MODE_NEON) := -U__LINUX_ARM_ARCH__ -D__LINUX_ARM_ARCH__=7
26AFLAGS_poly1305-core.o += $(poly1305-aflags-y) $(aflags-thumb2-y)
27