| ifneq ($(KBUILD_EXTMOD),) |
| src = @abs_srcdir@ |
| obj = @abs_builddir@ |
| icp_include = $(src)/include |
| else |
| icp_include = $(srctree)/$(src)/include |
| endif |
| |
| MODULE := icp |
| |
| obj-$(CONFIG_ZFS) := $(MODULE).o |
| |
| asflags-y := -I$(icp_include) |
| ccflags-y := -I$(icp_include) |
| |
| $(MODULE)-objs += illumos-crypto.o |
| $(MODULE)-objs += api/kcf_cipher.o |
| $(MODULE)-objs += api/kcf_digest.o |
| $(MODULE)-objs += api/kcf_mac.o |
| $(MODULE)-objs += api/kcf_miscapi.o |
| $(MODULE)-objs += api/kcf_ctxops.o |
| $(MODULE)-objs += core/kcf_callprov.o |
| $(MODULE)-objs += core/kcf_prov_tabs.o |
| $(MODULE)-objs += core/kcf_sched.o |
| $(MODULE)-objs += core/kcf_mech_tabs.o |
| $(MODULE)-objs += core/kcf_prov_lib.o |
| $(MODULE)-objs += spi/kcf_spi.o |
| $(MODULE)-objs += io/aes.o |
| $(MODULE)-objs += io/edonr_mod.o |
| $(MODULE)-objs += io/sha2_mod.o |
| $(MODULE)-objs += io/skein_mod.o |
| $(MODULE)-objs += os/modhash.o |
| $(MODULE)-objs += os/modconf.o |
| $(MODULE)-objs += algs/modes/cbc.o |
| $(MODULE)-objs += algs/modes/ccm.o |
| $(MODULE)-objs += algs/modes/ctr.o |
| $(MODULE)-objs += algs/modes/ecb.o |
| $(MODULE)-objs += algs/modes/gcm_generic.o |
| $(MODULE)-objs += algs/modes/gcm.o |
| $(MODULE)-objs += algs/modes/modes.o |
| $(MODULE)-objs += algs/aes/aes_impl_generic.o |
| $(MODULE)-objs += algs/aes/aes_impl.o |
| $(MODULE)-objs += algs/aes/aes_modes.o |
| $(MODULE)-objs += algs/edonr/edonr.o |
| $(MODULE)-objs += algs/sha2/sha2.o |
| $(MODULE)-objs += algs/skein/skein.o |
| $(MODULE)-objs += algs/skein/skein_block.o |
| $(MODULE)-objs += algs/skein/skein_iv.o |
| |
| $(MODULE)-$(CONFIG_X86_64) += asm-x86_64/aes/aeskey.o |
| $(MODULE)-$(CONFIG_X86_64) += asm-x86_64/aes/aes_amd64.o |
| $(MODULE)-$(CONFIG_X86_64) += asm-x86_64/aes/aes_aesni.o |
| $(MODULE)-$(CONFIG_X86_64) += asm-x86_64/modes/gcm_pclmulqdq.o |
| $(MODULE)-$(CONFIG_X86_64) += asm-x86_64/modes/aesni-gcm-x86_64.o |
| $(MODULE)-$(CONFIG_X86_64) += asm-x86_64/modes/ghash-x86_64.o |
| $(MODULE)-$(CONFIG_X86_64) += asm-x86_64/sha2/sha256_impl.o |
| $(MODULE)-$(CONFIG_X86_64) += asm-x86_64/sha2/sha512_impl.o |
| |
| $(MODULE)-$(CONFIG_X86) += algs/modes/gcm_pclmulqdq.o |
| $(MODULE)-$(CONFIG_X86) += algs/aes/aes_impl_aesni.o |
| $(MODULE)-$(CONFIG_X86) += algs/aes/aes_impl_x86-64.o |
| |
| # Suppress objtool "return with modified stack frame" warnings. |
| OBJECT_FILES_NON_STANDARD_aesni-gcm-x86_64.o := y |
| |
| # Suppress objtool "unsupported stack pointer realignment" warnings. We are |
| # not using a DRAP register while aligning the stack to a 64 byte boundary. |
| # See #6950 for the reasoning. |
| OBJECT_FILES_NON_STANDARD_sha256_impl.o := y |
| OBJECT_FILES_NON_STANDARD_sha512_impl.o := y |
| |
| ICP_DIRS = \ |
| api \ |
| core \ |
| spi \ |
| io \ |
| os \ |
| algs \ |
| algs/aes \ |
| algs/edonr \ |
| algs/modes \ |
| algs/sha2 \ |
| algs/skein \ |
| asm-x86_64 \ |
| asm-x86_64/aes \ |
| asm-x86_64/modes \ |
| asm-x86_64/sha2 \ |
| asm-i386 \ |
| asm-generic |
| |
| all: |
| mkdir -p $(ICP_DIRS) |