blob: 27732308ce9bd55ae7ee4efd2c33a3879d4fbeb6 [file] [log] [blame]
Ronald Cronbfd45f12020-06-05 11:15:31 +02001set(executables
2 crypto_examples
Manuel Pégourié-Gonnard667b5562021-11-22 13:00:17 +01003 hmac_md_psa
Ronald Cronbfd45f12020-06-05 11:15:31 +02004 key_ladder_demo
5 psa_constant_names
6)
itayzafrira3ff8a62018-07-10 10:10:21 +03007
David Horstmanna8d14062021-10-20 17:14:23 +01008if(GEN_FILES)
Manuel Pégourié-Gonnarde90e4052021-09-08 13:27:09 +02009 add_custom_command(
10 OUTPUT
11 ${CMAKE_CURRENT_BINARY_DIR}/psa_constant_names_generated.c
12 COMMAND
David Horstmann3e30ad92021-10-20 16:53:58 +010013 ${MBEDTLS_PYTHON_EXECUTABLE}
Manuel Pégourié-Gonnarde90e4052021-09-08 13:27:09 +020014 ${CMAKE_CURRENT_SOURCE_DIR}/../../scripts/generate_psa_constants.py
15 ${CMAKE_CURRENT_BINARY_DIR}
16 WORKING_DIRECTORY
17 ${CMAKE_CURRENT_SOURCE_DIR}/../..
18 DEPENDS
Manuel Pégourié-Gonnard15a42c32021-05-14 10:33:32 +020019 ${CMAKE_CURRENT_SOURCE_DIR}/../../scripts/generate_psa_constants.py
Manuel Pégourié-Gonnarde90e4052021-09-08 13:27:09 +020020 ${CMAKE_CURRENT_SOURCE_DIR}/../../include/psa/crypto_values.h
21 ${CMAKE_CURRENT_SOURCE_DIR}/../../include/psa/crypto_extra.h
22 )
23else()
24 link_to_source(psa_constant_names_generated.c)
25endif()
Manuel Pégourié-Gonnard15a42c32021-05-14 10:33:32 +020026
Ronald Cronbfd45f12020-06-05 11:15:31 +020027foreach(exe IN LISTS executables)
Ronald Cron8dc0af22020-06-05 16:00:22 +020028 add_executable(${exe} ${exe}.c $<TARGET_OBJECTS:mbedtls_test>)
Raef Coles995c66f2020-10-13 16:30:41 +010029 target_link_libraries(${exe} ${mbedcrypto_target})
Ronald Cron8dc0af22020-06-05 16:00:22 +020030 target_include_directories(${exe} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/../../tests/include)
Ronald Cronbfd45f12020-06-05 11:15:31 +020031endforeach()
Gilles Peskinef31dbb72019-01-02 17:28:46 +010032
Hugues de Valon235c72d2020-05-28 08:42:01 +010033target_include_directories(psa_constant_names PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
David Horstmanna8d14062021-10-20 17:14:23 +010034if(GEN_FILES)
Manuel Pégourié-Gonnarde90e4052021-09-08 13:27:09 +020035 add_custom_target(generate_psa_constant_names_generated_c
36 DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/psa_constant_names_generated.c)
37 add_dependencies(psa_constant_names generate_psa_constant_names_generated_c)
38endif()
Gilles Peskine6a785732019-01-02 17:29:04 +010039
Ronald Cronbfd45f12020-06-05 11:15:31 +020040install(TARGETS ${executables}
itayzafrira3ff8a62018-07-10 10:10:21 +030041 DESTINATION "bin"
42 PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
43
Gilles Peskinef31dbb72019-01-02 17:28:46 +010044install(PROGRAMS
45 key_ladder_demo.sh
46 DESTINATION "bin")