1 # SPDX-License-Identifier: GPL-2.0
3 ccflags-remove-$(CONFIG_FUNCTION_TRACER) += $(CC_FLAGS_FTRACE)
5 # chacha is used by the /dev/random driver which is always builtin
7 obj-$(CONFIG_CRYPTO_LIB_CHACHA_GENERIC) += libchacha.o
9 obj-$(CONFIG_CRYPTO_LIB_AES) += libaes.o
12 obj-$(CONFIG_CRYPTO_LIB_ARC4) += libarc4.o
15 obj-$(CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC) += libblake2s-generic.o
16 libblake2s-generic-y += blake2s-generic.o
18 obj-$(CONFIG_CRYPTO_LIB_BLAKE2S) += libblake2s.o
19 libblake2s-y += blake2s.o
21 obj-$(CONFIG_CRYPTO_LIB_CHACHA20POLY1305) += libchacha20poly1305.o
22 libchacha20poly1305-y += chacha20poly1305.o
24 obj-$(CONFIG_CRYPTO_LIB_CURVE25519_GENERIC) += libcurve25519-generic.o
25 libcurve25519-generic-y := curve25519-fiat32.o
26 libcurve25519-generic-$(CONFIG_ARCH_SUPPORTS_INT128) := curve25519-hacl64.o
27 libcurve25519-generic-y += curve25519-generic.o
29 obj-$(CONFIG_CRYPTO_LIB_CURVE25519) += libcurve25519.o
30 libcurve25519-y += curve25519.o
32 obj-$(CONFIG_CRYPTO_LIB_DES) += libdes.o
35 obj-$(CONFIG_CRYPTO_LIB_POLY1305_GENERIC) += libpoly1305.o
36 libpoly1305-y := poly1305-donna32.o
37 libpoly1305-$(CONFIG_ARCH_SUPPORTS_INT128) := poly1305-donna64.o
38 libpoly1305-y += poly1305.o
40 obj-$(CONFIG_CRYPTO_LIB_SHA256) += libsha256.o
41 libsha256-y := sha256.o
43 ifneq ($(CONFIG_CRYPTO_MANAGER_DISABLE_TESTS),y)
44 libblake2s-y += blake2s-selftest.o
45 libchacha20poly1305-y += chacha20poly1305-selftest.o
46 libcurve25519-y += curve25519-selftest.o