blob: 37192e34d30bb832f52a2d5430ccc6af8be0a971 [file] [log] [blame]
Ronald Cronbfd45f12020-06-05 11:15:31 +02001set(executables
Manuel Pégourié-Gonnard7d5ef172022-01-27 13:09:13 +01002 aead_non_psa
3 aead_psa
Ronald Cronbfd45f12020-06-05 11:15:31 +02004 crypto_examples
Manuel Pégourié-Gonnard69bb3f52022-01-31 13:09:47 +01005 hmac_demo
Ronald Cronbfd45f12020-06-05 11:15:31 +02006 key_ladder_demo
7 psa_constant_names
8)
itayzafrira3ff8a62018-07-10 10:10:21 +03009
David Horstmanna8d14062021-10-20 17:14:23 +010010if(GEN_FILES)
Manuel Pégourié-Gonnarde90e4052021-09-08 13:27:09 +020011 add_custom_command(
12 OUTPUT
13 ${CMAKE_CURRENT_BINARY_DIR}/psa_constant_names_generated.c
14 COMMAND
David Horstmann3e30ad92021-10-20 16:53:58 +010015 ${MBEDTLS_PYTHON_EXECUTABLE}
Manuel Pégourié-Gonnarde90e4052021-09-08 13:27:09 +020016 ${CMAKE_CURRENT_SOURCE_DIR}/../../scripts/generate_psa_constants.py
17 ${CMAKE_CURRENT_BINARY_DIR}
18 WORKING_DIRECTORY
19 ${CMAKE_CURRENT_SOURCE_DIR}/../..
20 DEPENDS
Manuel Pégourié-Gonnard15a42c32021-05-14 10:33:32 +020021 ${CMAKE_CURRENT_SOURCE_DIR}/../../scripts/generate_psa_constants.py
Manuel Pégourié-Gonnarde90e4052021-09-08 13:27:09 +020022 ${CMAKE_CURRENT_SOURCE_DIR}/../../include/psa/crypto_values.h
23 ${CMAKE_CURRENT_SOURCE_DIR}/../../include/psa/crypto_extra.h
24 )
25else()
26 link_to_source(psa_constant_names_generated.c)
27endif()
Manuel Pégourié-Gonnard15a42c32021-05-14 10:33:32 +020028
Ronald Cronbfd45f12020-06-05 11:15:31 +020029foreach(exe IN LISTS executables)
Ronald Cron8dc0af22020-06-05 16:00:22 +020030 add_executable(${exe} ${exe}.c $<TARGET_OBJECTS:mbedtls_test>)
Raef Coles995c66f2020-10-13 16:30:41 +010031 target_link_libraries(${exe} ${mbedcrypto_target})
Ronald Cron8dc0af22020-06-05 16:00:22 +020032 target_include_directories(${exe} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/../../tests/include)
Ronald Cronbfd45f12020-06-05 11:15:31 +020033endforeach()
Gilles Peskinef31dbb72019-01-02 17:28:46 +010034
Hugues de Valon235c72d2020-05-28 08:42:01 +010035target_include_directories(psa_constant_names PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
David Horstmanna8d14062021-10-20 17:14:23 +010036if(GEN_FILES)
Manuel Pégourié-Gonnarde90e4052021-09-08 13:27:09 +020037 add_custom_target(generate_psa_constant_names_generated_c
38 DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/psa_constant_names_generated.c)
39 add_dependencies(psa_constant_names generate_psa_constant_names_generated_c)
40endif()
Gilles Peskine6a785732019-01-02 17:29:04 +010041
Ronald Cronbfd45f12020-06-05 11:15:31 +020042install(TARGETS ${executables}
itayzafrira3ff8a62018-07-10 10:10:21 +030043 DESTINATION "bin"
44 PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
45
Gilles Peskinef31dbb72019-01-02 17:28:46 +010046install(PROGRAMS
47 key_ladder_demo.sh
48 DESTINATION "bin")