1 set(isal_dir ${CMAKE_SOURCE_DIR}/src/crypto/isa-l/isa-l_crypto)
3 set(isal_crypto_plugin_srcs
6 ${isal_dir}/aes/cbc_pre.c
7 ${isal_dir}/aes/cbc_multibinary.asm
8 ${isal_dir}/aes/keyexp_128.asm
9 ${isal_dir}/aes/keyexp_192.asm
10 ${isal_dir}/aes/keyexp_256.asm
11 ${isal_dir}/aes/keyexp_multibinary.asm
12 ${isal_dir}/aes/cbc_dec_128_x4_sse.asm
13 ${isal_dir}/aes/cbc_dec_128_x8_avx.asm
14 ${isal_dir}/aes/cbc_dec_192_x4_sse.asm
15 ${isal_dir}/aes/cbc_dec_192_x8_avx.asm
16 ${isal_dir}/aes/cbc_dec_256_x4_sse.asm
17 ${isal_dir}/aes/cbc_dec_256_x8_avx.asm
18 ${isal_dir}/aes/cbc_enc_128_x4_sb.asm
19 ${isal_dir}/aes/cbc_enc_128_x8_sb.asm
20 ${isal_dir}/aes/cbc_enc_192_x4_sb.asm
21 ${isal_dir}/aes/cbc_enc_192_x8_sb.asm
22 ${isal_dir}/aes/cbc_enc_256_x4_sb.asm
23 ${isal_dir}/aes/cbc_enc_256_x8_sb.asm)
25 add_library(isal_crypto_plugin_objs OBJECT ${isal_crypto_plugin_srcs})
26 target_include_directories(isal_crypto_plugin_objs PRIVATE ${isal_dir}/include)
27 set(isal_crypto_plugin_dir ${CMAKE_INSTALL_PKGLIBDIR}/crypto)
29 add_custom_target(crypto_plugins)
30 if(HAVE_GOOD_YASM_ELF64)
31 add_dependencies(crypto_plugins ceph_crypto_isal)
32 endif(HAVE_GOOD_YASM_ELF64)
34 add_library(ceph_crypto_isal SHARED ${isal_crypto_plugin_srcs})
35 target_include_directories(ceph_crypto_isal PRIVATE ${isal_dir}/include)
36 add_dependencies(ceph_crypto_isal ${CMAKE_SOURCE_DIR}/src/ceph_ver.h)
37 set_target_properties(ceph_crypto_isal PROPERTIES VERSION 1.0.0 SOVERSION 1)
38 install(TARGETS ceph_crypto_isal DESTINATION ${isal_crypto_plugin_dir})