1*62c56f98SSadaf Ebrahimiset(executables 2*62c56f98SSadaf Ebrahimi aead_demo 3*62c56f98SSadaf Ebrahimi crypto_examples 4*62c56f98SSadaf Ebrahimi hmac_demo 5*62c56f98SSadaf Ebrahimi key_ladder_demo 6*62c56f98SSadaf Ebrahimi psa_constant_names 7*62c56f98SSadaf Ebrahimi) 8*62c56f98SSadaf Ebrahimi 9*62c56f98SSadaf Ebrahimiif(GEN_FILES) 10*62c56f98SSadaf Ebrahimi add_custom_command( 11*62c56f98SSadaf Ebrahimi OUTPUT 12*62c56f98SSadaf Ebrahimi ${CMAKE_CURRENT_BINARY_DIR}/psa_constant_names_generated.c 13*62c56f98SSadaf Ebrahimi COMMAND 14*62c56f98SSadaf Ebrahimi ${MBEDTLS_PYTHON_EXECUTABLE} 15*62c56f98SSadaf Ebrahimi ${CMAKE_CURRENT_SOURCE_DIR}/../../scripts/generate_psa_constants.py 16*62c56f98SSadaf Ebrahimi ${CMAKE_CURRENT_BINARY_DIR} 17*62c56f98SSadaf Ebrahimi WORKING_DIRECTORY 18*62c56f98SSadaf Ebrahimi ${CMAKE_CURRENT_SOURCE_DIR}/../.. 19*62c56f98SSadaf Ebrahimi DEPENDS 20*62c56f98SSadaf Ebrahimi ${CMAKE_CURRENT_SOURCE_DIR}/../../scripts/generate_psa_constants.py 21*62c56f98SSadaf Ebrahimi ${CMAKE_CURRENT_SOURCE_DIR}/../../include/psa/crypto_values.h 22*62c56f98SSadaf Ebrahimi ${CMAKE_CURRENT_SOURCE_DIR}/../../include/psa/crypto_extra.h 23*62c56f98SSadaf Ebrahimi ) 24*62c56f98SSadaf Ebrahimielse() 25*62c56f98SSadaf Ebrahimi link_to_source(psa_constant_names_generated.c) 26*62c56f98SSadaf Ebrahimiendif() 27*62c56f98SSadaf Ebrahimi 28*62c56f98SSadaf Ebrahimiforeach(exe IN LISTS executables) 29*62c56f98SSadaf Ebrahimi add_executable(${exe} ${exe}.c $<TARGET_OBJECTS:mbedtls_test>) 30*62c56f98SSadaf Ebrahimi target_link_libraries(${exe} ${mbedcrypto_target}) 31*62c56f98SSadaf Ebrahimi target_include_directories(${exe} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/../../tests/include) 32*62c56f98SSadaf Ebrahimiendforeach() 33*62c56f98SSadaf Ebrahimi 34*62c56f98SSadaf Ebrahimitarget_include_directories(psa_constant_names PRIVATE ${CMAKE_CURRENT_BINARY_DIR}) 35*62c56f98SSadaf Ebrahimiif(GEN_FILES) 36*62c56f98SSadaf Ebrahimi add_custom_target(generate_psa_constant_names_generated_c 37*62c56f98SSadaf Ebrahimi DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/psa_constant_names_generated.c) 38*62c56f98SSadaf Ebrahimi add_dependencies(psa_constant_names generate_psa_constant_names_generated_c) 39*62c56f98SSadaf Ebrahimiendif() 40*62c56f98SSadaf Ebrahimi 41*62c56f98SSadaf Ebrahimiinstall(TARGETS ${executables} 42*62c56f98SSadaf Ebrahimi DESTINATION "bin" 43*62c56f98SSadaf Ebrahimi PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE) 44*62c56f98SSadaf Ebrahimi 45*62c56f98SSadaf Ebrahimiinstall(PROGRAMS 46*62c56f98SSadaf Ebrahimi key_ladder_demo.sh 47*62c56f98SSadaf Ebrahimi DESTINATION "bin") 48