blob: c5d0d28dd448fc881f9638c664f357c6e437762d [file] [log] [blame]
Ronald Cronbfd45f12020-06-05 11:15:31 +02001set(executables
2 crypto_examples
3 key_ladder_demo
4 psa_constant_names
5)
itayzafrira3ff8a62018-07-10 10:10:21 +03006
Manuel Pégourié-Gonnarde90e4052021-09-08 13:27:09 +02007if(DEV_MODE)
8 add_custom_command(
9 OUTPUT
10 ${CMAKE_CURRENT_BINARY_DIR}/psa_constant_names_generated.c
11 COMMAND
12 ${PYTHON}
13 ${CMAKE_CURRENT_SOURCE_DIR}/../../scripts/generate_psa_constants.py
14 ${CMAKE_CURRENT_BINARY_DIR}
15 WORKING_DIRECTORY
16 ${CMAKE_CURRENT_SOURCE_DIR}/../..
17 DEPENDS
Manuel Pégourié-Gonnard15a42c32021-05-14 10:33:32 +020018 ${CMAKE_CURRENT_SOURCE_DIR}/../../scripts/generate_psa_constants.py
Manuel Pégourié-Gonnarde90e4052021-09-08 13:27:09 +020019 ${CMAKE_CURRENT_SOURCE_DIR}/../../include/psa/crypto_values.h
20 ${CMAKE_CURRENT_SOURCE_DIR}/../../include/psa/crypto_extra.h
21 )
22else()
23 link_to_source(psa_constant_names_generated.c)
24endif()
Manuel Pégourié-Gonnard15a42c32021-05-14 10:33:32 +020025
Ronald Cronbfd45f12020-06-05 11:15:31 +020026foreach(exe IN LISTS executables)
Ronald Cron8dc0af22020-06-05 16:00:22 +020027 add_executable(${exe} ${exe}.c $<TARGET_OBJECTS:mbedtls_test>)
Raef Coles995c66f2020-10-13 16:30:41 +010028 target_link_libraries(${exe} ${mbedcrypto_target})
Ronald Cron8dc0af22020-06-05 16:00:22 +020029 target_include_directories(${exe} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/../../tests/include)
Ronald Cronbfd45f12020-06-05 11:15:31 +020030endforeach()
Gilles Peskinef31dbb72019-01-02 17:28:46 +010031
Hugues de Valon235c72d2020-05-28 08:42:01 +010032target_include_directories(psa_constant_names PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
Manuel Pégourié-Gonnarde90e4052021-09-08 13:27:09 +020033if(DEV_MODE)
34 add_custom_target(generate_psa_constant_names_generated_c
35 DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/psa_constant_names_generated.c)
36 add_dependencies(psa_constant_names generate_psa_constant_names_generated_c)
37endif()
Gilles Peskine6a785732019-01-02 17:29:04 +010038
Ronald Cronbfd45f12020-06-05 11:15:31 +020039install(TARGETS ${executables}
itayzafrira3ff8a62018-07-10 10:10:21 +030040 DESTINATION "bin"
41 PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
42
Gilles Peskinef31dbb72019-01-02 17:28:46 +010043install(PROGRAMS
44 key_ladder_demo.sh
45 DESTINATION "bin")