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