1set(everest_target "${MBEDTLS_TARGET_PREFIX}everest") 2 3add_library(${everest_target} 4 library/everest.c 5 library/x25519.c 6 library/Hacl_Curve25519_joined.c) 7 8target_include_directories(${everest_target} 9 PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include> 10 $<BUILD_INTERFACE:${MBEDTLS_DIR}/include> 11 $<INSTALL_INTERFACE:include> 12 PRIVATE include/everest 13 include/everest/kremlib 14 ${MBEDTLS_DIR}/library/) 15 16# Pass-through MBEDTLS_CONFIG_FILE and MBEDTLS_USER_CONFIG_FILE 17# This must be duplicated from library/CMakeLists.txt because 18# everest is not directly linked against any mbedtls targets 19# so does not inherit the compile definitions. 20if(MBEDTLS_CONFIG_FILE) 21 target_compile_definitions(${everest_target} 22 PUBLIC MBEDTLS_CONFIG_FILE="${MBEDTLS_CONFIG_FILE}") 23endif() 24if(MBEDTLS_USER_CONFIG_FILE) 25 target_compile_definitions(${everest_target} 26 PUBLIC MBEDTLS_USER_CONFIG_FILE="${MBEDTLS_USER_CONFIG_FILE}") 27endif() 28 29if(INSTALL_MBEDTLS_HEADERS) 30 31 install(DIRECTORY include/everest 32 DESTINATION include 33 FILE_PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ 34 DIRECTORY_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE 35 FILES_MATCHING PATTERN "*.h") 36 37endif(INSTALL_MBEDTLS_HEADERS) 38 39install(TARGETS ${everest_target} 40 EXPORT MbedTLSTargets 41 DESTINATION ${CMAKE_INSTALL_LIBDIR} 42 PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ) 43