1# SPDX-License-Identifier: GPL-2.0 2 3obj-$(CONFIG_CRYPTO_LIB_UTILS) += libcryptoutils.o 4libcryptoutils-y := memneq.o utils.o 5 6# chacha is used by the /dev/random driver which is always builtin 7obj-y += chacha.o 8obj-$(CONFIG_CRYPTO_LIB_CHACHA_GENERIC) += libchacha.o 9 10obj-$(CONFIG_CRYPTO_LIB_AES) += libaes.o 11libaes-y := aes.o 12 13obj-$(CONFIG_CRYPTO_LIB_AESCFB) += libaescfb.o 14libaescfb-y := aescfb.o 15 16obj-$(CONFIG_CRYPTO_LIB_AESGCM) += libaesgcm.o 17libaesgcm-y := aesgcm.o 18 19obj-$(CONFIG_CRYPTO_LIB_ARC4) += libarc4.o 20libarc4-y := arc4.o 21 22obj-$(CONFIG_CRYPTO_LIB_GF128MUL) += gf128mul.o 23 24# blake2s is used by the /dev/random driver which is always builtin 25obj-y += libblake2s.o 26libblake2s-y := blake2s.o 27libblake2s-$(CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC) += blake2s-generic.o 28libblake2s-$(CONFIG_CRYPTO_SELFTESTS) += blake2s-selftest.o 29 30obj-$(CONFIG_CRYPTO_LIB_CHACHA20POLY1305) += libchacha20poly1305.o 31libchacha20poly1305-y += chacha20poly1305.o 32libchacha20poly1305-$(CONFIG_CRYPTO_SELFTESTS) += chacha20poly1305-selftest.o 33 34obj-$(CONFIG_CRYPTO_LIB_CURVE25519_GENERIC) += libcurve25519-generic.o 35libcurve25519-generic-y := curve25519-fiat32.o 36libcurve25519-generic-$(CONFIG_ARCH_SUPPORTS_INT128) := curve25519-hacl64.o 37libcurve25519-generic-y += curve25519-generic.o 38# clang versions prior to 18 may blow out the stack with KASAN 39ifeq ($(call clang-min-version, 180000),) 40KASAN_SANITIZE_curve25519-hacl64.o := n 41endif 42 43obj-$(CONFIG_CRYPTO_LIB_CURVE25519) += libcurve25519.o 44libcurve25519-y += curve25519.o 45libcurve25519-$(CONFIG_CRYPTO_SELFTESTS) += curve25519-selftest.o 46 47obj-$(CONFIG_CRYPTO_LIB_DES) += libdes.o 48libdes-y := des.o 49 50obj-$(CONFIG_CRYPTO_LIB_POLY1305) += libpoly1305.o 51libpoly1305-y += poly1305.o 52 53obj-$(CONFIG_CRYPTO_LIB_POLY1305_GENERIC) += libpoly1305-generic.o 54libpoly1305-generic-y := poly1305-donna32.o 55libpoly1305-generic-$(CONFIG_ARCH_SUPPORTS_INT128) := poly1305-donna64.o 56libpoly1305-generic-y += poly1305-generic.o 57 58obj-$(CONFIG_CRYPTO_LIB_SHA1) += libsha1.o 59libsha1-y := sha1.o 60 61obj-$(CONFIG_CRYPTO_LIB_SHA256) += libsha256.o 62libsha256-y := sha256.o 63 64obj-$(CONFIG_CRYPTO_LIB_SHA256_GENERIC) += libsha256-generic.o 65libsha256-generic-y := sha256-generic.o 66 67obj-$(CONFIG_MPILIB) += mpi/ 68 69obj-$(CONFIG_CRYPTO_SELFTESTS_FULL) += simd.o 70 71obj-$(CONFIG_CRYPTO_LIB_SM3) += libsm3.o 72libsm3-y := sm3.o 73