1 # SPDX-License-Identifier: GPL-2.0
3 obj-$(CONFIG_CRYPTO_LIB_UTILS) += libcryptoutils.o
4 libcryptoutils-y := memneq.o utils.o
6 # chacha is used by the /dev/random driver which is always builtin
8 obj-$(CONFIG_CRYPTO_LIB_CHACHA_GENERIC) += libchacha.o
10 obj-$(CONFIG_CRYPTO_LIB_AES) += libaes.o
13 obj-$(CONFIG_CRYPTO_LIB_AESGCM) += libaesgcm.o
14 libaesgcm-y := aesgcm.o
16 obj-$(CONFIG_CRYPTO_LIB_ARC4) += libarc4.o
19 obj-$(CONFIG_CRYPTO_LIB_GF128MUL) += gf128mul.o
21 # blake2s is used by the /dev/random driver which is always builtin
23 libblake2s-y := blake2s.o
24 libblake2s-$(CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC) += blake2s-generic.o
26 obj-$(CONFIG_CRYPTO_LIB_CHACHA20POLY1305) += libchacha20poly1305.o
27 libchacha20poly1305-y += chacha20poly1305.o
29 obj-$(CONFIG_CRYPTO_LIB_CURVE25519_GENERIC) += libcurve25519-generic.o
30 libcurve25519-generic-y := curve25519-fiat32.o
31 libcurve25519-generic-$(CONFIG_ARCH_SUPPORTS_INT128) := curve25519-hacl64.o
32 libcurve25519-generic-y += curve25519-generic.o
34 obj-$(CONFIG_CRYPTO_LIB_CURVE25519) += libcurve25519.o
35 libcurve25519-y += curve25519.o
37 obj-$(CONFIG_CRYPTO_LIB_DES) += libdes.o
40 obj-$(CONFIG_CRYPTO_LIB_POLY1305_GENERIC) += libpoly1305.o
41 libpoly1305-y := poly1305-donna32.o
42 libpoly1305-$(CONFIG_ARCH_SUPPORTS_INT128) := poly1305-donna64.o
43 libpoly1305-y += poly1305.o
45 obj-$(CONFIG_CRYPTO_LIB_SHA1) += libsha1.o
48 obj-$(CONFIG_CRYPTO_LIB_SHA256) += libsha256.o
49 libsha256-y := sha256.o
51 ifneq ($(CONFIG_CRYPTO_MANAGER_DISABLE_TESTS),y)
52 libblake2s-y += blake2s-selftest.o
53 libchacha20poly1305-y += chacha20poly1305-selftest.o
54 libcurve25519-y += curve25519-selftest.o
57 obj-$(CONFIG_MPILIB) += mpi/