blob: ee86f1d7b925da5511ddc6e17c05e47350da7303 [file] [log] [blame]
Chris Kayd259e342021-03-25 16:03:25 +00001add_library(everest
2 library/everest.c
3 library/x25519.c
4 library/Hacl_Curve25519_joined.c)
Christoph M. Wintersteigerea243942019-01-07 14:12:25 +00005
Chris Kayd259e342021-03-25 16:03:25 +00006target_include_directories(everest
7 PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
8 $<BUILD_INTERFACE:${MBEDTLS_DIR}/include>
9 $<INSTALL_INTERFACE:include>
10 PRIVATE include/everest
11 include/everest/kremlib
12 ${MBEDTLS_DIR}/library/)
Christoph M. Wintersteiger6e0cac12019-02-22 17:02:12 +000013
David Horstmannbf66b752023-10-02 10:46:59 +010014# Pass-through MBEDTLS_CONFIG_FILE and MBEDTLS_USER_CONFIG_FILE
15# This must be duplicated from library/CMakeLists.txt because
16# everest is not directly linked against any mbedtls targets
17# so does not inherit the compile definitions.
18if(MBEDTLS_CONFIG_FILE)
19 target_compile_definitions(everest
20 PUBLIC MBEDTLS_CONFIG_FILE="${MBEDTLS_CONFIG_FILE}")
21endif()
22if(MBEDTLS_USER_CONFIG_FILE)
23 target_compile_definitions(everest
24 PUBLIC MBEDTLS_USER_CONFIG_FILE="${MBEDTLS_USER_CONFIG_FILE}")
25endif()
26
Ronald Cron00f5b8c2020-05-25 09:39:09 +020027if(INSTALL_MBEDTLS_HEADERS)
Christoph M. Wintersteigerea243942019-01-07 14:12:25 +000028
Ronald Cron00f5b8c2020-05-25 09:39:09 +020029 install(DIRECTORY include/everest
30 DESTINATION include
31 FILE_PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
32 DIRECTORY_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
33 FILES_MATCHING PATTERN "*.h")
Christoph M. Wintersteiger6ea2dea12019-01-21 17:26:19 +000034
Ronald Cron00f5b8c2020-05-25 09:39:09 +020035endif(INSTALL_MBEDTLS_HEADERS)
Christoph M. Wintersteiger6ea2dea12019-01-21 17:26:19 +000036
Chris Kayd259e342021-03-25 16:03:25 +000037install(TARGETS everest
38 EXPORT MbedTLSTargets
Biswapriyo Nath0f2e87b2022-04-22 20:56:21 +053039 DESTINATION ${CMAKE_INSTALL_LIBDIR}
Chris Kayd259e342021-03-25 16:03:25 +000040 PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ)